X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=build%2Ftop.mk;h=14e291e7eabb436fb971d63b68daef8f66208f2b;hb=f2958fe7ef5185f879aab3fd057717733f9635b3;hp=aaa1baa3c182455f07ae8ec28385404a512f28d4;hpb=07c7d3c3cbb4fbde27c705c4acc7ae2f8a5bb4c4;p=openldap diff --git a/build/top.mk b/build/top.mk index aaa1baa3c1..14e291e7ea 100644 --- a/build/top.mk +++ b/build/top.mk @@ -1,14 +1,23 @@ # $OpenLDAP$ -## Copyright 1998-2000 The OpenLDAP Foundation, Redwood City, California, USA +## This work is part of OpenLDAP Software . +## +## Copyright 1998-2012 The OpenLDAP Foundation. ## All rights reserved. ## -## Redistribution and use in source and binary forms are permitted only -## as authorized by the OpenLDAP Public License. A copy of this -## license is available at http://www.OpenLDAP.org/license.html or -## in file LICENSE in the top-level directory of the distribution. +## 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 +##--------------------------------------------------------------------------- +# +# Top-level Makefile template +# + PACKAGE= @PACKAGE@ VERSION= @VERSION@ +RELEASEDATE= @OPENLDAP_RELEASE_DATE@ @SET_MAKE@ SHELL = /bin/sh @@ -23,6 +32,7 @@ exec_prefix = @exec_prefix@ ldap_subdir = @ldap_subdir@ bindir = @bindir@ +datarootdir = @datarootdir@ datadir = @datadir@$(ldap_subdir) includedir = @includedir@ infodir = @infodir@ @@ -34,14 +44,22 @@ moduledir = @libexecdir@$(ldap_subdir) sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@$(ldap_subdir) +schemadir = $(sysconfdir)/schema +PLAT = @PLAT@ EXEEXT = @EXEEXT@ OBJEXT = @OBJEXT@ -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ +BUILD_LIBS_DYNAMIC = @BUILD_LIBS_DYNAMIC@ + +SHTOOL = $(top_srcdir)/build/shtool + +INSTALL = $(SHTOOL) install -c +INSTALL_PROGRAM = $(INSTALL) +INSTALL_DATA = $(INSTALL) -m 644 +INSTALL_SCRIPT = $(INSTALL) + +STRIP = -s LINT = lint 5LINT = 5lint @@ -54,34 +72,77 @@ MKDEP_CFLAGS = @OL_MKDEP_FLAGS@ MKVERSION = $(top_srcdir)/build/mkversion -v "$(VERSION)" LIBTOOL = @LIBTOOL@ -LIBVERSION = 0:0:0 -LTVERSION = -version-info $(LIBVERSION) -LTLINK = $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) +LIBRELEASE = @OPENLDAP_LIBRELEASE@ +LIBVERSION = @OPENLDAP_LIBVERSION@ +LTVERSION = -release $(LIBRELEASE) -version-info $(LIBVERSION) + +# libtool --only flag for libraries: platform specific +NT_LTONLY_LIB = # --only-$(BUILD_LIBS_DYNAMIC) +LTONLY_LIB = $(@PLAT@_LTONLY_LIB) + +# libtool --only flag for modules: depends on linkage of module +# The BUILD_MOD macro is defined in each backend Makefile.in file +LTONLY_yes = --tag=disable-shared +LTONLY_mod = --tag=disable-static +LTONLY_MOD = $(LTONLY_$(BUILD_MOD)) + +# platform-specific libtool flags +NT_LTFLAGS_LIB = -no-undefined -avoid-version -rpath $(libdir) +NT_LTFLAGS_MOD = -no-undefined -avoid-version -rpath $(moduledir) +UNIX_LTFLAGS_LIB = $(LTVERSION) -rpath $(libdir) +UNIX_LTFLAGS_MOD = $(LTVERSION) -rpath $(moduledir) + +# libtool flags +LTFLAGS = $(@PLAT@_LTFLAGS) +LTFLAGS_LIB = $(@PLAT@_LTFLAGS_LIB) +LTFLAGS_MOD = $(@PLAT@_LTFLAGS_MOD) + +# LIB_DEFS defined in liblber and libldap Makefile.in files. +# MOD_DEFS defined in backend Makefile.in files. + +# platform-specific LINK_LIBS defined in various Makefile.in files. +# LINK_LIBS referenced in library and module link commands. +LINK_LIBS = $(MOD_LIBS) $(@PLAT@_LINK_LIBS) + +LTSTATIC = @LTSTATIC@ + +LTLINK = $(LIBTOOL) --mode=link \ + $(CC) $(LTSTATIC) $(LT_CFLAGS) $(LDFLAGS) $(LTFLAGS) + +LTCOMPILE_LIB = $(LIBTOOL) $(LTONLY_LIB) --mode=compile \ + $(CC) $(LT_CFLAGS) $(LT_CPPFLAGS) $(LIB_DEFS) -c + +LTLINK_LIB = $(LIBTOOL) $(LTONLY_LIB) --mode=link \ + $(CC) $(LT_CFLAGS) $(LDFLAGS) $(LTFLAGS_LIB) + +LTCOMPILE_MOD = $(LIBTOOL) $(LTONLY_MOD) --mode=compile \ + $(CC) $(LT_CFLAGS) $(LT_CPPFLAGS) $(MOD_DEFS) -c + +LTLINK_MOD = $(LIBTOOL) $(LTONLY_MOD) --mode=link \ + $(CC) $(LT_CFLAGS) $(LDFLAGS) $(LTFLAGS_MOD) + LTINSTALL = $(LIBTOOL) --mode=install $(INSTALL) +LTFINISH = $(LIBTOOL) --mode=finish # Misc UNIX commands used in build environment -AR = ar -AWK = @AWK@ +AR = @AR@ BASENAME = basename CAT = cat CHMOD = chmod DATE = date -HOSTNAME = uname -n -LN = ln -LN_H = @LN_H@ -LN_S = @LN_S@ +ECHO = $(SHTOOL) echo +HOSTNAME = $(SHTOOL) echo -e "%h%d" +LN = $(SHTOOL) mkln +LN_H = $(LN) +LN_S = $(LN) -s MAKEINFO = @MAKEINFO@ -MKDIR = mkdir -p -MV = mv +MKDIR = $(SHTOOL) mkdir -p +MV = $(SHTOOL) move PWD = pwd RANLIB = @RANLIB@ RM = rm -f SED = sed - -# Misc UNIX commands used in programs -EDITOR = @EDITOR@ -FINGER = @FINGER@ -SENDMAIL = @SENDMAIL@ +SUBST = $(SHTOOL) subst # For manual pages # MANCOMPRESS=@MANCOMPRESS@ @@ -89,29 +150,30 @@ SENDMAIL = @SENDMAIL@ MANCOMPRESS=$(CAT) MANCOMPRESSSUFFIX= +SOELIM=soelim + INCLUDEDIR= $(top_srcdir)/include LDAP_INCPATH= -I$(LDAP_INCDIR) -I$(INCLUDEDIR) -LDAP_LIBADIR= $(top_builddir)/libraries -LDAP_LIBPATH= -L$(LDAP_LIBADIR) +LDAP_LIBDIR= $(top_builddir)/libraries LUTIL_LIBS = @LUTIL_LIBS@ -LDIF_LIBS = @LDIF_LIBS@ -LDBM_LIBS = @LDBM_LIBS@ LTHREAD_LIBS = @LTHREAD_LIBS@ -LDAP_LIBLBER_DEPEND = $(LDAP_LIBDIR)/liblber/liblber.la -LDAP_LIBLDAP_DEPEND = $(LDAP_LIBDIR)/libldap/libldap.la -LDAP_LIBLDIF_DEPEND = $(LDAP_LIBDIR)/libldif/libldif.a -LDAP_LIBLUTIL_DEPEND = $(LDAP_LIBDIR)/liblutil/liblutil.a +BDB_LIBS = @BDB_LIBS@ +SLAPD_NDB_LIBS = @SLAPD_NDB_LIBS@ -LDAP_LIBAVL_DEPEND = $(LDAP_LIBDIR)/libavl/libavl.a -LDAP_LIBLDBM_DEPEND = $(LDAP_LIBDIR)/libldbm/libldbm.a -LDAP_LIBLTHREAD_DEPEND = $(LDAP_LIBDIR)/libldap_r/libldap_r.la +LDAP_LIBLBER_LA = $(LDAP_LIBDIR)/liblber/liblber.la +LDAP_LIBLDAP_LA = $(LDAP_LIBDIR)/libldap/libldap.la +LDAP_LIBLDAP_R_LA = $(LDAP_LIBDIR)/libldap_r/libldap_r.la -LDAP_LIBDEPEND = $(LDAP_LIBLDAP_DEPEND) $(LDAP_LIBLBER_DEPEND) \ - $(LDAP_LIBLDIF_DEPEND) $(LDAP_LIBLUTIL_DEPEND) -SLAPD_LIBDEPEND = $(LDAP_LIBDEPEND) $(LDAP_LIBAVL_DEPEND) \ - $(LDAP_LIBLDBM_DEPEND) $(LDAP_LIBLTHREAD_DEPEND) +LDAP_LIBREWRITE_A = $(LDAP_LIBDIR)/librewrite/librewrite.a +LDAP_LIBLUNICODE_A = $(LDAP_LIBDIR)/liblunicode/liblunicode.a +LDAP_LIBLUTIL_A = $(LDAP_LIBDIR)/liblutil/liblutil.a + +LDAP_L = $(LDAP_LIBLUTIL_A) \ + $(LDAP_LIBLDAP_LA) $(LDAP_LIBLBER_LA) +SLAPD_L = $(LDAP_LIBLUNICODE_A) $(LDAP_LIBREWRITE_A) \ + $(LDAP_LIBLUTIL_A) $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA) WRAP_LIBS = @WRAP_LIBS@ # AutoConfig generated @@ -128,22 +190,18 @@ SASL_LIBS = @SASL_LIBS@ TLS_LIBS = @TLS_LIBS@ AUTH_LIBS = @AUTH_LIBS@ SECURITY_LIBS = $(SASL_LIBS) $(KRB_LIBS) $(TLS_LIBS) $(AUTH_LIBS) +ICU_LIBS = @ICU_LIBS@ MODULES_CPPFLAGS = @SLAPD_MODULES_CPPFLAGS@ MODULES_LDFLAGS = @SLAPD_MODULES_LDFLAGS@ MODULES_LIBS = @MODULES_LIBS@ -TERMCAP_LIBS = @TERMCAP_LIBS@ SLAPD_PERL_LDFLAGS = @SLAPD_PERL_LDFLAGS@ -LINK_BINS_DYNAMIC = @LINK_BINS_DYNAMIC@ SLAPD_SQL_LDFLAGS = @SLAPD_SQL_LDFLAGS@ SLAPD_SQL_INCLUDES = @SLAPD_SQL_INCLUDES@ SLAPD_SQL_LIBS = @SLAPD_SQL_LIBS@ -SLAPD_LIBS = @SLAPD_LIBS@ \ - @SLAPD_PERL_LDFLAGS@ \ - @SLAPD_SQL_LDFLAGS@ @SLAPD_SQL_LIBS@ -SLURPD_LIBS = @SLURPD_LIBS@ +SLAPD_LIBS = @SLAPD_LIBS@ @SLAPD_PERL_LDFLAGS@ @SLAPD_SQL_LDFLAGS@ @SLAPD_SQL_LIBS@ @SLAPD_SLP_LIBS@ @SLAPD_GMP_LIBS@ $(ICU_LIBS) # Our Defaults CC = $(AC_CC) @@ -152,6 +210,9 @@ CFLAGS = $(AC_CFLAGS) $(DEFS) LDFLAGS = $(LDAP_LIBPATH) $(AC_LDFLAGS) $(XLDFLAGS) LIBS = $(XLIBS) $(XXLIBS) $(AC_LIBS) $(XXXLIBS) +LT_CFLAGS = $(AC_CFLAGS) +LT_CPPFLAGS = $(DEFS) + all: all-common all-local FORCE install: install-common install-local FORCE clean: clean-common clean-local FORCE @@ -182,6 +243,9 @@ veryclean: FORCE Makefile: Makefile.in $(top_srcdir)/build/top.mk +pathtest: + $(SHTOOL) --version + # empty rule for forcing rules FORCE: