Fix building moz on Mac OS X.
* On Mac, nss-config must not emit -rpath-link switch. * --with-system-nss/-nspr horribly broke in combination with the routine use of MOZ_ARCH and resulting MOZ_CROSS_COMPILE for Mac, and the latter appears to be unnecessary for a normal build, anyway, so is now conditional CREATE_UNIVERSAL_MAC_MOZ_ZIP, in case anybody still uses the code to create universal moz archives. * This in turn revealed two issues in moz that have been addressed with a new macosx_build_fix.patch.
This commit is contained in:
@@ -95,7 +95,8 @@ PATCH_FILES = \
|
|||||||
patches/link_fontconfig.patch \
|
patches/link_fontconfig.patch \
|
||||||
patches/brokenmakefile.patch \
|
patches/brokenmakefile.patch \
|
||||||
patches/aix_build_fix.patch \
|
patches/aix_build_fix.patch \
|
||||||
patches/libpr0n_build_fix.patch
|
patches/libpr0n_build_fix.patch \
|
||||||
|
patches/macosx_build_fix.patch
|
||||||
|
|
||||||
# This file is needed for the W32 build when BUILD_MOZAB is set
|
# This file is needed for the W32 build when BUILD_MOZAB is set
|
||||||
# (currently only vc8/vs2005 is supported when BUILD_MOZAB is set)
|
# (currently only vc8/vs2005 is supported when BUILD_MOZAB is set)
|
||||||
@@ -349,7 +350,7 @@ $(MISC)$/build$/moztools.complete : $(MISC)$/build$/moztools.unpack
|
|||||||
zip: \
|
zip: \
|
||||||
$(MISC)$/CREATETARBALL
|
$(MISC)$/CREATETARBALL
|
||||||
|
|
||||||
.IF "$(GUIBASE)"=="aqua"
|
.IF "$(GUIBASE)"=="aqua" && "$(CREATE_UNIVERSAL_MAC_MOZ_ZIP)"!=""
|
||||||
MOZ_ARCH=$(eq,$(CPU),I i386 ppc)
|
MOZ_ARCH=$(eq,$(CPU),I i386 ppc)
|
||||||
MOZILLA_CONFIGURE_FLAGS+=$(eq,$(CPU),I --target=i386-apple-darwin8 --target=powerpc-apple-darwin8)
|
MOZILLA_CONFIGURE_FLAGS+=$(eq,$(CPU),I --target=i386-apple-darwin8 --target=powerpc-apple-darwin8)
|
||||||
|
|
||||||
|
@@ -63,3 +63,18 @@ Description
|
|||||||
call.
|
call.
|
||||||
The patch changes the DoQuery behavior to respect the arguments of the second call.
|
The patch changes the DoQuery behavior to respect the arguments of the second call.
|
||||||
|
|
||||||
|
====================================================================================
|
||||||
|
File name
|
||||||
|
---------
|
||||||
|
macosx_build_fix.patch.patch
|
||||||
|
|
||||||
|
Description
|
||||||
|
-----------
|
||||||
|
For one, recently introduced --with-system-nspr/--with-nspr-prefix in
|
||||||
|
moz/makefile.mk reveals that directory/c-sdk/build.mk/build.mk uses just a
|
||||||
|
hard-coded list of nspr libraries, lacking a proper -L switch (as provided by
|
||||||
|
nspr-config).
|
||||||
|
For another, disabling the routine use of MOZ_ARCH and resulting
|
||||||
|
MOZ_CROSS_COMPILE for Mac OS X in moz/makefile.mk reveals that
|
||||||
|
xpcom/build/Makefile.in wants to link against a macmorefiles_s library
|
||||||
|
without a proper -L switch.
|
||||||
|
23
moz/patches/macosx_build_fix.patch
Normal file
23
moz/patches/macosx_build_fix.patch
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
--- misc/mozilla/directory/c-sdk/build.mk 2011-09-27 14:45:02.000000000 +0200
|
||||||
|
+++ misc/build/mozilla/directory/c-sdk/build.mk 2011-09-27 14:44:18.000000000 +0200
|
||||||
|
@@ -157,8 +157,8 @@
|
||||||
|
PLDSBASE=plds$(NSPR_LIBVERSION)
|
||||||
|
NSPRBASE=nspr$(NSPR_LIBVERSION)
|
||||||
|
|
||||||
|
-DYNAMICNSPR = -l$(PLCBASE) -l$(PLDSBASE) -l$(NSPRBASE)
|
||||||
|
+DYNAMICNSPR = $(NSPR_LIBS)
|
||||||
|
|
||||||
|
PLC_LIBNAME=plc$(NSPR_LIBVERSION)
|
||||||
|
PLDS_LIBNAME=plds$(NSPR_LIBVERSION)
|
||||||
|
ifeq ($(OS_ARCH), WINNT)
|
||||||
|
--- misc/mozilla/xpcom/build/Makefile.in 2008-06-16 00:26:11.000000000 +0200
|
||||||
|
+++ misc/build/mozilla/xpcom/build/Makefile.in 2011-09-28 10:41:02.000000000 +0200
|
||||||
|
@@ -135,7 +135,7 @@
|
||||||
|
# pull in MoreFiles for MacOSX
|
||||||
|
ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
|
||||||
|
EXTRA_DSO_LIBS = macmorefiles_s
|
||||||
|
-EXTRA_DSO_LDOPTS += $(EXTRA_DSO_LIBS)
|
||||||
|
+EXTRA_DSO_LDOPTS += -L$(DIST)/lib $(EXTRA_DSO_LIBS)
|
||||||
|
EXTRA_DEPS += $(DIST)/lib/$(LIB_PREFIX)macmorefiles_s.$(LIB_SUFFIX)
|
||||||
|
endif
|
||||||
|
|
@@ -1,6 +1,6 @@
|
|||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ misc/build/nss-3.12.8/mozilla/security/nss/nss-config.in 2010-06-11 16:35:54.946870871 +0200
|
+++ misc/build/nss-3.12.8/mozilla/security/nss/nss-config.in 2010-06-11 16:35:54.946870871 +0200
|
||||||
@@ -0,0 +1,144 @@
|
@@ -0,0 +1,147 @@
|
||||||
+#!/bin/sh
|
+#!/bin/sh
|
||||||
+
|
+
|
||||||
+prefix=@prefix@
|
+prefix=@prefix@
|
||||||
@@ -129,7 +129,10 @@
|
|||||||
+fi
|
+fi
|
||||||
+
|
+
|
||||||
+if test "$echo_libs" = "yes"; then
|
+if test "$echo_libs" = "yes"; then
|
||||||
+ libdirs="-Wl,-rpath-link,$libdir -L$libdir"
|
+ libdirs="-L$libdir"
|
||||||
|
+ if test `uname` != Darwin; then
|
||||||
|
+ libdirs="-Wl,-rpath-link,$libdir $libdirs"
|
||||||
|
+ fi
|
||||||
+ if test -n "$lib_ssl"; then
|
+ if test -n "$lib_ssl"; then
|
||||||
+ libdirs="$libdirs -lssl${major_version}"
|
+ libdirs="$libdirs -lssl${major_version}"
|
||||||
+ fi
|
+ fi
|
||||||
|
Reference in New Issue
Block a user