[plt-scheme] Re: [Swig-devel] ANNOUNCE - swig-1.3.38

From: William S Fulton (wsf at fultondesigns.co.uk)
Date: Fri Feb 6 21:08:59 EST 2009

Marijn Schouten (hkBst) wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> William S Fulton wrote:
> > Marijn Schouten (hkBst) wrote:
> >> -----BEGIN PGP SIGNED MESSAGE-----
> >> Hash: SHA1
> >>
> >> William S Fulton wrote:
> >>> *** ANNOUNCE: SWIG 1.3.38 (31 January 2009) ***
> >>>
> >>> http://www.swig.org
> >>>
> >>>
> >>> We're pleased to announce SWIG-1.3.38, the latest installment in the
> >>> SWIG development effort.  SWIG-1.3.38 includes a number of bug fixes
> >>> and enhancements.
> >> I had a problem building swig-1.3.38:
> >>
> >>
> >> checking for gzdopen in -lz... yes
> >>
> >> configure: creating ./config.status
> >>
> >> config.status: creating Makefile
> >>
> >> config.status: creating config.h
> >>
> >> make -j2
> >>
> >> test -z "1" || (cd CCache && make)
> >>
> >> make[1]: Entering directory
> >> `/var/tmp/portage/dev-lang/swig-1.3.38/work/swig-1.3.38/CCache'
> >>
> >> x86_64-pc-linux-gnu-gcc -march=core2 -O2 -pipe -Wall -W -I.   -c -o
> >> ccache.o
> >> ccache.c
> >> make[1]: Entering directory
> >> `/var/tmp/portage/dev-lang/swig-1.3.38/work/swig-1.3.38/Source'
> >>
> >> Makefile:191: *** missing separator.  Stop.
> >>
> >> make[1]: Leaving directory
> >> `/var/tmp/portage/dev-lang/swig-1.3.38/work/swig-1.3.38/Source'
> >>
> >> make: *** [source] Error 2
> >>
> >> make: *** Waiting for unfinished jobs....
> >>
> >>
> >> I figure the solution is:
> >>
> >>
> >> - --- Makefile.in.old     2009-02-02 17:29:13.000000000 +0100
> >>
> >> +++ Makefile.in 2009-02-02 17:29:13.000000000 +0100
> >>
> >> @@ -187,7 +187,7 @@
> >>
> >>         @echo $(ACTION)ing Examples/GIFPlot/Lib
> >>
> >>         @cd Examples/GIFPlot/Lib && $(MAKE) -k -s $(ACTION)
> >>
> >>
> >>
> >> - -check-gifplot:                                 \
> >>
> >> +check-gifplot:
> >>
> >>         check-tcl-gifplot                       \
> >>
> >>         check-perl5-gifplot                     \
> >>
> >>         check-python-gifplot                    \
> >>
> >>
> >>
> >> but I cannot test that because when I tried to run autoconf I got:
> >>
> >>
> >> configure.in:31: error: possibly undefined macro: AC_COMPILE_WARNINGS
> >>       If this token and others are legitimate, please use
> >> m4_pattern_allow.
> >>       See the Autoconf documentation.
> >> configure.in:1461: error: possibly undefined macro: AC_COMPARE_VERSION
> >> configure.in:2138: error: possibly undefined macro: AC_DEFINE_DIR
> >>
> >>
> >> I'm using autoconf-2.63.
> > Are you using GNU make? Perhaps you've got GNU make, but something later
> > than 3.81? I use autoconf-2.61 which works great. Rather than running
> > autoreconf, please run ./autogen.sh. Alternatively, modify just the
> > Makefile, then you won't need to rerun configure. But essentially your
> > modification won't work and I can't see what your problem is if you are
> > using GNU make... try running without -j2 as there might be a parallel
> > problem, although I regularly do parallel builds.
> >
> > William
>
> Yes, I'm using GNU make 3.81 too. I succeeded running ./autogen.sh and 
> indeed my
> patch fixes nothing. Turning off parallel building didn't help either.
>
> Actually looking better at the error I notice that I was looking at 
> the wrong
> Makefile altogether. The offending one is the one in Source. A small 
> snippet of
> that file:
>
>
> MKDIR_P = /bin/mkdir -p
> MZC = /usr/bin/mzc
> MZDYNOBJ = /usr/bin/mzscheme: bad switch: --mute-banner
> Use the --help or -h flag for help.
> MZSCHEME = /usr/bin/mzscheme
> MZSCHEME_SO = .so
>
>
> Line 191 starts with "Use the". It seems like it is an artefact of broken
> support for mzscheme which was reported for 1.3.36 already
> (http://sourceforge.net/tracker/?func=detail&atid=301645&aid=2081967&group_id=1645).
> I was able to compile by using --without-mzscheme.
>
> Quote from PLT Scheme developer Eli Barzilay:
> "[wo sep 3 2008] [12:53:14] <eli>        The swig mz interface 
> genarates a C
> file where it could generate a scheme file instead."
>
I've used that patch as the basis for detecting new mzscheme and making 
sure future non-backward compatible mzscheme changes don't break the 
SWIG source makefile again.

We do need a mzscheme person to update the SWIG support. Quite a bit of 
the test-suite looks fine, so probably not too much work to be done 
unless the radical changes mentioned by 'eli' above are implemented.

William



Posted on the users mailing list.