security/nss/coreconf/OS2.mk

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/security/nss/coreconf/OS2.mk	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,156 @@
     1.4 +#
     1.5 +# This Source Code Form is subject to the terms of the Mozilla Public
     1.6 +# License, v. 2.0. If a copy of the MPL was not distributed with this
     1.7 +# file, You can obtain one at http://mozilla.org/MPL/2.0/.
     1.8 +
     1.9 +MOZ_WIDGET_TOOLKIT = os2
    1.10 +
    1.11 +# XP_PC is for Window and OS2 on Intel X86
    1.12 +# XP_OS2 is strictly for OS2 only
    1.13 +XP_DEFINE  += -DXP_PC=1  -DXP_OS2=1
    1.14 +
    1.15 +# Override prefix
    1.16 +LIB_PREFIX  = $(NULL)
    1.17 +
    1.18 +# Override suffix in suffix.mk
    1.19 +LIB_SUFFIX  = lib
    1.20 +# the DLL_SUFFIX must be uppercase for FIPS mode to work. bugzilla 240784
    1.21 +DLL_SUFFIX  = DLL
    1.22 +PROG_SUFFIX = .exe
    1.23 +
    1.24 +
    1.25 +CCC			= gcc
    1.26 +LINK			= gcc
    1.27 +AR                      = emxomfar r $@
    1.28 +# Keep AR_FLAGS blank so that we do not have to change rules.mk
    1.29 +AR_FLAGS                = 
    1.30 +RANLIB 			= @echo OS2 RANLIB
    1.31 +BSDECHO 		= @echo OS2 BSDECHO
    1.32 +IMPLIB			= emximp -o
    1.33 +FILTER			= emxexp -o
    1.34 +
    1.35 +# GCC for OS/2 currently predefines these, but we don't want them
    1.36 +DEFINES 		+= -Uunix -U__unix -U__unix__
    1.37 +
    1.38 +DEFINES			+= -DTCPV40HDRS
    1.39 +
    1.40 +ifeq ($(MOZ_OS2_HIGH_MEMORY),1)
    1.41 +HIGHMEM_LDFLAG          = -Zhigh-mem
    1.42 +endif
    1.43 +
    1.44 +ifndef NO_SHARED_LIB
    1.45 +WRAP_MALLOC_LIB         = 
    1.46 +WRAP_MALLOC_CFLAGS      = 
    1.47 +DSO_CFLAGS              = 
    1.48 +DSO_PIC_CFLAGS          = 
    1.49 +MKSHLIB                 = $(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@
    1.50 +MKCSHLIB                = $(CC) $(CFLAGS) $(DSO_LDOPTS) -o $@
    1.51 +MKSHLIB_FORCE_ALL       = 
    1.52 +MKSHLIB_UNFORCE_ALL     = 
    1.53 +DSO_LDOPTS              = -Zomf -Zdll -Zmap $(HIGHMEM_LDFLAG)
    1.54 +SHLIB_LDSTARTFILE	= 
    1.55 +SHLIB_LDENDFILE		= 
    1.56 +ifdef MAPFILE
    1.57 +MKSHLIB += $(MAPFILE)
    1.58 +endif
    1.59 +PROCESS_MAP_FILE = \
    1.60 +	echo LIBRARY $(LIBRARY_NAME)$(LIBRARY_VERSION) INITINSTANCE TERMINSTANCE > $@; \
    1.61 +	echo PROTMODE >> $@; \
    1.62 +	echo CODE    LOADONCALL MOVEABLE DISCARDABLE >> $@; \
    1.63 +	echo DATA    PRELOAD MOVEABLE MULTIPLE NONSHARED >> $@; \
    1.64 +	echo EXPORTS >> $@; \
    1.65 +	grep -v ';+' $< | grep -v ';-' | \
    1.66 +	sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' -e 's,\([\t ]*\),\1_,' | \
    1.67 +	awk 'BEGIN {ord=1;} { print($$0 " @" ord " RESIDENTNAME"); ord++;}' >> $@
    1.68 +
    1.69 +endif   #NO_SHARED_LIB
    1.70 +
    1.71 +OS_CFLAGS          = -Wall -Wno-unused -Wpointer-arith -Wcast-align -Wno-switch -Zomf -DDEBUG -DTRACING -g
    1.72 +
    1.73 +ifdef BUILD_OPT
    1.74 +ifeq (11,$(ALLOW_OPT_CODE_SIZE)$(OPT_CODE_SIZE))
    1.75 +	OPTIMIZER += -Os -s
    1.76 +else
    1.77 +	OPTIMIZER += -O2 -s
    1.78 +endif
    1.79 +DEFINES 		+= -UDEBUG -U_DEBUG -DNDEBUG
    1.80 +DLLFLAGS		= -DLL -OUT:$@ -MAP:$(@:.dll=.map) $(HIGHMEM_LDFLAG)
    1.81 +EXEFLAGS    		= -PMTYPE:VIO -OUT:$@ -MAP:$(@:.exe=.map) -nologo -NOE $(HIGHMEM_LDFLAG)
    1.82 +OBJDIR_TAG 		= _OPT
    1.83 +else
    1.84 +#OPTIMIZER		= -O+ -Oi
    1.85 +DEFINES 		+= -DDEBUG -D_DEBUG -DDEBUGPRINTS     #HCT Need += to avoid overidding manifest.mn 
    1.86 +DLLFLAGS		= -DEBUG -DLL -OUT:$@ -MAP:$(@:.dll=.map) $(HIGHMEM_LDFLAG)
    1.87 +EXEFLAGS    		= -DEBUG -PMTYPE:VIO -OUT:$@ -MAP:$(@:.exe=.map) -nologo -NOE $(HIGHMEM_LDFLAG)
    1.88 +OBJDIR_TAG 		= _DBG
    1.89 +LDFLAGS 		= -DEBUG $(HIGHMEM_LDFLAG)
    1.90 +endif   # BUILD_OPT
    1.91 +
    1.92 +# OS/2 use nsinstall that is included in the toolkit.
    1.93 +# since we do not wish to support and maintain 3 version of nsinstall in mozilla, nspr and nss
    1.94 +
    1.95 +ifdef BUILD_TREE
    1.96 +NSINSTALL_DIR  = $(BUILD_TREE)/nss
    1.97 +else
    1.98 +NSINSTALL_DIR  = $(CORE_DEPTH)/coreconf/nsinstall
    1.99 +endif
   1.100 +# NSINSTALL      = $(NSINSTALL_DIR)/$(OBJDIR_NAME)/nsinstall
   1.101 +NSINSTALL 	= nsinstall             # HCT4OS2
   1.102 +INSTALL		= $(NSINSTALL)
   1.103 +
   1.104 +MKDEPEND_DIR    = $(CORE_DEPTH)/coreconf/mkdepend
   1.105 +MKDEPEND        = $(MKDEPEND_DIR)/$(OBJDIR_NAME)/mkdepend
   1.106 +MKDEPENDENCIES  = $(OBJDIR_NAME)/depend.mk
   1.107 +
   1.108 +####################################################################
   1.109 +#
   1.110 +# One can define the makefile variable NSDISTMODE to control
   1.111 +# how files are published to the 'dist' directory.  If not
   1.112 +# defined, the default is "install using relative symbolic
   1.113 +# links".  The two possible values are "copy", which copies files
   1.114 +# but preserves source mtime, and "absolute_symlink", which
   1.115 +# installs using absolute symbolic links.
   1.116 +#   - THIS IS NOT PART OF THE NEW BINARY RELEASE PLAN for 9/30/97
   1.117 +#   - WE'RE KEEPING IT ONLY FOR BACKWARDS COMPATIBILITY
   1.118 +####################################################################
   1.119 +
   1.120 +ifeq ($(NSDISTMODE),copy)
   1.121 +	# copy files, but preserve source mtime
   1.122 +	INSTALL  = $(NSINSTALL)
   1.123 +	INSTALL += -t
   1.124 +else
   1.125 +	ifeq ($(NSDISTMODE),absolute_symlink)
   1.126 +		# install using absolute symbolic links
   1.127 +		INSTALL  = $(NSINSTALL)
   1.128 +		INSTALL += -L `pwd`
   1.129 +	else
   1.130 +		# install using relative symbolic links
   1.131 +		INSTALL  = $(NSINSTALL)
   1.132 +		INSTALL += -R
   1.133 +	endif
   1.134 +endif
   1.135 +
   1.136 +define MAKE_OBJDIR
   1.137 +if test ! -d $(@D); then rm -rf $(@D); $(NSINSTALL) -D $(@D); fi
   1.138 +endef
   1.139 +
   1.140 +#
   1.141 +# override the definition of DLL_PREFIX in prefix.mk
   1.142 +#
   1.143 +
   1.144 +ifndef DLL_PREFIX
   1.145 +    DLL_PREFIX = $(NULL)
   1.146 +endif
   1.147 +
   1.148 +#
   1.149 +# override the TARGETS defined in ruleset.mk, adding IMPORT_LIBRARY
   1.150 +#
   1.151 +ifndef TARGETS
   1.152 +    TARGETS = $(LIBRARY) $(SHARED_LIBRARY) $(IMPORT_LIBRARY) $(PROGRAM)
   1.153 +endif
   1.154 +
   1.155 +
   1.156 +ifdef LIBRARY_NAME
   1.157 +    IMPORT_LIBRARY = $(OBJDIR)/$(LIBRARY_NAME)$(LIBRARY_VERSION)$(JDK_DEBUG_SUFFIX).lib
   1.158 +endif
   1.159 +

mercurial