From f278e978eecce33ae8f2bed2410fb20763d0cf8d Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Fri, 21 Aug 1998 06:12:14 +0000 Subject: [PATCH] Added ACL Group flag to Make-common and fixed up SERVERDEFS --- Make-common.dist | 251 ++++++++++++++++++++++++++ build/Make-append | 14 +- libraries/libldbm/Make-template | 8 +- servers/slapd/Make-template | 2 +- servers/slapd/back-ldbm/Make-template | 2 +- 5 files changed, 263 insertions(+), 14 deletions(-) create mode 100644 Make-common.dist diff --git a/Make-common.dist b/Make-common.dist new file mode 100644 index 0000000000..c45a0b4272 --- /dev/null +++ b/Make-common.dist @@ -0,0 +1,251 @@ +#----------------------------------------------------------------------------- +# Copyright (c) 1994 Regents of the University of Michigan. +# All rights reserved. +# +# Redistribution and use in source and binary forms are permitted +# provided that this notice is preserved and that due credit is given +# to the University of Michigan at Ann Arbor. The name of the University +# may not be used to endorse or promote products derived from this +# software without specific prior written permission. This software +# is provided ``as is'' without express or implied warranty. +# +# LDAP common Make defines (included in all but top-level Makefile) +# +#----------------------------------------------------------------------------- + +############################################################################# +## Edit the following variables to have appropriate values for your system ## +############################################################################# + +############################################################################# +## LDAP install paths ## +############################################################################# +# by default, everything is installed below INSTROOT +# config files, etc. are put in ETCDIR +# include files get put in INCLUDEDIR +# libraries are put in LIBDIR +# man pages are put under MANDIR +# programs end-users will run are put in BINDIR +# programs sysadmins will run are put in SBINDIR +# servers are put in LIBEXECDIR +# pid/args files are put in RUNDIR +# +# Per platform defaults override these. +# +LDAP_PREFIX?= /usr/local +LDAP_INSTROOT?= $(LDAP_PREFIX) +LDAP_ETCDIR?= $(LDAP_INSTROOT)/etc/ldap +LDAP_INCDIR?= $(LDAP_INSTROOT)/include +LDAP_LIBDIR?= $(LDAP_INSTROOT)/lib +LDAP_MANDIR?= $(LDAP_INSTROOT)/man +LDAP_BINDIR?= $(LDAP_INSTROOT)/bin +LDAP_SBINDIR?=$(LDAP_INSTROOT)/sbin +LDAP_LIBEXECDIR?= $(LDAP_INSTROOT)/libexec +LDAP_RUNDIR?= $(LDAP_ETCDIR) + +############################################################################# +## General compiler options ## +############################################################################# +# Passed to every compile (cc or gcc). This is where you put -O or -g, etc. +#EXTRACFLAGS=-O -g +#EXTRACFLAGS=-O +EXTRACFLAGS?=-g +# Passed to every link (ld). Include -g here if you did in EXTRACFLAGS. +EXTRALDFLAGS?=-g + +############################################################################# +## If you are NOT using Kerberos authentication, you can skip this section.## +############################################################################# +# +# Otherwise, to enable kerberos authentication, uncomment KERBEROS (and +# AFSKERBEROS if you are running the AFS version of kerberos). Also +# uncomment and change the various KRB* lines to point to where the +# kerberos libraries and include files are installed at your site. +# +#KERBEROS=-DKERBEROS +#AFSKERBEROS=-DAFSKERBEROS +#KRBINCLUDEFLAG = -I/usr/local/kerberos/include +#KRBLIBFLAG = -L/usr/local/kerberos/lib +#KRBLIBS = -lkrb -ldes + +############################################################################# +## ISODE is required ONLY to build the ldap <-> X.500 server (ldapd) ## +## If you don't want to build it, you can skip this section. ## +############################################################################# +# +# To build the ldap server, uncomment the HAVEISODE line, +# and the section describing build settings for your version of isode. +# +#HAVEISODE = yes +# If you compiled ISODE with TURBO_DISK defined, uncomment this +#ISODETURBOLIBS = -lgdbm +# uncomment these to have ldapd "pretty print" protocol elements w/debugging +#PEPSY_DUMP=-DPEPSY_DUMP +#PEPSY=/usr/local/ic/bin/pepsy +# uncommment this line to have ldapd load PP syntax handlers +# you'll also need to add -lpp to ISODEBASELIBS below +#LDAP_USE_PP=-DLDAP_USE_PP +# uncomment NO_SETPROCTITLE to have ldapd NOT change its title +#NO_SETPROCTITLE=-DNOSETPROCTITLE +# +# ISODE Consortium release build settings +# You should change the next line so that ICRELEASE matches the (integer) +# version number of whatever IC release you have, e.g. 1, 2, or 3 and +# also uncomment the next 5 lines. +#ICRELEASE=-DICRELEASE=1 +#ISODEPACKAGE=-DISODEPACKAGE=IC +#ISODEINCLUDEFLAG= -I/usr/local/ic/include/isode -I/usr/local/ic/include +#ISODELIBFLAG = -L/usr/local/ic/lib +#ISODEBASELIBS = -lisode +# +# Freely available ISODE 8.0 release build settings (uncomment the next 4 lines) +#ISODEPACKAGE=-DISODEPACKAGE +#ISODEINCLUDEFLAG= -I/usr/local/isode/include +#ISODELIBFLAG = -L/usr/local/isode/lib +#ISODEBASELIBS = -ldsap -lisode +# +# NEXOR ISODE release build settings (uncomment the next 4 lines) +#ISODEPACKAGE=-DISODEPACKAGE=XT +#ISODEINCLUDEFLAG= -I/usr/include/isode +#ISODELIBFLAG = -L/usr/local/lib -L/usr/sunlink/osi/lib +#ISODEBASELIBS = -lxtpp -lresolv -lxtdsap -lxtisode -losi + +############################################################################# +## If you don't want to run slapd, skip this section. ## +############################################################################# +# +# To build slapd (the stand-alone ldap daemon), uncomment the MAKESLAPD +# line and select the SLAPD_BACKENDS you want to use. If you enable the +# LDBM backend, also select one of the LDBM backends. +MAKESLAPD= yes +# +# remove the defines for backends you don't want to enable +SLAPD_BACKENDS= -DLDAP_LDBM -DLDAP_SHELL -DLDAP_PASSWD +# +# If you have included -DLDAP_LDBM in the SLAPD_BACKENDS line you need +# to specify which low-level database package to use. There are +# four choices: Berkeley db b-tree, Berkeley db hash, GNU dbm, or ndbm. +# You will also need to edit the include and lib strings appropriately. +# +# berkeley db btree package +#LDBMLIB=-ldb +#LDBMBACKEND?=-DLDBM_USE_DBBTREE +#LDBMINCLUDE?=-I/usr/local/db/include +#LDBMLIB?=-ldb +# berkeley db hash package +#LDBMBACKEND?=-DLDBM_USE_DBHASH +#LDBMINCLUDE?=-I/usr/local/db/include +#LDBMLIB?=-ldb +# gnu dbm (gdbm) +#LDBMBACKEND?=-DLDBM_USE_GDBM +#LDBMINCLUDE?=-I/usr/local/gdbm/include +#LDBMLIB?=-lgdbm +# standard unix ndbm +LDBMBACKEND?=-DLDBM_USE_NDBM +LDBMINCLUDE?= +LDBMLIB?= + +#undef these if you have SLEEPYCAT DB2 installed +#LDBMBACKEND=-DLDBM_USE_DBBTREE -DHAVE_SLEEPYCAT_DB2 +#LDBMINCLUDE=-I/usr/local/include +#LDBMLIB=-L/usr/local/lib -ldb + +# if you want to use a non-default threads package change the defines below +# to one of: +# -DPOSIX_THREADS (draft 10 or standard) +# -DTHREAD_MIT_PTHREADS (draft 4) +# -DTHREAD_NEXT_CTHREADS +# -DTHREAD_DCE_PTHREADS +# -DTHREAD_SUNOS4_LWP +# -DTHREAD_SUNOS5_LWP +# and select the appropriate library. +#THREADS?=-DNO_THREADS +#THREADSLIB?= + +# Locations of auxilary programs +# (excepts to below are generally defined in Make-platform) +LDAP_SENDMAIL?=/usr/lib/sendmail +LDAP_EDITOR?=/usr/ucb/vi +LDAP_FINGER?=/usr/ucb/finger + +# For generation of compressed man pages +# (excepts to below are generally defined in Make-platform) +MANCOMPRESS?=cat +MANCOMPRESSSUFFIX?= + +############################################################################# +## The following options are used by the xax500 client. If you haven't ## +## retrieved the xax500 source and dropped it into the "clients" ## +## directory, you can skip this section. ## +############################################################################# +# +# location of your X include files +#XINCLUDES= -I/usr/X11/include +# +# location of your X libraries +#XLIBDIRS=-L/usr/X11/lib +# +# include any extra X libraries you need here +# the following works with sunos 4 and X11R5 +#XLIBS = $(XLIBDIRS) -lXm -lXt -lX11 +# the following has been known to work with Solaris 2.4 and X11R6 +#XLIBS = $(XLIBDIRS) -lXm -lXext -lSM -lICE -lXpm -lXt -lX11 + +############################################################################# +## If you don't want to do auto-translation of character sets, skip this ## +############################################################################# +# +# Otherwise, uncomment this line and set the following options. +#STR_TRANSLATION=-DSTR_TRANSLATION +# +# remove the defines for LDAP client library T.61 character translation +# you do not need. If you use LDAP_CHARSET_8859, replace the '1' in "88591" +# with the number of the particular character set you use. E.g., use "88594" +# if you use the ISO 8859-4 chracter set. +#LIBLDAP_CHARSETS=-DLDAP_CHARSET_8859="88591" +# +# uncomment one these lines to enable automatic T.61 translation by default +#LIBLDAP_DEF_CHARSET=-DLDAP_DEFAULT_CHARSET=LDAP_CHARSET_8859 + +############################################################################# +## General options ## +############################################################################# +# uncomment this line to enable debugging code (a good idea) +LDAP_DEBUG=-DLDAP_DEBUG + +# uncomment this line to turn on a few U of Michigan specific things +#UOFM=-DUOFM + +# uncomment this line to delete a few printfs in the lber and ldap libraries. +#NO_USERINTERFACE=-DNO_USERINTERFACE + +# uncomment this line to include Connectionless LDAP support +#CLDAP=-DCLDAP + +# uncomment this line to eliminate local caching support in the libldap +#NO_CACHE=-DNO_CACHE + +# uncomment this line to do reverse lookups (useful for doing ACLs +# by host/domain names) +LDAP_REVERSE_LOOKUP=-DREVERSE_LOOKUP + +# uncomment this line to enable support for LDAP referrals in libldap +LDAP_REFERRALS=-DLDAP_REFERRALS + +# uncomment this line to enable ACL by groups +# LDAP_ACLGROUP=-DACLGROUP + +# uncomment these lines to enable support for CRYPT passwords in LDBM. +# LDAP_CRYPT=-DLDAP_CRYPT +# LDAP_CRYPT_LIB?= +# and comment this line out +LDAP_CRYPT_LIB= + +# uncomment these lines to enable support fro tcp_wrappers in servers. +# Requires tcp_wrappers. +# LDAP_TCP_WRAPPERS=-DTCP_WRAPPERS -I/usr/local/include +# LDAP_TCP_WRAPPERS_LIB=-L/usr/local/lib -lwrap + +# uncomment this line to use soundex for approximate matches in slapd. +# the default is to use the metaphone algorithm. +#PHONETIC=-DSOUNDEX diff --git a/build/Make-append b/build/Make-append index 67a2f29bb0..7998a98dcf 100644 --- a/build/Make-append +++ b/build/Make-append @@ -22,13 +22,17 @@ DEFS = $(PLATFORMCFLAGS) $(LDAP_DEBUG) $(KERBEROS) $(AFSKERBEROS) \ $(UOFM) $(UOFA) $(NO_USERINTERFACE) $(CLDAP) $(NO_CACHE) \ $(LDAP_REFERRALS) $(LDAP_DNS) $(STR_TRANSLATION) \ - $(LIBLDAP_CHARSETS) $(LIBLDAP_DEF_CHARSET) \ - $(SLAPD_BACKENDS) $(LDBMBACKEND) $(LDBMINCLUDE) $(PHONETIC) + $(LIBLDAP_CHARSETS) $(LIBLDAP_DEF_CHARSET) + +# LDBMDEFS are included by servers (though only slapd only cares) +# and libldbm +LDBMDEFS = $(SLAPD_BACKENDS) $(LDBMBACKEND) $(LDBMINCLUDE) # SERVERDEFS are added to server builds CFLAGS (in addition to DEFS) SERVERDEFS = $(ISODEPACKAGE) $(ICRELEASE) $(LDAP_USE_PP) \ - $(NO_SETPROCTITLE) $(PEPSY_DUMP) - + $(NO_SETPROCTITLE) $(PEPSY_DUMP) \ + $(LDAP_REVERSE_LOOKUP) $(LDAP_CRYPT) $(LDAP_ACLGROUP) \ + $(PHONETIC) $(LDBMDEFS) # # ISODELIBS are used in server/ldapd builds # @@ -65,7 +69,7 @@ INSTALL = install INSTALLFLAGS = -c BASENAME= basename DIRNAME = dirname -MKDEP = $(LDAPSRC)/build/mkdep -s -f Make-template +MKDEP = $(LDAPSRC)/build/mkdep -s -f Makefile PWD = pwd DATE = date HOSTNAME= hostname diff --git a/libraries/libldbm/Make-template b/libraries/libldbm/Make-template index 09ad2ee08f..f91baade9d 100644 --- a/libraries/libldbm/Make-template +++ b/libraries/libldbm/Make-template @@ -21,7 +21,7 @@ OBJS = ldbm.o HDIR = ../../include INCLUDES= -I$(HDIR) -DEFINES = $(DEFS) +DEFINES = $(DEFS) $(LDBMDEFS) CFLAGS = $(INCLUDES) $(DEFINES) $(ACFLAGS) @@ -63,9 +63,3 @@ depend: FORCE links: @$(LN) .src/*.[ch] . -# DO NOT DELETE THIS LINE -- mkdep uses it. -# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. - -ldbm.o: ldbm.c ../../include/ldbm.h - -# IF YOU PUT ANYTHING HERE IT WILL GO AWAY diff --git a/servers/slapd/Make-template b/servers/slapd/Make-template index 25a827a904..01ef5cc0e0 100644 --- a/servers/slapd/Make-template +++ b/servers/slapd/Make-template @@ -33,7 +33,7 @@ OBJS = main.o daemon.o connection.o search.o filter.o add.o charray.o \ schema.o schemaparse.o monitor.o configinfo.o INCLUDES= -I. -I$(HDIR) $(KRBINCLUDEFLAG) -DEFINES = $(DEFS) $(LDAP_CRYPT) $(LDAP_TCP_WRAPPERS) $(SERVERDEFS) +DEFINES = $(DEFS) $(SERVERDEFS) CFLAGS = $(INCLUDES) $(THREADSINCLUDE) $(DEFINES) $(ACFLAGS) $(THREADS) LDFLAGS = -L$(LDIR) $(KRBLIBFLAG) LIBS = $(KRBLIBS) -llber -lldbm -lavl -llthread -lldif \ diff --git a/servers/slapd/back-ldbm/Make-template b/servers/slapd/back-ldbm/Make-template index cd5084cb10..4cc4e0a173 100644 --- a/servers/slapd/back-ldbm/Make-template +++ b/servers/slapd/back-ldbm/Make-template @@ -27,7 +27,7 @@ OBJS = idl.o add.o search.o cache.o dbcache.o dn2id.o id2entry.o \ filterindex.o unbind.o kerberos.o close.o group.o INCLUDES= -I. -I.. -I$(HDIR) $(KRBINCLUDEFLAG) -DEFINES = $(DEFS) $(LDAP_CRYPT) $(THREADS) +DEFINES = $(DEFS) $(SERVERDEFS) $(THREADS) CFLAGS = $(INCLUDES) $(THREADSINCLUDE) $(DEFINES) $(ACFLAGS) LDFLAGS = -L$(LDIR) $(KRBLIBFLAG) $(LDAP_CRYPT_LIB) -- 2.47.2