From b9946791e41b8f3b1253711f7e1d034a82abe91b Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Sat, 26 Oct 2024 16:43:30 +0200 Subject: [PATCH] ncurses6: bump version only build with wide-characters and link legacy libs to their wide-characters counterparts. --- ....4_20230520.recipe => ncurses6-6.5.recipe} | 60 ++++++++++++------- ...rses-6.4.patchset => ncurses-6.5.patchset} | 0 2 files changed, 37 insertions(+), 23 deletions(-) rename sys-libs/ncurses/{ncurses6-6.4_20230520.recipe => ncurses6-6.5.recipe} (85%) rename sys-libs/ncurses/patches/{ncurses-6.4.patchset => ncurses-6.5.patchset} (100%) diff --git a/sys-libs/ncurses/ncurses6-6.4_20230520.recipe b/sys-libs/ncurses/ncurses6-6.5.recipe similarity index 85% rename from sys-libs/ncurses/ncurses6-6.4_20230520.recipe rename to sys-libs/ncurses/ncurses6-6.5.recipe index 6e9a46349..c5d385b21 100644 --- a/sys-libs/ncurses/ncurses6-6.4_20230520.recipe +++ b/sys-libs/ncurses/ncurses6-6.5.recipe @@ -14,20 +14,20 @@ terminfo compiler tic, a decompiler infocmp, clear, tput, tset, and a \ termcap conversion tool captoinfo. Full manual pages are provided for the \ library and tools." HOMEPAGE="https://invisible-island.net/ncurses/" -COPYRIGHT="2018-2021,2022 Thomas E. Dickey +COPYRIGHT="2018-2023,2024 Thomas E. Dickey 1998-2017,2018 Free Software Foundation, Inc." LICENSE="MIT" REVISION="1" srcVersion=${portVersion//./_} SOURCE_URI="https://github.com/ThomasDickey/ncurses-snapshots/archive/refs/tags/v$srcVersion.tar.gz" -CHECKSUM_SHA256="a82f1471562537f0df63704540172f0f3d0f0830f4fda4573015b1e3bf3a4d5b" +CHECKSUM_SHA256="1600526b279b0acf42432fe31f6dfa3824a4da4262168bf8b3637660ff8c07c7" SOURCE_DIR="ncurses-snapshots-$srcVersion" -PATCHES="ncurses-6.4.patchset" +PATCHES="ncurses-6.5.patchset" ARCHITECTURES="all" SECONDARY_ARCHITECTURES="x86" -libVersion="6.4.0" +libVersion="6.5.0" libVersionCompat="$libVersion compat >= 6" portVersionCompat="$portVersion compat >= 6" @@ -177,47 +177,61 @@ doBuild() BUILD() { - # Unfortunately building only works in the source directory. So we build - # two times -- once without and once with wide-char support -- installing in - # temporary directories from which we copy to the actual installation - # directory in INSTALL(). - # For the secondary architecture we don't want the programs nor the # terminfo DB. The main package will depend on the primary package which # provides all this. - local withoutProgramArgs + local configureArgs if [ -n "$secondaryArchSuffix" ]; then - withoutProgramArgs="--without-progs" + configureArgs="--without-progs" fi - doBuild build-nowidec $withoutProgramArgs - doBuild build-widec --enable-widec --libs-only + runConfigure \ + --omit-dirs "dataRootDir docDir" ./configure \ + --disable-relink \ + --disable-root-access \ + --disable-root-environ \ + --disable-setuid-environ \ + --disable-static \ + --enable-hard-tabs \ + --enable-pc-files \ + --enable-symlinks \ + --enable-termcap \ + --with-libtool \ + --without-ada \ + --without-tests \ + --with-pkg-config-libdir=$developLibDir/pkgconfig \ + $configureArgs + make $jobArgs } INSTALL() { - cp -ra build-nowidec/$prefix/. $prefix - cp -ra build-widec/$prefix/. $prefix + make install # remove libtool files rm $libDir/lib*.la - # copy pkg-config files - mkdir -p $libDir/pkgconfig - cp build-*/*.pc $libDir/pkgconfig - # prepare develop/lib prepareInstalledDevelLibs \ - libform libmenu libncurses libncurses++ libpanel \ libformw libmenuw libncursesw libncurses++w libpanelw fixPkgconfig - # fix ncurses[w]6-config - fixDevelopLibDirReferences $binDir/ncurses6-config $binDir/ncursesw6-config + # fix ncursesw6-config + fixDevelopLibDirReferences $binDir/ncursesw6-config + + cd $developLibDir + for lib in form menu ncurses ncurses++ panel; do + ln -sn lib${lib}w.so lib${lib}.so + ln -sn ${lib}w.pc pkgconfig/${lib}.pc + done + cd -; cd $libDir + for lib in form menu ncurses ncurses++ panel; do + ln -sn lib${lib}w.so.6 lib${lib}.so.6 + done + cd - # devel package packageEntries devel \ - $binDir/ncurses6-config \ $binDir/ncursesw6-config \ $developDir \ $manDir/man3 diff --git a/sys-libs/ncurses/patches/ncurses-6.4.patchset b/sys-libs/ncurses/patches/ncurses-6.5.patchset similarity index 100% rename from sys-libs/ncurses/patches/ncurses-6.4.patchset rename to sys-libs/ncurses/patches/ncurses-6.5.patchset