From: Morgon Kanter <morgon.kanter@gmail.com>
To: gentoo-lisp@lists.gentoo.org
Subject: [gentoo-lisp] Ebuild for Racket 5.1
Date: Mon, 21 Feb 2011 12:07:03 -0500 [thread overview]
Message-ID: <AANLkTin-HS0qCw83xg3T80vQ3eYfoS-_a3LfaQqg9e8k@mail.gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 635 bytes --]
Hey folks,
I noticed there wasn't yet an ebuild for the new version of Racket, so
I went ahead and made one. It's attached.
A couple changes besides just bumping the version number:
* Doesn't really seem like that makefile patch was required anymore (I
didn't need it), so I commented that out.
* The new Racket GUI system doesn't appear to include any of those
external libraries that the ebuild used to issue an "rm" for, so I
removed those bits from the ebuild (as well as the formerly
commented-out rm commands that were replaced by something different).
That's it for the changes, aside from a version bump.
Thanks,
-- Morgon
[-- Attachment #2: racket-5.1.ebuild --]
[-- Type: application/octet-stream, Size: 3941 bytes --]
# Copyright 1999-2011 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}/${P}/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() {
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"
popd
#sed -i -e 's/#! \/bin\/sh/#! \/bin\/sh -x/g' ../configure \
#|| die "sed failed"
sed -i -e 's:CFLAGS) -o ../starter:CFLAGS) @LDFLAGS@ -o ../starter:' \
../racket/dynsrc/Makefile.in || die 'sed starter LDFLAGS failed'
}
src_configure() {
econf \
$(use_enable !static shared) \
$(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)
}
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
# From boost-1.42.0-r2.ebuild
local jobs=$( echo " ${MAKEOPTS} " | \
sed -e 's/ --jobs[= ]/ -j /g' \
-e 's/ -j \([1-9][0-9]*\)/ -j\1/g' \
-e 's/ -j\>/ -j1/g' | \
( while read -d ' ' j ; do if [[ "${j#-j}" = "$j" ]]; then continue; fi; jobs="${j#-j}"; done; echo ${jobs} ) )
if [[ "${jobs}" != "" ]]; then NUMJOBS="-j "${jobs}; fi;
time emake DESTDIR="${D}" PLT_SETUP_OPTIONS="${NUMJOBS}" "${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
}
next reply other threads:[~2011-02-21 17:07 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-21 17:07 Morgon Kanter [this message]
2011-02-21 21:18 ` [gentoo-lisp] Ebuild for Racket 5.1 Neil Funk
2011-02-22 10:32 ` Cyprien Nicolas
2011-02-22 17:53 ` Neil Funk
2011-02-22 19:05 ` Morgon Kanter
2011-02-22 19:51 ` Cyprien Nicolas
2011-02-23 21:41 ` Neil Funk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=AANLkTin-HS0qCw83xg3T80vQ3eYfoS-_a3LfaQqg9e8k@mail.gmail.com \
--to=morgon.kanter@gmail.com \
--cc=gentoo-lisp@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox