| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490 |
- #
- # BEGIN COPYRIGHT BLOCK
- # This Program is free software; you can redistribute it and/or modify it under
- # the terms of the GNU General Public License as published by the Free Software
- # Foundation; version 2 of the License.
- #
- # This Program is distributed in the hope that it will be useful, but WITHOUT
- # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License along with
- # this Program; if not, write to the Free Software Foundation, Inc., 59 Temple
- # Place, Suite 330, Boston, MA 02111-1307 USA.
- #
- # In addition, as a special exception, Red Hat, Inc. gives You the additional
- # right to link the code of this Program with code not covered under the GNU
- # General Public License ("Non-GPL Code") and to distribute linked combinations
- # including the two, subject to the limitations in this paragraph. Non-GPL Code
- # permitted under this exception must only link to the code of this Program
- # through those well defined interfaces identified in the file named EXCEPTION
- # found in the source code files (the "Approved Interfaces"). The files of
- # Non-GPL Code may instantiate templates or use macros or inline functions from
- # the Approved Interfaces without causing the resulting work to be covered by
- # the GNU General Public License. Only Red Hat, Inc. may make changes or
- # additions to the list of Approved Interfaces. You must obey the GNU General
- # Public License in all respects for all of the Program code and other code used
- # in conjunction with the Program except the Non-GPL Code covered by this
- # exception. If you modify this file, you may extend this exception to your
- # version of the file, but you are not obligated to do so. If you do not wish to
- # provide this exception without modification, you must delete this exception
- # statement from your version and license this file solely under the GPL without
- # exception.
- #
- #
- # Copyright (C) 2001 Sun Microsystems, Inc. Used by permission.
- # Copyright (C) 2005 Red Hat, Inc.
- # All rights reserved.
- # END COPYRIGHT BLOCK
- #
- # this file contains definitions for component macros used during the build
- # process. Things like the component location in the build tree, etc.
- # this file should be included by nsconfig.mk after it figures out all
- # of the OS, architecture, security, and other platform and build related
- # macros. This file also contains the instructions for making the component
- # up to date e.g. copying the files from their repository to an area where
- # the build process has access to it. For some components and OS's, this may
- # be as simple as creating a symbolic link to the repository
- # Each component should define a COMPONENT_DEP macro which can be used in
- # other makefiles for dependency checking e.g.
- # target: $(COMPONENT1_DEP) $(COMPONENT2_DEP) ...
- # This macro should evaluate to the name of a single file which must be
- # present for the package to be complete e.g. some library or include
- # file name
- # Each component then should define a target for that dependency which will
- # bring the component up to date if that target does not exist e.g.
- # $(COMPONENT1_DEP):
- # use ftp or symlinks or ??? to get the necessary files to the build
- # area
- # Each component should define a COMPONENT_LINK macro which can be used to
- # link the component's libraries with the target. For NT, this will typically
- # be something like
- # /LIBPATH:path_to_library lib1 lib2 lib3 /LIBPATH:more_libs lib4 lib5 ...
- # On Unix, this will be something like
- # -Lpath_to_library -l1 -l2 -l3 -Lmore_libs -l4 -l5 ...
- # Each component should define a COMPONENT_INCLUDE macro which can be used
- # to compile using the component's header files e.g.
- # -Ipath_to_include_files -Ipath_to_more_include_files
- # Once this file is working, I will DELETE compvers.sh and ns_ftp.sh
- # from the tree, so help me god.
- # this macro contains a list of source files and directories to copy to
- # the directory where DLLs/SOs go at runtime; each component will add the files/dirs to
- # this macro that it needs to package; not all components will have
- # files which need packaging
- # if you need some other behavior, see PACKAGE_SRC_DEST below
- LIBS_TO_PKG =
- # this macro contains a list of source files and directories to copy to
- # the directory where DLLs/SOs go at runtime; each component will add the files/dirs to
- # this macro that it needs to package; this is for DLLs/SOs for the shared/bin
- # directory where the ldap c sdk command line tools, some security tools, and
- # the i18n conversion tools live
- LIBS_TO_PKG_SHARED =
- # this macro contains a list of source files and directories to copy to
- # the shared tools directory - things like the ldap c sdk command line
- # tools, shared security tools, etc.
- BINS_TO_PKG_SHARED =
- # this macro contains a list of shared libraries/dlls needed during
- # setup to run the setup pre-install program on unix (ns-config) or
- # the slapd plugin on NT (DSINST_PreInstall)
- PACKAGE_SETUP_LIBS =
- # this macro contains a list of libraries/dlls to copy to the clients
- # library directory
- LIBS_TO_PKG_CLIENTS =
- # this macro contains a list of source files and directories to copy to
- # the release/java directory; usually a list of jar files
- PACKAGE_UNDER_JAVA =
- # this macro contains a list of pairs of source and dest files and directories
- # the source is where to find the item in the build tree, and the dest is
- # the place in the release to put the item, relative to the server root e.g.
- # nls locale files are in libnls31/locale, but for packaging they need to
- # go into lib/nls, not just lib; the destination should be a directory name;
- # separate the src from the dest with a single space
- PACKAGE_SRC_DEST =
- # these defs are useful for doing pattern search/replace
- COMMA := ,
- NULLSTRING :=
- SPACE := $(NULLSTRING) # the space is between the ) and the #
- ifeq ($(ARCH), WINNT)
- EXE_SUFFIX = .exe
- else # unix - windows has no lib name prefix, except for nspr
- LIB_PREFIX = lib
- endif
- ifeq ($(INTERNAL_BUILD), 1)
- include $(BUILD_ROOT)/internal_buildpaths.mk
- else
- include $(BUILD_ROOT)/buildpaths.mk
- endif
- # NSPR20 Library
- NSPR_LIBNAMES = plc4 plds4
- ifeq ($(ARCH), SOLARIS)
- ifeq ($(NSPR_RELDATE), v4.2.2)
- # no need after v4.4.1
- NSPR_LIBNAMES += ultrasparc4
- # just need ultrasparc for now
- LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH)/lib,ultrasparc4))
- endif
- endif
- NSPR_LIBNAMES += nspr4
- ifdef NSPR_SOURCE_ROOT
- NSPR_LIBPATH = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
- NSPR_INCDIR = $(NSPR_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/include
- else
- NSPR_LIBPATH = $(NSPR_BUILD_DIR)/lib
- NSPR_INCDIR = $(NSPR_BUILD_DIR)/include
- endif
- NSPR_INCLUDE = -I$(NSPR_INCDIR)
- NSPR_LIBS_TO_PKG = $(addsuffix .$(DLL_SUFFIX),$(addprefix $(NSPR_LIBPATH)/lib,$(NSPR_LIBNAMES)))
- LIBS_TO_PKG += $(NSPR_LIBS_TO_PKG)
- LIBS_TO_PKG_SHARED += $(NSPR_LIBS_TO_PKG) # needed for cmd line tools
- ifeq ($(USE_SETUPSDK), 1)
- PACKAGE_SETUP_LIBS += $(NSPR_LIBS_TO_PKG)
- endif
- ifeq ($(USE_DSGW), 1)
- LIBS_TO_PKG_CLIENTS += $(NSPR_LIBS_TO_PKG) # for dsgw
- endif
- ifeq ($(ARCH), WINNT)
- NSPRDLL_NAME = $(addprefix lib, $(NSPR_LIBNAMES))
- NSPROBJNAME = $(addsuffix .lib, $(NSPRDLL_NAME))
- NSPRLINK = /LIBPATH:$(NSPR_LIBPATH) $(NSPROBJNAME)
- LIBNSPRDLL_NAMES = $(addsuffix .dll, $(addprefix $(NSPR_LIBPATH)/, \
- $(addprefix lib, $(NSPR_LIBNAMES))))
- else
- NSPR_SOLIBS = $(addsuffix .$(DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(NSPR_LIBNAMES)))
- NSPROBJNAME = $(addsuffix .a, $(addprefix $(LIB_PREFIX), $(NSPR_LIBNAMES))
- LIBNSPR = $(addprefix $(NSPR_LIBPATH)/, $(NSPR_SOLIBS))
- NSPRLINK = -L$(NSPR_LIBPATH) $(addprefix -l, $(NSPR_LIBNAMES))
- endif
- ### DBM #############################
- ifdef DBM_SOURCE_ROOT
- DBM_LIBPATH = $(DBM_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
- DBM_INCDIR = $(DBM_SOURCE_ROOT)/dist/public/dbm
- else
- DBM_LIBPATH = $(DBM_BUILD_DIR)/lib
- DBM_INCDIR = $(DBM_BUILD_DIR)/include
- endif
- DBM_INCLUDE = -I$(DBM_INCDIR)
- DBM_LIBNAMES = dbm
- ifeq ($(ARCH), WINNT)
- DBMOBJNAME = $(addsuffix .lib, $(DBM_LIBNAMES))
- LIBDBM = $(addprefix $(DBM_LIBPATH)/, $(DBMOBJNAME))
- DBMLINK = /LIBPATH:$(DBM_LIBPATH) $(DBMOBJNAME)
- else
- DBM_SOLIBS = $(addsuffix .$(DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(DBM_LIBNAMES)))
- DBMROBJNAME = $(addsuffix .a, $(addprefix $(LIB_PREFIX), $(DBM_LIBNAMES)))
- LIBDBM = $(addprefix $(DBM_LIBPATH)/, $(DBMROBJNAME))
- DBMLINK = -L$(DBM_LIBPATH) $(addprefix -l, $(DBM_LIBNAMES))
- endif
- ### DBM END #############################
- ### SECURITY #############################
- ifdef SECURITY_SOURCE_ROOT
- SECURITY_LIBPATH = $(SECURITY_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
- SECURITY_BINPATH = $(SECURITY_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/bin
- SECURITY_INCDIR = $(SECURITY_SOURCE_ROOT)/dist/public/nss
- else
- SECURITY_LIBPATH = $(SECURITY_BUILD_DIR)/lib
- SECURITY_BINPATH = $(SECURITY_BUILD_DIR)/bin
- SECURITY_INCDIR = $(SECURITY_BUILD_DIR)/include
- endif
- SECURITY_INCLUDE = -I$(SECURITY_INCDIR)
- # add crlutil and ocspclnt when we support CRL and OCSP cert checking in DS
- SECURITY_BINNAMES = certutil derdump pp pk12util ssltap modutil shlibsign
- SECURITY_LIBNAMES = ssl3 nss3 softokn3
- # these libs have a corresponding .chk file
- SECURITY_NEED_CHK = softokn3
- SECURITY_LIBNAMES.pkg = $(SECURITY_LIBNAMES) smime3
- # these are only needed on 32 bit Solaris and HP-UX
- ifneq ($(USE_64), 1)
- ifeq ($(ARCH), SOLARIS)
- SECURITY_LIBNAMES.pkg += freebl_hybrid_3 freebl_pure32_3
- # these libs have a corresponding .chk file
- SECURITY_NEED_CHK += freebl_hybrid_3 freebl_pure32_3
- endif
- ifeq ($(ARCH), HPUX)
- SECURITY_LIBNAMES.pkg += freebl_hybrid_3 freebl_pure32_3
- # these libs have a corresponding .chk file
- SECURITY_NEED_CHK += freebl_hybrid_3 freebl_pure32_3
- endif
- endif # USE_64
- SECURITY_TOOLS = $(addsuffix $(EXE_SUFFIX),$(SECURITY_BINNAMES))
- SECURITY_TOOLS_FULLPATH = $(addprefix $(SECURITY_BINPATH)/, $(SECURITY_TOOLS))
- SECURITY_LIBS_TO_PKG = $(addsuffix .$(DLL_SUFFIX),$(addprefix $(SECURITY_LIBPATH)/$(LIB_PREFIX),$(SECURITY_LIBNAMES.pkg)))
- SECURITY_LIBS_TO_PKG += $(addsuffix .chk,$(addprefix $(SECURITY_LIBPATH)/$(LIB_PREFIX),$(SECURITY_NEED_CHK)))
- LIBS_TO_PKG += $(SECURITY_LIBS_TO_PKG)
- LIBS_TO_PKG_SHARED += $(SECURITY_LIBS_TO_PKG) # for cmd line tools
- ifeq ($(USE_SETUPSDK), 1)
- PACKAGE_SETUP_LIBS += $(SECURITY_LIBS_TO_PKG)
- endif
- ifeq ($(USE_DSGW), 1)
- LIBS_TO_PKG_CLIENTS += $(SECURITY_LIBS_TO_PKG) # for dsgw
- endif
- ifeq ($(ARCH), WINNT)
- SECURITYOBJNAME = $(addsuffix .$(LIB_SUFFIX), $(SECURITY_LIBNAMES))
- LIBSECURITY = $(addprefix $(SECURITY_LIBPATH)/, $(SECURITYOBJNAME))
- SECURITYLINK = /LIBPATH:$(SECURITY_LIBPATH) $(SECURITYOBJNAME)
- else
- SECURITYOBJNAME = $(addsuffix .$(DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(SECURITY_LIBNAMES)))
- LIBSECURITY = $(addprefix $(SECURITY_LIBPATH)/, $(SECURITYOBJNAME))
- SECURITYLINK = -L$(SECURITY_LIBPATH) $(addprefix -l, $(SECURITY_LIBNAMES))
- endif
- # we need to package the root cert file in the alias directory
- PACKAGE_SRC_DEST += $(SECURITY_LIBPATH)/$(LIB_PREFIX)nssckbi.$(DLL_SUFFIX) alias
- # need to package the sec tools in shared/bin
- BINS_TO_PKG_SHARED += $(SECURITY_TOOLS_FULLPATH)
- ### SECURITY END #############################
- ### SVRCORE #############################
- ifdef SVRCORE_SOURCE_ROOT
- SVRCORE_LIBPATH = $(SVRCORE_SOURCE_ROOT)/dist/$(MOZ_OBJDIR_NAME)/lib
- SVRCORE_INCDIR = $(SVRCORE_SOURCE_ROOT)/dist/public/svrcore
- else
- SVRCORE_LIBPATH = $(SVRCORE_BUILD_DIR)/lib
- SVRCORE_INCDIR = $(SVRCORE_BUILD_DIR)/include
- endif
- SVRCORE_INCLUDE = -I$(SVRCORE_INCDIR)
- SVRCORE_LIBNAMES = svrcore
- ifeq ($(ARCH), WINNT)
- SVRCOREOBJNAME = $(addsuffix .lib, $(SVRCORE_LIBNAMES))
- LIBSVRCORE = $(addprefix $(SVRCORE_LIBPATH)/, $(SVRCOREOBJNAME))
- SVRCORELINK = /LIBPATH:$(SVRCORE_LIBPATH) $(SVRCOREOBJNAME)
- else
- SVRCOREOBJNAME = $(addsuffix .a, $(addprefix $(LIB_PREFIX), $(SVRCORE_LIBNAMES)))
- LIBSVRCORE = $(addprefix $(SVRCORE_LIBPATH)/, $(SVRCOREOBJNAME))
- SVRCORELINK = -L$(SVRCORE_LIBPATH) $(addprefix -l, $(SVRCORE_LIBNAMES))
- endif
- ### SVRCORE END #############################
- ####################################################
- # LDAP SDK
- ###################################################
- ifdef LDAPSDK_SOURCE_ROOT
- LDAPSDK_LIBPATH = $(LDAPSDK_SOURCE_ROOT)/dist/lib
- LDAPSDK_INCDIR = $(LDAPSDK_SOURCE_ROOT)/dist/public/ldap
- LDAPSDK_BINPATH = $(LDAPSDK_SOURCE_ROOT)/dist/bin
- else
- LDAPSDK_LIBPATH = $(LDAP_ROOT)/lib
- LDAPSDK_INCDIR = $(LDAP_ROOT)/include
- LDAPSDK_BINPATH = $(LDAP_ROOT)/tools
- endif
- LDAPSDK_INCLUDE = -I$(LDAPSDK_INCDIR)
- # package the command line programs
- LDAPSDK_TOOLS = $(wildcard $(LDAPSDK_BINPATH)/ldap*$(EXE_SUFFIX))
- BINS_TO_PKG_SHARED += $(LDAPSDK_TOOLS)
- # package the include files - needed for the plugin API
- LDAPSDK_INCLUDE_FILES = $(wildcard $(LDAPSDK_INCDIR)/*.h)
- PACKAGE_SRC_DEST += $(subst $(SPACE),$(SPACE)plugins/slapd/slapi/include$(SPACE),$(LDAPSDK_INCLUDE_FILES))
- PACKAGE_SRC_DEST += plugins/slapd/slapi/include
- ifeq ($(ARCH), WINNT)
- LDAP_LIBNAMES = ldapssl32v$(LDAP_SUF) ldap32v$(LDAP_SUF) ldappr32v$(LDAP_SUF)
- LDAPDLL_NAME = $(addprefix ns, $(LDAP_LIBNAMES))
- LDAPOBJNAME = $(addsuffix .$(LIB_SUFFIX), $(LDAPDLL_NAME))
- LDAPLINK = /LIBPATH:$(LDAPSDK_LIBPATH) $(LDAPOBJNAME)
- LDAP_NOSSL_LINK = /LIBPATH:$(LDAPSDK_LIBPATH) nsldap32v$(LDAP_SUF).$(LIB_SUFFIX)
- LIBLDAPDLL_NAMES = $(addsuffix .dll, $(addprefix $(LDAP_LIBPATH)/, $(LDAPDLL_NAME)))
- LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
- LIBS_TO_PKG_SHARED += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
- ifeq ($(USE_SETUPSDK), 1)
- PACKAGE_SETUP_LIBS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
- endif
- ifeq ($(USE_DSGW), 1)
- LIBS_TO_PKG_CLIENTS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(LDAPSDK_LIBPATH)/,$(LDAPDLL_NAME)))
- endif
- else # not WINNT
- LDAP_SOLIB_NAMES = ssldap$(LDAP_SUF)$(LDAP_DLL_PRESUF) ldap$(LDAP_SUF)$(LDAP_DLL_PRESUF) prldap$(LDAP_SUF)$(LDAP_DLL_PRESUF)
- ifndef LDAP_NO_LIBLCACHE
- LDAP_SOLIB_NAMES += lcache30$(LDAP_DLL_PRESUF)
- endif
- LDAP_DOTALIB_NAMES =
- LDAP_LIBNAMES = $(LDAP_DOTALIB_NAMES) $(LDAP_SOLIB_NAMES)
- LDAP_SOLIBS = $(addsuffix .$(LDAP_DLL_SUFFIX), $(addprefix $(LIB_PREFIX), $(LDAP_SOLIB_NAMES)))
- LDAPOBJNAME = $(addsuffix .$(LIB_SUFFIX), $(addprefix $(LIB_PREFIX), $(LDAP_DOTALIB_NAMES))) \
- $(LDAP_SOLIBS)
- LDAPLINK = -L$(LDAPSDK_LIBPATH) $(addprefix -l,$(LDAP_SOLIB_NAMES))
- LDAP_NOSSL_LINK = -L$(LDAPSDK_LIBPATH) -lldap$(LDAP_SUF)$(LDAP_DLL_PRESUF)
- LIBS_TO_PKG += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
- LIBS_TO_PKG_SHARED += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
- ifeq ($(USE_SETUPSDK), 1)
- PACKAGE_SETUP_LIBS += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
- endif
- ifeq ($(USE_DSGW), 1)
- LIBS_TO_PKG_CLIENTS += $(addprefix $(LDAPSDK_LIBPATH)/,$(LDAP_SOLIBS))
- endif
- endif
- LDAP_LIBPATH = $(LDAPSDK_LIBPATH)
- LDAP_INCLUDE = $(LDAPSDK_INCDIR)
- LDAP_TOOLDIR = $(LDAPSDK_BINPATH)
- LIBLDAP = $(addprefix $(LDAP_LIBPATH)/, $(LDAPOBJNAME))
- ### SASL package ##########################################
- ifdef SASL_SOURCE_ROOT
- SASL_LIBPATH = $(SASL_SOURCE_ROOT)/lib
- SASL_BINPATH = $(SASL_SOURCE_ROOT)/bin
- SASL_INCDIR = $(SASL_SOURCE_ROOT)/include
- else
- SASL_LIBPATH = $(SASL_BUILD_DIR)/lib
- SASL_BINPATH = $(SASL_BUILD_DIR)/bin
- SASL_INCDIR = $(SASL_BUILD_DIR)/include
- endif
- SASL_INCLUDE = $(SASL_INCDIR)
- ifeq ($(ARCH), WINNT)
- SASL_LIB_ROOT_NAME = sasl
- SASL_LINK = /LIBPATH:$(SASL_LIBPATH) lib$(SASL_LIB_ROOT_NAME).lib
- SASL_LIBS = lib$(SASL_LIB_ROOT_NAME).lib,lib$(SASL_LIB_ROOT_NAME).dll,saslDIGESTMD5.dll
- else
- # for cyrus it's sasl2
- SASL_LIB_ROOT_NAME = sasl2
- SASL_LIBS = lib$(SASL_LIB_ROOT_NAME).a
- ifeq ($(ARCH), Linux)
- GSSAPI_LIBS=-L/usr/kerberos/lib -lgssapi_krb5
- endif
- ifeq ($(ARCH), SOLARIS)
- GSSAPI_LIBS=-lgss
- endif
- ifeq ($(ARCH), HPUX)
- GSSAPI_LIBS=-lgss
- ifeq ($(USE_64),1)
- GSSAPI_LIBS=-L/usr/lib/pa20_64 -lgss
- endif
- endif
- SASL_LINK = -L$(SASL_LIBPATH) -l$(SASL_LIB_ROOT_NAME) $(GSSAPI_LIBS)
- endif
- ###########################################################
- ### Net-SNMP package ######################################
- ifdef NETSNMP_SOURCE_ROOT
- NETSNMP_LIBPATH = $(NETSNMP_SOURCE_ROOT)/built/lib
- NETSNMP_INCDIR = $(NETSNMP_SOURCE_ROOT)/built/include
- NETSNMP_BINDIR = $(NETSNMP_SOURCE_ROOT)/built/bin
- else
- NETSNMP_LIBPATH = $(NETSNMP_BUILD_DIR)/lib
- NETSNMP_INCDIR = $(NETSNMP_BUILD_DIR)/include
- NETSNMP_BINDIR = $(NETSNMP_BUILD_DIR)/bin
- endif
- NETSNMP_INCLUDE = -I$(NETSNMP_INCDIR)
- NETSNMP_LIBNAMES = netsnmp netsnmpagent netsnmpmibs netsnmphelpers
- NETSNMP_LINK = -L$(NETSNMP_LIBPATH) $(addprefix -l, $(NETSNMP_LIBNAMES))
- ifneq ($(ARCH), WINNT)
- ifeq ($(ARCH), HPUX)
- NETSNMP_SOLIBS = $(addsuffix .$(DLL_SUFFIX).7, $(addprefix $(LIB_PREFIX), $(NETSNMP_LIBNAMES)))
- else
- NETSNMP_SOLIBS = $(addsuffix .$(DLL_SUFFIX).5, $(addprefix $(LIB_PREFIX), $(NETSNMP_LIBNAMES)))
- endif
- LIBS_TO_PKG += $(addprefix $(NETSNMP_LIBPATH)/,$(NETSNMP_SOLIBS))
- endif
- ###########################################################
- ### ICU package ##########################################
- ICU_LIB_VERSION = 24
- ifdef ICU_SOURCE_ROOT
- ICU_LIBPATH = $(ICU_SOURCE_ROOT)/built/lib
- ICU_BINPATH = $(ICU_SOURCE_ROOT)/built/bin
- ICU_INCPATH = $(ICU_SOURCE_ROOT)/built/include
- else
- ICU_LIBPATH = $(ICU_BUILD_DIR)/lib
- ICU_BINPATH = $(ICU_BUILD_DIR)/bin
- ICU_INCPATH = $(ICU_BUILD_DIR)/include
- endif
- ICU_INCLUDE = -I$(ICU_INCPATH)
- ifeq ($(ARCH), WINNT)
- ifeq ($(BUILD_DEBUG), optimize)
- ICU_LIB_SUF=
- else
- ICU_LIB_SUF=d
- endif
- ICU_LIBNAMES = icuin$(ICU_LIB_SUF) icuuc$(ICU_LIB_SUF) icudata
- ICU_DLLNAMES = icuin$(ICU_LIB_VERSION)$(ICU_LIB_SUF) icuuc$(ICU_LIB_VERSION)$(ICU_LIB_SUF) icudt$(ICU_LIB_VERSION)l
- ICULINK = /LIBPATH:$(ICU_LIBPATH) $(addsuffix .$(LIB_SUFFIX),$(ICU_LIBNAMES))
- LIBS_TO_PKG += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
- LIBS_TO_PKG_SHARED += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
- ifeq ($(USE_DSGW), 1)
- LIBS_TO_PKG_CLIENTS += $(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_BINPATH)/,$(ICU_DLLNAMES)))
- endif
- else
- ICU_LIBNAMES = icui18n icuuc icudata
- ICULINK = -L$(ICU_LIBPATH) $(addprefix -l, $(ICU_LIBNAMES))
- LIBS_TO_PKG += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
- LIBS_TO_PKG_SHARED += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
- ifeq ($(USE_DSGW), 1)
- LIBS_TO_PKG_CLIENTS += $(addsuffix .$(ICU_LIB_VERSION),$(addsuffix .$(DLL_SUFFIX),$(addprefix $(ICU_LIBPATH)/,$(addprefix lib,$(ICU_LIBNAMES)))))
- endif
- #LIBS_TO_PKG = $(addsuffix $(addprefix lib,$(ICU_LIBNAMES))
- endif
- BINS_TO_PKG_SHARED += $(ICU_BINPATH)/uconv$(EXE_SUFFIX)
- ###########################################################
- ### DB component (Berkeley DB) ############################
- DB_LIBNAME=lib$(DB_MAJOR_MINOR)
- ifdef DB_SOURCE_ROOT
- DB_INCLUDE =$(DB_SOURCE_ROOT)/built
- DB_LIBPATH =$(DB_SOURCE_ROOT)/built/.libs
- DB_BINPATH =$(DB_SOURCE_ROOT)/built
- else
- DB_INCLUDE =$(db_path_config)/include
- DB_LIBPATH =$(db_path_config)/lib
- DB_BINPATH =$(db_path_config)/bin
- endif
- ifeq ($(ARCH), WINNT)
- db_import_lib_suffix =$(LIB_SUFFIX)
- DB_LIB =$(DB_LIBPATH)/$(DB_LIBNAME).$(db_import_lib_suffix)
- DB_STATIC_LIB =$(DB_LIBPATH)/$(DB_LIBNAME).$(LIB_SUFFIX)
- else # not WINNT
- db_import_lib_suffix =$(DLL_SUFFIX)
- DB_LIB =-L$(DB_LIBPATH) -l$(DB_MAJOR_MINOR)
- # XXXsspitzer: we need the spinlock symbols staticly linked in to libdb
- DB_STATIC_LIB =-L$(DB_LIBPATH) -ldbs
- endif # not WINNT
- # libdb only needs to be in the server directory since only the server uses it
- PACKAGE_SRC_DEST += $(wildcard $(DB_LIBPATH)/*.$(DLL_SUFFIX)) bin/slapd/server
- ### DB component (Berkeley DB) ############################
- # must define dependencies last because they depend on the definitions above
- ifeq ($(INTERNAL_BUILD), 1)
- include $(BUILD_ROOT)/internal_comp_deps.mk
- endif
|