| # This Source Code Form is subject to the terms of the Mozilla Public |
| # License, v. 2.0. If a copy of the MPL was not distributed with this |
| # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
| |
| # only do this in the outermost freebl build. |
| ifndef FREEBL_CHILD_BUILD |
| |
| # We're going to change this build so that it builds libfreebl.a with |
| # just loader.c. Then we have to build this directory twice again to |
| # build the two DSOs. |
| # To build libfreebl.a with just loader.c, we must now override many |
| # of the make variables setup by the prior inclusion of CORECONF's config.mk |
| |
| CSRCS = loader.c |
| SIMPLE_OBJS = $(CSRCS:.c=$(OBJ_SUFFIX)) |
| OBJS = $(addprefix $(OBJDIR)/$(PROG_PREFIX), $(SIMPLE_OBJS)) |
| ALL_TRASH := $(TARGETS) $(OBJS) $(OBJDIR) LOGS TAGS $(GARBAGE) \ |
| $(NOSUCHFILE) so_locations |
| |
| # this is not a recursive child make. We make a static lib. (archive) |
| |
| # Override the values defined in coreconf's ruleset.mk. |
| # |
| # - (1) LIBRARY: a static (archival) library |
| # - (2) SHARED_LIBRARY: a shared (dynamic link) library |
| # - (3) IMPORT_LIBRARY: an import library, used only on Windows |
| # - (4) PROGRAM: an executable binary |
| # |
| # override these variables to prevent building a DSO/DLL. |
| TARGETS = $(LIBRARY) |
| SHARED_LIBRARY = |
| IMPORT_LIBRARY = |
| PROGRAM = |
| |
| else |
| |
| # This is a recursive child make. We build the shared lib. |
| |
| TARGETS = $(SHARED_LIBRARY) |
| LIBRARY = |
| IMPORT_LIBRARY = |
| PROGRAM = |
| |
| ifeq ($(OS_TARGET), SunOS) |
| OS_LIBS += -lkstat |
| endif |
| |
| ifeq (,$(filter-out WIN%,$(OS_TARGET))) |
| |
| RESNAME = freebl.rc |
| |
| ifdef NS_USE_GCC |
| OS_LIBS += -ladvapi32 |
| else |
| OS_LIBS += advapi32.lib |
| endif |
| |
| ifdef NS_USE_GCC |
| EXTRA_SHARED_LIBS += \ |
| -L$(DIST)/lib \ |
| -L$(NSSUTIL_LIB_DIR) \ |
| -lnssutil3 \ |
| -L$(NSPR_LIB_DIR) \ |
| -lnspr4 \ |
| $(NULL) |
| else # ! NS_USE_GCC |
| EXTRA_SHARED_LIBS += \ |
| $(DIST)/lib/nssutil3.lib \ |
| $(NSPR_LIB_DIR)/$(NSPR31_LIB_PREFIX)nspr4.lib \ |
| $(NULL) |
| endif # NS_USE_GCC |
| |
| else |
| |
| ifeq ($(FREEBL_NO_DEPEND),1) |
| #drop pthreads as well |
| OS_PTHREAD= |
| else |
| EXTRA_SHARED_LIBS += \ |
| -L$(DIST)/lib \ |
| -L$(NSSUTIL_LIB_DIR) \ |
| -lnssutil3 \ |
| -L$(NSPR_LIB_DIR) \ |
| -lnspr4 \ |
| $(NULL) |
| endif |
| endif |
| |
| ifeq ($(OS_ARCH), Darwin) |
| EXTRA_SHARED_LIBS += -dylib_file @executable_path/libplc4.dylib:$(DIST)/lib/libplc4.dylib -dylib_file @executable_path/libplds4.dylib:$(DIST)/lib/libplds4.dylib |
| endif |
| |
| endif |