On 9/2/2012 12:08 PM, Jack Howarth wrote: > On Sat, Sep 01, 2012 at 05:00:23PM -0400, Hanspeter Niederstrasser wrote: >> On 8/31/2012 8:36 PM, Jack Howarth wrote: >>> Why exactly are we building the entirety of gettext-tools at -O0 >>> in 10.7 branch when only a single source file, xgettext.c, is problematic on >>> older clang? The previous patch that applied -O4 to the compilation of >>> xgettext.c, >>> should work fine using -O0 instead for just that file. >>> >>> >>> --- gettext-0.18.1.1/gettext-tools/src/Makefile.in.orig 2012-08-31 >>> 20:21:15.000000000 -0400 >>> +++ gettext-0.18.1.1/gettext-tools/src/Makefile.in 2012-08-31 >>> 20:22:03.000000000 -0400 >>> @@ -2357,11 +2357,11 @@ >>> >>> xgettext-xgettext.o: xgettext.c >>> $(AM_V_CC) @AM_BACKSLASH@ >>> - $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xgettext_CPPFLAGS) >>> $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xgettext-xgettext.o `test -f >>> 'xgettext.c' || echo '$(srcdir)/'`xgettext.c >>> + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xgettext_CPPFLAGS) >>> $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -O0 -c -o xgettext-xgettext.o `test -f >>> 'xgettext.c' || echo '$(srcdir)/'`xgettext.c >>> >>> xgettext-xgettext.obj: xgettext.c >>> $(AM_V_CC) @AM_BACKSLASH@ >>> - $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xgettext_CPPFLAGS) >>> $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xgettext-xgettext.obj `if test -f >>> 'xgettext.c'; then $(CYGPATH_W) 'xgettext.c'; else $(CYGPATH_W) >>> '$(srcdir)/xgettext.c'; fi` >>> + $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xgettext_CPPFLAGS) >>> $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -O0 -c -o xgettext-xgettext.obj `if test >>> -f 'xgettext.c'; then $(CYGPATH_W) 'xgettext.c'; else $(CYGPATH_W) >>> '$(srcdir)/xgettext.c'; fi` >>> >>> xgettext-x-c.o: x-c.c >>> $(AM_V_CC) @AM_BACKSLASH@ >> >> Jack, building on 10.7 with Xcode 4.1, and this patch so that only >> xgettext gets -O0, this test fails: >> >> PASS: format-scheme-1 >> PASS: format-scheme-2 >> Format string recognition error: >> gettext "abc\${}"; >> Got: >> # SOME DESCRIPTIVE TITLE. >> # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER >> # This file is distributed under the same license as the PACKAGE package. >> # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. >> # >> #, fuzzy >> msgid "" >> msgstr "" >> "Project-Id-Version: PACKAGE VERSION\n" >> "Report-Msgid-Bugs-To: \n" >> "POT-Creation-Date: 2012-09-01 16:49-0400\n" >> "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" >> "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" >> "Language-Team: LANGUAGE <l...@li.org>\n" >> "Language: \n" >> "MIME-Version: 1.0\n" >> "Content-Type: text/plain; charset=CHARSET\n" >> "Content-Transfer-Encoding: 8bit\n" >> >> #: f-sh-1-11.in:1 >> #, sh-format >> msgid "abc${}" >> msgstr "" >> FAIL: format-sh-1 >> PASS: format-sh-2
OK. I've got it narrowed down to xgettext and format-sh.c together as the culprits. I just need to figure out how to make format-sh.c be built with -O0 while leaving everything else untouched. An poor alternative is to build everything with llvm-gcc-4.2 when using Xcode < 4.3. While this is suboptimal, it could be done with a test statement in CompileScript that checks the version and then sets CC to llvm-gcc-4.2 if clang won't work. Again, not the optimal solution and I would be happy to add an Xcode 4.4 BuildDepends if it could be made to work as expected during bootstrap. Hanspeter ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Fink-devel mailing list Fink-devel@lists.sourceforge.net List archive: http://news.gmane.org/gmane.os.apple.fink.devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel