guile18 stable port information

Package: guile18
Version: 1.8.8
Revision: 4
BuildDepends: <<
readline5 (>= 5.0-1004),
libncurses5 (>= 5.4-20041023-1006),
libtool2,
gmp,
libgettext8-dev,
gettext-tools,
libiconv-dev,
fink (>= 0.24.12)
<<
Depends: <<
%N-shlibs (= %v-%r),
%N-libs (= %v-%r),
libtool2-shlibs,
gmp-shlibs
<<
GCC: 4.0
Source: mirror:gnu:guile/guile-%v.tar.gz
Source-MD5: 18661a8fdfef13e2fcb7651720aa53f3
PatchFile: %n.patch
PatchFile-MD5: 930fc6fd2c15ed92ec032d93f785216c
PatchScript: <<
sed 's|@FINKPREFIX@|%p|g' <%{PatchFile} | patch -p1
perl -i -pe 's|GUILE-guile|GUILE-guile-1.8|' scripts/*
perl -i -pe 's|(lt_dlinit\s*\(\s*\))|\1; lt_dladdsearchdir("\%p/lib")|' libguile/dynl.c
<<
ConfigureParams: <<
--infodir=%p/share/info \
--program-transform-name="s|guile|guile\-1\.8|g" \
--disable-dependency-tracking \
$clang_configure_params
<<
SetLDFLAGS: -I%p/include
SetCPPFLAGS: -Dmacosx -I%p/include
CompileScript: <<
#!/bin/sh -evx
# clang needs explicit -fwrapv behavior and allowing of some warnings
darwin_vers=`uname -r | cut -d. -f1`
if test "$darwin_vers" -ge 11 ; then
export CFLAGS='-g -O3 -fwrapv'
clang_configure_params="--disable-error-on-warning"
fi
mkdir build
cd build
../configure %c
echo "#undef LTDL_DLOPEN_DEPLIBS" >> config.h
echo "#define LTDL_SHLIB_EXT \".so\"" >> config.h
echo "#undef HAVE_STAT64" >> config.h
make
<<
InfoTest: <<
TestDepends: fink-package-precedence
TestConfigureParams: --enable-dependency-tracking
TestScript: <<
#!/bin/sh -ev
cd build
# make -k check || exit 2
make -k check || { echo "WARNING: Some tests failed in the testsuite." ;}
fink-package-precedence --headers .
fink-package-precedence --libs .
<<
TestSuiteSize: small
<<
InstallScript: <<
#!/bin/sh -ev
cd build
make -j1 install DESTDIR=%d
install -m 755 ../guile18-build %i/bin/guile18-build
mkdir -p %i/share/guile/1.8/scripts/binoverride
ln -s %p/bin/guile-1.8 %i/share/guile/1.8/scripts/binoverride/guile
ln -s %p/bin/guile-1.8-config %i/share/guile/1.8/scripts/binoverride/guile-config
ln -s %p/bin/guile-1.8-tools %i/share/guile/1.8/scripts/binoverride/guile-tools
ln -s %p/bin/guile-1.8-snarf %i/share/guile/1.8/scripts/binoverride/guile-snarf
<<
SplitOff: <<
Package: %N-shlibs
Depends: libncurses5-shlibs (>= 5.4-20041023-1006), libgettext8-shlibs
Files: <<
lib/libguile.*.dylib
<<
DocFiles: COPYING.LESSER
Shlibs: <<
%p/lib/libguile.17.dylib 22.0.0 %n (>= 1.8.8-1)
<<
Description: Shared libraries for guile18
<<
SplitOff2: <<
Package: %N-libs
Files: <<
lib/libguile-srfi-srfi-13-14-v-3.*
lib/libguile-srfi-srfi-4-v-3.*
lib/libguile-srfi-srfi-1-v-3.*
lib/libguile-srfi-srfi-60-v-2.*
lib/libguilereadline-v-17.*
share/guile/1.8/[A-Za-rt-z]*
share/guile/1.8/scripts/[A-Zac-z]*
share/guile/1.8/srfi
<<
DocFiles: COPYING.LESSER
Depends: readline5-shlibs (>= 5.0-1004), %N-shlibs (= %v-%r)
Description: Scheme libraries and modules for guile18
<<
SplitOff3: <<
Package: %N-dev
BuildDependsOnly: True
Depends: %N-shlibs (= %v-%r)
Replaces: guile-dev, guile16-dev, guile20-dev
Conflicts: guile-dev, guile16-dev, guile20-dev
Files: <<
include
share/aclocal
lib/libguile.a
lib/libguile.la
lib/libguile.dylib
<<
DocFiles: COPYING.LESSER
Description: Development package for guile18
<<
SplitOff4: <<
Package: %N-doc
Conflicts: guile20-doc, guile16-doc, guile16 (<= 1.6.7-1011)
Replaces: guile20-doc, guile16-doc, guile16 (<= 1.6.7-1011)
DocFiles: COPYING.LESSER
Files: share/info
InfoDocs: guile.info guile-tut.info goops.info r5rs.info
Description: Texinfo files for guile18
<<
DocFiles: README COPYING.LESSER AUTHORS HACKING NEWS THANKS
#
Description: Embedable Scheme interpreter
DescPort: <<
Thread support currently disabled (configure's default).
"borrowed" a patch from darwinports to posix.c makes it
pass make check.
Patched libtool to make it build two level namespace and
ensure it links against the just built libs.
Patched makefiles to replace -export-dynamic with -module.
Made the main packages not conflict with guile-1.4

Make sure to declare the darwinish _environ symbol before using it.

Former maintainer: Matthias Neeracher
<<
License: GPL
Homepage: http://www.gnu.org/software/guile/guile.html
Maintainer: David Fang

guile18 stable port .patch

diff -ruN guile-1.8.7-orig/configure guile-1.8.7/configure
--- guile-1.8.7-orig/configure 2010-07-15 21:53:16.000000000 +0200
+++ guile-1.8.7/configure 2010-07-15 22:24:32.000000000 +0200
@@ -33685,6 +33685,8 @@
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
$ac_includes_default
+
+int find_stack_direction () __attribute__((noinline));
int
find_stack_direction ()
{
diff -ruN guile-1.8.7-orig/guile-config/guile-config.in guile-1.8.7/guile-config/guile-config.in
--- guile-1.8.7-orig/guile-config/guile-config.in 2010-07-15 21:53:16.000000000 +0200
+++ guile-1.8.7/guile-config/guile-config.in 2010-07-15 21:53:49.000000000 +0200
@@ -1,4 +1,4 @@
-#!@-bindir-@/guile \
+#!@-bindir-@/guile-1.8 \
-e main -s
!#
;;;; guile-config --- utility for linking programs with Guile
diff -ruN guile-1.8.7-orig/guile-config/guile.m4 guile-1.8.7/guile-config/guile.m4
--- guile-1.8.7-orig/guile-config/guile.m4 2010-07-15 21:53:16.000000000 +0200
+++ guile-1.8.7/guile-config/guile.m4 2010-07-15 21:53:49.000000000 +0200
@@ -47,17 +47,17 @@
# The variables are marked for substitution, as by @code{AC_SUBST}.
#
AC_DEFUN([GUILE_PROGS],
- [AC_PATH_PROG(GUILE,guile)
+ [AC_PATH_PROG(GUILE,guile-1.8)
if test "$GUILE" = "" ; then
AC_MSG_ERROR([guile required but not found])
fi
AC_SUBST(GUILE)
- AC_PATH_PROG(GUILE_CONFIG,guile-config)
+ AC_PATH_PROG(GUILE_CONFIG,guile-1.8-config)
if test "$GUILE_CONFIG" = "" ; then
AC_MSG_ERROR([guile-config required but not found])
fi
AC_SUBST(GUILE_CONFIG)
- AC_PATH_PROG(GUILE_TOOLS,guile-tools)
+ AC_PATH_PROG(GUILE_TOOLS,guile-1.8-tools)
AC_SUBST(GUILE_TOOLS)
])

diff -ruN guile-1.8.7-orig/guile-readline/Makefile.in guile-1.8.7/guile-readline/Makefile.in
--- guile-1.8.7-orig/guile-readline/Makefile.in 2010-07-15 21:53:16.000000000 +0200
+++ guile-1.8.7/guile-readline/Makefile.in 2010-07-15 21:53:49.000000000 +0200
@@ -277,7 +277,7 @@
lib_LTLIBRARIES = libguilereadline-v-@LIBGUILEREADLINE_MAJOR@.la
libguilereadline_v_@LIBGUILEREADLINE_MAJOR@_la_SOURCES = readline.c
libguilereadline_v_@LIBGUILEREADLINE_MAJOR@_la_LIBADD = ../libguile/libguile.la
-libguilereadline_v_@LIBGUILEREADLINE_MAJOR@_la_LDFLAGS = -version-info @LIBGUILEREADLINE_INTERFACE@ -export-dynamic -no-undefined
+libguilereadline_v_@LIBGUILEREADLINE_MAJOR@_la_LDFLAGS = -version-info @LIBGUILEREADLINE_INTERFACE@ -module -no-undefined
BUILT_SOURCES = readline.x
pkginclude_HEADERS = readline.h
snarfcppopts = $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
diff -ruN guile-1.8.7-orig/guile18-build guile-1.8.7/guile18-build
--- guile-1.8.7-orig/guile18-build 1970-01-01 01:00:00.000000000 +0100
+++ guile-1.8.7/guile18-build 2010-07-15 21:53:49.000000000 +0200
@@ -0,0 +1,10 @@
+#! /bin/sh
+GUILE=guile-1.8
+GUILE_CONFIG=guile-1.8-config
+GUILE_TOOLS=guile-1.8-tools
+PATH="@FINKPREFIX@/share/guile/1.8/scripts/binoverride:$PATH"
+export GUILE
+export GUILE_CONFIG
+export GUILE_TOOLS
+export PATH
+eval "$@"
diff -ruN guile-1.8.7-orig/srfi/Makefile.in guile-1.8.7/srfi/Makefile.in
--- guile-1.8.7-orig/srfi/Makefile.in 2010-07-15 21:53:16.000000000 +0200
+++ guile-1.8.7/srfi/Makefile.in 2010-07-15 21:53:49.000000000 +0200
@@ -360,16 +360,16 @@
BUILT_SOURCES = srfi-1.x srfi-4.x srfi-13.x srfi-14.x srfi-60.x
libguile_srfi_srfi_1_v_@LIBGUILE_SRFI_SRFI_1_MAJOR@_la_SOURCES = srfi-1.x srfi-1.c
libguile_srfi_srfi_1_v_@LIBGUILE_SRFI_SRFI_1_MAJOR@_la_LIBADD = ../libguile/libguile.la
-libguile_srfi_srfi_1_v_@LIBGUILE_SRFI_SRFI_1_MAJOR@_la_LDFLAGS = -no-undefined -export-dynamic -version-info @LIBGUILE_SRFI_SRFI_1_INTERFACE@
+libguile_srfi_srfi_1_v_@LIBGUILE_SRFI_SRFI_1_MAJOR@_la_LDFLAGS = -no-undefined -module -version-info @LIBGUILE_SRFI_SRFI_1_INTERFACE@
libguile_srfi_srfi_4_v_@LIBGUILE_SRFI_SRFI_4_MAJOR@_la_SOURCES = srfi-4.x srfi-4.c
libguile_srfi_srfi_4_v_@LIBGUILE_SRFI_SRFI_4_MAJOR@_la_LIBADD = ../libguile/libguile.la
-libguile_srfi_srfi_4_v_@LIBGUILE_SRFI_SRFI_4_MAJOR@_la_LDFLAGS = -no-undefined -export-dynamic -version-info @LIBGUILE_SRFI_SRFI_4_INTERFACE@
+libguile_srfi_srfi_4_v_@LIBGUILE_SRFI_SRFI_4_MAJOR@_la_LDFLAGS = -no-undefined -module -version-info @LIBGUILE_SRFI_SRFI_4_INTERFACE@
libguile_srfi_srfi_13_14_v_@LIBGUILE_SRFI_SRFI_13_14_MAJOR@_la_SOURCES = srfi-13.x srfi-13.c srfi-14.x srfi-14.c
libguile_srfi_srfi_13_14_v_@LIBGUILE_SRFI_SRFI_13_14_MAJOR@_la_LIBADD = ../libguile/libguile.la
-libguile_srfi_srfi_13_14_v_@LIBGUILE_SRFI_SRFI_13_14_MAJOR@_la_LDFLAGS = -no-undefined -export-dynamic -version-info @LIBGUILE_SRFI_SRFI_13_14_INTERFACE@
+libguile_srfi_srfi_13_14_v_@LIBGUILE_SRFI_SRFI_13_14_MAJOR@_la_LDFLAGS = -no-undefined -module -version-info @LIBGUILE_SRFI_SRFI_13_14_INTERFACE@
libguile_srfi_srfi_60_v_@LIBGUILE_SRFI_SRFI_60_MAJOR@_la_SOURCES = srfi-60.x srfi-60.c
libguile_srfi_srfi_60_v_@LIBGUILE_SRFI_SRFI_60_MAJOR@_la_LIBADD = ../libguile/libguile.la
-libguile_srfi_srfi_60_v_@LIBGUILE_SRFI_SRFI_60_MAJOR@_la_LDFLAGS = -no-undefined -export-dynamic -version-info @LIBGUILE_SRFI_SRFI_60_INTERFACE@
+libguile_srfi_srfi_60_v_@LIBGUILE_SRFI_SRFI_60_MAJOR@_la_LDFLAGS = -no-undefined -module -version-info @LIBGUILE_SRFI_SRFI_60_INTERFACE@
srfidir = $(datadir)/guile/$(GUILE_EFFECTIVE_VERSION)/srfi
srfi_DATA = srfi-1.scm \
srfi-2.scm \
diff -ruN guile-1.8.8-orig/test-suite/standalone/Makefile.in guile-1.8.8/test-suite/standalone/Makefile.in
--- guile-1.8.8-orig/test-suite/standalone/Makefile.in 2010-12-13 14:29:40.000000000 -0500
+++ guile-1.8.8/test-suite/standalone/Makefile.in 2011-06-14 10:44:53.000000000 -0400
@@ -398,15 +398,14 @@
builddir="$(builddir)" \
"${top_builddir}/pre-inst-guile-env"

-test_cflags = \
+INCLUDES = \
-I$(top_srcdir)/test-suite/standalone \
-I$(top_srcdir) -I$(top_builddir) \
$(EXTRA_DEFS) $(GUILE_CFLAGS)

-AM_LDFLAGS = $(GUILE_CFLAGS)
snarfcppopts = \
- $(DEFS) $(DEFAULT_INCLUDES) $(CPPFLAGS) $(CFLAGS) \
- -I$(top_srcdir) -I$(top_builddir)
+ $(DEFS) $(DEFAULT_INCLUDES) -I$(top_srcdir) -I$(top_builddir) \
+ $(CPPFLAGS) $(CFLAGS)

SUFFIXES = .x
CLEANFILES = *.x

guile18 _unstable_ port .patch