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

Reply via email to