-## Copyright 1998,1999 The OpenLDAP Foundation
-## COPYING RESTRICTIONS APPLY. See COPYRIGHT File in top level directory
-## of this package for details.
-##---------------------------------------------------------------------------
+# $OpenLDAP$
+## This work is part of OpenLDAP Software <http://www.openldap.org/>.
+##
+## Copyright 1998-2009 The OpenLDAP Foundation.
+## All rights reserved.
##
-## Makefile Template for Server Modules
+## Redistribution and use in source and binary forms, with or without
+## modification, are permitted only as authorized by the OpenLDAP
+## Public License.
##
+## 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>.
+##---------------------------------------------------------------------------
+#
+# Makefile Template for Server Modules
+#
-LIBRARY = lib$(LIBBASE).la
+LIBRARY = $(LIBBASE).la
LIBSTAT = lib$(LIBBASE).a
-MODULE = $(LIBBASE).so
-
-all-common: FORCE
- @if test "$(BUILD_MOD)" = "yes"; then \
- $(MAKE) $(MFLAGS) LTFLAGS=--only-shared all-mod; \
- elif test "$(BUILD_LIB)" = "yes" ; then \
- $(MAKE) $(MFLAGS) LTFLAGS=--only-static all-lib; \
- else \
- echo "run configure with $(BUILD_OPT) to build $(LIBBASE)"; \
- fi
-
-version.c: $(OBJS)
+
+MKDEPFLAG = -l
+
+.SUFFIXES: .c .o .lo
+
+.c.lo:
+ $(LTCOMPILE_MOD) $<
+
+all-no lint-no 5lint-no depend-no install-no: FORCE
+ @echo "run configure with $(BUILD_OPT) to make $(LIBBASE)"
+
+all-common: all-$(BUILD_MOD)
+
+version.c: Makefile
$(RM) $@
$(MKVERSION) $(LIBBASE) > $@
-$(LIBRARY): version.lo
- $(LTLIBLINK) -rpath $(libdir) -o $@ $(OBJS) version.lo
+version.lo: version.c $(OBJS)
-$(MODULE): $(LIBRARY)
- ln .libs/lib$(LIBBASE).so.0.0.0 $@
+$(LIBRARY): version.lo
+ $(LTLINK_MOD) -module -o $@ $(OBJS) version.lo $(LINK_LIBS)
$(LIBSTAT): version.lo
- $(AR) ruv $@ `echo $(OBJS) | sed s/\.lo/.o/g` version.o
+ $(AR) ruv $@ `echo $(OBJS) | sed 's/\.lo/.o/g'` version.o
@$(RANLIB) $@
clean-common: clean-lib FORCE
veryclean-common: veryclean-lib FORCE
-lint-common: FORCE
- @if test "$(BUILD_LIB)" = "yes" ; then \
- $(MAKE) $(MFLAGS) lint-lib; \
- else \
- echo "run configure with $(BUILD_OPT) to lint $(LIBBASE)"; \
- fi
-
-5lint-common: FORCE
- @if test "$(BUILD_LIB)" = "yes" ; then \
- $(MAKE) $(MFLAGS) 5lint-lib; \
- else \
- echo "run configure with $(BUILD_OPT) to 5lint $(LIBBASE)"; \
- fi
-
-depend-common: FORCE
- @if test "$(BUILD_LIB)" = "yes" ; then \
- $(MAKE) $(MFLAGS) depend-lib; \
- else \
- echo "run configure with $(BUILD_OPT) to depend $(LIBBASE)"; \
- fi
-
-install-common: FORCE
- @if test "$(BUILD_LIB)" = "yes" ; then \
- $(MAKE) $(MFLAGS) install-lib; \
- else \
- echo "run configure with $(BUILD_OPT) to install $(LIBBASE)"; \
- fi
+
+lint-common: lint-$(BUILD_MOD)
+
+5lint-common: 5lint-$(BUILD_MOD)
+
+depend-common: depend-$(BUILD_MOD)
+
+install-common: install-$(BUILD_MOD)
all-local-mod:
-all-mod: $(MODULE) all-local-mod FORCE
+all-mod: $(LIBRARY) all-local-mod FORCE
all-local-lib:
-all-lib: $(LIBSTAT) all-local-lib FORCE
+all-yes: $(LIBSTAT) all-local-lib FORCE
+
+install-mod: $(LIBRARY)
+ @-$(MKDIR) $(DESTDIR)$(moduledir)
+ $(LTINSTALL) $(INSTALLFLAGS) -m 755 $(LIBRARY) $(DESTDIR)$(moduledir)
install-local-lib:
-install-lib: install-local-lib FORCE
+install-yes: install-local-lib FORCE
lint-local-lib:
-lint-lib: lint-local-lib FORCE
+lint-yes lint-mod: lint-local-lib FORCE
$(LINT) $(DEFS) $(DEFINES) $(SRCS)
5lint-local-lib:
-5lint-lib: 5lint-local-lib FORCE
+5lint-yes 5lint-mod: 5lint-local-lib FORCE
$(5LINT) $(DEFS) $(DEFINES) $(SRCS)
clean-local-lib:
clean-lib: clean-local-lib FORCE
- $(RM) $(LIBRARY) $(LIBSTAT) $(MODULE) *.o *.lo a.out core .libs/*
+ $(RM) $(LIBRARY) $(LIBSTAT) version.c *.o *.lo a.out core .libs/*
depend-local-lib:
-depend-lib: depend-local-lib FORCE
+depend-yes depend-mod: depend-local-lib FORCE
+ $(MKDEP) $(DEFS) $(DEFINES) $(SRCS)
-COMPILE = $(LIBTOOL) $(LTFLAGS) --mode=compile $(CC) $(CFLAGS) -c
-MKDEPFLAG = -l
-
-.SUFFIXES: .c .o .lo
-
-.c.lo:
- $(COMPILE) $<
+veryclean-local-lib:
+veryclean-lib: clean-lib veryclean-local-lib
Makefile: $(top_srcdir)/build/mod.mk
+