Even better, thanks again! > David, > I checked in the alternative fix from upstream as > autogen-5.18.4-2. If the quotes are removed from the instance of... > > find_libguiledir "${LGCFLAGS}" > > in autoopts/mk-tpl-config.sh, the script is able to walk through the > fields of the Cflags reported from guile-2.0.pc and find > the libguile header include regardless of its position. > Jack > > On Sat, Jan 31, 2015 at 11:16 PM, David Fang <f...@csl.cornell.edu> wrote: >> Jack, >> >> Ahh, I responded too soon. Thanks for triaging this issue. Your fix looks >> like something I would have done. You have my permission to commit this >> fix. >> >> Fang >> >>> David, >>> I have posted packaging on fink tracking for autogen-5.18.4-1 >>> which passes 'fink -m' and properly generates fixincludes in the gcc >>> source tree. >>> >>> https://sourceforge.net/p/fink/package-submissions/4467/ >>> >>> The additional patchlet was required... >>> >>> Index: autogen.patch >>> =================================================================== >>> RCS file: >>> /cvsroot/fink/dists/10.7/stable/main/finkinfo/editors/autogen.patch,v >>> retrieving revision 1.4 >>> diff -r1.4 autogen.patch >>> 56a57,66 >>>> >>>> --- autogen-5.18.4/autoopts/mk-tpl-config.sh.orig 2015-01-31 >>>> 20:47:56.000000000 -0500 >>>> +++ autogen-5.18.4/autoopts/mk-tpl-config.sh 2015-01-31 >>>> 21:19:53.000000000 -0500 >>>> @@ -173,6 +173,7 @@ >>>> ;; >>>> -I* ) >>>> f=${1#-I} >>>> + f=`echo $f | cut -d" " -f1` >>>> test -f $f/libguile/__scm.h && { >>>> libguiledir=$f >>>> return 0 >>> >>> >>> to extract the first field from the CFLAGS with the path to the >>> libguile headers. >>> Jack >>> ps Upstream appears unaware of this glitch as there are no changes to >>> this code... >>> >>> >>> http://git.savannah.gnu.org/cgit/autogen.git/tree/autoopts/mk-tpl-config.sh >>> >>> So we should also file a bug report about it not expecting multiple >>> fields on CFLAGS from guile2.0.pc. >>> >>> On Sat, Jan 31, 2015 at 8:38 PM, Jack Howarth <howarth.at.f...@gmail.com> >>> wrote: >>>> >>>> David, >>>> So it appears that the coding.. >>>> >>>> -I* ) >>>> f=${1#-I} >>>> >>>> ends up setting $f to "/sw/include/guile/2.0 -I/sw/include >>>> -D_THREAD_SAFE" rather than the desired "/sw/include/guile/2.0". >>>> Jack >>>> >>>> On Sat, Jan 31, 2015 at 8:02 PM, Jack Howarth <howarth.at.f...@gmail.com> >>>> wrote: >>>>> >>>>> David, >>>>> The autogen build on fink fails on this code in >>>>> autoopts/mk-tpl-config.sh... >>>>> >>>>> scan_cflags() { >>>>> libguiledir= >>>>> while test $# -gt 0 >>>>> do >>>>> case "$1" in >>>>> -I ) >>>>> test -f $2/libguile/__scm.h && { >>>>> libguiledir=$2 >>>>> return 0 >>>>> } >>>>> ;; >>>>> -I* ) >>>>> f=${1#-I} >>>>> test -f $f/libguile/__scm.h && { <=== >>>>> libguiledir=$f >>>>> return 0 >>>>> } >>>>> ;; >>>>> esac >>>>> shift >>>>> done >>>>> >>>>> This appears to be a new test for scm.h. >>>>> Jack >>>>> >>>>> >>>>> On Sat, Jan 31, 2015 at 7:40 PM, Jack Howarth >>>>> <howarth.at.f...@gmail.com> wrote: >>>>>> >>>>>> David, >>>>>> The current autogen-5.18.2-6 packaging produces a broken >>>>>> autogen. While trying to regenerate the fix includes for a gcc >>>>>> patch... >>>>>> >>>>>> https://gcc.gnu.org/ml/gcc-bugs/2015-01/msg03659.html >>>>>> >>>>>> I found that the fink autogen produces a broken fixincl.x while the >>>>>> MacPorts autogen 5.18.4 works fine. >>>>>> I tried to build an updated version of the fink autogen >>>>>> package with the 5.18.4 sources but this always fails at... >>>>>> >>>>>> LGCFLAGS="-I/sw/include/guile/2.0 -I/sw/include -D_THREAD_SAFE" \ >>>>>> >>>>>> AGexe="/sw/src/fink.build/autogen-5.18.4-1/autogen-5.18.4/build/agen5/autogen" >>>>>> >>>>>> GDexe="/sw/src/fink.build/autogen-5.18.4-1/autogen-5.18.4/build/getdefs/getdefs" >>>>>> >>>>>> CLexe="/sw/src/fink.build/autogen-5.18.4-1/autogen-5.18.4/build/columns/columns" >>>>>> srcdir="../../autoopts" top_srcdir="../.." builddir="." >>>>>> top_builddir=".." POSIX_SHELL="/sw/bin/bash" \ >>>>>> /sw/bin/bash ../../autoopts/mk-tpl-config.sh tpl-config-stamp >>>>>> autoopts/options.h autoopts/usage-txt.h genshell.h >>>>>> option-xat-attribute.h option-value-type.h ao-strs.h ag-char-map.h >>>>>> autoopts.h project.h proto.h parse-duration.c ao-strs.c >>>>>> option-value-type.c option-xat-attribute.c autoopts.c alias.c >>>>>> boolean.c check.c configfile.c cook.c enum.c env.c >>>>>> file.c find.c genshell.c load.c makeshell.c nested.c >>>>>> numeric.c pgusage.c putshell.c reset.c restore.c save.c >>>>>> sort.c stack.c streqvcmp.c text_mmap.c time.c tokenize.c >>>>>> usage.c version.c init.c >>>>>> ../../autoopts/mk-tpl-config.sh: line 176: test: too many arguments >>>>>> mk-tpl-config.sh failure: The Guile header __scm.h cannot be found >>>>>> make[4]: *** [tpl-config-stamp] Terminated: 15 >>>>>> make[3]: *** [all-recursive] Error 1 >>>>>> make[2]: *** [all] Error 2 >>>>>> make[1]: *** [all-recursive] Error 1 >>>>>> make: *** [all] Error 2 >>>>>> >>>>>> I noticed that the homebrew and MacPorts packaging for 5.18.4 avoids >>>>>> any patching... >>>>>> >>>>>> >>>>>> https://github.com/Homebrew/homebrew/blob/master/Library/Formula/autogen.rb >>>>>> https://trac.macports.org/browser/trunk/dports/devel/autogen/Portfile >>>>>> >>>>>> Any idea how to fix this build? >>>>>> Jack >>>>>> ps Actually I think I ran into this breakage awhile back when >>>>>> attempting to regenerate the fixincludes for the llvm-gcc42 patch >>>>>> again. I was unable at some point to regenerate the fix includes for >>>>>> llvm-gcc42 anymore and assume this was when our autogen became broken. >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Dive into the World of Parallel Programming. The Go Parallel Website, >>> sponsored by Intel and developed in partnership with Slashdot Media, is >>> your >>> hub for all things parallel software development, from weekly thought >>> leadership blogs to news, videos, case studies, tutorials and more. Take a >>> look and join the conversation now. http://goparallel.sourceforge.net/ >>> _______________________________________________ >>> 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 >>> >> >> -- >> David Fang >> http://www.csl.cornell.edu/~fang/ >> > > ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming. The Go Parallel Website, > sponsored by Intel and developed in partnership with Slashdot Media, is your > hub for all things parallel software development, from weekly thought > leadership blogs to news, videos, case studies, tutorials and more. Take a > look and join the conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > 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 >
-- David Fang http://www.csl.cornell.edu/~fang/ ------------------------------------------------------------------------------ Dive into the World of Parallel Programming. The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ 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