Pass -framework sub-flag without embedded whitespace
authorDaniel Macks <dmacks@netspace.org>
Tue, 5 Jun 2012 23:20:13 +0000 (19:20 -0400)
committerColin Walters <walters@verbum.org>
Wed, 6 Jun 2012 01:26:58 +0000 (21:26 -0400)
The "-framework" linker flag takes a second word as a parameter. If
they are passed separated with whitespace, some flag-handling routines
may not know to keep the two words together as a single unit. Use
-Wl,, to pass multiple words without embedded whitespace.

https://bugzilla.gnome.org/show_bug.cgi?id=566994

configure.ac
gio/Makefile.am

index dfecda0..f7c2471 100644 (file)
@@ -219,12 +219,12 @@ AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
 
 AS_IF([test "x$glib_have_carbon" = "xyes"], [
   AC_DEFINE(HAVE_CARBON, 1, [define to 1 if Carbon is available])
-  LDFLAGS="$LDFLAGS -framework Carbon"
+  LDFLAGS="$LDFLAGS -Wl,-framework,Carbon"
 ])
 
 if test "x$glib_have_cocoa" = "xyes"; then
   AC_DEFINE(HAVE_COCOA, 1, [define to 1 if Cocoa is available])
-  LDFLAGS="$LDFLAGS -framework Foundation"
+  LDFLAGS="$LDFLAGS -Wl,-framework,Foundation"
 fi
 
 gl_GLIBC21
index 97d1082..7c07010 100644 (file)
@@ -515,7 +515,7 @@ libgio_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS) \
 if OS_COCOA
 # This is dumb.  The ObjC source file should be properly named .m
 libgio_2_0_la_CFLAGS = -xobjective-c
-libgio_2_0_la_LDFLAGS += -framework Foundation
+libgio_2_0_la_LDFLAGS += -Wl,-framework,Foundation
 endif
 
 libgio_2_0_la_DEPENDENCIES = $(gio_win32_res) $(gio_def) $(platform_deps)