diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
| commit | b590c8d7572b727d565cc0b8ff660d43569845de (patch) | |
| tree | 06f7a4102ea4e845df8b66660f252920d52952f9 /dev-libs/libtecla | |
| parent | 24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff) | |
| download | baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip | |
Adding metadata
Diffstat (limited to 'dev-libs/libtecla')
| -rw-r--r-- | dev-libs/libtecla/Manifest | 1 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.1-install.patch | 17 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.1-no-strip.patch | 13 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.1-prll-install.patch | 50 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.3-configure-clang16.patch | 12 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.3-ldflags.patch | 37 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.3-prll-build.patch | 9 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.3-secure-runpath.patch | 26 | ||||
| -rw-r--r-- | dev-libs/libtecla/files/libtecla-1.6.3-static-libs.patch | 25 | ||||
| -rw-r--r-- | dev-libs/libtecla/libtecla-1.6.3-r1.ebuild | 55 | ||||
| -rw-r--r-- | dev-libs/libtecla/metadata.xml | 19 |
11 files changed, 264 insertions, 0 deletions
diff --git a/dev-libs/libtecla/Manifest b/dev-libs/libtecla/Manifest new file mode 100644 index 000000000000..829dcef6241d --- /dev/null +++ b/dev-libs/libtecla/Manifest @@ -0,0 +1 @@ +DIST libtecla-1.6.3.tar.gz 531499 BLAKE2B 6cc585ce104a60138c8b1950f455be845f3db014f1b56585a6ff8c05101e187a3f9deb7546a24e28d8797a49c426606ff50ccb49065ec2dfe4999537c66579ba SHA512 e92da3e52f1e06f731378ea8d4529865526b7816f92c3cd41a24ee8b629453564ec1995cf528928dd0673826cdd88f57e057ec0641f9c00fc9ebb255c725df6b diff --git a/dev-libs/libtecla/files/libtecla-1.6.1-install.patch b/dev-libs/libtecla/files/libtecla-1.6.1-install.patch new file mode 100644 index 000000000000..769b98c6abb5 --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.1-install.patch @@ -0,0 +1,17 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -15,10 +15,10 @@ + + prefix=@prefix@ + exec_prefix=@exec_prefix@ +-LIBDIR=@libdir@ +-INCDIR=@includedir@ +-MANDIR=@mandir@ +-BINDIR=@bindir@ ++LIBDIR=$(DESTDIR)/@libdir@ ++INCDIR=$(DESTDIR)/@includedir@ ++MANDIR=$(DESTDIR)/@mandir@ ++BINDIR=$(DESTDIR)/@bindir@ + + # Which C compiler do you want to use? + diff --git a/dev-libs/libtecla/files/libtecla-1.6.1-no-strip.patch b/dev-libs/libtecla/files/libtecla-1.6.1-no-strip.patch new file mode 100644 index 000000000000..7c6461bb5060 --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.1-no-strip.patch @@ -0,0 +1,13 @@ +# prevent build system from stripping files (bug #239877). + +--- a/Makefile.in ++++ b/Makefile.in +@@ -260,7 +260,7 @@ + install_bin: $(BINDIR) $(PROGRAMS) $(PROGRAMS_R) + progs="$(PROGRAMS) $(PROGRAMS_R)"; \ + for prog in $$progs; do \ +- $(srcdir)/install-sh -c -m 755 -s $$prog $(BINDIR)/; \ ++ $(srcdir)/install-sh -c -m 755 $$prog $(BINDIR)/; \ + done + + install: install_lib install_inc install_man install_bin diff --git a/dev-libs/libtecla/files/libtecla-1.6.1-prll-install.patch b/dev-libs/libtecla/files/libtecla-1.6.1-prll-install.patch new file mode 100644 index 000000000000..467cde20c2de --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.1-prll-install.patch @@ -0,0 +1,50 @@ + Makefile.in | 10 +++++----- + 1 files changed, 5 insertions(+), 5 deletions(-) + +--- a/Makefile.in ++++ b/Makefile.in +@@ -217,7 +217,7 @@ install_inc: $(INCDIR) + + install_man: $(MANDIR) libr_man func_man prog_man misc_man file_man + +-libr_man: ++libr_man: $(MANDIR) + if test "@MAKE_MAN_PAGES@"_ = "yes"_; then \ + for template in man/libr/*.in; do \ + page=`basename "$$template" .in`; \ +@@ -225,7 +225,7 @@ libr_man: + done ; \ + fi + +-func_man: ++func_man: $(MANDIR) + if test "@MAKE_MAN_PAGES@"_ = "yes"_; then \ + for template in man/func/*.in; do \ + page=`basename "$$template" .in`; \ +@@ -233,7 +233,7 @@ func_man: + done ; \ + fi + +-prog_man: ++prog_man: $(MANDIR) + if test "@MAKE_MAN_PAGES@"_ = "yes"_; then \ + for template in man/prog/*.in; do \ + page=`basename "$$template" .in`; \ +@@ -241,7 +241,7 @@ prog_man: + done ; \ + fi + +-misc_man: ++misc_man: $(MANDIR) + if test "@MAKE_MAN_PAGES@"_ = "yes"_; then \ + for template in man/misc/*.in; do \ + page=`basename "$$template" .in`; \ +@@ -249,7 +249,7 @@ misc_man: + done ; \ + fi + +-file_man: ++file_man: $(MANDIR) + if test "@MAKE_MAN_PAGES@"_ = "yes"_; then \ + for template in man/file/*.in; do \ + page=`basename "$$template" .in`; \ diff --git a/dev-libs/libtecla/files/libtecla-1.6.3-configure-clang16.patch b/dev-libs/libtecla/files/libtecla-1.6.3-configure-clang16.patch new file mode 100644 index 000000000000..9a8a67df6f96 --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.3-configure-clang16.patch @@ -0,0 +1,12 @@ +--- a/configure.in ++++ b/configure.in +@@ -94,6 +94,9 @@ dnl statement. + + AC_CANONICAL_SYSTEM + ++dnl Needed for ptsname and friends. ++AC_USE_SYSTEM_EXTENSIONS ++ + dnl In early versions of Solaris, some libraries are in /usr/ccs/lib, + dnl where gcc doesn't look. The tests below for the curses library + dnl would thus fail without this directory being added to the search diff --git a/dev-libs/libtecla/files/libtecla-1.6.3-ldflags.patch b/dev-libs/libtecla/files/libtecla-1.6.3-ldflags.patch new file mode 100644 index 000000000000..67dcb3e71daa --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.3-ldflags.patch @@ -0,0 +1,37 @@ +--- a/Makefile.rules ++++ b/Makefile.rules +@@ -54,19 +54,19 @@ + demos: $(DEMO_PROGS) + + demo$(SUFFIX): $(OBJDIR)/demo.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/demo.o -L. -ltecla$(SUFFIX) $(LIBS) + + demo2$(SUFFIX): $(OBJDIR)/demo2.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/demo2.o -L. -ltecla$(SUFFIX) $(LIBS) + + demo3$(SUFFIX): $(OBJDIR)/demo3.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/demo3.o -L. -ltecla$(SUFFIX) $(LIBS) + + enhance$(SUFFIX): $(OBJDIR)/enhance.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/enhance.o -L. -ltecla$(SUFFIX) $(LIBS) + + #----------------------------------------------------------------------- +--- a/configure.in ++++ b/configure.in +@@ -490,7 +490,7 @@ + VERSION_OPT='' + fi + +- LINK_SHARED="$LD"' -o $$@ -soname libtecla$$(SUFFIX).so.'${MAJOR_VER}' -shared '$VERSION_OPT' $$(LIB_OBJECTS) $$(LIBS) -lc' ++ LINK_SHARED="$LD"' $$(LFLAGS) -o $$@ -soname libtecla$$(SUFFIX).so.'${MAJOR_VER}' -shared '$VERSION_OPT' $$(LIB_OBJECTS) $$(LIBS) -lc' + SHARED_CFLAGS="-fpic" + + dnl Reenable the inclusion of symbols which get undefined when POSIX_C_SOURCE diff --git a/dev-libs/libtecla/files/libtecla-1.6.3-prll-build.patch b/dev-libs/libtecla/files/libtecla-1.6.3-prll-build.patch new file mode 100644 index 000000000000..41e7b628b359 --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.3-prll-build.patch @@ -0,0 +1,9 @@ +--- a/Makefile.rules ++++ b/Makefile.rules +@@ -165,5 +165,5 @@ + # Include file dependencies. + #----------------------------------------------------------------------- + +-$(OBJDIR)/keytab.h: $(srcdir)/keytab.h $(srcdir)/libtecla.h ++$(OBJDIR)/keytab.h: $(srcdir)/keytab.h $(srcdir)/libtecla.h $(OBJDIR) + cp $(srcdir)/keytab.h $@ diff --git a/dev-libs/libtecla/files/libtecla-1.6.3-secure-runpath.patch b/dev-libs/libtecla/files/libtecla-1.6.3-secure-runpath.patch new file mode 100644 index 000000000000..01552220e24a --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.3-secure-runpath.patch @@ -0,0 +1,26 @@ +--- a/Makefile.rules ++++ b/Makefile.rules +@@ -54,19 +54,19 @@ + demos: $(DEMO_PROGS) + + demo$(SUFFIX): $(OBJDIR)/demo.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR)" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/demo.o -L. -ltecla$(SUFFIX) $(LIBS) + + demo2$(SUFFIX): $(OBJDIR)/demo2.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR)" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/demo2.o -L. -ltecla$(SUFFIX) $(LIBS) + + demo3$(SUFFIX): $(OBJDIR)/demo3.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR)" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/demo3.o -L. -ltecla$(SUFFIX) $(LIBS) + + enhance$(SUFFIX): $(OBJDIR)/enhance.o $(TARGETS) +- LD_RUN_PATH="$(LIBDIR):$$LD_RUN_PATH:`pwd`" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ ++ LD_RUN_PATH="$(LIBDIR)" $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(OBJDIR)/enhance.o -L. -ltecla$(SUFFIX) $(LIBS) + + #----------------------------------------------------------------------- diff --git a/dev-libs/libtecla/files/libtecla-1.6.3-static-libs.patch b/dev-libs/libtecla/files/libtecla-1.6.3-static-libs.patch new file mode 100644 index 000000000000..0d7c14b6c172 --- /dev/null +++ b/dev-libs/libtecla/files/libtecla-1.6.3-static-libs.patch @@ -0,0 +1,25 @@ +--- a/configure.in ++++ b/configure.in +@@ -426,6 +426,9 @@ + AC_ARG_WITH(file-system, AC_HELP_STRING([--with-file-system], [Does the target have a filesystem (default=yes)]), + AC_DEFINE(WITHOUT_FILE_SYSTEM), ) + ++dnl Some users may be not interested in static libs ++AC_ARG_ENABLE([static-libs], AC_HELP_STRING([--enable-static-libs], [Enable static libs if shared libs will be also build (default=yes)])) ++ + dnl The following bourne shell case statement is where system + dnl dependencies can be added. In particular, if your system supports + dnl shared library creation, the following switch is the place to +@@ -571,7 +574,11 @@ + dnl libraries to the list of libraries to be built. + + if test "$LINK_SHARED"_ != "_"; then +- TARGET_LIBS="static shared" ++ if test "$enable_static_libs"_ != "_"; then ++ TARGET_LIBS="static shared" ++ else ++ TARGET_LIBS="shared" ++ fi + else + TARGET_LIBS="static" + LINK_SHARED="@:" diff --git a/dev-libs/libtecla/libtecla-1.6.3-r1.ebuild b/dev-libs/libtecla/libtecla-1.6.3-r1.ebuild new file mode 100644 index 000000000000..482a77d91dad --- /dev/null +++ b/dev-libs/libtecla/libtecla-1.6.3-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +DESCRIPTION="Tecla command-line editing library" +HOMEPAGE="https://www.astro.caltech.edu/~mcs/tecla/" +SRC_URI="https://www.astro.caltech.edu/~mcs/tecla/${P}.tar.gz" +S="${WORKDIR}/libtecla" + +LICENSE="icu" +SLOT="0" +KEYWORDS="amd64 ~arm ppc ~riscv x86" + +DEPEND="sys-libs/ncurses:=" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.6.1-install.patch + "${FILESDIR}"/${PN}-1.6.1-no-strip.patch + "${FILESDIR}"/${PN}-1.6.3-ldflags.patch + "${FILESDIR}"/${PN}-1.6.3-prll-build.patch + "${FILESDIR}"/${PN}-1.6.1-prll-install.patch + "${FILESDIR}"/${PN}-1.6.3-static-libs.patch + "${FILESDIR}"/${PN}-1.6.3-secure-runpath.patch + "${FILESDIR}"/${PN}-1.6.3-configure-clang16.patch +) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + # ld: <artificial>:(.text.startup+0x6c): undefined reference to `libtecla_version' + # + # For some mysterious reason this is running $LD directly to link the + # shared library rather than use the compiler as the linker driver. As a + # result -flto is effectively a no-op *at link time* and the shared library + # contains... nothing. Because it didn't process the bytecode. Of course, + # nothing can then link to it. + # + # https://bugs.gentoo.org/772014 + filter-lto + default +} + +src_compile() { + emake \ + OPT="" \ + LDFLAGS="${LDFLAGS}" \ + LFLAGS="$(raw-ldflags)" +} diff --git a/dev-libs/libtecla/metadata.xml b/dev-libs/libtecla/metadata.xml new file mode 100644 index 000000000000..3895f98d7533 --- /dev/null +++ b/dev-libs/libtecla/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>sci@gentoo.org</email> + <name>Gentoo Science Project</name> + </maintainer> + <longdescription lang="en"> + The tecla library provides UNIX and LINUX programs with interactive + command line editing facilities, similar to those of the UNIX tcsh + shell. In addition to simple command-line editing, it supports + recall of previously entered command lines, TAB completion of file + names or other tokens, and in-line wild-card expansion of + filenames. The internal functions which perform file-name completion + and wild-card expansion are also available externally for optional + use by programs. + </longdescription> + <origin>baldeagleos-repo</origin> +</pkgmetadata> |
