# $Id: Portfile 50984 2009-05-14 21:08:43Z and.damore@macports.org $ PortSystem 1.0 name gambit-c version 4.2.8 set branch [join [lrange [split ${version} .] 0 1] .] categories lang scheme platforms darwin maintainers gmail.com:arto.bendiken description Gambit-C is a fast Scheme implementation. long_description Gambit-C includes a Scheme interpreter and a Scheme \ compiler which can be used to build standalone \ executables. Because the compiler generates portable \ C code it is fairly easy to port to any platform \ with a decent C compiler. The thread system is very \ efficient and can support millions of concurrent \ processes. \ \ The Gambit-C system conforms to the R4RS, R5RS and \ IEEE Scheme standards. The full numeric tower is \ implemented, including: infinite precision integers \ (bignums), rationals, inexact reals (floating point \ numbers), and complex numbers. homepage http://www.iro.umontreal.ca/~gambit/ master_sites ${homepage}download/gambit/v${branch}/source/ distname gambc-v[strsed ${version} {g/\./_/}] extract.suffix .tgz checksums sha1 785cb0667c7bfb554cd584413eed8bdb9f4a6077 configure.args --infodir=${prefix}/share/info \ --libdir=${prefix}/lib/gambit-c \ --enable-single-host post-extract { # Get rid of the incompatible version-specific installation structure reinplace "s|PACKAGE_SUBDIR=\"/${version}\"|PACKAGE_SUBDIR=\"\"|g" ${worksrcpath}/configure.ac reinplace "s|&& \$(LN_S) \.\$(PACKAGE_SUBDIR) current||g" ${worksrcpath}/makefile.in reinplace "s|rm -f \$(prefix)/current \$(prefix)/current.lnk||g" ${worksrcpath}/makefile.in # Fix target paths since the configure options are not properly used in the makefiles foreach makefile [exec find ${worksrcpath} -name makefile.in] { reinplace "s|\$(prefix)\$(PACKAGE_SUBDIR)|\$(DESTDIR)\$(prefix)|g" $makefile reinplace "s|\$(prefix)/info|\$(prefix)/share/info|g" $makefile reinplace "s|\$(prefix)/doc|\$(prefix)/share/doc/gambit-c|g" $makefile reinplace "s|\$(prefix)/lib|\$(prefix)/lib/gambit-c|g" $makefile reinplace "s|\$(prefix)/syntax-case\.scm|\$(prefix)/lib/gambit-c/syntax-case\.scm|g" $makefile } } variant optimized description "Use expensive GCC optimizations to improve speed and compactness" { configure.args-append --enable-gcc-opts } variant profile description "Enable profiling" { configure.args-append --enable-profile }