123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- #
- # 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/.
- #! gmake
- MOD_DEPTH = ../..
- topsrcdir = @top_srcdir@
- srcdir = @srcdir@
- VPATH = @srcdir@
- include $(MOD_DEPTH)/config/autoconf.mk
- include $(topsrcdir)/config/config.mk
- ifeq ($(OS_ARCH), BeOS)
- CFLAGS += -frtti -fexceptions
- endif
- INCLUDES = -I$(dist_includedir)
- HEADERS = $(wildcard $(srcdir)/*.h)
- CSRCS = \
- plvrsion.c \
- $(NULL)
- CXXSRCS = \
- prstrms.cpp \
- $(NULL)
- OBJS = $(addprefix $(OBJDIR)/,$(CSRCS:.c=.$(OBJ_SUFFIX)) $(CXXSRCS:.cpp=.$(OBJ_SUFFIX)))
- ifeq ($(OS_ARCH), WINNT)
- RES=$(OBJDIR)/prstrms.res
- RESNAME=prstrms.rc
- OS_LIBS = user32.lib
- else
- ifeq ($(OS_ARCH),OS2)
- OS_LIBS = -lstdcpp
- else
- ifeq ($(OS_ARCH), AIX)
- ifeq ($(OS_RELEASE), 4.1)
- ifeq ($(CLASSIC_NSPR),1)
- OS_LIBS += -lC -lc
- else
- OS_LIBS += -lC_r -lc_r
- endif
- else
- # makeC++SharedLib(_r) is in either /usr/lpp/xlC/bin
- # or /usr/ibmcxx/bin.
- ifeq ($(CLASSIC_NSPR),1)
- MKSHLIB = makeC++SharedLib -p 0
- else
- MKSHLIB = makeC++SharedLib_r -p 0
- endif
- OS_LIBS += -ldl
- endif
- endif
- endif
- endif
- ifeq ($(OS_ARCH),BeOS)
- OS_LIBS = -lstdc++.r4
- endif
- ifeq ($(OS_ARCH), UNIXWARE)
- OS_LIBS += -lC
- endif
- EXTRA_LIBS = $(LIBNSPR)
- # On SCOOS, we can't link with extra libraries when
- # we build a shared library. If we do so, the linker doesn't
- # complain, but we would run into weird problems at run-time.
- # Therefore on these platforms, we link just the object files.
- ifeq ($(OS_ARCH),SCOOS)
- EXTRA_LIBS =
- endif
- ifdef RESOLVE_LINK_SYMBOLS
- EXTRA_LIBS += $(OS_LIBS)
- endif
- LIBRARY_NAME = prstrms
- LIBRARY_VERSION = $(MOD_MAJOR_VERSION)
- RELEASE_HEADERS = $(HEADERS)
- RELEASE_HEADERS_DEST = $(RELEASE_INCLUDE_DIR)
- RELEASE_LIBS = $(TARGETS)
- include $(topsrcdir)/config/rules.mk
- #
- # Version information generation (begin)
- #
- ECHO = echo
- TINC = $(OBJDIR)/_pl_bld.h
- PROD = $(notdir $(SHARED_LIBRARY))
- NOW = $(MOD_DEPTH)/config/$(OBJDIR)/now
- SH_DATE = $(shell date "+%Y-%m-%d %T")
- SH_NOW = $(shell $(NOW))
- ifeq ($(OS_ARCH), WINNT)
- SUF = i64
- else
- SUF = LL
- endif
- $(TINC):
- @$(MAKE_OBJDIR)
- @$(ECHO) '#define _BUILD_STRING "$(SH_DATE)"' > $(TINC)
- @if test ! -z "$(SH_NOW)"; then \
- $(ECHO) '#define _BUILD_TIME $(SH_NOW)$(SUF)' >> $(TINC); \
- else \
- true; \
- fi
- @$(ECHO) '#define _PRODUCTION "$(PROD)"' >> $(TINC)
- $(OBJDIR)/plvrsion.$(OBJ_SUFFIX): plvrsion.c $(TINC)
- ifeq ($(OS_ARCH), WINNT)
- $(CC) -o $@ -c $(CFLAGS) -I$(OBJDIR) $<
- else
- $(CC) -o $@ -c $(CFLAGS) -I$(OBJDIR) $<
- endif
- #
- # Version information generation (end)
- #
- export:: $(TARGETS) $(HEADERS)
- $(INSTALL) -m 444 $(HEADERS) $(dist_includedir)
- $(INSTALL) -m 444 $(TARGETS) $(dist_libdir)
- ifeq ($(OS_ARCH),OS2)
- $(INSTALL) -m 444 $(TARGETS) $(dist_bindir)
- endif
- ifeq ($(OS_ARCH),HP-UX)
- ifdef SHARED_LIBRARY
- $(INSTALL) -m 755 $(SHARED_LIBRARY) $(dist_libdir)
- endif
- endif
|