| # |
| # 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/. |
| |
| |
| MOD_DEPTH = ../../../.. |
| topsrcdir = @top_srcdir@ |
| srcdir = @srcdir@ |
| VPATH = @srcdir@ |
| |
| include $(MOD_DEPTH)/config/autoconf.mk |
| |
| include $(topsrcdir)/config/config.mk |
| |
| CSRCS = \ |
| unix.c \ |
| unix_errors.c \ |
| uxproces.c \ |
| uxrng.c \ |
| uxshm.c \ |
| uxwrap.c \ |
| $(NULL) |
| |
| ifneq ($(USE_PTHREADS),1) |
| CSRCS += uxpoll.c |
| endif |
| |
| ifeq ($(PTHREADS_USER),1) |
| CSRCS += pthreads_user.c |
| endif |
| |
| CSRCS += $(PR_MD_CSRCS) |
| ASFILES += $(PR_MD_ASFILES) |
| |
| TARGETS = $(OBJS) |
| |
| ifeq ($(OS_ARCH),SunOS) |
| ifeq ($(CPU_ARCH),sparc) |
| ifdef USE_64 |
| ULTRASPARC_ASFILES = os_SunOS_sparcv9.s |
| ULTRASPARC_ASOBJS = $(addprefix $(OBJDIR)/,$(ULTRASPARC_ASFILES:.s=.$(OBJ_SUFFIX))) |
| else |
| LIBRARY_NAME = $(ULTRASPARC_LIBRARY) |
| LIBRARY_VERSION = $(MOD_MAJOR_VERSION) |
| ULTRASPARC_ASFILES = os_SunOS_ultrasparc.s |
| ULTRASPARC_ASOBJS = $(addprefix $(OBJDIR)/,$(ULTRASPARC_ASFILES:.s=.$(OBJ_SUFFIX))) |
| TARGETS += $(ULTRASPARC_ASOBJS) $(SHARED_LIBRARY) |
| RELEASE_LIBS = $(SHARED_LIBRARY) |
| RELEASE_LIBS_DEST = $(RELEASE_LIB_DIR)/cpu/sparcv8plus |
| lib_subdir = cpu/sparcv8plus |
| endif |
| endif |
| endif |
| |
| INCLUDES = -I$(dist_includedir) -I$(topsrcdir)/pr/include -I$(topsrcdir)/pr/include/private |
| |
| DEFINES += -D_NSPR_BUILD_ |
| |
| include $(topsrcdir)/config/rules.mk |
| |
| export:: $(TARGETS) |
| |
| ifeq ($(OS_ARCH),SunOS) |
| ifeq ($(CPU_ARCH),sparc) |
| |
| ifdef USE_64 |
| $(ULTRASPARC_ASOBJS): $(ULTRASPARC_ASFILES) |
| /usr/ccs/bin/as -o $@ -K PIC -P -D_ASM -D__STDC__=0 -xarch=v9 $< |
| else |
| $(SHARED_LIBRARY): $(ULTRASPARC_ASOBJS) |
| $(LD) -G -z text -z endfiltee -o $@ $(ULTRASPARC_ASOBJS) |
| $(INSTALL) -m 444 $@ $(dist_libdir)/cpu/sparcv8plus |
| $(INSTALL) -m 444 $@ $(dist_bindir)/cpu/sparcv8plus |
| # |
| # The -f $(ORIGIN)/... linker flag uses the real file, after symbolic links |
| # are resolved, as the origin. If NSDISTMODE is not "copy", libnspr4.so |
| # will be installed as a symbolic link in $(dist_libdir), pointing to the |
| # real libnspr4.so file in pr/src. Therefore we need to install an |
| # additional copy of libnspr_flt4.so in pr/src/cpu/sparcv8plus. |
| # |
| ifneq ($(NSDISTMODE),copy) |
| $(INSTALL) -m 444 $@ ../../cpu/sparcv8plus |
| endif |
| |
| ifneq ($(NSDISTMODE),copy) |
| clobber realclean clobber_all distclean:: |
| rm -rf ../../cpu |
| endif |
| |
| $(ULTRASPARC_ASOBJS): $(ULTRASPARC_ASFILES) |
| /usr/ccs/bin/as -o $@ -K PIC -P -D_ASM -D__STDC__=0 -xarch=v8plus $< |
| |
| clean:: |
| rm -rf $(ULTRASPARC_ASOBJS) |
| endif |
| |
| endif |
| endif |