security/nss/lib/freebl/mpi/target.mk

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

michael@0 1 # This Source Code Form is subject to the terms of the Mozilla Public
michael@0 2 # License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0 3 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
michael@0 4
michael@0 5 ##
michael@0 6 ## Define CFLAGS to contain any local options your compiler
michael@0 7 ## setup requires.
michael@0 8 ##
michael@0 9 ## Conditional compilation options are no longer here; see
michael@0 10 ## the file 'mpi-config.h' instead.
michael@0 11 ##
michael@0 12 MPICMN = -I. -DMP_API_COMPATIBLE -DMP_IOFUNC
michael@0 13 CFLAGS= -O $(MPICMN)
michael@0 14 #CFLAGS=-ansi -fullwarn -woff 1521 -O3 $(MPICMN)
michael@0 15 #CFLAGS=-ansi -pedantic -Wall -O3 $(MPICMN)
michael@0 16 #CFLAGS=-ansi -pedantic -Wall -g -O2 -DMP_DEBUG=1 $(MPICMN)
michael@0 17
michael@0 18 ifeq ($(TARGET),mipsIRIX)
michael@0 19 #IRIX
michael@0 20 #MPICMN += -DMP_MONT_USE_MP_MUL
michael@0 21 MPICMN += -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE
michael@0 22 MPICMN += -DMP_USE_UINT_DIGIT
michael@0 23 #MPICMN += -DMP_NO_MP_WORD
michael@0 24 AS_OBJS = mpi_mips.o
michael@0 25 #ASFLAGS = -O -OPT:Olimit=4000 -dollar -fullwarn -xansi -n32 -mips3 -exceptions
michael@0 26 ASFLAGS = -O -OPT:Olimit=4000 -dollar -fullwarn -xansi -n32 -mips3
michael@0 27 #CFLAGS=-ansi -n32 -O3 -fullwarn -woff 1429 -D_SGI_SOURCE $(MPICMN)
michael@0 28 CFLAGS=-ansi -n32 -O2 -fullwarn -woff 1429 -D_SGI_SOURCE $(MPICMN)
michael@0 29 #CFLAGS=-ansi -n32 -g -fullwarn -woff 1429 -D_SGI_SOURCE $(MPICMN)
michael@0 30 #CFLAGS=-ansi -64 -O2 -fullwarn -woff 1429 -D_SGI_SOURCE -DMP_NO_MP_WORD \
michael@0 31 $(MPICMN)
michael@0 32 endif
michael@0 33
michael@0 34 ifeq ($(TARGET),alphaOSF1)
michael@0 35 #Alpha/OSF1
michael@0 36 MPICMN += -DMP_ASSEMBLY_MULTIPLY
michael@0 37 AS_OBJS+= mpvalpha.o
michael@0 38 #CFLAGS= -O -Olimit 4000 -ieee_with_inexact -std1 -DOSF1 -D_REENTRANT $(MPICMN)
michael@0 39 CFLAGS= -O -Olimit 4000 -ieee_with_inexact -std1 -DOSF1 -D_REENTRANT \
michael@0 40 -DMP_NO_MP_WORD $(MPICMN)
michael@0 41 endif
michael@0 42
michael@0 43 ifeq ($(TARGET),v9SOLARIS)
michael@0 44 #Solaris 64
michael@0 45 SOLARIS_FPU_FLAGS = -fast -xO5 -xrestrict=%all -xchip=ultra -xarch=v9a -KPIC -mt
michael@0 46 #SOLARIS_FPU_FLAGS = -fast -xO5 -xrestrict=%all -xdepend -xchip=ultra -xarch=v9a -KPIC -mt
michael@0 47 SOLARIS_ASM_FLAGS = -xchip=ultra -xarch=v9a -KPIC -mt
michael@0 48 AS_OBJS += montmulfv9.o
michael@0 49 AS_OBJS += mpi_sparc.o mpv_sparcv9.o
michael@0 50 MPICMN += -DMP_USE_UINT_DIGIT
michael@0 51 #MPICMN += -DMP_NO_MP_WORD
michael@0 52 MPICMN += -DMP_ASSEMBLY_MULTIPLY
michael@0 53 MPICMN += -DMP_USING_MONT_MULF
michael@0 54 CFLAGS= -O -KPIC -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS -D_REENTRANT \
michael@0 55 -DSOLARIS2_8 -xarch=v9 -DXP_UNIX $(MPICMN)
michael@0 56 #CFLAGS= -g -KPIC -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS -D_REENTRANT \
michael@0 57 -DSOLARIS2_8 -xarch=v9 -DXP_UNIX $(MPICMN)
michael@0 58 endif
michael@0 59
michael@0 60 ifeq ($(TARGET),v8plusSOLARIS)
michael@0 61 #Solaris 32
michael@0 62 SOLARIS_FPU_FLAGS = -fast -xO5 -xrestrict=%all -xdepend -xchip=ultra -xarch=v8plusa -KPIC -mt
michael@0 63 SOLARIS_ASM_FLAGS = -xchip=ultra -xarch=v8plusa -KPIC -mt
michael@0 64 AS_OBJS += montmulfv8.o
michael@0 65 AS_OBJS += mpi_sparc.o mpv_sparcv8.o
michael@0 66 #AS_OBJS = montmulf.o
michael@0 67 MPICMN += -DMP_ASSEMBLY_MULTIPLY
michael@0 68 MPICMN += -DMP_USING_MONT_MULF
michael@0 69 MPICMN += -DMP_USE_UINT_DIGIT
michael@0 70 MPICMN += -DMP_NO_MP_WORD
michael@0 71 CFLAGS=-O -KPIC -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS -D_REENTRANT \
michael@0 72 -DSOLARIS2_6 -xarch=v8plus -DXP_UNIX $(MPICMN)
michael@0 73 endif
michael@0 74
michael@0 75 ifeq ($(TARGET),v8SOLARIS)
michael@0 76 #Solaris 32
michael@0 77 #SOLARIS_FPU_FLAGS = -fast -xO5 -xrestrict=%all -xdepend -xchip=ultra -xarch=v8 -KPIC -mt
michael@0 78 #SOLARIS_ASM_FLAGS = -xchip=ultra -xarch=v8plusa -KPIC -mt
michael@0 79 #AS_OBJS = montmulfv8.o mpi_sparc.o mpv_sparcv8.o
michael@0 80 #AS_OBJS = montmulf.o
michael@0 81 #MPICMN += -DMP_USING_MONT_MULF
michael@0 82 #MPICMN += -DMP_ASSEMBLY_MULTIPLY
michael@0 83 MPICMN += -DMP_USE_LONG_LONG_MULTIPLY -DMP_USE_UINT_DIGIT
michael@0 84 MPICMN += -DMP_NO_MP_WORD
michael@0 85 CFLAGS=-O -KPIC -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS -D_REENTRANT \
michael@0 86 -DSOLARIS2_6 -xarch=v8 -DXP_UNIX $(MPICMN)
michael@0 87 endif
michael@0 88
michael@0 89 ifeq ($(TARGET),ia64HPUX)
michael@0 90 #HPUX 32 on ia64 -- 64 bit digits SCREAM.
michael@0 91 # This one is for DD32 which is the 32-bit ABI with 64-bit registers.
michael@0 92 CFLAGS= +O3 -DHPUX10 -D_POSIX_C_SOURCE=199506L -Aa +Z -DHPUX -Dhppa \
michael@0 93 -D_HPUX_SOURCE -Aa +e -z +p +DD32 -DHPUX11 -DXP_UNIX -Wl,+k $(MPICMN)
michael@0 94 #CFLAGS= -O -DHPUX10 -D_POSIX_C_SOURCE=199506L -Aa +Z -DHPUX -Dhppa \
michael@0 95 -D_HPUX_SOURCE -Aa +e -z +p +DD32 -DHPUX11 -DXP_UNIX -Wl,+k $(MPICMN)
michael@0 96 #CFLAGS= -g -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 97 -D_HPUX_SOURCE -Aa +e -z +p +DD32 -DHPUX11 -DXP_UNIX -Wl,+k $(MPICMN)
michael@0 98 endif
michael@0 99
michael@0 100 ifeq ($(TARGET),ia64HPUX64)
michael@0 101 #HPUX 32 on ia64
michael@0 102 # This one is for DD64 which is the 64-bit ABI
michael@0 103 CFLAGS= +O3 -DHPUX10 -D_POSIX_C_SOURCE=199506L -Aa +Z -DHPUX -Dhppa \
michael@0 104 -D_HPUX_SOURCE -Aa +e -z +p +DD64 -DHPUX11 -DXP_UNIX -Wl,+k $(MPICMN)
michael@0 105 #CFLAGS= -g -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 106 -D_HPUX_SOURCE -Aa +e -z +p +DD64 -DHPUX11 -DXP_UNIX -Wl,+k $(MPICMN)
michael@0 107 endif
michael@0 108
michael@0 109 ifeq ($(TARGET),PA2.0WHPUX)
michael@0 110 #HPUX64 (HP PA 2.0 Wide) using MAXPY and 64-bit digits
michael@0 111 MPICMN += -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE
michael@0 112 AS_OBJS = mpi_hp.o hpma512.o hppa20.o
michael@0 113 CFLAGS= -O -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 114 -D_HPUX_SOURCE -Aa +e -z +DA2.0W +DS2.0 +O3 +DChpux -DHPUX11 -DXP_UNIX \
michael@0 115 $(MPICMN)
michael@0 116 #CFLAGS= -g -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 117 -D_HPUX_SOURCE -Aa +e -z +DA2.0W +DS2.0 +DChpux -DHPUX11 -DXP_UNIX \
michael@0 118 $(MPICMN)
michael@0 119 AS = $(CC) $(CFLAGS) -c
michael@0 120 endif
michael@0 121
michael@0 122 ifeq ($(TARGET),PA2.0NHPUX)
michael@0 123 #HPUX32 (HP PA 2.0 Narrow) hybrid model, using 32-bit digits
michael@0 124 # This one is for DA2.0 (N) which is the 32-bit ABI with 64-bit registers.
michael@0 125 MPICMN += -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE
michael@0 126 AS_OBJS = mpi_hp.o hpma512.o hppa20.o
michael@0 127 CFLAGS= +O3 -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 128 -D_HPUX_SOURCE -Aa +e -z +DA2.0 +DS2.0 +DChpux -DHPUX11 -DXP_UNIX \
michael@0 129 -Wl,+k $(MPICMN)
michael@0 130 #CFLAGS= -g -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 131 -D_HPUX_SOURCE -Aa +e -z +DA2.0 +DS2.0 +DChpux -DHPUX11 -DXP_UNIX \
michael@0 132 -Wl,+k $(MPICMN)
michael@0 133 AS = $(CC) $(CFLAGS) -c
michael@0 134 endif
michael@0 135
michael@0 136 ifeq ($(TARGET),PA1.1HPUX)
michael@0 137 #HPUX32 (HP PA 1.1) Pure 32 bit
michael@0 138 MPICMN += -DMP_USE_UINT_DIGIT -DMP_NO_MP_WORD
michael@0 139 #MPICMN += -DMP_USE_LONG_LONG_MULTIPLY
michael@0 140 CFLAGS= -O -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 141 -D_HPUX_SOURCE +DAportable +DS1.1 -DHPUX11 -DXP_UNIX $(MPICMN)
michael@0 142 ##CFLAGS= -g -DHPUX10 -D_POSIX_C_SOURCE=199506L -Ae +Z -DHPUX -Dhppa \
michael@0 143 # -D_HPUX_SOURCE +DAportable +DS1.1 -DHPUX11 -DXP_UNIX $(MPICMN)
michael@0 144 endif
michael@0 145
michael@0 146 ifeq ($(TARGET),32AIX)
michael@0 147 #
michael@0 148 CC = xlC_r
michael@0 149 MPICMN += -DMP_USE_UINT_DIGIT
michael@0 150 MPICMN += -DMP_NO_DIV_WORD
michael@0 151 #MPICMN += -DMP_NO_MUL_WORD
michael@0 152 MPICMN += -DMP_NO_ADD_WORD
michael@0 153 MPICMN += -DMP_NO_SUB_WORD
michael@0 154 #MPICMN += -DMP_NO_MP_WORD
michael@0 155 #MPICMN += -DMP_USE_LONG_LONG_MULTIPLY
michael@0 156 CFLAGS = -O -DAIX -DSYSV -qarch=com -DAIX4_3 -DXP_UNIX -UDEBUG -DNDEBUG $(MPICMN)
michael@0 157 #CFLAGS = -g -DAIX -DSYSV -qarch=com -DAIX4_3 -DXP_UNIX -UDEBUG -DNDEBUG $(MPICMN)
michael@0 158 #CFLAGS += -pg
michael@0 159 endif
michael@0 160
michael@0 161 ifeq ($(TARGET),64AIX)
michael@0 162 #
michael@0 163 CC = xlC_r
michael@0 164 MPICMN += -DMP_USE_UINT_DIGIT
michael@0 165 CFLAGS = -O -O2 -DAIX -DSYSV -qarch=com -DAIX_64BIT -DAIX4_3 -DXP_UNIX -UDEBUG -DNDEBUG $(MPICMN)
michael@0 166 OBJECT_MODE=64
michael@0 167 export OBJECT_MODE
michael@0 168 endif
michael@0 169
michael@0 170 ifeq ($(TARGET),x86LINUX)
michael@0 171 #Linux
michael@0 172 AS_OBJS = mpi_x86.o
michael@0 173 MPICMN += -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE -DMP_ASSEMBLY_DIV_2DX1D
michael@0 174 MPICMN += -DMP_MONT_USE_MP_MUL -DMP_CHAR_STORE_SLOW -DMP_IS_LITTLE_ENDIAN
michael@0 175 CFLAGS= -O2 -fPIC -DLINUX1_2 -Di386 -D_XOPEN_SOURCE -DLINUX2_1 -ansi -Wall \
michael@0 176 -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR \
michael@0 177 -DXP_UNIX -UDEBUG -DNDEBUG -D_REENTRANT $(MPICMN)
michael@0 178 #CFLAGS= -g -fPIC -DLINUX1_2 -Di386 -D_XOPEN_SOURCE -DLINUX2_1 -ansi -Wall \
michael@0 179 -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR \
michael@0 180 -DXP_UNIX -DDEBUG -UNDEBUG -D_REENTRANT $(MPICMN)
michael@0 181 #CFLAGS= -g -fPIC -DLINUX1_2 -Di386 -D_XOPEN_SOURCE -DLINUX2_1 -ansi -Wall \
michael@0 182 -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR \
michael@0 183 -DXP_UNIX -UDEBUG -DNDEBUG -D_REENTRANT $(MPICMN)
michael@0 184 endif
michael@0 185
michael@0 186 ifeq ($(TARGET),armLINUX)
michael@0 187 MPICMN += -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE
michael@0 188 MPICMN += -DMP_USE_UINT_DIGIT
michael@0 189 AS_OBJS += mpi_arm.o
michael@0 190 endif
michael@0 191
michael@0 192 ifeq ($(TARGET),AMD64SOLARIS)
michael@0 193 ASFLAGS += -xarch=generic64
michael@0 194 AS_OBJS = mpi_amd64.o mpi_amd64_sun.o
michael@0 195 MP_CONFIG = -DMP_ASSEMBLY_MULTIPLY -DMPI_AMD64
michael@0 196 MP_CONFIG += -DMP_CHAR_STORE_SLOW -DMP_IS_LITTLE_ENDIAN
michael@0 197 CFLAGS = -xarch=generic64 -xO4 -I. -DMP_API_COMPATIBLE -DMP_IOFUNC $(MP_CONFIG)
michael@0 198 MPICMN += $(MP_CONFIG)
michael@0 199
michael@0 200 mpi_amd64_asm.o: mpi_amd64_sun.s
michael@0 201 $(AS) -xarch=generic64 -P -D_ASM mpi_amd64_sun.s
michael@0 202 endif
michael@0 203
michael@0 204 ifeq ($(TARGET),WIN32)
michael@0 205 ifeq ($(CPU_ARCH),x86_64)
michael@0 206 AS_OBJS = mpi_amd64.obj mpi_amd64_masm.obj mp_comba_amd64_masm.asm
michael@0 207 CFLAGS = -Od -Z7 -MDd -W3 -nologo -DDEBUG -D_DEBUG -UNDEBUG -DDEBUG_$(USER)
michael@0 208 CFLAGS += -DWIN32 -DWIN64 -D_WINDOWS -D_AMD_64_ -D_M_AMD64 -DWIN95 -DXP_PC
michael@0 209 CFLAGS += $(MPICMN)
michael@0 210
michael@0 211 $(AS_OBJS): %.obj : %.asm
michael@0 212 ml64 -Cp -Sn -Zi -coff -nologo -c $<
michael@0 213
michael@0 214 $(LIBOBJS): %.obj : %.c
michael@0 215 cl $(CFLAGS) -Fo$@ -c $<
michael@0 216 else
michael@0 217 AS_OBJS = mpi_x86.obj
michael@0 218 MPICMN += -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE -DMP_ASSEMBLY_DIV_2DX1D
michael@0 219 MPICMN += -DMP_USE_UINT_DIGIT -DMP_NO_MP_WORD -DMP_API_COMPATIBLE
michael@0 220 MPICMN += -DMP_MONT_USE_MP_MUL
michael@0 221 MPICMN += -DMP_CHAR_STORE_SLOW -DMP_IS_LITTLE_ENDIAN
michael@0 222 CFLAGS = -Od -Z7 -MDd -W3 -nologo -DDEBUG -D_DEBUG -UNDEBUG -DDEBUG_$(USER)
michael@0 223 CFLAGS += -DWIN32 -D_WINDOWS -D_X86_ -DWIN95 -DXP_PC
michael@0 224 CFLAGS += $(MPICMN)
michael@0 225
michael@0 226 $(AS_OBJS): %.obj : %.asm
michael@0 227 ml -Cp -Sn -Zi -coff -nologo -c $<
michael@0 228
michael@0 229 $(LIBOBJS): %.obj : %.c
michael@0 230 cl $(CFLAGS) -Fo$@ -c $<
michael@0 231
michael@0 232 endif
michael@0 233 endif

mercurial