summaryrefslogtreecommitdiff
path: root/dev-libs/librep
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-11-05 09:17:35 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-11-05 09:17:35 +0000
commit54c42eb42df420f52e032fcba7727c326ef01094 (patch)
tree0dee719f67aa7ad3bfb64c3a46912acad885d738 /dev-libs/librep
parenta8b01fd62375e0df65d5f8f20c5ee142ec6739b6 (diff)
gentoo auto-resync : 05:11:2022 - 09:17:35
Diffstat (limited to 'dev-libs/librep')
-rw-r--r--dev-libs/librep/Manifest3
-rw-r--r--dev-libs/librep/files/librep-0.92.7-configure-clang16.patch74
-rw-r--r--dev-libs/librep/files/librep-0.92.7-libtool.patch47
-rw-r--r--dev-libs/librep/librep-0.92.7-r2.ebuild83
4 files changed, 207 insertions, 0 deletions
diff --git a/dev-libs/librep/Manifest b/dev-libs/librep/Manifest
index dee9d015ac23..4ef70e4dd650 100644
--- a/dev-libs/librep/Manifest
+++ b/dev-libs/librep/Manifest
@@ -1,5 +1,8 @@
AUX 50librep-gentoo.el 180 BLAKE2B 7d60b7ef76c4c695eca84d2c85e1d139fc34fcaaa76189510d8fe021b05a276da9ab33f38622e04c55bee7dcd312bc20baf86383114e527b34cc8daa305b35f5 SHA512 04a4da2e38ddf04bccd28002a46f13526249f31d2e25769056e1b763e3a22f75ffc2a906b68eef0ce04b1e6505acbf858f4d7f911258461e39419ebe4b098b71
AUX librep-0.92.0-disable-elisp.patch 838 BLAKE2B ec37012dd440def1beab62335b787d7d064b416f3274bf5e563127801f0b242313fbdc5b30e43dd7e518c2a91a05532f606126645af33d45c808d570731a759b SHA512 cdbfe9f8f210869243e38e6ed4f2ea66cee4a1c626e7fcd8b9733870998e59e0a294c3cb9c491eefac8d6b89a8effc9068ea0dd9f2d2d6a86c9dc49dd838f126
+AUX librep-0.92.7-configure-clang16.patch 2835 BLAKE2B 93168d3aec3d07d7d143bb5e82e6b2b49f820642ac6819d0062a7afdfa8928a980aad06e0caf6b7405be4512ab941186cd49e28234a90e69fed69d88a4a10208 SHA512 c88fa76cd21fe5ed9643e882e2c4e4eb568d1ab5a61b6e4230ac5d4083eec149fe2aba3dd672161a147f32db18998d28779118fd20b9146c35e9eb27c72cb68d
+AUX librep-0.92.7-libtool.patch 1604 BLAKE2B 7c703020cfe3ce67767e6374424dcb6048c1c32751a53cd01e552c7ef31afeebaf49a57ca09c6048d73e0bd85af1aabeece023cb98b6001d9e881b64cd59444f SHA512 b8cf613fef049c6a7fb7b041caf59b69fed5168b019cb5d55a5574c91ec8c3f1d9d4892edc4b0682823e67a92a94cd7b3a3b7963283c8c11a2b2f058ecbb84e3
DIST librep_0.92.7.tar.xz 651344 BLAKE2B 3a0e9a3eef0afa2e095537dfc307418ba87ce7a9baabdba262fd9a24b71cc6577fe1282412da495d56bf22007f1931c5b834f5bcf4c5ebe87d6b43a4975d630e SHA512 752cb2da31457200b5896f70ce24a097b261b996da25998cd78a777f982597473afce1a216f449a4a969d29b1678bf54e2f148e86de6f9548eeb5cfd530ae377
EBUILD librep-0.92.7-r1.ebuild 1612 BLAKE2B 7d492e6d5cc79f5fac47e0cf137c50154cbcbcb763b7f655a8c4ad1e9f7c8ee6e8fe7c684bcfd54a1d89dcb0cad828bd967a604f42020cf532efceff64ef6840 SHA512 e4cce157261be24701fb0a1d5c931dec53f3972e72e4ccb0c8c7c1cebf99c23b9729a592ee445c0b064f6d966d55943799a3eddcfcf3f9517119b062f4ee2792
+EBUILD librep-0.92.7-r2.ebuild 1681 BLAKE2B 2de8ada2b2bc530b2cfcc2fa7d3f1e0d8950a4a604481b52d6b3c71f95bdc53d91172fe8bf532319c4c0b171718e298b664c5dd31659a9325fdf2338f092b10e SHA512 3e79889e9c49dffd5444039dc848a7f8b2d54718b93e4cc575f14dbf60a281f7dbc6681d3b07996d6e86872469d6710a617b0654434c7b67d15a88456d965fb8
MISC metadata.xml 300 BLAKE2B a7cfc68a28e6b37130bdff872f4131fdf3b14e86edff79d686d31adb6cf0227f66c399477e9250be51fc20b2e1e13494d7299a9f6e34d816f8365830792372d4 SHA512 c73b85cc664176da77caa2a1477bce6018e04cf3ec5c2d855916e08e40a4eb7f8d1fc05060bd0f8bc365210078d3286683d91b0aa437dd871ee99c2b13f4380e
diff --git a/dev-libs/librep/files/librep-0.92.7-configure-clang16.patch b/dev-libs/librep/files/librep-0.92.7-configure-clang16.patch
new file mode 100644
index 000000000000..43c458690e43
--- /dev/null
+++ b/dev-libs/librep/files/librep-0.92.7-configure-clang16.patch
@@ -0,0 +1,74 @@
+https://github.com/SawfishWM/librep/pull/17
+
+From 5c653297288fc1d82f92d224c745d89f9e6734fd Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 5 Nov 2022 06:04:27 +0000
+Subject: [PATCH] build: fix -Wimplicit-int, -Wimplicit-function-declaration
+
+Clang 16 will make -Wimplicit-int and -Wimplicit-function-declaration
+errors by default.
+
+In this case, it manifests as:
+```
+checking for data type to store Lisp values... configure: error: cannot find Lisp value type; set --with-value-type (see README)
+```
+
+For more information, see LWN.net [0] or LLVM's Discourse [1], or the
+(new) c-std-porting mailing list [2].
+
+[0] https://lwn.net/Articles/913505/
+[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213
+[2] hosted at lists.linux.dev.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -432,15 +432,18 @@ AC_ARG_WITH(value-type,
+ as a pointer. [TYPE=<probed>] (see README)], [],
+ [with_value_type="undef"])
+ if test "${with_value_type}" = "undef"; then
+- AC_TRY_RUN([main () { exit (!(sizeof (int) >= sizeof (void *)));}],
++ AC_TRY_RUN([#include <stdlib.h>
++ int main () { exit (!(sizeof (int) >= sizeof (void *)));}],
+ [with_value_type=int])
+ fi
+ if test "${with_value_type}" = "undef"; then
+- AC_TRY_RUN([main () { exit (!(sizeof (long int) >= sizeof (void *)));}],
++ AC_TRY_RUN([#include <stdlib.h>
++ int main () { exit (!(sizeof (long int) >= sizeof (void *)));}],
+ [with_value_type="long int"])
+ fi
+ if test "${with_value_type}" = "undef"; then
+- AC_TRY_RUN([main () { exit (!(sizeof (long long int) >= sizeof (void *)));}],
++ AC_TRY_RUN([#include <stdlib.h>
++ int main () { exit (!(sizeof (long long int) >= sizeof (void *)));}],
+ [with_value_type="long long int"])
+ fi
+ if test "${with_value_type}" = "undef"; then
+@@ -457,7 +460,8 @@ AC_ARG_WITH(value-sizeof,
+ if test "${with_value_sizeof}" = "undef"; then
+ dnl the following fragment is inspired by AC_CHECK_SIZEOF
+ AC_TRY_RUN([#include <stdio.h>
+- main () {
++ #include <stdlib.h>
++ int main () {
+ FILE *f = fopen ("conftestval", "w");
+ if (!f) exit (1);
+ fprintf (f, "%d\n", sizeof (${with_value_type}));
+@@ -548,11 +552,12 @@ if test "${with_stack_direction}" = unknown; then
+ esac
+ fi
+ if test "${with_stack_direction}" = unknown; then
+- AC_TRY_RUN([ int level = 1;
+- void inner (char *foo) { char bar;
++ AC_TRY_RUN([#include <stdlib.h>
++ int level = 1;
++ void inner (char *foo) { char bar;
+ if (level) { --level; inner (foo); }
+ exit (!(foo >= &bar)); }
+- void main () { char foo; inner (&foo); } ],
++ int main () { char foo; inner (&foo); } ],
+ [AC_MSG_RESULT([downwards])
+ with_stack_direction=-1],
+ [AC_MSG_RESULT([upwards])
+
diff --git a/dev-libs/librep/files/librep-0.92.7-libtool.patch b/dev-libs/librep/files/librep-0.92.7-libtool.patch
new file mode 100644
index 000000000000..fd23c1fb0995
--- /dev/null
+++ b/dev-libs/librep/files/librep-0.92.7-libtool.patch
@@ -0,0 +1,47 @@
+https://github.com/SawfishWM/librep/commit/2c064d70e25137915ceaef616c2be5c8bbcc42da
+
+From 2c064d70e25137915ceaef616c2be5c8bbcc42da Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Wed, 19 May 2021 13:19:49 -0700
+Subject: [PATCH] build: Respect $(LIBTOOL)
+
+downstream issue: https://bugs.gentoo.org/790812
+
+Signed-off-by: orbea <orbea@riseup.net>
+--- a/Makedefs.in
++++ b/Makedefs.in
+@@ -83,7 +83,6 @@ COMPILE_ENV = REPLISPDIR=$(top_builddir)/lisp \
+ REPDOCFILE=$(top_builddir)/doc-strings
+
+ include $(top_srcdir)/rules.mk
+-rep_LIBTOOL=@LIBTOOL@
+
+ # Rule for ``normal'' C objects
+ %.o : %.c
+--- a/rules.mk.in
++++ b/rules.mk.in
+@@ -3,19 +3,18 @@
+ repcommonexecdir?=$(shell pkg-config --variable=repcommonexecdir librep)
+ rpath_repcommonexecdir:=$(repcommonexecdir)
+
+-rep_LIBTOOL:=$(repcommonexecdir)/libtool --tag CC
+ rep_INSTALL_ALIASES:=$(repcommonexecdir)/install-aliases
+
+ # use this like:
+ # foo.la : foo.lo bar.lo
+ # $(rep_DL_LD) link-opts...
+
+-rep_DL_LD=$(rep_LIBTOOL) --mode=link --tag=CC $(CC) -avoid-version -module -rpath $(rpath_repcommonexecdir)
++rep_DL_LD=$(LIBTOOL) --mode=link --tag=CC $(CC) -avoid-version -module -rpath $(rpath_repcommonexecdir)
+
+-rep_DL_INSTALL=$(rep_LIBTOOL) --mode=install $(INSTALL)
+-rep_DL_UNINSTALL=$(rep_LIBTOOL) --mode=uninstall rm
++rep_DL_INSTALL=$(LIBTOOL) --mode=install $(INSTALL)
++rep_DL_UNINSTALL=$(LIBTOOL) --mode=uninstall rm
+
+ # Rule for libtool controlled C objects
+ %.lo : %.c
+- $(rep_LIBTOOL) --mode=compile --tag=CC $(CC) -c $(CPPFLAGS) $(CFLAGS) $<
++ $(LIBTOOL) --mode=compile --tag=CC $(CC) -c $(CPPFLAGS) $(CFLAGS) $<
+
+
diff --git a/dev-libs/librep/librep-0.92.7-r2.ebuild b/dev-libs/librep/librep-0.92.7-r2.ebuild
new file mode 100644
index 000000000000..a5a9d61b116a
--- /dev/null
+++ b/dev-libs/librep/librep-0.92.7-r2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools elisp-common flag-o-matic
+
+DESCRIPTION="Shared library implementing a Lisp dialect"
+HOMEPAGE="https://sawfish.fandom.com/"
+SRC_URI="https://download.tuxfamily.org/librep/${PN}_${PV}.tar.xz"
+S="${WORKDIR}/${PN}_${PV}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="emacs gmp readline"
+
+RDEPEND="
+ >=sys-libs/gdbm-1.8.0:=
+ virtual/libcrypt:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+ gmp? ( dev-libs/gmp:= )
+ readline? ( sys-libs/readline:0= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-apps/texinfo
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.92.0-disable-elisp.patch
+ "${FILESDIR}"/${P}-libtool.patch
+ "${FILESDIR}"/${PN}-0.92.7-configure-clang16.patch
+)
+
+src_prepare() {
+ default
+
+ # The configure script is missing from this version.
+ eautoreconf
+}
+
+src_configure() {
+ # fix #570072 by restoring pre-GCC5 inline semantics
+ append-cflags -std=gnu89
+
+ econf \
+ $(use_with gmp) \
+ $(use_with readline) \
+ --libexecdir=/usr/$(get_libdir) \
+ --without-ffi
+}
+
+src_compile() {
+ default
+
+ if use emacs; then
+ elisp-compile rep-debugger.el || die "elisp-compile failed"
+ fi
+}
+
+src_install() {
+ default
+
+ find "${D}" -name '*.la' -delete || die
+ find "${D}/usr/share/man" -name '*.gz' -exec gunzip {} \; || die
+
+ dodoc doc/*
+
+ if use emacs; then
+ elisp-install ${PN} rep-debugger.{el,elc} || die "elisp-install failed"
+ elisp-site-file-install "${FILESDIR}/50${PN}-gentoo.el" \
+ || die "elisp-site-file-install failed"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}