diff options
author | 2010-10-07 15:37:41 +0200 | |
---|---|---|
committer | 2018-03-09 22:33:25 +0100 | |
commit | 0a4523514adc4cf2e875faf7c3d33fec7825e984 (patch) | |
tree | 0d8f08fa391de2f90ccc82fa4fce7373d8e3de77 /dev-scheme | |
parent | dev-scheme/hop: Improve init scripts, fix LDFLAGS issue (diff) | |
download | lisp-0a4523514adc4cf2e875faf7c3d33fec7825e984.tar.gz lisp-0a4523514adc4cf2e875faf7c3d33fec7825e984.tar.bz2 lisp-0a4523514adc4cf2e875faf7c3d33fec7825e984.zip |
dev-scheme/racket: Import from bug #324161. EXPERIMENTAL ebuild w/ several QA issues (LDFLAGS, unknown configure args...). Thanks to Dimitry Dzhus for the ebuild and patches
Diffstat (limited to 'dev-scheme')
-rw-r--r-- | dev-scheme/racket/Manifest | 5 | ||||
-rw-r--r-- | dev-scheme/racket/files/racket-5.0.1-hack_makefile_in_temp01.patch | 37 | ||||
-rw-r--r-- | dev-scheme/racket/files/racket-5.0.1-libpng14.patch | 15 | ||||
-rw-r--r-- | dev-scheme/racket/metadata.xml | 44 | ||||
-rw-r--r-- | dev-scheme/racket/racket-5.0.1.ebuild | 144 |
5 files changed, 245 insertions, 0 deletions
diff --git a/dev-scheme/racket/Manifest b/dev-scheme/racket/Manifest new file mode 100644 index 00000000..f2770d7c --- /dev/null +++ b/dev-scheme/racket/Manifest @@ -0,0 +1,5 @@ +AUX racket-5.0.1-hack_makefile_in_temp01.patch 1496 RMD160 2df57dd0df6c6322cf8beb06e57bd34f3214594e SHA1 cbf9dce59a4abe286edd01d20999c3523a750732 SHA256 e84c7dd9c2dbd8b934bf7fa6a5ce2fded5378d4f848b42681d0563d4d9d427cc +AUX racket-5.0.1-libpng14.patch 603 RMD160 bc4aab23dcd4fffecaadefbeda138080ddeb4f8d SHA1 2cf4b73023b58e452439e676916ad94b67daddcf SHA256 542538613d34fdfc2339f963646a8e06c5f67bf7c0f4fc3a78c85deec511e9b7 +DIST racket-5.0.1-src-unix.tgz 17272590 RMD160 002d70134b7c7fe2121cc854c9a08a9b9b92a21a SHA1 3109294115184c96d260fef4458a866975a7c847 SHA256 763b5d6615b66c088d00b789e729cfdae75770d5f13d7e2d4508e5ddd7ff7fa1 +EBUILD racket-5.0.1.ebuild 3952 RMD160 9e67780579ec2266d8251ca3cb0c3e327ba17541 SHA1 719922b434a362628bba929e1fe1f935670a58e0 SHA256 4df8275f33175b58cb720ad4ff09fe16afbbb2c6000789e07393d395a5eecd5b +MISC metadata.xml 1508 RMD160 73a7aeec4609fdb108509c9a6521c798f8b8d3b3 SHA1 d260976ba6cfaeb3228ed6a6aee1969ebdd8c033 SHA256 a1c899401b66a837b786e12806930365ffd40fa0e54806053833be742474df50 diff --git a/dev-scheme/racket/files/racket-5.0.1-hack_makefile_in_temp01.patch b/dev-scheme/racket/files/racket-5.0.1-hack_makefile_in_temp01.patch new file mode 100644 index 00000000..3164d9fa --- /dev/null +++ b/dev-scheme/racket/files/racket-5.0.1-hack_makefile_in_temp01.patch @@ -0,0 +1,37 @@ +diff -u -r a/Makefile.in b/Makefile.in +--- a/Makefile.in 2010-03-17 20:22:06.000000000 +0200 ++++ b/Makefile.in 2010-04-18 22:23:49.000000000 +0300 +@@ -60,9 +60,6 @@ + $(MAKE) install-@MAIN_VARIANT@ + + plain-install: +- if [ "$(DESTDIR)" != "" ]; then \ +- echo "cannot use plain-install with DESTDIR=$(DESTDIR)"; exit 1; \ +- fi + $(MAKE) plain-install-@MAIN_VARIANT@ + + install-common-first: +diff -u -r a/gracket/Makefile.in b/gracket/Makefile.in +--- a/gracket/Makefile.in 2010-03-17 20:22:01.000000000 +0200 ++++ b/gracket/Makefile.in 2010-04-19 14:50:10.000000000 +0300 +@@ -280,8 +280,6 @@ + $(MAKE) install-@WXVARIANT@-post-collects + + install-common: +- cd ..; rm -f "$(DESTDIR)$(bindir)/gracket@CGC_INSTALLED@" +- cd ..; rm -f "$(DESTDIR)$(bindir)/gracket@MMM_INSTALLED@" + cd ..; echo 'CXX=@CXX@' >> $(BUILDINFO) + cd ..; echo 'CXXFLAGS=@CXXFLAGS@ @PREFLAGS@ @COMPFLAGS@' >> $(BUILDINFO) + cd ..; echo 'MROPTIONS=@MROPTIONS@' >> $(BUILDINFO) +diff -u -r a/racket/Makefile.in b/racket/Makefile.in +--- a/racket/Makefile.in 2010-03-17 20:22:06.000000000 +0200 ++++ b/racket/Makefile.in 2010-04-19 14:49:49.000000000 +0300 +@@ -277,8 +277,6 @@ + # have to go up and install things from there. + + unix-install: +- cd ..; rm -f "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@" +- cd ..; rm -f "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@" + cd ..; cp racket/starter "$(DESTDIR)$(libpltdir)/starter" + cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(libpltdir)/starter" + cd ..; echo 'CC=@CC@' > "$(BUILDINFO)" diff --git a/dev-scheme/racket/files/racket-5.0.1-libpng14.patch b/dev-scheme/racket/files/racket-5.0.1-libpng14.patch new file mode 100644 index 00000000..7f5d68c1 --- /dev/null +++ b/dev-scheme/racket/files/racket-5.0.1-libpng14.patch @@ -0,0 +1,15 @@ +diff -u -r a/plt-4.2.5/src/wxcommon/wxJPEG.cxx b/plt-4.2.5/src/wxcommon/wxJPEG.cxx +--- a/plt-4.2.5/src/wxcommon/wxJPEG.cxx 2010-03-17 20:22:03.000000000 +0200 ++++ b/plt-4.2.5/src/wxcommon/wxJPEG.cxx 2010-05-11 18:16:06.000000000 +0300 +@@ -726,7 +726,11 @@ + png_set_strip_16(png_ptr); + + /* Expand grayscale images to the full 8 bits from 1, 2, or 4 bits/pixel */ ++ #if PNG_LIBPNG_VER < 10400 + png_set_gray_1_2_4_to_8(png_ptr); ++ #else ++ png_set_expand_gray_1_2_4_to_8(png_ptr); ++ #endif + } + + /* Set the background color to draw transparent and alpha images over. diff --git a/dev-scheme/racket/metadata.xml b/dev-scheme/racket/metadata.xml new file mode 100644 index 00000000..3c8816ba --- /dev/null +++ b/dev-scheme/racket/metadata.xml @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>scheme</herd> + <longdescription lang="en"> + Racket, formerly known as PLT Scheme(DrScheme) is an interactive, + integrated, graphical programming environment for the Scheme, + MzScheme, and MrEd programming languages. + + It provides source highlighting for syntax and run-time errors, + support for multiple language levels, an algebraic stepper, objects, + modules, a GUI library, TCP/IP, and much more. It includes an + extensive, hyper-linked help system called Help Desk. + </longdescription> + <use> + <flag name='slatex'> + Add slatex mzscheme scripts and texmf file for slatex support + </flag> + <flag name='futures'> + Enable futures support + </flag> + <flag name='places'> + Enable places support + </flag> + <flag name='foreign'> + Build with (unfortunately bundled) libffi + </flag> + <flag name='plain'> + Do plain installation without rebuilding plt-scheme's + collects(experimental) + </flag> + <flag name='sgc'> + Compile and install additional executables which use the conservative + garbage collector(Senora, instead of Boehm) + </flag> + <flag name='backtrace'> + Support GC backtrace dumps + </flag> + <flag name='cgc'> + Compile and install additional executables which use the conservative + garbage collector(Boehm) + </flag> + </use> +</pkgmetadata> diff --git a/dev-scheme/racket/racket-5.0.1.ebuild b/dev-scheme/racket/racket-5.0.1.ebuild new file mode 100644 index 00000000..27331719 --- /dev/null +++ b/dev-scheme/racket/racket-5.0.1.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="3" + +inherit eutils + +DESCRIPTION="Programming environment based on Scheme." +SRC_URI="http://download.racket-lang.org/installers/${PV}/${PN}/${P}-src-unix.tgz" +HOMEPAGE="http://www.racket-lang.org" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~x86 ~amd64" +IUSE="-backtrace cairo cgc doc opengl profile X slatex sgc -futures -places +foreign static -plain" +# jit +RDEPEND="X? ( x11-libs/libX11 + x11-libs/libXaw + x11-libs/libXft + x11-libs/libXrender + media-libs/jpeg + media-libs/libpng + opengl? ( virtual/opengl ) + cairo? ( x11-libs/cairo[X] ) ) + slatex? ( virtual/latex-base ) + !dev-scheme/plt-scheme" +DEPEND="${RDEPEND}" +S="${WORKDIR}/plt-${PV}/src/build" +ECONF_SOURCE="${S}/.." +MY_PNUM="01" + +pkg_setup() { + if use cgc && use sgc ; then + die "You cannot use both cgc and sgc USE flags, you have to choose one of them" + fi + for my_flag in backtrace futures places + do + if use "${my_flag}" ; then + ewarn "${my_flag} USE flag is known that may make ${P} compilation" + ewarn "to fail. Please remove it, if the ebuild fails for you. " + fi + done + if use cairo || use opengl ; then + if ! use X ; then + ewarn "cairo and opengl USE flags support features that are disabled" + ewarn "by ${P} build system when you haven't enabled the X USE flag." + fi + fi +} + +src_unpack() { + unpack ${A} + mkdir -v "${S}" || die "failed to create build dir" +} + +src_prepare() { + #( cd .. && rm -Rv wxcommon && rm -Rv foreign ) \ + #|| die "failed to remove dir of bundled libraries" + #rm -Rv ../wxcommon/{jpeg,libpng,zlib} ../../collects \ + #|| die "failed to remove dir of bundled libraries" + #rm -Rv ../wxcommon/{jpeg,libpng,zlib} ../wxxt \ + rm -Rv ../wxcommon/{jpeg,libpng,zlib} \ + || die "failed to remove dir of bundled libraries" + sed -i -e "s/docdir=\"\${datadir}\/racket\/doc\"/docdir=\"\${datadir}\/doc\/${PF}\"/" ../configure || die "sed failed" + pushd .. + epatch "${FILESDIR}/${P}-hack_makefile_in_temp${MY_PNUM}.patch" + epatch "${FILESDIR}/${P}-libpng14.patch" + popd + #sed -i -e 's/#! \/bin\/sh/#! \/bin\/sh -x/g' ../configure \ + #|| die "sed failed" +} + +src_configure() { + local myconf="" + if use static; then + myconf="--disable-shared" + else + myconf="--enable-shared" + fi + econf \ + $(use_enable doc docs) \ + $(use_enable X gracket) \ + $(use_enable X xrender) \ + $(use_enable X xft) \ + $(use_enable opengl gl) \ + $(use_enable cairo) \ + $(use_enable profile gprof) \ + $(use_enable backtrace) \ + $(use_enable sgc) \ + $(use_enable futures) \ + $(use_enable places) \ + $(use_enable foreign) \ + --enable-jit \ + --enable-libpng \ + --enable-libjpeg \ + --enable-pthread \ + --enable-account \ + --disable-sgcdebug \ + --disable-compact \ + --disable-smalloskit \ + --disable-oskit \ + --disable-wbuild \ + --disable-perl \ + $(use_with X x) \ + ${myconf} \ + || die "Configure script failed" +} + +src_compile() { + emake || die "emake default target(3m) failed" + if use cgc || use sgc ; then + time emake cgc || die "emake cgc-install target failed" + fi +} + +src_install() { + local pla1n="" + if use plain; then + pla1n="plain-" + fi + time emake DESTDIR="${D}" "${pla1n}"install || die "emake install failed" + if use cgc || use sgc ; then + time emake DESTDIR="${D}" "${pla1n}"install-cgc || die "emake cgc target failed" + fi + if use X; then + newicon ../../collects/icons/PLT-206.png drscheme.png + make_desktop_entry drscheme "DrScheme" drscheme "Development" + fi + # deal with slatex + if use slatex; then + if ! use plain; then + pushd "${D}"/usr/bin + { rename slatex plt-slatex slatex* && rename pdf-slatex plt-pdf-slatex pdf-slatex* ; } || die "Failed to rename slatex* to plt-slatex*" + popd + fi + insinto /usr/share/texmf/tex/latex/slatex/ + newins ../../collects/slatex/slatex.sty plt-slatex.sty + else + if ! use plain; then + rm -Rfv "${D}"/usr/bin/*slatex* || die "Failed to delete slatex files" + fi + fi +} |