commit:     6b958c3066d63c0aff06188e299454b7c3910390
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 12 17:52:18 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 12 18:16:24 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b958c30

sys-libs/slang: add 2.3.3

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-libs/slang/Manifest                          |  1 +
 sys-libs/slang/files/slang-2.3.3-slsh-libs.patch | 21 ++++++
 sys-libs/slang/slang-2.3.3.ebuild                | 83 ++++++++++++++++++++++++
 3 files changed, 105 insertions(+)

diff --git a/sys-libs/slang/Manifest b/sys-libs/slang/Manifest
index 026bb6d4230c..d258c25d37ec 100644
--- a/sys-libs/slang/Manifest
+++ b/sys-libs/slang/Manifest
@@ -1 +1,2 @@
 DIST slang-2.3.2.tar.bz2 1586720 BLAKE2B 
e923a431e6273f1783c40dc09b2e324ace22e41a163fd46dcb8ab16c9ef27f190651df8da24432edc75890b83cd95051a835d5e582385bb23e36cd8ae18e6d24
 SHA512 
35cdfe8af66dac62ee89cca60fa87ddbd02cae63b30d5c0e3786e77b1893c45697ace4ac7e82d9832b8a9ac342560bc35997674846c5022341481013e76f74b5
+DIST slang-2.3.3.tar.bz2 1646311 BLAKE2B 
2f304b25e807fe38b544479f4a6e98723816d08cda576177a270df736d7db8992a478f980333afc10a7bc0b5dc5508e49b33a13de02f0466f065efdfa3b7b351
 SHA512 
f882f09e3fcd53427de0f233c9fc3ab15497f2323007be9a084696c8cf810ffe2726cd003149e757df26198b390b9f8c1ff411dc6473513457bd0f94722f8490

diff --git a/sys-libs/slang/files/slang-2.3.3-slsh-libs.patch 
b/sys-libs/slang/files/slang-2.3.3-slsh-libs.patch
new file mode 100644
index 000000000000..15062ee7d420
--- /dev/null
+++ b/sys-libs/slang/files/slang-2.3.3-slsh-libs.patch
@@ -0,0 +1,21 @@
+Fix build issue:
+```
+make -j32 -j1 -C slsh slsh
+make: Entering directory 
'/var/tmp/portage/sys-libs/slang-2.3.3/work/slang-2.3.3-abi_x86_32.x86/slsh'
+x86_64-pc-linux-gnu-gcc -m32 amd64objs/slsh.o amd64objs/readline.o -o 
amd64objs/slsh -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 
-Wl,-z,pack-relative-relocs -fuse-ld=bfd -Wl,-O1 -Wl,--as-needed 
-Wl,-export-dynamic -L/usr/lib -Wl,-R/usr/lib -L/usr/lib -lslang -Wl,-O1 
-Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 
-Wl,-z,pack-relative-relocs -fuse-ld=bfd -Wl,-O1 -Wl,--as-needed -lreadline 
-ldl  -lm
+/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../x86_64-pc-linux-gnu/bin/ld.bfd:
 cannot find -lslang: No such file or directory
+collect2: error: ld returned 1 exit status
+make: *** [Makefile:95: amd64objs/slsh] Error 1
+make: Leaving directory 
'/var/tmp/portage/sys-libs/slang-2.3.3/work/slang-2.3.3-abi_x86_32.x86/slsh'
+```
+--- a/slsh/Makefile.in
++++ b/slsh/Makefile.in
+@@ -92,7 +92,7 @@ slsh: $(OBJDIR)/slsh
+ $(OBJDIR)/slsh_exe: $(OBJDIR)/slsh.o $(OBJDIR)/readline.o
+       $(CC) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh_exe 
$(LDFLAGS) $(DLINK_FLAGS) $(SRC_LIBS)
+ $(OBJDIR)/slsh: $(OBJDIR)/slsh.o $(OBJDIR)/readline.o
+-      $(CC) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh 
$(LDFLAGS) $(DLINK_FLAGS) $(INST_LIBS)
++      $(CC) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh 
$(LDFLAGS) $(DLINK_FLAGS) $(SRC_LIBS)
+ $(OBJDIR)/slsh.o: $(OBJDIR_TSTAMP) slsh.c slsh.h config.h Makefile
+       cd $(OBJDIR) && $(CC) $(SLANG_SRCINC) $(CFLAGS) -c $(DEFS) 
$(SRCDIR)/slsh.c
+ $(OBJDIR)/readline.o: $(OBJDIR_TSTAMP) readline.c slsh.h config.h Makefile

diff --git a/sys-libs/slang/slang-2.3.3.ebuild 
b/sys-libs/slang/slang-2.3.3.ebuild
new file mode 100644
index 000000000000..8332aeb6fc27
--- /dev/null
+++ b/sys-libs/slang/slang-2.3.3.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-minimal
+
+DESCRIPTION="Multi-platform library designed to allow a developer to create 
robust software"
+HOMEPAGE="https://www.jedsoft.org/slang/";
+
+if [[ ${PV} == *_pre* ]] ; then
+       MY_P="${PN}-pre${PV/_pre/-}"
+       SRC_URI="https://www.jedsoft.org/snapshots/${MY_P}.tar.gz";
+       S="${WORKDIR}/${MY_P}"
+else
+       SRC_URI="https://www.jedsoft.org/releases/${PN}/${P}.tar.bz2
+               https://www.jedsoft.org/releases/${PN}/old/${P}.tar.bz2";
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc 
~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~sparc-solaris ~sparc64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="cjk pcre png readline static-libs zlib"
+
+# ncurses for ncurses5-config to get terminfo directory
+RDEPEND="
+       sys-libs/ncurses:=
+       cjk? ( >=dev-libs/oniguruma-5.9.5:=[${MULTILIB_USEDEP}] )
+       pcre? ( >=dev-libs/libpcre-8.33-r1[${MULTILIB_USEDEP}] )
+       png? ( >=media-libs/libpng-1.6.10:=[${MULTILIB_USEDEP}] )
+       readline? ( >=sys-libs/readline-6.2_p5-r1:=[${MULTILIB_USEDEP}] )
+       zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+
+MAKEOPTS+=" -j1"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.3.3-slsh-libs.patch
+)
+
+src_prepare() {
+       default
+
+       # Avoid linking to -ltermcap race with some systems
+       sed -i -e '/^TERMCAP=/s:=.*:=:' configure || die
+       # We use the GNU linker also on Solaris
+       sed -i -e 's/-G -fPIC/-shared -fPIC/g' \
+               -e 's/-Wl,-h,/-Wl,-soname,/g' configure || die
+
+       # slang does not support configuration from another dir
+       multilib_copy_sources
+}
+
+multilib_src_configure() {
+       local myeconfargs=(
+               --with-readline=$(usex readline gnu slang)
+               $(use_with pcre)
+               $(use_with cjk onig)
+               $(use_with png)
+               $(use_with zlib z)
+       )
+
+       econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+       emake elf $(usex static-libs static '')
+       emake -C slsh slsh
+}
+
+multilib_src_install() {
+       emake DESTDIR="${D}" install $(usex static-libs install-static '')
+}
+
+multilib_src_install_all() {
+       rm -r "${ED}"/usr/share/doc/{slang,slsh} || die
+
+       local -a DOCS=( NEWS README *.txt doc/{,internal,text}/*.txt )
+       local -a HTML_DOCS=( doc/slangdoc.html slsh/doc/html/*.html )
+
+       einstalldocs
+}

Reply via email to