1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Trivial Database
8 HOMEPAGE= https://tdb.samba.org/
9 CONTACT= Leonid_Bobrov[goleo@disroot.org]
12 SITES[main]= https://download.samba.org/pub/tdb/
13 https://ftp.samba.org/pub/tdb/
14 DISTFILE[1]= tdb-1.4.7.tar.gz:main
16 SPKGS[standard]= single
18 OPTIONS_AVAILABLE= none
19 OPTIONS_STANDARD= none
21 BUILD_DEPENDS= docbook-xsl:primary:standard
22 libxslt:single:standard
24 USES= compiler pkgconfig python shebangfix
26 LICENSE= LGPL3+:single
27 LICENSE_TERMS= single:{{WRKSRC}}/TERMS
28 LICENSE_FILE= LGPL3+:stock
29 LICENSE_AWK= TERMS:"^\#include"
30 LICENSE_SOURCE= TERMS:{{WRKSRC}}/pytdb.c
33 FPC_EQUIVALENT= databases/tdb
34 SHEBANG_FILES= python/tdbdump.py
35 python/tests/simple.py
37 buildtools/examples/run_on_target.py
38 SHEBANG_OLD_PYTHON= "/usr/bin/env python3"
41 CONFIGURE_ARGS= --prefix={{PREFIX}}
42 --mandir={{MANPREFIX}}/man
45 INSTALL_REQ_TOOLCHAIN= yes
49 # enable docbook to build manpages
50 ${REINPLACE_CMD} -e "s|http://docbook.sourceforge.net/release/xsl/current/|file://${LOCALBASE}/share/xsl/docbook/|" \
51 ${WRKSRC}/buildtools/wafsamba/wafsamba.py \
52 ${WRKSRC}/buildtools/wafsamba/samba_conftests.py
53 ${REINPLACE_CMD} -e 's|python3|python${PYTHON_VER}|g' \
54 ${WRKSRC}/buildtools/wafsamba/samba_python.py \
55 ${WRKSRC}/third_party/waf/waflib/extras/run_py_script.py
58 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/tdb*
59 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libtdb.${LIBEXT}
60 ${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/td*.so
62 [FILE:234:descriptions/desc.single]
63 TDB is a Trivial Database. In concept, it is very much like GDBM, and
64 BSD's DB except that it allows multiple simultaneous writers and uses
65 locking internally to keep writers from trampling on each other. TDB is
70 a4fb168def533f31ff2c07f7d9844bb3131e6799f094ebe77d0380adc987c20e 741714 tdb-1.4.7.tar.gz
73 [FILE:549:manifests/plist.single]
74 %%ONLY-DRAGONFLY%%%%PYTHON_SITELIBDIR%%/tdb.cpython-%%PYTHON_SUFFIX%%.%%SHARED_OBJECT%%
75 %%ONLY-FREEBSD%%%%PYTHON_SITELIBDIR%%/tdb.cpython-%%PYTHON_SUFFIX%%.%%SHARED_OBJECT%%
76 %%ONLY-LINUX%%%%PYTHON_SITELIBDIR%%/tdb.cpython-%%PYTHON_SUFFIX%%%%PYTHON_ABIVER%%-x86_64-linux-gnu.%%SHARED_OBJECT%%
77 %%PYTHON_SITELIBDIR%%/_tdb_text.py
87 libtdb.so.%%SOVERSION%%
96 [FILE:290:patches/patch-Makefile]
97 --- Makefile.orig 2020-01-21 14:09:48 UTC
100 # simple makefile wrapper to run waf
102 -WAF_BIN=`PATH=buildtools/bin:../../buildtools/bin:$$PATH which waf`
103 +WAF_BIN=buildtools/bin/waf
104 WAF_BINARY=$(PYTHON) $(WAF_BIN)
105 WAF=PYTHONHASHSEED=1 WAF_MAKE=1 $(WAF_BINARY)
109 [FILE:2282:patches/patch-buildtools_wafsamba_samba__autoconf.py]
110 Disable libssp -- it causes segfaults on several platforms, likly some
111 kind of missing os-specific support or consideration.
113 --- buildtools/wafsamba/samba_autoconf.py.orig 2022-04-11 23:57:37 UTC
114 +++ buildtools/wafsamba/samba_autoconf.py
115 @@ -703,44 +703,6 @@ def SAMBA_CONFIG_H(conf, path=None):
116 if not IN_LAUNCH_DIR(conf):
119 - # we need to build real code that can't be optimized away to test
120 - stack_protect_list = ['-fstack-protector-strong', '-fstack-protector']
121 - for stack_protect_flag in stack_protect_list:
122 - flag_supported = conf.check(fragment='''
128 - while (fgets(t, sizeof(t), stdin));
133 - cflags=[ '-Werror', '-Wp,-D_FORTIFY_SOURCE=2', stack_protect_flag],
135 - msg='Checking if compiler accepts %s' % (stack_protect_flag))
137 - conf.ADD_CFLAGS('%s' % (stack_protect_flag))
140 - flag_supported = conf.check(fragment='''
146 - while (fgets(t, sizeof(t), stdin));
151 - cflags=[ '-Werror', '-fstack-clash-protection'],
153 - msg='Checking if compiler accepts -fstack-clash-protection')
155 - conf.ADD_CFLAGS('-fstack-clash-protection')
157 if Options.options.debug:
158 conf.ADD_CFLAGS('-g', testflags=True)