# $OpenLDAP$
-OPENLDAP_SRC=../../..
-OPENLDAP_BLD=../../..
-CPPFLAGS+=-I${OPENLDAP_SRC}/include -I${OPENLDAP_SRC}/servers/slapd -I${OPENLDAP_BLD}/include
-CC=gcc
-all: addpartial-overlay.so
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-addpartial-overlay.so: addpartial-overlay.c
- $(CC) -shared $(CPPFLAGS) $(LDFLAGS) -Wall -o $@ $?
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS =
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
+
+PROGRAMS = addpartial.la
+LTVER = 0:0:0
+
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
+
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
+
+.SUFFIXES: .c .o .lo
+
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
+
+all: $(PROGRAMS)
+
+addpartial.la: addpartial-overlay.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm addpartial-overlay.so
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
+
processed millions of records without incident.
BUILDING
- A Makefile is included, please set your OPENLDAP_SRC directory properly.
+ A Makefile is included, please set your LDAP_SRC directory properly.
INSTALLATION
After compiling the addpartial overlay, add the following to your
### slapd.conf
...
- moduleload /path/to/addpartial-overlay.so
+ moduleload addpartial.so
...
# after database directive...
# this overlay should be the last overlay in the config file to ensure that
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-PREFIX=/opt/openldap-HEAD
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-LIBTOOL=../../../libtool
-OPT=-g -O2
-CC=gcc
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DSLAPD_OVER_ALLOWED=SLAPD_MOD_DYNAMIC
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
-DEFS=-DSLAPD_OVER_ALLOWED=SLAPD_MOD_DYNAMIC
+PROGRAMS = allowed.la
+LTVER = 0:0:0
-LDAP_INC=-I../../../include -I../../../servers/slapd
-INCS=$(LDAP_INC)
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
-LDAP_LIB=-lldap_r -llber -L../../../lib
-LDAP_LIB=
-LIBS=$(LDAP_LIB)
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
-all: allowed.la
+.SUFFIXES: .c .o .lo
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-allowed.lo: allowed.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
+all: $(PROGRAMS)
-allowed.la: allowed.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
- -rpath $(PREFIX)/lib -module -o $@ $? $(LIBS)
+allowed.la: allowed.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f allowed.o allowed.lo allowed.la
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
-install: allowed.la
- mkdir -p $(PREFIX)/libexec/openldap
- $(LIBTOOL) --mode=install cp allowed.la $(PREFIX)/libexec/openldap
- $(LIBTOOL) --finish $(PREFIX)/libexec/openldap
--- o --- o --- o ---
-No Makefile is provided. Use a command line similar to:
+Use Makefile to compile this plugin or use a command line similar to:
gcc -shared -I../../../include -I../../../servers/slapd -Wall -g \
-o allowed.so allowed.c
-to compile this overlay, or even better use OpenLDAP's libtool as appropriate.
-
---
This work is part of OpenLDAP Software <http://www.openldap.org/>.
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-LIBTOOL=../../../libtool
-OPT=-g -O2
-#LIBTOOL=../../../../ldap-devel/libtool
-#OPT=-g -O0
-CC=gcc
-
-LDAP_INC=-I../../../include -I../../../servers/slapd
-#LDAP_INC=-I../../../include -I../../../servers/slapd -I../../../../ldap-devel/include
-INCS=$(LDAP_INC)
-
-LDAP_LIB=-lldap_r -llber
-LIBS=$(LDAP_LIB)
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
+
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS =
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
+
+PROGRAMS = authzid.la
+LTVER = 0:0:0
prefix=/usr/local
exec_prefix=$(prefix)
libexecdir=$(exec_prefix)/libexec
moduledir = $(libexecdir)$(ldap_subdir)
-all: authzid.la
+.SUFFIXES: .c .o .lo
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-authzid.lo: authzid.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
+all: $(PROGRAMS)
-authzid.la: authzid.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+authzid.la: authzid.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f authzid.lo authzid.la
+ rm -rf *.o *.lo *.la .libs
-install: authzid.la
+install: $(PROGRAMS)
mkdir -p $(DESTDIR)$(moduledir)
- $(LIBTOOL) --mode=install cp authzid.la $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
-LIBTOOL=../../../libtool
+# $OpenLDAP$
-CPPFLAGS+=-I../../../include -I../../../servers/slapd
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
+
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS =
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
+
+PROGRAMS = autogroup.la
+LTVER = 0:0:0
-ldap_subdir = openldap
prefix=/usr/local
-exec_prefix = $(prefix)
-libdir = $(exec_prefix)/lib
-libexecdir = $(exec_prefix)/libexec
-moduledir = $(exec_prefix)/libexec/$(ldap_subdir)
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
+
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
-all: autogroup.la
+.SUFFIXES: .c .o .lo
-autogroup.lo: autogroup.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -Wall -c $?
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-autogroup.la: autogroup.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
- -rpath $(libdir) -module -o $@ $?
+all: $(PROGRAMS)
+
+autogroup.la: autogroup.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f autogroup.lo autogroup.la
+ rm -rf *.o *.lo *.la .libs
-install: autogroup.la
+install: $(PROGRAMS)
mkdir -p $(DESTDIR)$(moduledir)
- $(LIBTOOL) --mode=install cp autogroup.la $(DESTDIR)$(moduledir)
- $(LIBTOOL) --finish $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
+
# $OpenLDAP$
-CPPFLAGS+=-I../../../include -I../../../servers/slapd
-CPPFLAGS+=-DSLAPD_OVER_CLOAK=SLAPD_MOD_DYNAMIC
-LIBS=-lldap_r -llber -lcrypto
-LIBTOOL=../../../libtool
-all: cloak.la
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-cloak.lo: cloak.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -c $?
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DSLAPD_OVER_CLOAK=SLAPD_MOD_DYNAMIC
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
-cloak.la: cloak.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
- -rpath $(PREFIX)/lib -module -o $@ $? $(LIBS)
+PROGRAMS = cloak.la
+LTVER = 0:0:0
+
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
+
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
+
+.SUFFIXES: .c .o .lo
+
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
+
+all: $(PROGRAMS)
+
+cloak.la: cloak.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm cloak.lo cloak.la
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
+
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-topsrcdir = ../../..
-snaccdir = ../$(topsrcdir)/snacc
-openssldir = /usr/local/include/openssl
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-LIBTOOL=$(topsrcdir)/libtool
-OPT=-g -O2 -DLDAP_COMPONENT
-CC=gcc
+SNACC_DIR = ../$(LDAP_SRC)/snacc
+SNACC_INC = -I$(SNACC_DIR) -I$(SNACC_DIR)/c-lib/inc
+SNACC_LIB = $(SNACC_DIR)/c-lib/libcasn1.a
-SNACC_INC=-I$(snaccdir) -I$(snaccdir)/c-lib/inc
-LDAP_INC=-I$(topsrcdir)/include -I$(topsrcdir)/servers/slapd -I$(topbuilddir)/include
-OPENSSL_INC=-I$(openssldir)
-INCS=$(LDAP_INC) $(SNACC_INC) $(OPENSSL_INC)
+SSL_DIR = /usr/local
+SSL_INC = -I$(SSL_DIR)/include/openssl
+SSL_LIB = -lcrypto -L$(SSL_DIR)/lib
-SNACC_LIB=$(snaccdir)/c-lib/libcasn1.a
-SSL_LIB=/usr/local/lib/lcrypto
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DLDAP_COMPONENT
+INCS = $(LDAP_INC) $(SNACC_INC) $(SSL_INC)
+LIBS = $(LDAP_LIB) $(SNACC_LIB) $(SSL_LIB)
-LIBS=$(LDAP_LIB) $(SNACC_LIB) $(SSL_LIB)
+PROGRAMS = compmatch.la
+LTVER = 0:0:0
-all: compmatch.la
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
-componentlib.lo: componentlib.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(INCS) -c $?
+.SUFFIXES: .c .o .lo
-certificate.lo: certificate.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(INCS) -c $?
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-crl.lo: crl.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(INCS) -c $?
+all: $(PROGRAMS)
-authorityKeyIdentifier.lo: authorityKeyIdentifier.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(INCS) -c $?
+compmatch.la: componentlib.lo init.lo certificate.lo asn_to_syn_mr.lo authorityKeyIdentifier.lo crl.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
-asn_to_syn_mr.lo: asn_to_syn_mr.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(INCS) -c $?
-
-init.lo: init.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(INCS) -c $?
+clean:
+ rm -rf *.o *.lo *.la .libs
-compmatch.la: componentlib.lo init.lo certificate.lo asn_to_syn_mr.lo authorityKeyIdentifier.lo crl.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) $(LIBS) -version-info 0:0:0 \
- -rpath /usr/local/libexec/openldap -module -o $@ $? $(LIBS)
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
-clean:
- \rm compmatch.la componentlib.lo certificate.lo asn_to_syn_mr.lo authorityKeyIdentifier.lo crl.lo\
- init.o init.lo componentlib.o certificate.o asn_to_syn_mr.o authorityKeyIdentifier.o crl.o
-install:
- cp -r .libs $(topsrcdir)/tests/data/comp_libs
- cp compmatch.la $(topsrcdir)/tests/data/comp_libs
To use the plugin, add:
-moduleload libdsaschema-plugin.so
+moduleload dsaschema.so
/etc/openldap/schema/foo1.schema
...etc...
/etc/openldap/schema/fooN.schema
Use Makefile to compile this plugin or use a command line similar to:
-gcc -shared -I../../../include -Wall -g -o libdsaschema-plugin.so dsaschema.c
+gcc -shared -I../../../include -Wall -g -o dsaschema.so dsaschema.c
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-LIBTOOL=../../../libtool
-OPT=-DSLAPD_OVER_DUPENT=2 -g -O2
-#LIBTOOL=../../../../ldap-devel/libtool
-#OPT=-DSLAPD_OVER_DUPENT=2 -g -O0
-CC=gcc
-
-LDAP_INC=-I../../../include -I../../../servers/slapd
-#LDAP_INC=-I../../../include -I../../../servers/slapd -I../../../../ldap-devel/include
-INCS=$(LDAP_INC)
-
-LDAP_LIB=-lldap_r -llber
-LIBS=$(LDAP_LIB)
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
+
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DSLAPD_OVER_DUPENT=SLAPD_MOD_DYNAMIC
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
+
+PROGRAMS = dupent.la
+LTVER = 0:0:0
prefix=/usr/local
exec_prefix=$(prefix)
libexecdir=$(exec_prefix)/libexec
moduledir = $(libexecdir)$(ldap_subdir)
-all: dupent.la
+.SUFFIXES: .c .o .lo
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-dupent.lo: dupent.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
+all: $(PROGRAMS)
-dupent.la: dupent.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+dupent.la: dupent.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f dupent.lo dupent.la
+ rm -rf *.o *.lo *.la .libs
-install: dupent.la
+install: $(PROGRAMS)
mkdir -p $(DESTDIR)$(moduledir)
- $(LIBTOOL) --mode=install cp dupent.la $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-CPPFLAGS+=-I../../../include -I../../../servers/slapd
-CPPFLAGS+=-DSLAPD_OVER_LASTBIND=SLAPD_MOD_DYNAMIC
-#LIBTOOL=libtool
-LIBTOOL=../../../libtool
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
+
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DSLAPD_OVER_LASTBIND=SLAPD_MOD_DYNAMIC
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
+
+PROGRAMS = lastbind.la
+LTVER = 0:0:0
prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
+
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
-all: lastbind.la
+.SUFFIXES: .c .o .lo
-lastbind.lo: lastbind.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -Wall -c $?
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-lastbind.la: lastbind.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
- -rpath $(prefix)/lib -module -o $@ $?
+all: $(PROGRAMS)
+
+lastbind.la: lastbind.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -rf lastbind.lo lastbind.la lastbind.o .libs/
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
-install: lastbind.la
- mkdir -p $(prefix)/libexec/openldap
- $(LIBTOOL) --mode=install cp lastbind.la $(prefix)/libexec/openldap
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-LIBTOOL=../../../libtool
-OPT=-DSLAPD_OVER_NOOPSRCH=2 -g -O2
-#LIBTOOL=../../../../ldap-devel/libtool
-#OPT=-DSLAPD_OVER_NOOPSRCH=2 -g -O0
-CC=gcc
-
-LDAP_INC=-I../../../include -I../../../servers/slapd
-#LDAP_INC=-I../../../include -I../../../servers/slapd -I../../../../ldap-devel/include
-INCS=$(LDAP_INC)
-
-LDAP_LIB=-lldap_r -llber
-LIBS=$(LDAP_LIB)
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
+
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DSLAPD_OVER_NOOPSRCH=SLAPD_MOD_DYNAMIC
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
+
+PROGRAMS = noopsrch.la
+LTVER = 0:0:0
prefix=/usr/local
exec_prefix=$(prefix)
libexecdir=$(exec_prefix)/libexec
moduledir = $(libexecdir)$(ldap_subdir)
-all: noopsrch.la
+.SUFFIXES: .c .o .lo
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-noopsrch.lo: noopsrch.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
+all: $(PROGRAMS)
-noopsrch.la: noopsrch.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+noopsrch.la: noopsrch.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f noopsrch.lo noopsrch.la
+ rm -rf *.o *.lo *.la .libs
-install: noopsrch.la
+install: $(PROGRAMS)
mkdir -p $(DESTDIR)$(moduledir)
- $(LIBTOOL) --mode=install cp noopsrch.la $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
# $OpenLDAP$
-CPPFLAGS+=-I../../../include -I../../../servers/slapd
-CPPFLAGS+=-DSLAPD_OVER_NOPS=SLAPD_MOD_DYNAMIC
-LIBS=-L$(PREFIX)/lib -lldap_r -llber -lcrypto
-all: nops.la
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-nops.lo: nops.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -c $?
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DSLAPD_OVER_NOPS=SLAPD_MOD_DYNAMIC
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
-nops.la: nops.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
- -rpath $(PREFIX)/lib -module -o $@ $? $(LIBS)
+PROGRAMS = nops.la
+LTVER = 0:0:0
+
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
+
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
+
+.SUFFIXES: .c .o .lo
+
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
+
+all: $(PROGRAMS)
+
+nops.la: nops.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f nops.lo nops.la
-
-install: nops.la
- mkdir -p $(PREFIX)/lib/openldap
- mkdir -p $(PREFIX)/man/man5
- $(LIBTOOL) --mode=install cp nops.la $(PREFIX)/lib/openldap
- $(LIBTOOL) --finish $(PREFIX)/lib
- cp nops.5 $(PREFIX)/man/man5
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
+
# <http://www.OpenLDAP.org/license.html>.
# Path to the OpenLDAP source tree
-LDAPSRC=../../..
+LDAP_SRC=../../..
# Path to the OpenLDAP object tree - same as above unless
# you're doing out-of-tree builds.
-LDAPOBJ=../../..
+LDAP_BUILD=../../..
-LIBTOOL=$(LDAPOBJ)/libtool
-OPT=-g -O2
-CC=gcc
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-LDAP_INC=-I$(LDAPOBJ)/include -I$(LDAPSRC)/include -I$(LDAPSRC)/servers/slapd
NLDAPD_INC=-Inss-pam-ldapd
-INCS=$(LDAP_INC) $(NLDAPD_INC)
-LDAP_LIB=-lldap_r -llber
-LIBS=$(LDAP_LIB)
+LIBTOOL = $(LDAP_BUILD)/libtool
+OPT = -g -O2 -Wall
+CC = gcc
+DEFS =
+INCS = $(LDAP_INC) $(NLDAPD_INC)
+LIBS = $(LDAP_LIB)
prefix=/usr/local
exec_prefix=$(prefix)
# $OpenLDAP$
-CPPFLAGS+=-I../../../include -I../../../servers/slapd
-all: kerberos.la netscape.la radius.la apr1.la
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-kerberos.lo: kerberos.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -DHAVE_KRB5 -Wall -c $?
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS =
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
-kerberos.la: kerberos.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
- -rpath $(PREFIX)/lib -module -o $@ $? -lkrb5
+PROGRAMS = pw-kerberos.la pw-netscape.la pw-radius.la pw-apr1.la
+LTVER = 0:0:0
-netscape.lo: netscape.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -Wall -c $?
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
-netscape.la: netscape.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
- -rpath $(PREFIX)/lib -module -o $@ $?
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
-radius.lo: radius.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -Wall -c $?
+.SUFFIXES: .c .o .lo
-radius.la: radius.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
- -rpath $(PREFIX)/lib -module -o $@ $? -lradius
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-apr1.lo: apr1.c
- $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) -Wall -c $?
+all: $(PROGRAMS)
+
+pw-kerberos.la: kerberos.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(PREFIX)/lib -module -o $@ $? -lkrb5
-apr1.la: apr1.lo
- $(LIBTOOL) --mode=link $(CC) -version-info 0:0:0 \
+pw-netscape.la: netscape.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(PREFIX)/lib -module -o $@ $?
+pw-radius.la: radius.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(PREFIX)/lib -module -o $@ $? -lradius
+
+pw-apr1.la: apr1.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(PREFIX)/lib -module -o $@ $?
+
clean:
- rm -f kerberos.lo kerberos.la
- rm -f netscape.lo netscape.la
- rm -f radius.lo radius.la
- rm -f apr1.lo apr1.la
-
-install: kerberos.la netscape.la radius.la apr1.la
- mkdir -p $(PREFIX)/lib/openldap
- $(LIBTOOL) --mode=install cp kerberos.la $(PREFIX)/lib/openldap
- $(LIBTOOL) --mode=install cp netscape.la $(PREFIX)/lib/openldap
- $(LIBTOOL) --mode=install cp radius.la $(PREFIX)/lib/openldap
- $(LIBTOOL) --mode=install cp apr1.la $(PREFIX)/lib/openldap
- $(LIBTOOL) --finish $(PREFIX)/lib
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
+
moduleload pw-radius.so config="/etc/radius.conf"
-No Makefile is provided. Use a command line similar to:
+Use Makefile to compile this plugin or use a command line similar to:
gcc -shared -I../../../include -Wall -g -DHAVE_KRB5 -o pw-kerberos.so kerberos.c
-to compile the Kerberos plugin. Replace HAVE_KRB5 with HAVE_KRB4 if you want
-to use Kerberos IV. If your Kerberos header files are not in the C compiler's
+Replace HAVE_KRB5 with HAVE_KRB4 if you want to use Kerberos IV.
+If your Kerberos header files are not in the C compiler's
default path, you will need to add a "-I" directive for that as well.
The corresponding command for the Netscape plugin would be:
gcc -shared -I../../../include -Wall -g -o pw-radius.so radius.c -lradius
-(Actually, you might want to statically link the RADIUS client library
+(Actually, you might want to statically link the RADIUS client library
libradius.a into the module).
The corresponding command for the APR1 plugin would be:
# $OpenLDAP$
-OPENLDAP := ../../../..
+LDAP_SRC = ../../../..
+LDAP_BUILD = ../../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-#CCFLAGS = -Wall -g -DSLAPD_SHA2_DEBUG
-CCFLAGS = -Wall -g
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS =
+#DEFS = -DSLAPD_SHA2_DEBUG
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
-slapd-sha2.so: slapd-sha2.o sha2.o
- $(CC) -I$(OPENLDAP)/include -shared -Wall -g $^ -o $@
+PROGRAMS = pw-sha2.la
+LTVER = 0:0:0
-%.o: %.c
- $(CC) -I$(OPENLDAP)/include $(CCFLAGS) -c $<
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
+
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
+
+.SUFFIXES: .c .o .lo
+
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
+
+all: $(PROGRAMS)
+
+pw-sha2.la: slapd-sha2.lo sha2.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- @rm -f slapd-sha2.so *.o
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
+
1) Customize the OPENLDAP variable in Makefile to point to the OpenLDAP
source root.
-For initial testing you might also want to edit CCFLAGS to define
+For initial testing you might also want to edit DEFS to define
SLAPD_SHA2_DEBUG, which enables logging to stderr (don't leave this on
in production, as it prints passwords in cleartext).
---------------------------------------------
To see what's going on, recompile with SLAPD_SHA2_DEBUG (use the
-commented-out CCFLAGS in Makefile), and then run slapd from the console
+commented-out DEFS in Makefile), and then run slapd from the console
to see stderr:
$ sudo /etc/init.d/slapd stop
ACKNOWLEDGEMENT:
This work was initially developed by Jeff Turner for inclusion in
-OpenLDAP Software, based upon the SHA2 implementation independently
+OpenLDAP Software, based upon the SHA-2 implementation independently
developed by Aaron Gifford.
# A copy of this license is available in the file LICENSE in the
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-#
-LIBTOOL=../../../libtool
-ROOT=../../../../..
-rundir=$(LIB)
-instdir=$(LIB)/openldap
-CFLAGS=-g -O2
-CC=$(C_CC)
-INSTALL=../../../build/shtool install -c
-LTVER=1:0:0
-INCS=-I../../../include -I../../../servers/slapd -I ../../../../../opt/symas/include
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-LIBS=../../../libraries/libldap_r/libldap_r.la ../../../libraries/liblber/liblber.la
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS =
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
-all: proxyOld.la
+PROGRAMS = proxyOld.la
+LTVER = 0:0:0
-proxyOld.lo: proxyOld.c
- $(LIBTOOL) --mode=compile $(CC) $(CFLAGS) $(DEFS) $(INCS) -c $?
+prefix=/usr/local
+exec_prefix=$(prefix)
+ldap_subdir=/openldap
-proxyOld.la: proxyOld.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) $(LDFLAGS) -version-info $(LTVER) \
- -rpath $(rundir) -module -o $@ $? $(LIBS) $(LIBEXTRAS)
+libdir=$(exec_prefix)/lib
+libexecdir=$(exec_prefix)/libexec
+moduledir = $(libexecdir)$(ldap_subdir)
+
+.SUFFIXES: .c .o .lo
+
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-install:
- -mkdir $(DESTDIR)$(instdir)
- $(LIBTOOL) --mode=install $(INSTALL) -m 644 proxyOld.la $(DESTDIR)$(instdir)
+all: $(PROGRAMS)
+
+proxyOld.la: proxyOld.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
+ -rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -rf *.o *.lo *.la .libs .libt
+ rm -rf *.o *.lo *.la .libs
+
+install: $(PROGRAMS)
+ mkdir -p $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
-veryclean: clean
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-LDAP_SRC=../../..
-# craft according to your installation
-LDAP_BUILD=../../..
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
+
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS = -DSLAPD_OVER_RDNVAL=SLAPD_MOD_DYNAMIC \
+ -DSLAPD_OVER_PGUID=SLAPD_MOD_DYNAMIC \
+ -DSLAPD_OVER_VERNUM=SLAPD_MOD_DYNAMIC
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
-LIBTOOL=$(LDAP_BUILD)/libtool
-OPT=-g -O2
-CC=gcc
-
-DEFS=-DSLAPD_OVER_RDNVAL=2 -DSLAPD_OVER_PGUID=2 -DSLAPD_OVER_VERNUM=2
-
-LDAP_INC=-I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd \
- -I$(LDAP_BUILD)/include
-INCS=$(LDAP_INC)
-
-LDAP_LIB=-lldap_r -llber
-LIBS=$(LDAP_LIB)
+PROGRAMS = pguid.la rdnval.la vernum.la
+LTVER = 0:0:0
prefix=/usr/local
exec_prefix=$(prefix)
libexecdir=$(exec_prefix)/libexec
moduledir = $(libexecdir)$(ldap_subdir)
-PROGRAMS = pguid.la rdnval.la vernum.la
+.SUFFIXES: .c .o .lo
-all: $(PROGRAMS)
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-pguid.lo: pguid.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
+all: $(PROGRAMS)
-pguid.la: pguid.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+pguid.la: pguid.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
-rdnval.lo: rdnval.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
-
-rdnval.la: rdnval.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+rdnval.la: rdnval.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
-vernum.lo: vernum.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
-
-vernum.la: vernum.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+vernum.la: vernum.lo
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f \
- pguid.o pguid.lo pguid.la \
- rdnval.o rdnval.lo rdnval.la \
- vernum.o vernum.lo vernum.la
+ rm -rf *.o *.lo *.la .libs
install: $(PROGRAMS)
mkdir -p $(DESTDIR)$(moduledir)
- pguid (not used)
- rdnval (under evaluation)
+ - vernum (under evaluation)
- PGUID
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-LIBTOOL=../../../libtool
-OPT=-g -O2
-CC=gcc
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
-# Omit DO_KRB5, DO_SAMBA or DO_SHADOW if you don't want to support it.
-DEFS=-DDO_KRB5 -DDO_SAMBA -DDO_SHADOW
+SSL_INC =
+SSL_LIB = -lcrypto
+
+HEIMDAL_INC = -I/usr/heimdal/include
+HEIMDAL_LIB = -L/usr/heimdal/lib -lkrb5 -lkadm5srv
-HEIMDAL_INC=-I/usr/heimdal/include
-SSL_INC=
-LDAP_INC=-I../../../include -I../../../servers/slapd
-INCS=$(LDAP_INC) $(HEIMDAL_INC) $(SSL_INC)
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+# Omit DO_KRB5, DO_SAMBA or DO_SHADOW if you don't want to support it.
+DEFS = -DDO_KRB5 -DDO_SAMBA -DDO_SHADOW
+INCS = $(LDAP_INC) $(HEIMDAL_INC) $(SSL_INC)
+LIBS = $(LDAP_LIB) $(HEIMDAL_LIB) $(SSL_LIB)
-HEIMDAL_LIB=-L/usr/heimdal/lib -lkrb5 -lkadm5srv
-SSL_LIB=-lcrypto
-LDAP_LIB=-lldap_r -llber
-LIBS=$(LDAP_LIB) $(HEIMDAL_LIB) $(SSL_LIB)
+PROGRAMS = smbk5pwd.la
+LTVER = 0:0:0
prefix=/usr/local
exec_prefix=$(prefix)
libexecdir=$(exec_prefix)/libexec
moduledir = $(libexecdir)$(ldap_subdir)
-all: smbk5pwd.la
+.SUFFIXES: .c .o .lo
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-smbk5pwd.lo: smbk5pwd.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
+all: $(PROGRAMS)
smbk5pwd.la: smbk5pwd.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f smbk5pwd.lo smbk5pwd.la
+ rm -rf *.o *.lo *.la .libs
-install: smbk5pwd.la
+install: $(PROGRAMS)
mkdir -p $(DESTDIR)$(moduledir)
- $(LIBTOOL) --mode=install cp smbk5pwd.la $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done
+
# top-level directory of the distribution or, alternatively, at
# <http://www.OpenLDAP.org/license.html>.
-LIBTOOL=../../../libtool
-OPT=-g -O2
-#LIBTOOL=../../../../ldap-devel/libtool
-#OPT=-g -O0
-CC=gcc
-
-LDAP_INC=-I../../../include -I../../../servers/slapd
-#LDAP_INC=-I../../../include -I../../../servers/slapd -I../../../../ldap-devel/include
-INCS=$(LDAP_INC)
-
-LDAP_LIB=-lldap_r -llber
-LIBS=$(LDAP_LIB)
+LDAP_SRC = ../../..
+LDAP_BUILD = ../../..
+LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
+LDAP_LIB = $(LDAP_BUILD)/libraries/libldap_r/libldap_r.la \
+ $(LDAP_BUILD)/libraries/liblber/liblber.la
+
+LIBTOOL = $(LDAP_BUILD)/libtool
+CC = gcc
+OPT = -g -O2 -Wall
+DEFS =
+INCS = $(LDAP_INC)
+LIBS = $(LDAP_LIB)
+
+PROGRAMS = vc.la
+LTVER = 0:0:0
prefix=/usr/local
exec_prefix=$(prefix)
libexecdir=$(exec_prefix)/libexec
moduledir = $(libexecdir)$(ldap_subdir)
-all: vc.la
+.SUFFIXES: .c .o .lo
+.c.lo:
+ $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $<
-vc.lo: vc.c
- $(LIBTOOL) --mode=compile $(CC) $(OPT) $(DEFS) $(INCS) -c $?
+all: $(PROGRAMS)
vc.la: vc.lo
- $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info 0:0:0 \
+ $(LIBTOOL) --mode=link $(CC) $(OPT) -version-info $(LTVER) \
-rpath $(moduledir) -module -o $@ $? $(LIBS)
clean:
- rm -f vc.lo vc.la
+ rm -rf *.o *.lo *.la .libs
-install: vc.la
+install: $(PROGRAMS)
mkdir -p $(DESTDIR)$(moduledir)
- $(LIBTOOL) --mode=install cp vc.la $(DESTDIR)$(moduledir)
+ for p in $(PROGRAMS) ; do \
+ $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \
+ done