On 9/2/12 9:08 AM, 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 >> >> Hanspeter > > Hanspeter. > Did you see the same failure with clang from Xcode 4.2 with the previous > gettext-tools release? If not, the newer gettext-tools is just showing yet > more codegen bugs in the older clang and is yet another reason to use a > BuildDepends: xcode (>=4.2). If you go that route, I would even consider > bumping it up to BuildDepends: xcode (>=4.4). > Jack >
How do we handle this at bootstrap, then? I just did a test where I set the BuildDepends of gettext-tools in the fink tarball to xcode >= 4.5 (since I have 4.4) and this was ignored rather than failing. This means we would either need to: 1) Allow the package to build with earlier Xcodes (since a test failure isn't triggered), but then have an updated revision in the distribution which forces a rebuild after bootstrap. This would be annoying for users with new Xcodes, and users with 4.1 would be informed that they have to install a newer version only when they do their first selfupdate. 2) Raise the minimum Xcode version for the entire bootstrap. -- Alexander Hansen, Ph.D. Fink User Liaison My package updates: http://finkakh.wordpress.com/ ------------------------------------------------------------------------------ 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