diff options
author | Timur I. Bakeyev <timur@FreeBSD.org> | 2017-11-20 06:40:28 +0000 |
---|---|---|
committer | Timur I. Bakeyev <timur@FreeBSD.org> | 2017-11-20 06:40:28 +0000 |
commit | 17009f74ad847d12cb23c5beb346038af63da3fb (patch) | |
tree | 27db3b9603b551a0b503cbc4997a80d2cc6a48c0 /databases/tdb | |
parent | f4afbe855303248492ef9807c6f00644b07d97ff (diff) | |
download | ports-17009f74ad847d12cb23c5beb346038af63da3fb.tar.gz ports-17009f74ad847d12cb23c5beb346038af63da3fb.zip |
Notes
Diffstat (limited to 'databases/tdb')
-rw-r--r-- | databases/tdb/Makefile | 71 | ||||
-rw-r--r-- | databases/tdb/distinfo | 6 | ||||
-rw-r--r-- | databases/tdb/files/patch-buildtools__wafsamba__samba_autoconf.py | 11 | ||||
-rw-r--r-- | databases/tdb/files/patch-buildtools__wafsamba__samba_python.py | 36 | ||||
-rw-r--r-- | databases/tdb/files/patch-lib__replace__wscript | 11 | ||||
-rw-r--r-- | databases/tdb/files/patch-wscript | 8 |
6 files changed, 117 insertions, 26 deletions
diff --git a/databases/tdb/Makefile b/databases/tdb/Makefile index 68c3e5c52d49..12812a79c478 100644 --- a/databases/tdb/Makefile +++ b/databases/tdb/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= tdb -PORTVERSION= 1.3.12 +PORTVERSION= 1.3.15 PORTREVISION= 0 PORTEPOCH= 1 CATEGORIES= databases @@ -12,7 +12,7 @@ COMMENT= Trivial Database LICENSE= GPLv3 -CONFLICTS= *samba3[0-4]-3.* +IGNORE_NONTHREAD_PYTHON=needs port lang/python${PYTHON_SUFFIX} to be build with THREADS support USES= compiler pkgconfig waf USE_LDCONFIG= yes @@ -32,12 +32,48 @@ MANPAGES_DESC= Build and install manpages (requires textproc/docbook-xsl) .include <bsd.port.options.mk> +TDB_BINS= bin/tdbbackup \ + bin/tdbdump \ + bin/tdbrestore \ + bin/tdbtool + +PLIST_FILES+= include/tdb.h \ + ${TDB_BINS} \ + lib/libtdb.so \ + lib/libtdb.so.1 \ + %%PKGCONFIGDIR%%/tdb.pc + .if defined(NO_PYTHON) CONFIGURE_ARGS+= --disable-python .else -USES+= python:2 +USES+= python:2.7+ + PLIST_FILES+= %%PYTHON_SITELIBDIR%%/tdb.so \ %%PYTHON_SITELIBDIR%%/_tdb_text.py +# XXX: This is a gross hack to make port use both Python 2.7+ and 3.3+ +# This is not officially supported, use at your own risk +.if defined(WITH_SAMBA_PYTHON3) && ${WITH_SAMBA_PYTHON3:Mpython3\.[0-9]} +SAMBA_PYTHON3= ${WITH_SAMBA_PYTHON3} +SAMBA_PYTHON3_VERSION:= ${SAMBA_PYTHON3:S/^python//} +SAMBA_PYTHON3_VER:= ${SAMBA_PYTHON3_VERSION:C/\.//} +.if !exists(${PORTSDIR}/lang/python${SAMBA_PYTHON3_VER}) +.error unsupported or unknown Python version ${SAMBA_PYTHON3_VERSION} +.endif +BUILD_DEPENDS+= ${SAMBA_PYTHON3}:lang/python${SAMBA_PYTHON3_VER} +RUN_DEPENDS+= ${SAMBA_PYTHON3}:lang/python${SAMBA_PYTHON3_VER} +# cpython-36m +SAMBA_PYTHON3_SO_ABI!= [ ! -f "${LOCALBASE}/bin/${SAMBA_PYTHON3}" ] || ${LOCALBASE}/bin/${SAMBA_PYTHON3} -c 'import sysconfig; print(sysconfig.get_config_var("SOABI") or "")' 2>/dev/null +SAMBA_PYTHON3_SITELIBDIR=lib/python${SAMBA_PYTHON3_VERSION}/site-packages + +CONFIGURE_ENV+= PYTHON3_SO_ABI_FLAG=.${SAMBA_PYTHON3_SO_ABI} +CONFIGURE_ARGS+= --extra-python=${LOCALBASE}/bin/${SAMBA_PYTHON3} + +PLIST_SUB+= SAMBA_PYTHON3_SO_ABI=${SAMBA_PYTHON3_SO_ABI} \ + SAMBA_PYTHON3_SITELIBDIR=${SAMBA_PYTHON3_SITELIBDIR} + +PLIST_FILES+= %%SAMBA_PYTHON3_SITELIBDIR%%/tdb.so \ + %%SAMBA_PYTHON3_SITELIBDIR%%/_tdb_text.py +.endif .endif .include <bsd.port.pre.mk> @@ -48,16 +84,6 @@ CONFIGURE_ENV+= XSLTPROC="true" BUILD_DEPENDS+= ${LOCALBASE}/share/xsl/docbook/manpages/docbook.xsl:textproc/docbook-xsl \ xsltproc:textproc/libxslt .endif - -PLIST_FILES+= bin/tdbbackup \ - bin/tdbdump \ - bin/tdbrestore \ - bin/tdbtool \ - include/tdb.h \ - lib/libtdb.so \ - lib/libtdb.so.1 \ - %%PKGCONFIGDIR%%/tdb.pc - # No fancy color error messages .if ${COMPILER_TYPE} == "clang" CFLAGS+= -fno-color-diagnostics @@ -72,8 +98,6 @@ TDB_MAN8= man/man8/tdbbackup.8.gz \ PLIST_FILES+= ${TDB_MAN8} -IGNORE_NONTHREAD_PYTHON=needs port lang/python${PYTHON_SUFFIX} to be build with THREADS support - post-patch: @${REINPLACE_CMD} -e 's|%%PKGCONFIGDIR%%|${PKGCONFIGDIR}|g' \ ${BUILD_WRKSRC}/wscript @@ -87,12 +111,21 @@ pre-configure: ${FALSE}; \ fi -pre-build: -.if ! ${PORT_OPTIONS:MMANPAGES} +pre-build-MANPAGES-off: -${MKDIR} ${BUILD_WRKSRC}/bin/default/man -. for man in ${TDB_MAN8} +.for man in ${TDB_MAN8} ${INSTALL_MAN} ${FILESDIR}/`basename ${man} .gz` ${BUILD_WRKSRC}/bin/default/man -. endfor +.endfor + +post-install: +.for lib in ${TDB_BINS} lib/libtdb.so + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${lib} +.endfor +.if !defined(NO_PYTHON) + ${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/tdb.so +.if defined(SAMBA_PYTHON3) + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SAMBA_PYTHON3_SITELIBDIR}/tdb.so +.endif .endif .include <bsd.port.post.mk> diff --git a/databases/tdb/distinfo b/databases/tdb/distinfo index 3c934cc6839f..2cc8d01b3183 100644 --- a/databases/tdb/distinfo +++ b/databases/tdb/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1483301977 -SHA256 (tdb-1.3.12.tar.gz) = 60134e32253cac8e2efe5e0185d20123c208bcf6ad15edf2f50d80daadf8c348 -SIZE (tdb-1.3.12.tar.gz) = 495520 +TIMESTAMP = 1507427511 +SHA256 (tdb-1.3.15.tar.gz) = b4a1bf3833601bd9f10aff363cb750860aef9ce5b4617989239923192f946728 +SIZE (tdb-1.3.15.tar.gz) = 502627 diff --git a/databases/tdb/files/patch-buildtools__wafsamba__samba_autoconf.py b/databases/tdb/files/patch-buildtools__wafsamba__samba_autoconf.py new file mode 100644 index 000000000000..5245d0e4857b --- /dev/null +++ b/databases/tdb/files/patch-buildtools__wafsamba__samba_autoconf.py @@ -0,0 +1,11 @@ +--- buildtools/wafsamba/samba_autoconf.py.orig 2016-10-07 04:45:35 UTC ++++ buildtools/wafsamba/samba_autoconf.py +@@ -873,7 +873,7 @@ def SAMBA_CHECK_UNDEFINED_SYMBOL_FLAGS(c + conf.env.undefined_ldflags = conf.ADD_LDFLAGS('-Wl,-no-undefined', testflags=True) + + if not sys.platform.startswith("openbsd") and conf.env.undefined_ignore_ldflags == []: +- if conf.CHECK_LDFLAGS(['-undefined', 'dynamic_lookup']): ++ if conf.CHECK_LDFLAGS(['-undefined', 'dynamic_lookup'] + conf.env.WERROR_CFLAGS): + conf.env.undefined_ignore_ldflags = ['-undefined', 'dynamic_lookup'] + + @conf diff --git a/databases/tdb/files/patch-buildtools__wafsamba__samba_python.py b/databases/tdb/files/patch-buildtools__wafsamba__samba_python.py new file mode 100644 index 000000000000..dcea3ffd78c3 --- /dev/null +++ b/databases/tdb/files/patch-buildtools__wafsamba__samba_python.py @@ -0,0 +1,36 @@ +--- buildtools/wafsamba/samba_python.py.orig 2017-04-28 08:57:26 UTC ++++ buildtools/wafsamba/samba_python.py +@@ -76,17 +76,31 @@ def SAMBA_CHECK_PYTHON_HEADERS(conf, man + + def _check_python_headers(conf, mandatory): + try: ++ from python import _get_python_variables + Configure.ConfigurationError + conf.check_python_headers(mandatory=mandatory) ++ conf.env['PYTHON_SO_ABI'] = _get_python_variables( ++ conf.env['PYTHON'], ++ ["get_config_var('SOABI') or ''"], ++ ['from distutils.sysconfig import get_config_var'] ++ )[0] + except Configure.ConfigurationError: + if mandatory: + raise + + if conf.env['PYTHON_VERSION'] > '3': +- abi_pattern = os.path.splitext(conf.env['pyext_PATTERN'])[0] +- conf.env['PYTHON_SO_ABI_FLAG'] = abi_pattern % '' ++ override_PYTHON3_SO_ABI_FLAG = os.getenv('PYTHON3_SO_ABI_FLAG', None) ++ if override_PYTHON3_SO_ABI_FLAG is not None: ++ conf.env['PYTHON_SO_ABI_FLAG'] = override_PYTHON3_SO_ABI_FLAG ++ if not conf.env['PYTHON_SO_ABI_FLAG']: ++ if conf.env['PYTHON_SO_ABI']: ++ conf.env['PYTHON_SO_ABI_FLAG'] = '.'+conf.env['PYTHON_SO_ABI'] ++ else: ++ abi_pattern = os.path.splitext(conf.env['pyext_PATTERN'])[0] ++ conf.env['PYTHON_SO_ABI_FLAG'] = abi_pattern % '' + else: + conf.env['PYTHON_SO_ABI_FLAG'] = '' ++ + conf.env['PYTHON_LIBNAME_SO_ABI_FLAG'] = ( + conf.env['PYTHON_SO_ABI_FLAG'].replace('_', '-')) + diff --git a/databases/tdb/files/patch-lib__replace__wscript b/databases/tdb/files/patch-lib__replace__wscript new file mode 100644 index 000000000000..d6d32b6c3dca --- /dev/null +++ b/databases/tdb/files/patch-lib__replace__wscript @@ -0,0 +1,11 @@ +--- lib/replace/wscript.orig 2017-08-24 11:27:53 UTC ++++ lib/replace/wscript +@@ -81,7 +81,7 @@ def configure(conf): + conf.CHECK_HEADERS('sys/atomic.h') + conf.CHECK_HEADERS('libgen.h') + +- if conf.CHECK_CFLAGS('-Wno-format-truncation'): ++ if conf.CHECK_CFLAGS(['-Wno-format-truncation'] + conf.env.WERROR_CFLAGS): + conf.define('HAVE_WNO_FORMAT_TRUNCATION', '1') + + # Check for process set name support diff --git a/databases/tdb/files/patch-wscript b/databases/tdb/files/patch-wscript index ce7c161e3ab1..c1b8d4560be8 100644 --- a/databases/tdb/files/patch-wscript +++ b/databases/tdb/files/patch-wscript @@ -1,7 +1,7 @@ ---- ./wscript.orig 2012-04-11 12:36:12.000000000 +0000 -+++ ./wscript 2013-01-29 20:56:34.289900427 +0000 -@@ -68,7 +68,7 @@ - io.c open.c transaction.c hash.c summary.c''') +--- wscript.orig 2017-08-24 11:29:08 UTC ++++ wscript +@@ -115,7 +115,7 @@ def build(bld): + COMMON_SRC = bld.SUBDIR('common', COMMON_FILES) if bld.env.standalone_tdb: - bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig' |