public inbox for gentoo-lisp@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-lisp] Fwd: bigloo3.4a
@ 2010-06-30  7:12 Cyprien Nicolas
  0 siblings, 0 replies; only message in thread
From: Cyprien Nicolas @ 2010-06-30  7:12 UTC (permalink / raw
  To: Gentoo-Lisp Mailing list

[-- Attachment #1: Type: text/plain, Size: 1014 bytes --]

Hello lispers,

As Manuel just released a new stable bigloo release, I prepared a lot of
improvements to the bigloo ebuild.

Changes includes:
* USE for all APIs provided by bigloo,
* minimal USE for the lazy,
* debug USE, quite easy to set,
* doc USE, for those who don't want the documentation (HTML pages mainly)

The documentation for the use.local.desc is included as comments in the
ebuild.


The no-strip patch could not be included in the release, I thought of it
too late... Should be in the next one.


I will try to find some time to work on mono/pnet support for gentoo.


Regards
,Cyprien



-------- Original Message --------
Subject: [bigloo] bigloo3.4a
Date: Wed, 30 Jun 2010 08:28:03 +0200
From: Manuel Serrano
Organization: Inria
To: Bigloo@sophia.inria.fr

Hi There,

bigloo3.4a is now available. It will be officially announced by the
beginning
of the afternoon (Paris time). If you find any problem with the web and ftp
sites. Please report as soon as possible. Thanks.

-- 
Bigloo Inria Team

[-- Attachment #2: bigloo-3.4a.ebuild --]
[-- Type: text/plain, Size: 4949 bytes --]

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

EAPI="2"

inherit elisp-common multilib eutils flag-o-matic java-pkg-opt-2

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[threads?]
		emacs? ( virtual/emacs )
		java? ( >=virtual/jdk-1.5 app-arch/zip )
		sqlite? ( dev-db/sqlite:3 )
		ssl? ( dev-libs/openssl )
		gstreamer? ( media-libs/gstreamer
			media-libs/gst-plugins-base )"

RDEPEND="${DEPEND}
	java? ( >=virtual/jre-1.5 )"

S=${WORKDIR}/${MY_P}

SITEFILE="50bigloo-gentoo.el"

# Default: multimedia and web, as needed by dev-scheme/hop
IUSE="calendar crypto debug doc emacs gstreamer java mail minimal +multimedia packrat scmpkg sqlite srfi1 srfi27 ssl text threads +web"

#use.local.desc
# dev-scheme/bigloo:calendar - Build the embedded library for calendar programming
# dev-scheme/bigloo:crypto - Build the embedded cryptographic library
# dev-scheme/bigloo:mail - Mail library for email management (e.g. maildir and imap support)
# dev-scheme/bigloo:multimedia - Build multimedia library (e.g. for managing images)
# dev-scheme/bigloo:packrat - Bigloo port of Tony Garnock-Jones' packrat parser
# dev-scheme/bigloo:scmpkg - Bigloo native port for ScmPkg and repository library
# dev-scheme/bigloo:srfi1 - Build the srfi1 library: List library
# dev-scheme/bigloo:srfi27 - Build the srfi27 library: Source of Random Bits
# dev-scheme/bigloo:text - Library for dealing with text (e.g. BibTeX parser)
# dev-scheme/bigloo:web - Library for web programming (e.g. XML, CGI parsers)


src_prepare() {
	epatch "${FILESDIR}/${P}-no_strip.patch"

	# Removing bundled boehm-gc
	rm -rf gc || die
}

src_configure() {
	filter-flags -fomit-frame-pointer

	local myconf=""

	if use minimal; then
		ewarn "Building minimal support, all extensions are disabled (whatever are your USE) except java)"

		myconf="--bee=partial"
		local minimal_exclude_list="gstreamer calendar crypto fthread mail multimedia packrat pkgcomp pkglib pthread sqlite srfi1 srfi27 ssl text web"
		for i in ${minimal_exclude_list} ; do
			myconf="${myconf} --disable-${i}"
		done
	else
		myconf="--bee=$(if use emacs; then echo full; else echo partial; fi)"
		myconf="${myconf} $(use_enable calendar)"
		myconf="${myconf} $(use_enable crypto)"
		myconf="${myconf} $(use_enable mail)"
		myconf="${myconf} $(use_enable multimedia)"
		myconf="${myconf} $(use_enable threads fthread)"
		myconf="${myconf} $(use_enable threads pthread)"
		myconf="${myconf} $(use_enable gstreamer)"
		myconf="${myconf} $(use_enable packrat)"
		myconf="${myconf} $(use_enable scmpkg pkgcomp)"
		myconf="${myconf} $(use_enable scmpkg pkglib)"
		myconf="${myconf} $(use_enable sqlite)"
		myconf="${myconf} $(use_enable srfi1)"
		myconf="${myconf} $(use_enable srfi27)"
		myconf="${myconf} $(use_enable ssl)"
		myconf="${myconf} $(use_enable text)"
		myconf="${myconf} $(use_enable web)"
	fi

	if ! use threads && use gstreamer; then
		eerror "You must enable threads in order to build with gstreamer support"
		die
	fi

	# 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}/${PN}" \
		--benchmark=yes \
		--sharedbde=no \
		--sharedcompiler=no \
		--customgc=no \
		--coflags="" \
		--strip=no \
		$(use debug && echo "--debug") \
		${myconf} \
		|| die "configure failed"
}

src_compile() {
	emake || die "emake failed"

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

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

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

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

		if use doc; then
			emake DESTDIR="${D}" install-docs || die "install-docs failed"
		fi
	fi
}

pkg_postinst() {
	use emacs && elisp-site-regen
	if use emacs && ! use minimal; 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
}

[-- Attachment #3: bigloo-3.4a-no_strip.patch --]
[-- Type: text/plain, Size: 1223 bytes --]

--- configure.orig	2010-06-30 08:17:50.000000000 +0200
+++ configure	2010-06-30 08:37:01.796331868 +0200
@@ -63,7 +63,7 @@
 featureflags=
 coflags=-O3
 
-cstrip="-s"
+cstrip=""
 cpicflags="demanded" # Possible values for cpicflags are:
              #  - "no" not to use position independent code (recommended)
              #  - "demanded" auto configuration but with a preference to "no"
@@ -79,7 +79,7 @@
 ld=
 ldlibs=-lc
 ldcomplibs=-lc
-strip=       # left blank for autoconfiguration
+strip=""       # left blank for autoconfiguration
 longlong=    # The C type to represent long long integers
 havelonglong=
 stringsplit="0"
@@ -694,6 +694,10 @@
       extralibs="";
       cstrip="no";;
 
+    --strip=no)
+      cstrip="no";
+      strip="no";;
+
     --pnet)
       dotnetclrstyle=pnet;
       dotnetcsccstyle=pnet;
@@ -980,6 +984,7 @@
       echo "Misc:"  >&2;
       echo "   --finalization=yes|no [default no]" >&2;
       echo "   --benchmark=yes|no [default no] (must use --arch too)" >&2;
+      echo "   --strip=no (disable stripping during linking)" >&2;
       echo "   --debug[2] (configure for debugging)" >&2;
       echo "   --stack-check=no" >&2;
       echo "   --enable-thread-local-storage" >&2;

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-06-30  7:12 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-30  7:12 [gentoo-lisp] Fwd: bigloo3.4a Cyprien Nicolas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox