security/nss/lib/freebl/config.mk

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/security/nss/lib/freebl/config.mk	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,97 @@
     1.4 +# This Source Code Form is subject to the terms of the Mozilla Public
     1.5 +# License, v. 2.0. If a copy of the MPL was not distributed with this
     1.6 +# file, You can obtain one at http://mozilla.org/MPL/2.0/.
     1.7 +
     1.8 +# only do this in the outermost freebl build.
     1.9 +ifndef FREEBL_CHILD_BUILD
    1.10 +
    1.11 +# We're going to change this build so that it builds libfreebl.a with
    1.12 +# just loader.c.  Then we have to build this directory twice again to 
    1.13 +# build the two DSOs.
    1.14 +# To build libfreebl.a with just loader.c, we must now override many
    1.15 +# of the make variables setup by the prior inclusion of CORECONF's config.mk
    1.16 +
    1.17 +CSRCS		= loader.c 
    1.18 +SIMPLE_OBJS 	= $(CSRCS:.c=$(OBJ_SUFFIX))
    1.19 +OBJS 		= $(addprefix $(OBJDIR)/$(PROG_PREFIX), $(SIMPLE_OBJS))
    1.20 +ALL_TRASH :=    $(TARGETS) $(OBJS) $(OBJDIR) LOGS TAGS $(GARBAGE) \
    1.21 +                $(NOSUCHFILE) so_locations 
    1.22 +
    1.23 +# this is not a recursive child make.  We make a static lib. (archive)
    1.24 +
    1.25 +# Override the values defined in coreconf's ruleset.mk.
    1.26 +#
    1.27 +# - (1) LIBRARY: a static (archival) library
    1.28 +# - (2) SHARED_LIBRARY: a shared (dynamic link) library
    1.29 +# - (3) IMPORT_LIBRARY: an import library, used only on Windows
    1.30 +# - (4) PROGRAM: an executable binary
    1.31 +#
    1.32 +# override these variables to prevent building a DSO/DLL.
    1.33 +  TARGETS        = $(LIBRARY)
    1.34 +  SHARED_LIBRARY =
    1.35 +  IMPORT_LIBRARY =
    1.36 +  PROGRAM        =
    1.37 +
    1.38 +else
    1.39 +
    1.40 +# This is a recursive child make. We build the shared lib.
    1.41 +
    1.42 +TARGETS      = $(SHARED_LIBRARY)
    1.43 +LIBRARY      =
    1.44 +IMPORT_LIBRARY =
    1.45 +PROGRAM      =
    1.46 +
    1.47 +ifeq ($(OS_TARGET), SunOS)
    1.48 +OS_LIBS += -lkstat
    1.49 +endif
    1.50 +
    1.51 +ifeq (,$(filter-out WIN%,$(OS_TARGET)))
    1.52 +
    1.53 +# don't want the 32 in the shared library name
    1.54 +SHARED_LIBRARY = $(OBJDIR)/$(DLL_PREFIX)$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)
    1.55 +
    1.56 +RES     = $(OBJDIR)/$(LIBRARY_NAME).res
    1.57 +RESNAME = freebl.rc
    1.58 +
    1.59 +ifdef NS_USE_GCC
    1.60 +OS_LIBS += -ladvapi32
    1.61 +else
    1.62 +OS_LIBS += advapi32.lib
    1.63 +endif
    1.64 +
    1.65 +ifdef NS_USE_GCC
    1.66 +EXTRA_SHARED_LIBS += \
    1.67 +	-L$(DIST)/lib \
    1.68 +	-L$(NSSUTIL_LIB_DIR) \
    1.69 +	-lnssutil3 \
    1.70 +	-L$(NSPR_LIB_DIR) \
    1.71 +	-lnspr4 \
    1.72 +	$(NULL)
    1.73 +else # ! NS_USE_GCC
    1.74 +EXTRA_SHARED_LIBS += \
    1.75 +	$(DIST)/lib/nssutil3.lib \
    1.76 +	$(NSPR_LIB_DIR)/$(NSPR31_LIB_PREFIX)nspr4.lib \
    1.77 +	$(NULL)
    1.78 +endif # NS_USE_GCC
    1.79 +
    1.80 +else
    1.81 +
    1.82 +ifeq ($(FREEBL_NO_DEPEND),1)
    1.83 +#drop pthreads as well
    1.84 +OS_PTHREAD=
    1.85 +else
    1.86 +EXTRA_SHARED_LIBS += \
    1.87 +	-L$(DIST)/lib \
    1.88 +	-L$(NSSUTIL_LIB_DIR) \
    1.89 +	-lnssutil3 \
    1.90 +	-L$(NSPR_LIB_DIR) \
    1.91 +	-lnspr4 \
    1.92 +	$(NULL)
    1.93 +endif
    1.94 +endif
    1.95 +
    1.96 +ifeq ($(OS_ARCH), Darwin)
    1.97 +EXTRA_SHARED_LIBS += -dylib_file @executable_path/libplc4.dylib:$(DIST)/lib/libplc4.dylib -dylib_file @executable_path/libplds4.dylib:$(DIST)/lib/libplds4.dylib
    1.98 +endif
    1.99 +
   1.100 +endif

mercurial