summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Barć <xgqt@gentoo.org>2022-03-27 01:47:40 +0100
committerMaciej Barć <xgqt@gentoo.org>2022-03-27 01:48:12 +0100
commit805a0545081cef2de5f0f52febc842c978a97f8a (patch)
tree57abe51a3ca16b9bd0f524ea131aa86facc73f2c /dev-scheme
parentwww-client/seamonkey: bump version to 2.53.11.1 (diff)
downloadgentoo-805a0545081cef2de5f0f52febc842c978a97f8a.tar.gz
gentoo-805a0545081cef2de5f0f52febc842c978a97f8a.tar.bz2
gentoo-805a0545081cef2de5f0f52febc842c978a97f8a.zip
dev-scheme/bigloo: new package; add version 4.4c_p4
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
Diffstat (limited to 'dev-scheme')
-rw-r--r--dev-scheme/bigloo/Manifest1
-rw-r--r--dev-scheme/bigloo/bigloo-4.4c_p4.ebuild161
-rw-r--r--dev-scheme/bigloo/files/50bigloo-gentoo.el1
-rw-r--r--dev-scheme/bigloo/metadata.xml27
4 files changed, 190 insertions, 0 deletions
diff --git a/dev-scheme/bigloo/Manifest b/dev-scheme/bigloo/Manifest
new file mode 100644
index 000000000000..6062892e41ae
--- /dev/null
+++ b/dev-scheme/bigloo/Manifest
@@ -0,0 +1 @@
+DIST bigloo-4.4c-4.tar.gz 47714106 BLAKE2B f30775cfa3e29f781f31dc5ec80087712504ffab528a911e2a29746562b6179b03cbfc63a45ddf337b2424fbfa476005ffed67674a75b4629ab70459c47147a6 SHA512 b1a7f7f610303dbbd7339ac4f80679b07d1bf5304865fe61f28bd5af8205f1a5c2b5b3edb1c47a0409a6392a2242d2adde1f5129b026b6a7ee022b8f5faec157
diff --git a/dev-scheme/bigloo/bigloo-4.4c_p4.ebuild b/dev-scheme/bigloo/bigloo-4.4c_p4.ebuild
new file mode 100644
index 000000000000..967319442401
--- /dev/null
+++ b/dev-scheme/bigloo/bigloo-4.4c_p4.ebuild
@@ -0,0 +1,161 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit elisp-common toolchain-funcs
+
+MY_PV=${PV/_p/-} # e.g.: 4.4c_p4 -> 4.4c-4
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="Practical Scheme Compiler with many extensions"
+HOMEPAGE="http://www-sop.inria.fr/indes/fp/Bigloo/index.html"
+SRC_URI="ftp://ftp-sop.inria.fr/indes/fp/Bigloo/${MY_P}.tar.gz"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa avahi emacs flac +gmp gpg gstreamer java libuv mp3 pulseaudio +sqlite"
+REQUIRED_USE="flac? ( alsa ) mp3? ( alsa )"
+
+EMACS_DEPEND="emacs? ( >=app-editors/emacs-23.1:* )"
+DEPEND="
+ dev-libs/boehm-gc[threads]
+ dev-libs/libpcre2:=
+ dev-libs/libunistring:=
+ dev-libs/openssl:=
+ alsa? ( media-libs/alsa-lib )
+ avahi? ( net-dns/avahi )
+ flac? ( media-libs/flac )
+ gmp? ( dev-libs/gmp:= )
+ gpg? ( app-crypt/gnupg )
+ gstreamer? (
+ media-libs/gst-plugins-base:1.0=
+ media-libs/gstreamer:1.0=
+ )
+ java? ( virtual/jdk:* )
+ libuv? ( dev-libs/libuv:= )
+ mp3? ( media-sound/mpg123 )
+ pulseaudio? ( media-sound/pulseaudio )
+ sqlite? ( dev-db/sqlite:3= )
+"
+RDEPEND="
+ ${DEPEND}
+ ${EMACS_DEPEND}
+ sys-devel/binutils
+ sys-devel/gdb
+"
+BDEPEND="
+ ${EMACS_DEPEND}
+ sys-apps/texinfo
+"
+
+DOCS=( ChangeLog README.md TODO.org )
+SITEFILE="50${PN}-gentoo.el"
+
+src_configure() {
+ tc-export AR AS CC CPP CXX LD
+ export CFLAGS="${CFLAGS}"
+ export LDFLAGS="${LDFLAGS}"
+
+ myconf=(
+ # Compilation FLAGS
+ --cflags="${CFLAGS}"
+ --cpicflags="-fPIC"
+ --cwarningflags=""
+ --ldflags="${LDFLAGS}"
+ # Installation directories
+ --prefix=/usr
+ --bindir=/usr/bin
+ --docdir=/usr/share/doc/${PF}
+ --infodir=/usr/share/info
+ --libdir=/usr/"$(get_libdir)"
+ --mandir=/usr/share/man
+ # Custom internal components
+ --customgc=no
+ --customgmp=no
+ --customlibuv=no
+ --customunistring=no
+ --jvm=$(usex java)
+ --native=yes
+ --sharedbde=yes
+ --sharedcompiler=yes
+ --strip=no
+ # Libraries, Bigloo calls them APIs
+ --disable-phidget # not important for now, only in ::ros-overlay ?
+ --enable-calendar # iCalendar parser
+ --enable-crypto
+ --enable-csv # parsing CSV files
+ --enable-mail # IMAP protocol implementation
+ --enable-multimedia
+ --enable-packrat # packrat parser
+ --enable-phone
+ --enable-pkgcomp
+ --enable-pthread
+ --enable-srfi1
+ --enable-srfi18
+ --enable-ssl
+ --enable-text # BibTeX parser
+ --enable-upnp # Upnp protocol implementation
+ --enable-web # XML, CGI, and RSS parsers
+ $(use_enable alsa)
+ $(use_enable avahi)
+ $(use_enable flac wav)
+ $(use_enable flac)
+ $(use_enable gmp srfi27)
+ $(use_enable gmp)
+ $(use_enable gpg openpgp)
+ $(use_enable gstreamer)
+ $(use_enable libuv)
+ $(use_enable mp3 mpg123)
+ $(use_enable pulseaudio)
+ $(use_enable sqlite pkglib)
+ $(use_enable sqlite)
+ # GNU Emacs libraries
+ --bee=$(usex emacs full partial)
+ --emacs=$(usex emacs "${EMACS}" "no")
+ --lispdir=$(usex emacs "${SITELISP}/${PN}" "")
+ )
+ ebegin "Configuring Bigloo with the following options: ${myconf[@]}"
+ sh ./configure "${myconf[@]}"
+ eend $? || die "configure script failed"
+}
+
+src_compile() {
+ default
+
+ emake -C bdl
+ emake -C bdb
+ emake -C cigloo
+
+ use emacs && emake -C bmacs
+}
+
+src_test() {
+ emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" LN_S="ln -rs" install
+ emake DESTDIR="${D}" -C bdl install
+ emake DESTDIR="${D}" -C bdb install
+ emake DESTDIR="${D}" -C cigloo install
+
+ if use emacs ; then
+ emake DESTDIR="${D}" install-bee
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ einfo "Heads up: Bigloo is launched via \"bigloo.sh\" script, not \"bigloo\" executable!"
+
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-scheme/bigloo/files/50bigloo-gentoo.el b/dev-scheme/bigloo/files/50bigloo-gentoo.el
new file mode 100644
index 000000000000..431f7e90ae73
--- /dev/null
+++ b/dev-scheme/bigloo/files/50bigloo-gentoo.el
@@ -0,0 +1 @@
+(add-to-list 'load-path "@SITELISP@")
diff --git a/dev-scheme/bigloo/metadata.xml b/dev-scheme/bigloo/metadata.xml
new file mode 100644
index 000000000000..a179bb3d4094
--- /dev/null
+++ b/dev-scheme/bigloo/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="project">
+ <email>scheme@gentoo.org</email>
+ <name>Gentoo Scheme Project</name>
+ </maintainer>
+ <longdescription>
+ Bigloo is a Scheme implementation devoted to one goal: enabling Scheme
+ based programming style where C(++) is usually required.
+ Bigloo attempts to make Scheme practical by offering features usually
+ presented by traditional programming languages but not offered by Scheme
+ and functional programming. Bigloo compiles Scheme modules. It delivers
+ small and fast stand alone binary executables. Bigloo enables full
+ connections between Scheme and C programs.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/manuel-serrano/bigloo/issues/</bugs-to>
+ <remote-id type="github">manuel-serrano/bigloo</remote-id>
+ </upstream>
+ <use>
+ <flag name="avahi">Enable Avahi support</flag>
+ <flag name="gpg">Enable GPG support</flag>
+ <flag name="libuv">Enable libuv support</flag>
+ </use>
+</pkgmetadata>