Gentoo Archives: gentoo-commits

From: "Maciej Barć" <xgqt@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-scheme/bigloo/files/, dev-scheme/bigloo/
Date: Sun, 27 Mar 2022 00:48:29
Message-Id: 1648342092.805a0545081cef2de5f0f52febc842c978a97f8a.xgqt@gentoo
1 commit: 805a0545081cef2de5f0f52febc842c978a97f8a
2 Author: Maciej Barć <xgqt <AT> gentoo <DOT> org>
3 AuthorDate: Sun Mar 27 00:47:40 2022 +0000
4 Commit: Maciej Barć <xgqt <AT> gentoo <DOT> org>
5 CommitDate: Sun Mar 27 00:48:12 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=805a0545
7
8 dev-scheme/bigloo: new package; add version 4.4c_p4
9
10 Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>
11
12 dev-scheme/bigloo/Manifest | 1 +
13 dev-scheme/bigloo/bigloo-4.4c_p4.ebuild | 161 +++++++++++++++++++++++++++++
14 dev-scheme/bigloo/files/50bigloo-gentoo.el | 1 +
15 dev-scheme/bigloo/metadata.xml | 27 +++++
16 4 files changed, 190 insertions(+)
17
18 diff --git a/dev-scheme/bigloo/Manifest b/dev-scheme/bigloo/Manifest
19 new file mode 100644
20 index 000000000000..6062892e41ae
21 --- /dev/null
22 +++ b/dev-scheme/bigloo/Manifest
23 @@ -0,0 +1 @@
24 +DIST bigloo-4.4c-4.tar.gz 47714106 BLAKE2B f30775cfa3e29f781f31dc5ec80087712504ffab528a911e2a29746562b6179b03cbfc63a45ddf337b2424fbfa476005ffed67674a75b4629ab70459c47147a6 SHA512 b1a7f7f610303dbbd7339ac4f80679b07d1bf5304865fe61f28bd5af8205f1a5c2b5b3edb1c47a0409a6392a2242d2adde1f5129b026b6a7ee022b8f5faec157
25
26 diff --git a/dev-scheme/bigloo/bigloo-4.4c_p4.ebuild b/dev-scheme/bigloo/bigloo-4.4c_p4.ebuild
27 new file mode 100644
28 index 000000000000..967319442401
29 --- /dev/null
30 +++ b/dev-scheme/bigloo/bigloo-4.4c_p4.ebuild
31 @@ -0,0 +1,161 @@
32 +# Copyright 1999-2022 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=8
36 +
37 +inherit elisp-common toolchain-funcs
38 +
39 +MY_PV=${PV/_p/-} # e.g.: 4.4c_p4 -> 4.4c-4
40 +MY_P=${PN}-${MY_PV}
41 +
42 +DESCRIPTION="Practical Scheme Compiler with many extensions"
43 +HOMEPAGE="http://www-sop.inria.fr/indes/fp/Bigloo/index.html"
44 +SRC_URI="ftp://ftp-sop.inria.fr/indes/fp/Bigloo/${MY_P}.tar.gz"
45 +S="${WORKDIR}"/${MY_P}
46 +
47 +LICENSE="GPL-2+"
48 +SLOT="0"
49 +KEYWORDS="~amd64 ~x86"
50 +IUSE="alsa avahi emacs flac +gmp gpg gstreamer java libuv mp3 pulseaudio +sqlite"
51 +REQUIRED_USE="flac? ( alsa ) mp3? ( alsa )"
52 +
53 +EMACS_DEPEND="emacs? ( >=app-editors/emacs-23.1:* )"
54 +DEPEND="
55 + dev-libs/boehm-gc[threads]
56 + dev-libs/libpcre2:=
57 + dev-libs/libunistring:=
58 + dev-libs/openssl:=
59 + alsa? ( media-libs/alsa-lib )
60 + avahi? ( net-dns/avahi )
61 + flac? ( media-libs/flac )
62 + gmp? ( dev-libs/gmp:= )
63 + gpg? ( app-crypt/gnupg )
64 + gstreamer? (
65 + media-libs/gst-plugins-base:1.0=
66 + media-libs/gstreamer:1.0=
67 + )
68 + java? ( virtual/jdk:* )
69 + libuv? ( dev-libs/libuv:= )
70 + mp3? ( media-sound/mpg123 )
71 + pulseaudio? ( media-sound/pulseaudio )
72 + sqlite? ( dev-db/sqlite:3= )
73 +"
74 +RDEPEND="
75 + ${DEPEND}
76 + ${EMACS_DEPEND}
77 + sys-devel/binutils
78 + sys-devel/gdb
79 +"
80 +BDEPEND="
81 + ${EMACS_DEPEND}
82 + sys-apps/texinfo
83 +"
84 +
85 +DOCS=( ChangeLog README.md TODO.org )
86 +SITEFILE="50${PN}-gentoo.el"
87 +
88 +src_configure() {
89 + tc-export AR AS CC CPP CXX LD
90 + export CFLAGS="${CFLAGS}"
91 + export LDFLAGS="${LDFLAGS}"
92 +
93 + myconf=(
94 + # Compilation FLAGS
95 + --cflags="${CFLAGS}"
96 + --cpicflags="-fPIC"
97 + --cwarningflags=""
98 + --ldflags="${LDFLAGS}"
99 + # Installation directories
100 + --prefix=/usr
101 + --bindir=/usr/bin
102 + --docdir=/usr/share/doc/${PF}
103 + --infodir=/usr/share/info
104 + --libdir=/usr/"$(get_libdir)"
105 + --mandir=/usr/share/man
106 + # Custom internal components
107 + --customgc=no
108 + --customgmp=no
109 + --customlibuv=no
110 + --customunistring=no
111 + --jvm=$(usex java)
112 + --native=yes
113 + --sharedbde=yes
114 + --sharedcompiler=yes
115 + --strip=no
116 + # Libraries, Bigloo calls them APIs
117 + --disable-phidget # not important for now, only in ::ros-overlay ?
118 + --enable-calendar # iCalendar parser
119 + --enable-crypto
120 + --enable-csv # parsing CSV files
121 + --enable-mail # IMAP protocol implementation
122 + --enable-multimedia
123 + --enable-packrat # packrat parser
124 + --enable-phone
125 + --enable-pkgcomp
126 + --enable-pthread
127 + --enable-srfi1
128 + --enable-srfi18
129 + --enable-ssl
130 + --enable-text # BibTeX parser
131 + --enable-upnp # Upnp protocol implementation
132 + --enable-web # XML, CGI, and RSS parsers
133 + $(use_enable alsa)
134 + $(use_enable avahi)
135 + $(use_enable flac wav)
136 + $(use_enable flac)
137 + $(use_enable gmp srfi27)
138 + $(use_enable gmp)
139 + $(use_enable gpg openpgp)
140 + $(use_enable gstreamer)
141 + $(use_enable libuv)
142 + $(use_enable mp3 mpg123)
143 + $(use_enable pulseaudio)
144 + $(use_enable sqlite pkglib)
145 + $(use_enable sqlite)
146 + # GNU Emacs libraries
147 + --bee=$(usex emacs full partial)
148 + --emacs=$(usex emacs "${EMACS}" "no")
149 + --lispdir=$(usex emacs "${SITELISP}/${PN}" "")
150 + )
151 + ebegin "Configuring Bigloo with the following options: ${myconf[@]}"
152 + sh ./configure "${myconf[@]}"
153 + eend $? || die "configure script failed"
154 +}
155 +
156 +src_compile() {
157 + default
158 +
159 + emake -C bdl
160 + emake -C bdb
161 + emake -C cigloo
162 +
163 + use emacs && emake -C bmacs
164 +}
165 +
166 +src_test() {
167 + emake test
168 +}
169 +
170 +src_install() {
171 + emake DESTDIR="${D}" LN_S="ln -rs" install
172 + emake DESTDIR="${D}" -C bdl install
173 + emake DESTDIR="${D}" -C bdb install
174 + emake DESTDIR="${D}" -C cigloo install
175 +
176 + if use emacs ; then
177 + emake DESTDIR="${D}" install-bee
178 + elisp-site-file-install "${FILESDIR}/${SITEFILE}"
179 + fi
180 +
181 + einstalldocs
182 +}
183 +
184 +pkg_postinst() {
185 + einfo "Heads up: Bigloo is launched via \"bigloo.sh\" script, not \"bigloo\" executable!"
186 +
187 + use emacs && elisp-site-regen
188 +}
189 +
190 +pkg_postrm() {
191 + use emacs && elisp-site-regen
192 +}
193
194 diff --git a/dev-scheme/bigloo/files/50bigloo-gentoo.el b/dev-scheme/bigloo/files/50bigloo-gentoo.el
195 new file mode 100644
196 index 000000000000..431f7e90ae73
197 --- /dev/null
198 +++ b/dev-scheme/bigloo/files/50bigloo-gentoo.el
199 @@ -0,0 +1 @@
200 +(add-to-list 'load-path "@SITELISP@")
201
202 diff --git a/dev-scheme/bigloo/metadata.xml b/dev-scheme/bigloo/metadata.xml
203 new file mode 100644
204 index 000000000000..a179bb3d4094
205 --- /dev/null
206 +++ b/dev-scheme/bigloo/metadata.xml
207 @@ -0,0 +1,27 @@
208 +<?xml version="1.0" encoding="UTF-8"?>
209 +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
210 +
211 +<pkgmetadata>
212 + <maintainer type="project">
213 + <email>scheme@g.o</email>
214 + <name>Gentoo Scheme Project</name>
215 + </maintainer>
216 + <longdescription>
217 + Bigloo is a Scheme implementation devoted to one goal: enabling Scheme
218 + based programming style where C(++) is usually required.
219 + Bigloo attempts to make Scheme practical by offering features usually
220 + presented by traditional programming languages but not offered by Scheme
221 + and functional programming. Bigloo compiles Scheme modules. It delivers
222 + small and fast stand alone binary executables. Bigloo enables full
223 + connections between Scheme and C programs.
224 + </longdescription>
225 + <upstream>
226 + <bugs-to>https://github.com/manuel-serrano/bigloo/issues/</bugs-to>
227 + <remote-id type="github">manuel-serrano/bigloo</remote-id>
228 + </upstream>
229 + <use>
230 + <flag name="avahi">Enable Avahi support</flag>
231 + <flag name="gpg">Enable GPG support</flag>
232 + <flag name="libuv">Enable libuv support</flag>
233 + </use>
234 +</pkgmetadata>