# $NetBSD: Makefile.common,v 1.44 2021/08/23 09:58:58 adam Exp $ # # used by databases/openldap-client/Makefile # used by databases/openldap-cloak/Makefile # used by databases/openldap-nops/Makefile # used by databases/openldap-server/Makefile # used by databases/openldap-smbk5pwd/Makefile .include "../../databases/openldap/Makefile.version" CATEGORIES= databases MAINTAINER= adam@NetBSD.org CONFLICTS+= ldapsdk-[0-9]* DISTINFO_FILE= ${.CURDIR}/../../databases/openldap/distinfo PATCHDIR= ${.CURDIR}/../../databases/openldap/patches USE_LIBTOOL= yes USE_TOOLS+= gmake soelim GNU_CONFIGURE= yes MAKE_ENV+= LIBMODE=${LIBMODE} .include "../../mk/bsd.prefs.mk" OPENLDAP_ETCDIR?= ${PKG_SYSCONFDIR}/openldap OPENLDAP_MODULEDIR= ${PREFIX}/lib/openldap OPENLDAP_VARDIR?= ${VARBASE}/openldap SLAPD_USER?= slapd LDAP_GROUP?= ldap PKG_GROUPS_VARS+= LDAP_GROUP PKG_USERS_VARS+= SLAPD_USER # the internal avl_* prototypes conflict with those in which # is included by another system header file on Solaris, so subst them. SUBST_CLASSES.SunOS+= conflict SUBST_STAGE.conflict= pre-configure SUBST_FILES.conflict= ${WRKSRC}/*/*.h SUBST_FILES.conflict+= ${WRKSRC}/*/*/*.c ${WRKSRC}/*/*/*/*.c SUBST_SED.conflict+= -e 's,avl_free,openldap_avl_free,g' SUBST_SED.conflict+= -e 's,avl_insert,openldap_avl_insert,g' SUBST_SED.conflict+= -e 's,avl_delete,openldap_avl_delete,g' SUBST_SED.conflict+= -e 's,avl_find,openldap_avl_find,g' SUBST_SED.conflict+= -e 's,avl_find2,openldap_avl_find2,g' SUBST_MESSAGE.conflict= Fixing conflicting function prototypes. CPPFLAGS.Darwin+= -DBIND_8_COMPAT CPPFLAGS.Linux+= -D_GNU_SOURCE CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} CONFIGURE_ARGS+= --localstatedir=${OPENLDAP_VARDIR} CONFIGURE_ARGS+= --enable-dynamic CONFIGURE_ARGS+= --with-tls=openssl .if !empty(USE_CROSS_COMPILE:M[yY][eE][sS]) && ${OPSYS} == "NetBSD" # Probably true for more than just NetBSD. CONFIGURE_ARGS+= --with-yielding_select=yes CONFIGURE_ENV+= ac_cv_func_memcmp_working=yes .endif EGDIR= ${PREFIX}/share/examples/openldap CONF_FILES= # empty CONF_FILES_PERMS= # empty .for file in ${CNFS} CONF_FILES+= ${EGDIR}/${file} ${OPENLDAP_ETCDIR}/${file} .endfor .for file in ${CNFS_PERMS} CONF_FILES_PERMS+= ${EGDIR}/${file} ${OPENLDAP_ETCDIR}/${file} ${OPENLDAP_FILEPERMS} .endfor DB_CONFIG?= # empty PTHREAD_OPTS+= require CONFIGURE_ARGS+= --without-fetch .include "../../security/openssl/buildlink3.mk" #.include "../../security/tcp_wrappers/buildlink3.mk" .include "../../mk/pthread.buildlink3.mk" .if ${PTHREAD_TYPE} == "native" CONFIGURE_ARGS+= --with-threads .elif ${PTHREAD_TYPE} == "pth" CONFIGURE_ARGS+= --with-threads=pth # Don't use a larger FD_SETSIZE than GNU Pth can handle (value taken from # pth.h header). PTH_FDSETSIZE_cmd= \ if ${TEST} -f ${BUILDLINK_PREFIX.pth:Q}/include/pth.h; then \ ${AWK} '/if FD_SETSIZE >/ { print $$4 }' \ ${BUILDLINK_PREFIX.pth}/include/pth.h; \ else \ ${ECHO} 0; \ fi CPPFLAGS+= -DOPENLDAP_FD_SETSIZE=${PTH_FDSETSIZE_cmd:sh:Q} .endif # OpenLDAP hardcodes this to 4096, disregarding the OS default. .if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) CPPFLAGS+= -DOPENLDAP_FD_SETSIZE=65536 .endif MAKE_FLAGS+= moduledir=${OPENLDAP_MODULEDIR} INSTALL_MAKE_FLAGS= ${MAKE_FLAGS} sysconfdir=${EGDIR} # Set the correct file modes for the example config files. post-install: .for file in ${CNFS} ${CNFS_PERMS} ${DB_CONFIG} ${CHMOD} ${SHAREMODE} ${DESTDIR}${EGDIR}/${file:Q} ${RM} -f ${DESTDIR}${EGDIR}/${file:Q}.default .endfor