1 # $OpenLDAP$ 2 3 LDAP_SRC = ../../.. 4 LDAP_BUILD = $(LDAP_SRC) 5 LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd 6 LDAP_LIB = $(LDAP_BUILD)/libraries/libldap/libldap.la \ 7 $(LDAP_BUILD)/libraries/liblber/liblber.la 8 9 PLAT = UNIX 10 NT_LIB = -L$(LDAP_BUILD)/servers/slapd -lslapd 11 NT_LDFLAGS = -no-undefined -avoid-version 12 UNIX_LDFLAGS = -version-info $(LTVER) 13 14 LIBTOOL = $(LDAP_BUILD)/libtool 15 INSTALL = /usr/bin/install 16 CC = gcc 17 OPT = -g -O2 18 DEFS = -DSLAPD_OVER_RBAC=SLAPD_MOD_DYNAMIC 19 INCS = $(LDAP_INC) 20 LIBS = $($(PLAT)_LIB) $(LDAP_LIB) 21 LD_FLAGS = $(LDFLAGS) $($(PLAT)_LDFLAGS) -rpath $(moduledir) -module 22 23 PROGRAMS = rbac.la 24 MANPAGES = slapo-rbac.5 25 26 LTVER = 0:0:0 27 28 prefix=/usr/local 29 exec_prefix=$(prefix) 30 ldap_subdir=/openldap 31 32 libdir=$(exec_prefix)/lib 33 libexecdir=$(exec_prefix)/libexec 34 moduledir = $(libexecdir)$(ldap_subdir) 35 mandir = $(exec_prefix)/share/man 36 man5dir = $(mandir)/man5 37 38 SRCS = rbac.c rbacperm.c rbacsess.c rbacuser.c rbacreq.c rbacaudit.c init.c rbacacl.c util.c jts.c 39 OBJS = $(patsubst %.c,%.o,$(SRCS)) 40 LOBJS = $(patsubst %.c,%.lo,$(SRCS)) 41 42 .SUFFIXES: .c .lo 43 44 %.lo: %.c rbac.h 45 $(LIBTOOL) --mode=compile $(CC) $(CFLAGS) $(OPT) $(CPPFLAGS) $(DEFS) $(INCS) -c $< 46 47 all: $(PROGRAMS) 48 49 rbac.la: $(LOBJS) 50 $(LIBTOOL) --mode=link $(CC) $(LD_FLAGS) -o $@ $? $(LIBS) 51 52 clean: 53 rm -rf *.o *.lo *.la .libs 54 55 install: install-lib install-man FORCE 56 57 install-lib: $(PROGRAMS) 58 mkdir -p $(DESTDIR)$(moduledir) 59 for p in $(PROGRAMS) ; do \ 60 $(LIBTOOL) --mode=install cp $$p $(DESTDIR)$(moduledir) ; \ 61 done 62 63 install-man: $(MANPAGES) 64 mkdir -p $(DESTDIR)$(man5dir) 65 $(INSTALL) -m 644 $(MANPAGES) $(DESTDIR)$(man5dir) 66 67 FORCE: 68 69