Github messages for voidlinux
 help / color / mirror / Atom feed
From: MarleDK <MarleDK@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] ncurses: add libtinfo.so
Date: Tue, 26 May 2020 08:36:55 +0200	[thread overview]
Message-ID: <20200526063655.UJ5ymgSGyt8CyPQq-Eqr73bCh8V3-I7bHXLTAZLdn6Q@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-21409@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1124 bytes --]

There is an updated pull request by MarleDK against master on the void-packages repository

https://github.com/MarleDK/void-packages master
https://github.com/void-linux/void-packages/pull/21409

ncurses: add libtinfo.so
This change add an extra library "libtinfo.so".
From the documentation:
    When building the ncurses library, organize this as two parts:  the
    curses library (libncurses) and the low-level terminfo library
    (libtinfo).  This is done to accommodate applications
    that use only
    the latter.  The terminfo library is about half
    the size of the total.
This is used by some programs, which will rather look at libtinfo, than
libncurses.

Stack, the Haskell build tool, uses this to determine what resolver it needs, and I can see multiple people have had problems with Stack not running out of the box, this should fix this, and also make Stack work with the latest version resolver version (A resolver is like a set of package versions including ghc, which is supposed to work together)

A patch file from https://github.com/void-linux/void-packages/pull/21409.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-master-21409.patch --]
[-- Type: text/x-diff, Size: 4430 bytes --]

From 291bbad645841c6d219ec877c60a7fd6123b0ecb Mon Sep 17 00:00:00 2001
From: Jakob Rydhof <jakobrydhof@gmail.com>
Date: Mon, 27 Apr 2020 20:36:04 +0200
Subject: [PATCH] ncurses: add libtinfo.so

This change adds libtinfo.so as a symlink to libncurses.so.
And some other relevant changes around it.
This is used by some programs, which will rather look at libtinfo, than
libncurses.
libncurses provides the same library functions as libtinfo as it is
currently being built, so this way both programs looking for libncurses
will work the same, and programs looking for libtinfo will also work.
---
 common/shlibs                  |  1 +
 srcpkgs/ncurses-libtinfo-devel |  1 +
 srcpkgs/ncurses-libtinfo-libs  |  1 +
 srcpkgs/ncurses/template       | 48 +++++++++++++++++++++++++++++++---
 4 files changed, 47 insertions(+), 4 deletions(-)
 create mode 120000 srcpkgs/ncurses-libtinfo-devel
 create mode 120000 srcpkgs/ncurses-libtinfo-libs

diff --git a/common/shlibs b/common/shlibs
index 4980ef58191..01adac33b8b 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -72,6 +72,7 @@ libncurses.so.6 ncurses-libs-6.0_1 ignore
 libncurses.so.5 ncurses-libs-6.0_1 ignore
 libncursesw.so.6 ncurses-libs-5.8_1 ignore
 libncursesw.so.5 ncurses-libs-5.8_1 ignore
+libtinfo.so.6 ncurses-libtinfo-libs-6.2_2
 libnetcdf.so.15 netcdf-4.7.0_1
 libformw.so.5 ncurses-libs-5.9_13 ignore
 libformw.so.6 ncurses-libs-5.8_1 ignore
diff --git a/srcpkgs/ncurses-libtinfo-devel b/srcpkgs/ncurses-libtinfo-devel
new file mode 120000
index 00000000000..ebb49ce34fe
--- /dev/null
+++ b/srcpkgs/ncurses-libtinfo-devel
@@ -0,0 +1 @@
+ncurses
\ No newline at end of file
diff --git a/srcpkgs/ncurses-libtinfo-libs b/srcpkgs/ncurses-libtinfo-libs
new file mode 120000
index 00000000000..ebb49ce34fe
--- /dev/null
+++ b/srcpkgs/ncurses-libtinfo-libs
@@ -0,0 +1 @@
+ncurses
\ No newline at end of file
diff --git a/srcpkgs/ncurses/template b/srcpkgs/ncurses/template
index 2e346236043..5c686db66b7 100644
--- a/srcpkgs/ncurses/template
+++ b/srcpkgs/ncurses/template
@@ -1,7 +1,7 @@
 # Template file for 'ncurses'
 pkgname=ncurses
 version=6.2
-revision=1
+revision=2
 bootstrap=yes
 configure_args="--enable-big-core"
 short_desc="System V Release 4.0 curses emulation library"
@@ -79,6 +79,16 @@ do_install() {
 	install -Dm755 lib/libncurses.so.${version} \
 		${DESTDIR}/usr/lib/libncurses.so.${version}
 
+	# Create libtinfo symlinks.
+	ln -sfr ${DESTDIR}/usr/lib/libncursesw.so \
+		${DESTDIR}/usr/lib/libtinfo.so
+	ln -sfr ${DESTDIR}/usr/lib/libncursesw.so.${version} \
+		${DESTDIR}/usr/lib/libtinfo.so.${version}
+	ln -sfr ${DESTDIR}/usr/lib/libtinfo.so.${version} \
+		${DESTDIR}/usr/lib/libtinfo.so.${version:0:1}
+	ln -sfr ${DESTDIR}/usr/lib/pkgconfig/ncursesw.pc \
+		${DESTDIR}/usr/lib/pkgconfig/tinfo.pc
+
 	# Create compat symlinks.
 	for f in ncurses form panel menu; do
 		ln -sfr ${DESTDIR}/usr/lib/lib${f}w.so.6 \
@@ -96,7 +106,10 @@ ncurses-libs_package() {
 	shlib_provides="libformw.so.5 libmenuw.so.5 libpanelw.so.5 libncursesw.so.5"
 	short_desc+=" -- shared libraries"
 	pkg_install() {
-		vmove "usr/lib/*.so.*"
+		vmove "usr/lib/libform*.so.*"
+		vmove "usr/lib/libmenu*.so.*"
+		vmove "usr/lib/libncurses*.so.*"
+		vmove "usr/lib/libpanel*.so.*"
 	}
 }
 ncurses-devel_package() {
@@ -105,9 +118,17 @@ ncurses-devel_package() {
 	pkg_install() {
 		vmove "usr/bin/ncurses*-config"
 		vmove usr/include
-		vmove usr/lib/pkgconfig
+		vmove usr/lib/pkgconfig/ncursesw.pc
+		vmove usr/lib/pkgconfig/formw.pc
+		vmove usr/lib/pkgconfig/menuw.pc
+		vmove usr/lib/pkgconfig/ncurses++w.pc
+		vmove usr/lib/pkgconfig/panelw.pc
 		vmove "usr/lib/*.a"
-		vmove "usr/lib/*.so"
+		vmove "usr/lib/libcurses*.so"
+		vmove "usr/lib/libform*.so"
+		vmove "usr/lib/libmenu*.so"
+		vmove "usr/lib/libncurses*.so"
+		vmove "usr/lib/libpanel*.so"
 		vmove usr/share/man/man3
 		vmove usr/share/man/man1/ncursesw6-config.1
 	}
@@ -130,3 +151,22 @@ ncurses-term_package() {
 		vmove usr/share/terminfo
 	}
 }
+
+ncurses-libtinfo-libs_package() {
+	depends="ncurses-libs-${version}_${revision}"
+	short_desc+=" - libtinfo.so symlink"
+	archs=noarch
+	pkg_install() {
+		vmove "usr/lib/libtinfo*.so.*"
+	}
+}
+
+ncurses-libtinfo-devel_package() {
+	depends="ncurses-devel-${version}_${revision}"
+	depends+=" ncurses-libtinfo-libs-${version}_${revision}"
+	archs=noarch
+	pkg_install() {
+		vmove usr/lib/libtinfo.so
+		vmove "usr/lib/pkgconfig/tinfo.pc"
+	}
+}

  parent reply	other threads:[~2020-05-26  6:36 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-27 18:59 [PR PATCH] " MarleDK
2020-04-27 19:22 ` [PR PATCH] [Updated] " MarleDK
2020-04-27 22:51 ` Duncaen
2020-04-28  9:34 ` MarleDK
2020-04-28 11:10 ` pullmoll
2020-04-28 11:16 ` pullmoll
2020-04-28 18:23 ` MarleDK
2020-05-15 21:12 ` pullmoll
2020-05-25  9:03 ` [PR PATCH] [Updated] " MarleDK
2020-05-25  9:06 ` MarleDK
2020-05-26  6:36 ` MarleDK [this message]
2020-05-27  5:46 ` [PR PATCH] [Updated] " MarleDK
2020-05-27  5:48 ` MarleDK
2020-05-27 14:29 ` [PR PATCH] [Merged]: " pullmoll

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200526063655.UJ5ymgSGyt8CyPQq-Eqr73bCh8V3-I7bHXLTAZLdn6Q@z \
    --to=marledk@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).