1 #*************************************************************************
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 # Copyright 2000, 2010 Oracle and/or its affiliates.
7 # OpenOffice.org - a multi-platform office productivity suite
9 # This file is part of OpenOffice.org.
11 # OpenOffice.org is free software: you can redistribute it and/or modify
12 # it under the terms of the GNU Lesser General Public License version 3
13 # only, as published by the Free Software Foundation.
15 # OpenOffice.org is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU Lesser General Public License version 3 for more details
19 # (a copy is included in the LICENSE file that accompanied this code).
21 # You should have received a copy of the GNU Lesser General Public License
22 # version 3 along with OpenOffice.org. If not, see
23 # <http://www.openoffice.org/license.html>
24 # for a copy of the LGPLv3 License.
26 #*************************************************************************
33 # --- Settings -----------------------------------------------------
35 .INCLUDE
: settings.mk
37 # --- Files --------------------------------------------------------
39 .IF
"$(ENABLE_NSS_MODULE)"!="YES"
41 @echo
"NSS will not be built. ENABLE_NSS_MODULE is '$(ENABLE_NSS_MODULE)'"
48 TARFILE_NAME
=nss-
$(VER_MAJOR
).
$(VER_MINOR
).
$(VER_PATCH
)-with-nspr-4.8
.6
49 TARFILE_MD5
=71474203939fafbe271e1263e61d083e
50 TARFILE_ROOTDIR
=nss-
$(VER_MAJOR
).
$(VER_MINOR
).
$(VER_PATCH
)
51 PATCH_FILES
=nss.patch nss.aix.patch nss-config.patch
54 PATCH_FILES
+=nss_macosx.patch
55 .ENDIF
# "$(OS)"=="MACOSX"
63 CONFIGURE_ACTION
=mozilla
/nsprpub
/configure
--prefix=$(OUTDIR
) --includedir=$(OUTDIR
)/inc
/mozilla
/nspr
; \
64 sed
-e
's\#@prefix@\#$(OUTDIR)\#' -e
's\#@includedir@\#$(OUTDIR)/inc/mozilla/nss\#' -e
's\#@MOD_MAJOR_VERSION@\#$(VER_MAJOR)\#' -e
's\#@MOD_MINOR_VERSION@\#$(VER_MINOR)\#' -e
's\#@MOD_PATCH_VERSION@\#$(VER_PATCH)\#' mozilla
/security
/nss
/nss-config.in
> mozilla
/security
/nss
/nss-config
; \
65 chmod a
+x mozilla
/security
/nss
/nss-config
68 .IF
"$(OS)$(COM)"=="LINUXGCC"
70 # force 64-bit buildmode
73 .ENDIF
# "$(CPU)"=="X"
74 .ENDIF
# "$(OS)$(COM)"=="LINUXGCC"
76 .IF
"$(OS)$(COM)"=="FREEBSDGCC"
78 # force 64-bit buildmode
81 .ENDIF
# "$(CPU)"=="X"
82 .ENDIF
# "$(OS)$(COM)"=="LINUXGCC"
85 .IF
"$(EXTRA_CFLAGS)"!=""
86 CPP
:=gcc
-E
$(EXTRA_CFLAGS
)
87 CXX
:=g
++ $(EXTRA_CFLAGS
)
88 CC
:=gcc
$(EXTRA_CFLAGS
)
89 MACOS_SDK_DIR
*=$(MACDEVSDK
)
90 .EXPORT
: CPP MACOS_SDK_DIR
91 .ENDIF
# "$(EXTRA_CFLAGS)"!=""
92 .ENDIF
# "$(OS)"=="MACOSX"
94 OUT2LIB
=mozilla
$/dist$/out
$/lib
$/*$(DLLPOST
) mozilla
$/dist$/out
$/lib
$/libcrmf.a
96 OUT2BIN
=config
$/nspr-config mozilla
$/security
$/nss
$/nss-config
98 BUILD_DIR
=mozilla
$/security
$/nss
99 BUILD_ACTION
= $(GNUMAKE
) nss_build_all
100 #See #i105566# && moz#513024#
102 BUILD_ACTION
+=FREEBL_NO_DEPEND
=1
105 .ENDIF
# "$(GUI)"=="UNX"
112 PATCH_FILES
+=nss.patch.mingw
114 moz_build
:=$(shell cygpath
-p
$(MOZILLABUILD
))
115 PATH
!:=$(moz_build
)/bin
:$(PATH
)
119 .IF
"$(MINGW_SHARED_GCCLIB)"=="YES"
120 nss_CC
+=-shared-libgcc
121 nss_CXX
+=-shared-libgcc
125 .IF
"$(MINGW_SHARED_GXXLIB)"=="YES"
126 nss_LIBS
+=$(MINGW_SHARED_LIBSTDCPP
)
129 BUILD_DIR
=mozilla
$/security
$/nss
130 BUILD_ACTION
=NS_USE_GCC
=1 CC
="$(nss_CC)" CXX
="$(nss_CXX)" OS_LIBS
="$(nss_LIBS)" OS_TARGET
=WIN95 _WIN32_IE
=0x500 PATH
="$(PATH)" DEFINES
=-D_WIN32_IE
=0x500 $(GNUMAKE
) nss_build_all
133 mozilla
$/dist$/out
$/lib
$/libnspr4.a \
134 mozilla
$/dist$/out
$/lib
$/libnss3.a \
135 mozilla
$/dist$/out
$/lib
$/libnssdbm3.a \
136 mozilla
$/dist$/out
$/lib
$/libnssutil3.a \
137 mozilla
$/dist$/out
$/lib
$/libplc4.a \
138 mozilla
$/dist$/out
$/lib
$/libplds4.a \
139 mozilla
$/dist$/out
$/lib
$/libsmime3.a \
140 mozilla
$/dist$/out
$/lib
$/libsoftokn3.a \
141 mozilla
$/dist$/out
$/lib
$/libsqlite3.a \
142 mozilla
$/dist$/out
$/lib
$/libssl3.a
144 .ELSE
# "$(COM)"=="GCC"
146 .EXPORT
: MOZ_MSVCVERSION
147 moz_build
:=$(shell cygpath
-p
$(MOZILLABUILD
))
149 #Using WINNT will cause at least that nspr4.dll, plc4.dll, plds4.dll
150 #become libnspr4.dll, libplc4.dll, libplds4.dll
151 #WINNT causes the use of Microsoft fibers (specific to Windows NT and Windows 2000).
156 #To build nss one has to call "make nss_build_all" in
157 #mozilla/security/nss
158 NSS_BUILD_DIR
= $(subst,\
,/ $(PWD
)/$(MISC
)/build
/$(TARFILE_ROOTDIR
)/mozilla
/security
/nss
)
159 BUILD_ACTION
= PATH
="$(moz_build)/msys/bin:$(moz_build)/moztools/bin:$(PATH)" && $(subst,/,$/ $(MOZILLABUILD
)/msys
/bin
/bash
) -i \
160 -c
"cd $(NSS_BUILD_DIR) && make nss_build_all"
163 mozilla
$/dist$/out
$/lib
$/nspr4.lib \
164 mozilla
$/dist$/out
$/lib
$/nss3.lib \
165 mozilla
$/dist$/out
$/lib
$/nssdbm3.lib \
166 mozilla
$/dist$/out
$/lib
$/nssutil3.lib \
167 mozilla
$/dist$/out
$/lib
$/plc4.lib \
168 mozilla
$/dist$/out
$/lib
$/plds4.lib \
169 mozilla
$/dist$/out
$/lib
$/smime3.lib \
170 mozilla
$/dist$/out
$/lib
$/softokn3.lib \
171 mozilla
$/dist$/out
$/lib
$/sqlite3.lib \
172 mozilla
$/dist$/out
$/lib
$/ssl3.lib
174 .ENDIF
# "$(COM)"=="GCC"
176 OUT2BIN
=mozilla
$/dist$/out
$/lib
$/*$(DLLPOST
) \
177 config
$/nspr-config \
178 mozilla
$/security
$/nss
$/nss-config
180 .ENDIF
# "$(GUI)"=="WNT"
183 OUTDIR2INC
=mozilla
$/dist$/public
$/nss mozilla
$/dist$/out
$/include
185 # --- Targets ------------------------------------------------------
187 .INCLUDE
: set_ext.mk