Gentoo Logo
Gentoo Spaceship




Note: Due to technical difficulties, the Archives are currently not up to date. GMANE provides an alternative service for most mailing lists.
c.f. bug 424647
List Archive: gentoo-lisp
Navigation:
Lists: gentoo-lisp: < Prev By Thread Next > < Prev By Date Next >
Headers:
To: Gentoo-Lisp Mailing List <gentoo-lisp@g.o>
From: Cyprien Nicolas <c.nicolas@...>
Subject: Ebuilds for bigloo3.3a_p4 and hop-2.0.0
Date: Thu, 14 Jan 2010 18:54:15 +0100
Hello lispers,

I'm attaching to this mail two ebuild for the last releases of Bigloo
and Hop, I have mainly adapted the existing ebuilds.

Some notes, about the bigloo.ebuild:

I have to had the threads flag, for dependencies, hop[threads] needs
bigloo[threads], which needs boehm-gc[threads]. That makes the hop
ebuild with three dependencies on hop, I don't know how to make it
clearer, or better.

Then, I had to manually had -fno-omit-frame-pointer to Bigloo's CFLAGS,
for several reasons:
First, for compile-bee, part of the code may be compiled with -pg flag
(for gprof profiling), this option is incompatible with
-fomit-frame-pointer.
Next, at runtime, Bigloo uses the CFLAGS he got at compile time when
calling GCC on the produced C file. so bigloo -p will call gcc -pg (if
enabled), then raise a gcc error.


This ebuild has been ran on both x86 hardened and x86_64 hardened
systems, without any issue except the -pg thing I have bypassed.


Any comment are welcome


Regards,

,Cyprien

# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

inherit elisp-common multilib eutils

MY_P=${PN}${PV/_p/-}
MY_P=${MY_P/_alpha/-alpha}
MY_P=${MY_P/_beta/-beta}

DESCRIPTION="Bigloo is a Scheme implementation."
HOMEPAGE="http://www-sop.inria.fr/indes/fp/Bigloo/bigloo.html"
SRC_URI="ftp://ftp-sop.inria.fr/indes/fp/Bigloo/${MY_P}.tar.gz"

SLOT="0"
LICENSE="GPL-2"
KEYWORDS="~amd64 ~x86"

# bug 254916 for >=dev-libs/boehm-gc-7.1
DEPEND=">=dev-libs/boehm-gc-7.1
		emacs? ( virtual/emacs )
		java? ( virtual/jdk app-arch/zip )
		ssl? ( dev-libs/openssl )
		threads? ( dev-libs/boehm-gc[threads] )"

RDEPEND="dev-libs/boehm-gc"

S=${WORKDIR}/${MY_P}

SITEFILE="50bigloo-gentoo.el"

IUSE="emacs java ssl threads"

# -fomit-frame-pointer is not compatible with -pg, gcc raises an error
CFLAGS="${CFLAGS} -fno-omit-frame-pointer"

src_compile() {
	# Bigloo doesn't use autoconf and consequently a lot of options used by econf give errors
	# Manuel Serrano says: "Please, dont talk to me about autoconf. I simply dont want to hear about it..."
	./configure \
		$(use java && echo "--jvm=yes --java=$(java-config --java) --javac=$(java-config --javac)") \
		--prefix=/usr \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--libdir=/usr/$(get_libdir) \
		--docdir=/usr/share/doc/${PF} \
		--lispdir=${SITELISP}/bigloo \
		--benchmark=yes \
		--sharedbde=no \
		--sharedcompiler=no \
		--customgc=no \
		--coflags="" \
		--bee=$(if use emacs; then echo full; else echo partial; fi) \
		$(use threads && echo "--enable-pthread --enable-fthread" \
					  || echo "--disable-pthread --disable-fthread") \
		$(use_enable ssl) \
		|| die "configure failed"

	emake || die "emake failed"

	if use emacs; then
		einfo "Compiling bee..."
		emake -j1 compile-bee || die "compiling bee failed"
	fi
}

# default thinks that target doesn't exist
src_test() {
	vecho ">>> Test phase [test]: ${CATEGORY}/${PF}"
	emake test || die
}

src_install() {
	emake DESTDIR="${D}" install || die "install failed"

	if use emacs; then
		emake DESTDIR="${D}" install-bee || die "install-bee failed"
		elisp-site-file-install "${FILESDIR}/${SITEFILE}"
	fi
}

pkg_postinst() {
	use emacs && elisp-site-regen
	if use emacs; then
		elog "In order to use the bee-mode, add"
		elog "  (require 'bmacs)"
		elog "to your ~/.emacs file"
	fi
}

pkg_postrm() {
	use emacs && elisp-site-regen
}
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

inherit multilib eutils

MY_P=${P/_/-}

DESCRIPTION="Hop is a higher-order language for programming interactive web applications."
HOMEPAGE="http://hop.inria.fr/"
SRC_URI="ftp://ftp-sop.inria.fr/indes/fp/Hop/${MY_P}.tar.gz"

SLOT="0"
LICENSE="GPL-2"
KEYWORDS="~amd64 ~x86"

DEPEND=">=dev-scheme/bigloo-3.3a
		ssl? ( dev-scheme/bigloo[ssl] )
		threads? ( dev-scheme/bigloo[threads] )"
RDEPEND=""

IUSE="ssl threads"

S=${WORKDIR}/${MY_P}

pkg_setup() {
	enewgroup hop
	enewuser hop -1 -1 /var/www hop
}

src_compile() {
	# Hop doesn't use autoconf and consequently a lot of options used by econf give errors
	# Manuel Serrano says: "Please, dont talk to me about autoconf. I simply dont want to hear about it..."
	./configure --prefix=/usr --mandir=/usr/share/man --libdir=/usr/$(get_libdir) --etcdir=/etc/hop $(use_enable ssl) $(use_enable threads) || die "configure failed"

	emake || die "emake failed"
}

src_install () {
	emake DESTDIR="${D}" install || die "install failed"
}
Replies:
Re: Ebuilds for bigloo3.3a_p4 and hop-2.0.0
-- ChIIph
Navigation:
Lists: gentoo-lisp: < Prev By Thread Next > < Prev By Date Next >
Previous by thread:
stabilization of ecls-9.12.3 and clozurecl-1.4
Next by thread:
Re: Ebuilds for bigloo3.3a_p4 and hop-2.0.0
Previous by date:
Re: stabilization of ecls-9.12.3 and clozurecl-1.4
Next by date:
Re: Ebuilds for bigloo3.3a_p4 and hop-2.0.0


Updated May 02, 2012

Summary: Archive of the gentoo-lisp mailing list.

Donate to support our development efforts.

Copyright 2001-2013 Gentoo Foundation, Inc. Questions, Comments? Contact us.