summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-scheme/drscheme/ChangeLog11
-rw-r--r--dev-scheme/drscheme/drscheme-350.ebuild97
-rw-r--r--dev-scheme/drscheme/files/digest-drscheme-3503
-rw-r--r--dev-scheme/drscheme/files/drscheme-350-destdir.patch74
-rw-r--r--dev-scheme/drscheme/files/drscheme-350-fPIC.patch69
5 files changed, 253 insertions, 1 deletions
diff --git a/dev-scheme/drscheme/ChangeLog b/dev-scheme/drscheme/ChangeLog
index 7eef5e168ed2..a3f71865dffc 100644
--- a/dev-scheme/drscheme/ChangeLog
+++ b/dev-scheme/drscheme/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for dev-scheme/drscheme
# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-scheme/drscheme/ChangeLog,v 1.23 2006/05/18 22:35:03 chutzpah Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-scheme/drscheme/ChangeLog,v 1.24 2006/07/09 20:46:57 chutzpah Exp $
+
+*drscheme-350 (09 Jul 2006)
+
+ 09 Jul 2006; Patrick McLean <chutzpah@gentoo.org>
+ +files/drscheme-350-destdir.patch, +files/drscheme-350-fPIC.patch,
+ +drscheme-350.ebuild:
+ Version bump, adding 350 to tree masked since the ebuild is currently
+ broken. It compiles and installs, but won't run. Will have to look at it
+ again once I get some more time.
18 May 2006; Patrick McLean <chutzpah@gentoo.org> -drscheme-209-r1.ebuild:
Remove version 209 as it hasn't been ported to modular X and 301 is now
diff --git a/dev-scheme/drscheme/drscheme-350.ebuild b/dev-scheme/drscheme/drscheme-350.ebuild
new file mode 100644
index 000000000000..6184225c6f66
--- /dev/null
+++ b/dev-scheme/drscheme/drscheme-350.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-scheme/drscheme/drscheme-350.ebuild,v 1.1 2006/07/09 20:46:57 chutzpah Exp $
+
+inherit eutils flag-o-matic multilib
+
+DESCRIPTION="DrScheme programming environment. Includes mzscheme."
+HOMEPAGE="http://www.plt-scheme.org/software/drscheme/"
+SRC_URI="http://download.plt-scheme.org/bundles/${PV}/plt/plt-${PV}-src-unix.tgz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="cairo jpeg opengl perl png"
+
+DEPEND="|| ( ( x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libXaw
+ x11-libs/libXft
+ )
+ virtual/x11
+ )
+ media-libs/freetype
+ media-libs/fontconfig
+ cairo? ( x11-libs/cairo )
+ jpeg? ( media-libs/jpeg )
+ opengl? ( virtual/opengl )
+ png? ( media-libs/libpng )"
+
+S=${WORKDIR}/plt/src
+SED_FILES="bin/framework-test bin/framework-test-engine collects/info-domain/compiled/cache.ss"
+GL_COLLECTS="sgl games/gobblet games/checkers games/jewel games/gl-board-game"
+
+src_unpack() {
+ unpack ${A}
+ cd ${WORKDIR}/plt
+
+ epatch "${FILESDIR}/${P}-fPIC.patch"
+ epatch "${FILESDIR}/${P}-destdir.patch"
+
+ if ! use opengl ; then
+ # move aside the opengl-dependent stuff or install will fail
+ mkdir collects-disabled
+
+ for dir in ${GL_COLLECTS}; do
+ mv -f collects/${dir} collects-disabled/$(basename ${dir})
+ done
+ fi
+}
+
+src_compile() {
+
+ econf --enable-mred \
+ $(use_enable opengl gl) \
+ $(use_enable png libpng) \
+ $(use_enable jpeg libjpeg) \
+ $(use_enable perl) \
+ $(use_enable cairo) \
+ --prefix=/usr/$(get_libdir)/${PN}/ || die "econf failed"
+
+ make || die
+}
+
+src_install() {
+ cd ${S}
+
+ sed -ie 's/cp -p/cp/' Makefile
+
+ dodir /usr/$(get_libdir)/drscheme/{include/plt,bin}
+ make DESTDIR="${D}" plain-install || die "make install failed"
+ make setup-plt || die "make install failed"
+
+ dodoc README
+ cd ${D}/usr/$(get_libdir)/${PN}/man/man1
+ doman *
+ rm -rf ${D}/usr/$(get_libdir)/${PN}/man
+
+ # create symlinks for all the executables
+ dodir /usr/bin
+ MY_D="${D%/}"
+ MY_D="${MY_D//\//\/}"
+
+ cd ${D}/usr/$(get_libdir)/${PN}/bin
+ for EXE in *; do
+
+ # fix paths in generated shell scripts
+ file -b "${EXE}" | grep -q "Bourne shell" && \
+ sed -i "s/${MY_D}//g" "${EXE}"
+
+ dosym "/usr/$(get_libdir)/${PN}/bin/${EXE}" "/usr/bin/${EXE}"
+ done
+
+ for FILE in ${SED_FILES}; do
+ sed -i "s/${MY_D}//g" "${D}/usr/$(get_libdir)/${PN}/${FILE}"
+ done
+
+}
diff --git a/dev-scheme/drscheme/files/digest-drscheme-350 b/dev-scheme/drscheme/files/digest-drscheme-350
new file mode 100644
index 000000000000..3c83b661785e
--- /dev/null
+++ b/dev-scheme/drscheme/files/digest-drscheme-350
@@ -0,0 +1,3 @@
+MD5 ab6ca3e14f1b82bd8dfb04518e769dfc plt-350-src-unix.tgz 13261879
+RMD160 ecd298fab7107c08ebdd649c5c5eaa6907e5534e plt-350-src-unix.tgz 13261879
+SHA256 4aa5d593db53f0e40438567f3fcdc8c5263701c25f2bb87b4579d70d8b026aa6 plt-350-src-unix.tgz 13261879
diff --git a/dev-scheme/drscheme/files/drscheme-350-destdir.patch b/dev-scheme/drscheme/files/drscheme-350-destdir.patch
new file mode 100644
index 000000000000..c78a141c3a7e
--- /dev/null
+++ b/dev-scheme/drscheme/files/drscheme-350-destdir.patch
@@ -0,0 +1,74 @@
+diff -ur plt.orig/src/Makefile.in plt/src/Makefile.in
+--- plt.orig/src/Makefile.in 2006-07-09 14:02:49.000000000 -0400
++++ plt/src/Makefile.in 2006-07-09 14:26:12.000000000 -0400
+@@ -2,15 +2,15 @@
+ # Builds MzScheme and MrEd
+
+ srcdir = @srcdir@
+-prefix = @prefix@
++prefix = $(DESTDIR)@prefix@
+ exec_prefix = @exec_prefix@
+ bindir = @bindir@
+-libdir = @libdir@
++libdir = $(DESTDIR)@libdir@
+ includepltdir = @includepltdir@
+-libpltdir = @libpltdir@
+-collectsdir = @collectsdir@
+-mandir = @mandir@
+-docdir = @docdir@
++libpltdir = $(DESTDIR)@libpltdir@
++collectsdir = $(DESTDIR)@collectsdir@
++mandir = $(DESTDIR)@mandir@
++docdir = $(DESTDIR)@docdir@
+ builddir = @builddir@
+
+ ALLDIRINFO = "$(bindir)" "$(collectsdir)" "$(docdir)" "$(libdir)" "$(includepltdir)" "$(libpltdir)" "$(mandir)"
+@@ -38,7 +38,7 @@
+
+ install-normal:
+ mkdir -p $(ALLDIRINFO)
+- if [ ! -d $(prefix) ] ; then mkdir $(prefix) ; fi
++ if [ ! -d $(prefix) ] ; then mkdir -p $(prefix) ; fi
+ $(MAKE) mzinstall
+ $(MAKE) mredinstall-stub
+ $(MAKE) copytree-stub
+diff -ur plt.orig/src/mred/Makefile.in plt/src/mred/Makefile.in
+--- plt.orig/src/mred/Makefile.in 2006-07-09 14:02:49.000000000 -0400
++++ plt/src/mred/Makefile.in 2006-07-09 14:25:56.000000000 -0400
+@@ -1,11 +1,11 @@
+
+ srcdir = @srcdir@
+-prefix = @prefix@
++prefix = $(DESTDIR)@prefix@
+ exec_prefix = @exec_prefix@
+ bindir = @bindir@
+-libdir = @libdir@
+-libpltdir = @libpltdir@
+-collectsdir = @collectsdir@
++libdir = $(DESTDIR)@libdir@
++libpltdir = $(DESTDIR)@libpltdir@
++collectsdir = $(DESTDIR)@collectsdir@
+ builddir = @builddir@
+
+ # for version.mak:
+diff -ur plt.orig/src/mzscheme/Makefile.in plt/src/mzscheme/Makefile.in
+--- plt.orig/src/mzscheme/Makefile.in 2006-07-09 14:02:49.000000000 -0400
++++ plt/src/mzscheme/Makefile.in 2006-07-09 14:25:43.000000000 -0400
+@@ -3,13 +3,13 @@
+ #
+
+ srcdir = @srcdir@
+-prefix = @prefix@
++prefix = $(DESTDIR)@prefix@
+ exec_prefix = @exec_prefix@
+ bindir = @bindir@
+-libdir = @libdir@
++libdir = $(DESTDIR)@libdir@
+ includepltdir = @includepltdir@
+-libpltdir = @libpltdir@
+-collectsdir = @collectsdir@
++libpltdir = $(DESTDIR)@libpltdir@
++collectsdir = $(DESTDIR)@collectsdir@
+ builddir = @builddir@
+
+ # for version.mak:
diff --git a/dev-scheme/drscheme/files/drscheme-350-fPIC.patch b/dev-scheme/drscheme/files/drscheme-350-fPIC.patch
new file mode 100644
index 000000000000..f12555aec740
--- /dev/null
+++ b/dev-scheme/drscheme/files/drscheme-350-fPIC.patch
@@ -0,0 +1,69 @@
+diff -ur plt.orig/collects/make/setup-extension.ss plt/collects/make/setup-extension.ss
+--- plt.orig/collects/make/setup-extension.ss 2006-05-12 17:14:02.000000000 -0400
++++ plt/collects/make/setup-extension.ss 2006-07-09 12:53:34.000000000 -0400
+@@ -191,7 +191,7 @@
+ current-extension-linker-flags
+ (if is-win?
+ null
+- (list (format "-L~a/lib" (path->string sys-path))))
++ (list "-fPIC" (format "-L~a/lib" (path->string sys-path))))
+
+ ;; Add libs for Windows:
+ (with-new-flags
+diff -ur plt.orig/src/foreign/Makefile.in plt/src/foreign/Makefile.in
+--- plt.orig/src/foreign/Makefile.in 2005-06-29 15:28:16.000000000 -0400
++++ plt/src/foreign/Makefile.in 2006-07-09 12:53:34.000000000 -0400
+@@ -3,7 +3,7 @@
+ srcdir = @srcdir@
+ builddir = @builddir@
+ CC = @CC@
+-CFLAGS = @CFLAGS@ @COMPFLAGS@ @PREFLAGS@ @PROFFLAGS@ @OPTIONS@ @MZOPTIONS@ \
++CFLAGS = @CFLAGS@ @COMPFLAGS@ @PREFLAGS@ @PROFFLAGS@ @OPTIONS@ @MZOPTIONS@ -fPIC \
+ -I$(builddir)/../mzscheme \
+ -I$(srcdir)/../mzscheme/include -I$(srcdir)/../mzscheme/src \
+ -Igcc/libffi/include
+diff -ur plt.orig/src/mzscheme/dynsrc/Makefile.in plt/src/mzscheme/dynsrc/Makefile.in
+--- plt.orig/src/mzscheme/dynsrc/Makefile.in 2006-05-24 15:29:58.000000000 -0400
++++ plt/src/mzscheme/dynsrc/Makefile.in 2006-07-09 12:54:47.000000000 -0400
+@@ -18,14 +18,14 @@
+ CFLAGS = @CFLAGS@ @COMPFLAGS@ @PREFLAGS@ -I$(builddir)/.. -I$(srcdir)/../include -I$(srcdir)/../src @MZOPTIONS@
+
+ dynlib:
+- $(MAKE) ../mzdyn.o
++ $(MAKE) CFLAGS="$(CFLAGS) -fPIC" ../mzdyn.o
+ $(MAKE) ../starter
+
+ dynlib3m:
+- $(MAKE) ../mzdyn3m.o
++ $(MAKE) CFLAGS="$(CFLAGS) -fPIC" ../mzdyn3m.o
+
+ dynexample:
+- $(MAKE) ../dynexmpl.so
++ $(MAKE) CFLAGS="$(CFLAGS) -fPIC" ../dynexmpl.so
+
+ HEADERS = $(builddir)/../mzconfig.h \
+ $(srcdir)/../include/scheme.h $(srcdir)/../src/schemef.h \
+diff -ur plt.orig/src/mzscheme/gc/Makefile.in plt/src/mzscheme/gc/Makefile.in
+--- plt.orig/src/mzscheme/gc/Makefile.in 2005-05-27 19:11:11.000000000 -0400
++++ plt/src/mzscheme/gc/Makefile.in 2006-07-09 12:53:34.000000000 -0400
+@@ -10,7 +10,7 @@
+ # and runs some tests of collector and cords. Does not add cords or
+ # c++ interface to gc.a
+ # cord/de - builds dumb editor based on cords.
+-ABI_FLAG=
++ABI_FLAG= -fPIC
+ CC= @CC@ $(ABI_FLAG)
+ CXX= @CXX@ $(ABI_FLAG)
+ AS= @AS@ $(ABI_FLAG)
+diff -ur plt.orig/src/mzscheme/gc2/Makefile.in plt/src/mzscheme/gc2/Makefile.in
+--- plt.orig/src/mzscheme/gc2/Makefile.in 2006-06-11 09:02:10.000000000 -0400
++++ plt/src/mzscheme/gc2/Makefile.in 2006-07-09 12:53:34.000000000 -0400
+@@ -13,7 +13,7 @@
+ ARFLAGS = @ARFLAGS@
+ RANLIB = @RANLIB@
+
+-CPPFLAGS = @PREFLAGS@ @OPTIONS@ @GC2OPTIONS@ @MZOPTIONS@ -I$(builddir)/.. -I$(srcdir)/../include
++CPPFLAGS = @PREFLAGS@ -fPIC @OPTIONS@ @GC2OPTIONS@ @MZOPTIONS@ -I$(builddir)/.. -I$(srcdir)/../include
+ CFLAGS = @CFLAGS@ $(CPPFLAGS) @COMPFLAGS@ @PROFFLAGS@
+ LIBS = @LIBS@
+