Update databases/p5-SQLite-Work to version 0.16
[dports.git] / databases / ntdb / Makefile
1 # $FreeBSD$
2
3 PORTNAME=               ntdb
4 PORTVERSION=            1.0
5 PORTREVISION=           0
6 PORTEPOCH=              0
7 CATEGORIES=             databases
8 MASTER_SITES=           ${MASTER_SITE_SAMBA}
9 MASTER_SITE_SUBDIR=     tdb
10
11 MAINTAINER=             timur@FreeBSD.org
12 COMMENT=                Not so Trivial DataBase
13
14 LICENSE=                GPLv3
15
16 CONFLICTS=
17
18 USES=                   compiler pkgconfig
19 USE_LDCONFIG=           yes
20 WAF_TOOL=               buildtools/bin/waf
21 CONFIGURE_LOG=          bin/config.log
22
23 PKGCONFIGDIR?=          ${PREFIX}/libdata/pkgconfig
24 PLIST_SUB+=             PKGCONFIGDIR=${PKGCONFIGDIR:S;${PREFIX}/;;}
25
26 CONFIGURE_ARGS+=        --prefix=${PREFIX} \
27                         --mandir=${MANPREFIX}/man \
28                         --infodir=${PREFIX}/${INFO_PATH}/${INFO_SUBDIR} \
29                         --without-gettext
30 # Support staging
31 DESTDIRNAME=            --destdir
32
33 OPTIONS_DEFINE=         MANPAGES
34 MANPAGES_DESC=          Build and install manpages (requires textproc/docbook-xsl)
35
36 .include <bsd.port.options.mk>
37
38 .if defined(NO_PYTHON)
39 CONFIGURE_ARGS+=        --disable-python
40 USES+=                  python:2,build
41 .else
42 USES+=                  python:2
43 PLIST_FILES+=           %%PYTHON_SITELIBDIR%%/ntdb.so
44 .endif
45
46 .include <bsd.port.pre.mk>
47
48 .if ! ${PORT_OPTIONS:MMANPAGES}
49 CONFIGURE_ENV+=         XSLTPROC="true"
50 .else
51 BUILD_DEPENDS+=         ${LOCALBASE}/share/xsl/docbook/manpages/docbook.xsl:${PORTSDIR}/textproc/docbook-xsl \
52                         xsltproc:${PORTSDIR}/textproc/libxslt
53 .endif
54
55 PLIST_FILES+=           bin/ntdbbackup \
56                         bin/ntdbdump \
57                         bin/ntdbrestore \
58                         bin/ntdbtool \
59                         include/ntdb.h \
60                         lib/libntdb.so \
61                         lib/libntdb.so.1 \
62                         %%PKGCONFIGDIR%%/ntdb.pc
63
64 # No fancy color error messages
65 .if ${COMPILER_TYPE} == "clang"
66 CFLAGS+=                -fno-color-diagnostics
67 .endif
68 CONFIGURE_ENV+=         NOCOLOR=yes
69 MAKE_ENV+=              NOCOLOR=yes
70
71 .if !defined(DISABLE_MAKE_JOBS) && !defined(MAKE_JOBS_UNSAFE)
72 CONFIGURE_ARGS+=        --jobs=${MAKE_JOBS_NUMBER}
73 _MAKE_JOBS+=            --jobs=${MAKE_JOBS_NUMBER}
74 .endif
75
76 TDB_MAN3=               man/man3/ntdb.3.gz
77
78 TDB_MAN8=               man/man8/ntdbbackup.8.gz \
79                         man/man8/ntdbdump.8.gz \
80                         man/man8/ntdbrestore.8.gz \
81                         man/man8/ntdbtool.8.gz
82
83 PLIST_FILES+=           ${TDB_MAN3} ${TDB_MAN8}
84
85 CONFIGURE_TARGET=       configure
86 ALL_TARGET=             build
87 INSTALL_TARGET=         install
88
89 IGNORE_NONTHREAD_PYTHON=needs port lang/python${PYTHON_SUFFIX} to be build with THREADS support
90
91 post-patch:
92                         @${REINPLACE_CMD} -e 's|%%PKGCONFIGDIR%%|${PKGCONFIGDIR}|g' \
93                                 ${BUILD_WRKSRC}/wscript
94
95 # Use threading (or multiprocessing) but not thread (renamed in python 3+).
96 pre-configure:
97                         @if ! ${PYTHON_CMD} -c "import multiprocessing;" 2>/dev/null; then \
98                                 ${ECHO_CMD}; \
99                                 ${ECHO_MSG} "===>  ${PKGNAME} "${IGNORE_NONTHREAD_PYTHON:Q}.; \
100                                 ${ECHO_CMD}; \
101                                 ${FALSE}; \
102                         fi
103
104 do-configure:
105                         @(cd ${CONFIGURE_WRKSRC} && \
106                             ${SET_LATE_CONFIGURE_ARGS} \
107                                 if ! ${SETENV} CC="${CC}" CPP="${CPP}" CXX="${CXX}" \
108                                         CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" CXXFLAGS="${CXXFLAGS}" \
109                                         LDFLAGS="${LDFLAGS}" \
110                                         INSTALL="/usr/bin/install -c ${_BINOWNGRP}" \
111                                         INSTALL_DATA="${INSTALL_DATA}" \
112                                         INSTALL_LIB="${INSTALL_LIB}" \
113                                         INSTALL_PROGRAM="${INSTALL_PROGRAM}" \
114                                         INSTALL_SCRIPT="${INSTALL_SCRIPT}" \
115                                         ${CONFIGURE_ENV} ${PYTHON_CMD} ${CONFIGURE_WRKSRC}/${WAF_TOOL} ${CONFIGURE_ARGS} ${CONFIGURE_TARGET}; then \
116                                                 ${ECHO_MSG} "===>  Script \"${CONFIGURE_SCRIPT}\" failed unexpectedly."; \
117                                                 (${ECHO_CMD} ${CONFIGURE_FAIL_MESSAGE}) | ${FMT} 75 79 ; \
118                                                 ${FALSE}; \
119                                 fi)
120
121 pre-build:
122 .if ! ${PORT_OPTIONS:MMANPAGES}
123                         -${MKDIR} ${BUILD_WRKSRC}/bin/default/man
124 .       for man in ${TDB_MAN3} ${TDB_MAN8}
125                         ${INSTALL_MAN} ${FILESDIR}/`basename ${man} .gz` ${BUILD_WRKSRC}/bin/default/man
126 .       endfor
127 .endif
128
129 do-build:
130                         @(cd ${BUILD_WRKSRC}; \
131                         if ! ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} ${BUILD_WRKSRC}/${WAF_TOOL} ${_MAKE_JOBS} ${MAKE_ARGS} ${ALL_TARGET}; then \
132                                 if [ x != x${BUILD_FAIL_MESSAGE} ] ; then \
133                                         ${ECHO_MSG} "===> Compilation failed unexpectedly."; \
134                                         (${ECHO_CMD} ${BUILD_FAIL_MESSAGE}) | ${FMT} 75 79 ; \
135                                 fi; \
136                         ${FALSE}; \
137                         fi)
138
139 do-install:
140                         @(cd ${INSTALL_WRKSRC} && ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} ${INSTALL_WRKSRC}/${WAF_TOOL} ${MAKE_ARGS} ${INSTALL_TARGET})
141
142 .include <bsd.port.post.mk>