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