From 034b011dbf95fa1a7e2a651afcd2dfd03faea222 Mon Sep 17 00:00:00 2001 From: "bsmedberg%covad.net" Date: Mon, 11 Apr 2005 15:19:42 +0000 Subject: [PATCH] Bug 288370 - Build XULRunner on Mac, and add makefile vars to link against XPCOM frozen sharedlibs reliably r=darin a=asa git-svn-id: svn://10.0.0.236/trunk@171975 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/config/autoconf.mk.in | 5 ++- mozilla/configure.in | 32 +++++++++++-------- mozilla/embedding/browser/gtk/src/Makefile.in | 1 - mozilla/toolkit/library/Makefile.in | 1 + mozilla/xpcom/stub/Makefile.in | 2 +- mozilla/xpcom/tools/registry/Makefile.in | 3 +- 6 files changed, 26 insertions(+), 18 deletions(-) diff --git a/mozilla/config/autoconf.mk.in b/mozilla/config/autoconf.mk.in index 0b1c3aaee53..68f5e3f5e6f 100644 --- a/mozilla/config/autoconf.mk.in +++ b/mozilla/config/autoconf.mk.in @@ -142,6 +142,8 @@ MOZ_UI_LOCALE = @MOZ_UI_LOCALE@ MOZ_COMPONENTS_VERSION_SCRIPT_LDFLAGS = @MOZ_COMPONENTS_VERSION_SCRIPT_LDFLAGS@ MOZ_COMPONENT_NSPR_LIBS=@MOZ_COMPONENT_NSPR_LIBS@ +MOZ_FIX_LINK_PATHS=@MOZ_FIX_LINK_PATHS@ +XPCOM_FROZEN_LDOPTS=@XPCOM_FROZEN_LDOPTS@ XPCOM_LIBS=@XPCOM_LIBS@ MOZ_REORDER=@MOZ_REORDER@ MOZ_TIMELINE=@MOZ_TIMELINE@ @@ -361,7 +363,8 @@ NSPR_LIBS = @NSPR_LIBS@ LDAP_CFLAGS = @LDAP_CFLAGS@ LDAP_LIBS = @LDAP_LIBS@ -XPCOM_GLUE_LIBS = @XPCOM_GLUE_LIBS@ +XPCOM_GLUE_LDOPTS = @XPCOM_GLUE_LDOPTS@ +XPCOM_STANDALONE_GLUE_LDOPTS = @XPCOM_STANDALONE_GLUE_LDOPTS@ MOZ_XPCOM_OBSOLETE_LIBS = @MOZ_XPCOM_OBSOLETE_LIBS@ USE_DEPENDENT_LIBS = @USE_DEPENDENT_LIBS@ diff --git a/mozilla/configure.in b/mozilla/configure.in index 6547d2db2d1..d8f5ada83d5 100644 --- a/mozilla/configure.in +++ b/mozilla/configure.in @@ -593,7 +593,11 @@ MOZ_PNG_LIBS='-L$(DIST)/lib -lmozpng' MOZ_JS_LIBS='-L$(DIST)/bin -lmozjs' DYNAMIC_XPCOM_LIBS='-L$(DIST)/bin -lxpcom -lxpcom_core' -LIBXUL_LIBS='-L$(DIST)/bin -lxpcom -Wl,-rpath-link,$(DIST)/bin -lxul' +MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(DIST)/bin' +XPCOM_FROZEN_LDOPTS='-L$(DIST)/bin $(MOZ_FIX_LINK_PATHS) -lxpcom' +LIBXUL_LIBS='$(XPCOM_FROZEN_LDOPTS) -lxul' +XPCOM_GLUE_LDOPTS='-L$(DIST)/lib -lxpcomglue_s $(XPCOM_FROZEN_LDOPTS)' +XPCOM_STANDALONE_GLUE_LDOPTS='-L$(DIST)/lib -lxpcomglue' MOZ_COMPONENT_NSPR_LIBS='-L$(DIST)/bin $(NSPR_LIBS)' MOZ_XPCOM_OBSOLETE_LIBS='-L$(DIST)/lib -lxpcom_compat' @@ -891,6 +895,8 @@ case "$host" in HOST_CFLAGS="$HOST_CFLAGS -DXP_UNIX -DXP_MACOSX -DNO_X11" HOST_NSPR_MDCPUCFG='\"md/_darwin.cfg\"' HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O3}" + MOZ_FIX_LINK_PATHS='-Wl,-executable_path,$(DIST)/bin' + LIBXUL_LIBS='$(XPCOM_FROZEN_LDOPTS) -lxul -lobjc' ;; *-linux*) @@ -1171,8 +1177,9 @@ case "$target" in MOZ_ZLIB_LIBS='-L$(DIST)/lib -lmozz' MOZ_PNG_LIBS='-L$(DIST)/lib -lpng' MOZ_JS_LIBS='-L$(DIST)/lib -ljs$(MOZ_BITS)$(VERSION_NUMBER)' + MOZ_FIX_LINK_PATHS= DYNAMIC_XPCOM_LIBS='-L$(DIST)/lib -lxpcom -lxpcom_core' - LIBXUL_LIBS='-L$(DIST)/lib -lxpcom -lxul' + XPCOM_FROZEN_LDOPTS='-L$(DIST)/lib -lxpcom' DLL_PREFIX= IMPORT_LIB_SUFFIX=dll.a else @@ -1208,8 +1215,12 @@ case "$target" in MOZ_ZLIB_LIBS='$(DIST)/lib/mozz.lib' MOZ_PNG_LIBS='$(DIST)/lib/png.lib' MOZ_JS_LIBS='$(DIST)/lib/js$(MOZ_BITS)$(VERSION_NUMBER).lib' + MOZ_FIX_LINK_PATHS= DYNAMIC_XPCOM_LIBS='$(DIST)/lib/xpcom.lib $(DIST)/lib/xpcom_core.lib' + XPCOM_FROZEN_LDOPTS='$(DIST)/lib/xpcom.lib' LIBXUL_LIBS='$(DIST)/lib/xpcom.lib $(DIST)/lib/xul.lib' + XPCOM_GLUE_LDOPTS='$(DIST)/lib/xpcomglue_s.lib $(DIST)/lib/xpcom.lib' + XPCOM_STANDALONE_GLUE_LDOPTS='$(DIST)/lib/xpcomglue.lib' MOZ_COMPONENT_NSPR_LIBS='$(NSPR_LIBS)' MOZ_XPCOM_OBSOLETE_LIBS='$(DIST)/lib/xpcom_compat.lib' fi @@ -5842,16 +5853,6 @@ if test "$MOZ_V1_STRING_ABI"; then AC_DEFINE(MOZ_V1_STRING_ABI) fi -dnl ======================================================== -dnl = -dnl = Cleanup section for misc ordering snafus -dnl = -if test "$OS_ARCH" = "WINNT" -a -z "$GNU_CC"; then - XPCOM_GLUE_LIBS='$(DIST)/lib/$(LIB_PREFIX)xpcomglue.$(LIB_SUFFIX) $(DIST)/lib/$(LIB_PREFIX)string_s.$(LIB_SUFFIX)' -else - XPCOM_GLUE_LIBS='-L${DIST}/bin -L${DIST}/lib -lxpcomglue -lstring_s' -fi - dnl ======================================================== if test "$MOZ_DEBUG" || test "$NS_TRACE_MALLOC"; then MOZ_COMPONENTS_VERSION_SCRIPT_LDFLAGS= @@ -5943,7 +5944,6 @@ AC_SUBST(MOZ_PLUGINS) AC_SUBST(ENABLE_EAZEL_PROFILER) AC_SUBST(EAZEL_PROFILER_CFLAGS) AC_SUBST(EAZEL_PROFILER_LIBS) -AC_SUBST(XPCOM_GLUE_LIBS) AC_SUBST(MOZ_PERF_METRICS) AC_SUBST(GC_LEAK_DETECTOR) AC_SUBST(MOZ_LOG_REFCNT) @@ -6006,7 +6006,13 @@ AC_SUBST(INCREMENTAL_LINKER) AC_SUBST(MOZ_COMPONENTS_VERSION_SCRIPT_LDFLAGS) AC_SUBST(MOZ_COMPONENT_NSPR_LIBS) AC_SUBST(MOZ_XPCOM_OBSOLETE_LIBS) + +AC_SUBST(MOZ_FIX_LINK_PATHS) AC_SUBST(XPCOM_LIBS) +AC_SUBST(XPCOM_FROZEN_LDOPTS) +AC_SUBST(XPCOM_GLUE_LDOPTS) +AC_SUBST(XPCOM_STANDALONE_GLUE_LDOPTS) + AC_SUBST(USE_DEPENDENT_LIBS) AC_SUBST(MOZ_BUILD_ROOT) diff --git a/mozilla/embedding/browser/gtk/src/Makefile.in b/mozilla/embedding/browser/gtk/src/Makefile.in index 036e0bcae16..b7957ffc7aa 100644 --- a/mozilla/embedding/browser/gtk/src/Makefile.in +++ b/mozilla/embedding/browser/gtk/src/Makefile.in @@ -130,7 +130,6 @@ EXPORTS = \ ifdef MOZ_ENABLE_GTK EXTRA_DSO_LDOPTS = \ $(MOZ_COMPONENT_LIBS) \ - $(XPCOM_GLUE_LIBS) \ -lgtksuperwin \ $(NULL) endif diff --git a/mozilla/toolkit/library/Makefile.in b/mozilla/toolkit/library/Makefile.in index ffbf0ca6513..4a5e1339a9f 100644 --- a/mozilla/toolkit/library/Makefile.in +++ b/mozilla/toolkit/library/Makefile.in @@ -243,6 +243,7 @@ SHARED_LIBRARY_LIBS = \ $(NULL) EXTRA_DSO_LDOPTS += \ + $(MOZ_FIX_LINK_PATHS) \ $(JPEG_LIBS) \ $(PNG_LIBS) \ $(MOZ_JS_LIBS) \ diff --git a/mozilla/xpcom/stub/Makefile.in b/mozilla/xpcom/stub/Makefile.in index f40748560c5..6437272a029 100644 --- a/mozilla/xpcom/stub/Makefile.in +++ b/mozilla/xpcom/stub/Makefile.in @@ -90,6 +90,6 @@ else EXTRA_DSO_LIBS = xpcom_core endif endif -EXTRA_DSO_LDOPTS = $(LIBS_DIR) $(EXTRA_DSO_LIBS) $(NSPR_LIBS) +EXTRA_DSO_LDOPTS = $(LIBS_DIR) $(MOZ_FIX_LINK_PATHS) $(EXTRA_DSO_LIBS) $(NSPR_LIBS) include $(topsrcdir)/config/rules.mk diff --git a/mozilla/xpcom/tools/registry/Makefile.in b/mozilla/xpcom/tools/registry/Makefile.in index 2404431feac..e4c007e3a1d 100644 --- a/mozilla/xpcom/tools/registry/Makefile.in +++ b/mozilla/xpcom/tools/registry/Makefile.in @@ -54,8 +54,7 @@ LOCAL_INCLUDES = \ SIMPLE_PROGRAMS = $(CPPSRCS:.cpp=$(BIN_SUFFIX)) LIBS = \ - $(DIST)/lib/$(LIB_PREFIX)xpcomglue.$(LIB_SUFFIX) \ - $(XPCOM_LIBS) \ + $(XPCOM_STANDALONE_GLUE_LDOPTS) \ $(NSPR_LIBS) \ $(NULL)