SWIG's `configure.in` uses `mzscheme(1)` to get a list of standard MzScheme link libraries, relying on `--mute-banner` command line option, which was removed in PLT 4. As the result, MZDYNOBJ is assigned to error message text. Reproducible: Always Steps to Reproduce: 1. Install dev-scheme/drscheme 2. Try to emerge dev-lang/swig with USE="mzscheme" EMERGE FAILURE MESSAGE: config.status: creating Lib/ocaml/swigp4.ml config.status: creating preinst-swig config.status: creating Source/Include/swigconfig.h config.status: executing depfiles commands make[1]: Entering directory `/var/tmp/portage/dev-lang/swig-1.3.36/work/swig-1.3.36/Source' Makefile:190: *** missing separator. Stop. make[1]: Leaving directory `/var/tmp/portage/dev-lang/swig-1.3.36/work/swig-1.3.36/Source' make: *** [source] Error 2 * * ERROR: dev-lang/swig-1.3.36 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2331: Called die * The specific snippet of code: * emake || die * The die message: * (no error message -----------8<--------------8<----------------- Source/Makefile:190 : MZDYNOBJ = /usr/bin/mzscheme: bad switch: --mute-banner Use the --help or -h flag for help.
Created attachment 163693 [details] A patch to configure.in to make SWIG compile with MzScheme Removed `--mute-banner` call, using new require syntax, removed unknown `current-make-standard-libraries` function.
Looks like not just the build fails, but the whole MzScheme support in SWIG is broken — `make check` fails with the following error in MzScheme examples: ~/swig-1.3.36-nu/Examples/mzscheme/multimap $ LC_ALL="C" make /usr/bin/make -f ../../Makefile SRCS='example.c' SWIG='../../../preinst-swig' \ SWIGOPT='' TARGET='example' INTERFACE='example.i' mzscheme make[1]: Entering directory `/home/sphinx/swig-1.3.36-nu/Examples/mzscheme/multimap' ../../../preinst-swig -mzscheme example.i test -n "/usr/bin/mzc" && /usr/bin/mzc `echo | sed 's/-I/++ccf -I/g'` --cc example_wrap.c example.c mzc v4.1 [3m], Copyright (c) 2004-2008 PLT Scheme Inc. "example_wrap.c": compile-extension: example_wrap.c:1388:45: error: macro "scheme_make_sized_string" passed 3 arguments, but takes just 2 example_wrap.c: In function '_wrap_capitalize': example_wrap.c:1388: error: 'scheme_make_sized_string' undeclared (first use in this function) example_wrap.c:1388: error: (Each undeclared identifier is reported only once example_wrap.c:1388: error: for each function it appears in.) make[1]: *** [mzscheme] Error 1 make[1]: Leaving directory `/home/sphinx/swig-1.3.36-nu/Examples/mzscheme/multimap' make: *** [all] Error 2
Thanks Dmitry for the patch. Should be fixed now for 1.3.36.
Reported upstream: http://sourceforge.net/tracker/index.php?func=detail&aid=2081967&group_id=1645&atid=301645