ncurses5: build from ncurses6 sources

It's possible to build ncurses 6 using the ncurses 5 ABI. This allows to
get the old ghc binary up and running.
This commit is contained in:
Adrien Destugues
2020-12-27 19:10:49 +01:00
parent ba055a9b69
commit 772afa03bf
4 changed files with 211 additions and 347 deletions

View File

@@ -1,206 +0,0 @@
SUMMARY="New curses library"
DESCRIPTION="The Ncurses (new curses) library is a free software emulation \
of curses in System V Release 4.0, and more. It uses Terminfo format, \
supports pads and color and multiple highlights and forms characters and \
function-key mapping, and has all the other SVr4-curses enhancements over \
BSD Curses.
The Ncurses code was developed under GNU/Linux. It has been in use for some \
time with OpenBSD as the system curses library, and on FreeBSD and NetBSD as \
an external package. It should port easily to any ANSI/POSIX-conforming UNIX. \
It has even been ported to OS/2 Warp!
The distribution includes the library and support utilities, including a \
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="http://www.gnu.org/software/ncurses/ncurses.html"
COPYRIGHT="1998-2011 Free Software Foundation, Inc."
LICENSE="MIT"
REVISION="13"
SOURCE_URI="http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz"
CHECKSUM_SHA256="9046298fb440324c9d4135ecea7879ffed8546dd1b58e59430ea07a4633f563b"
PATCHES="ncurses-5.9.patchset"
# Do not re-activate this package unless it is absolutely necessary. By default,
# haikuporter picks the lowest possible version of a package to satisfy a depen-
# dency, so this gets pulled in before ncurses6.
ARCHITECTURES="?x86_gcc2 ?x86 ?x86_64 ?arm"
SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86"
PROVIDES="
ncurses$secondaryArchSuffix = $portVersion compat >= 5
lib:libform$secondaryArchSuffix = $portVersion compat >= 5
lib:libformw$secondaryArchSuffix = $portVersion compat >= 5
lib:libmenu$secondaryArchSuffix = $portVersion compat >= 5
lib:libmenuw$secondaryArchSuffix = $portVersion compat >= 5
lib:libncurses$secondaryArchSuffix = $portVersion compat >= 5
lib:libncursesw$secondaryArchSuffix = $portVersion compat >= 5
lib:libncurses++$secondaryArchSuffix = $portVersion compat >= 5
lib:libncurses++w$secondaryArchSuffix = $portVersion compat >= 5
lib:libpanel$secondaryArchSuffix = $portVersion compat >= 5
lib:libpanelw$secondaryArchSuffix = $portVersion compat >= 5
"
if [ -z "$secondaryArchSuffix" ]; then
PROVIDES="$PROVIDES
cmd:captoinfo = $portVersion compat >= 5
cmd:clear = $portVersion compat >= 5
cmd:infocmp = $portVersion compat >= 5
cmd:infotocap = $portVersion compat >= 5
cmd:reset = $portVersion compat >= 5
cmd:tabs = $portVersion compat >= 5
cmd:tic = $portVersion compat >= 5
cmd:toe = $portVersion compat >= 5
cmd:tput = $portVersion compat >= 5
cmd:tset = $portVersion compat >= 5
"
fi
REQUIRES="
haiku$secondaryArchSuffix
"
if [ -n "$secondaryArchSuffix" ]; then
REQUIRES="$REQUIRES
ncurses == $portVersion base
"
fi
PROVIDES_devel="
ncurses${secondaryArchSuffix}_devel = $portVersion compat >= 5
cmd:ncurses5_config${secondaryArchSuffix} = $portVersion compat >= 5
cmd:ncursesw5_config${secondaryArchSuffix} = $portVersion compat >= 5
devel:libform${secondaryArchSuffix} = $portVersion compat >= 5
devel:libformw${secondaryArchSuffix} = $portVersion compat >= 5
devel:libmenu${secondaryArchSuffix} = $portVersion compat >= 5
devel:libmenuw${secondaryArchSuffix} = $portVersion compat >= 5
devel:libncurses${secondaryArchSuffix} = $portVersion compat >= 5
devel:libncursesw${secondaryArchSuffix} = $portVersion compat >= 5
devel:libncurses++${secondaryArchSuffix} = $portVersion compat >= 5
devel:libncurses++w${secondaryArchSuffix} = $portVersion compat >= 5
devel:libpanel${secondaryArchSuffix} = $portVersion compat >= 5
devel:libpanelw${secondaryArchSuffix} = $portVersion compat >= 5
"
REQUIRES_devel="
ncurses${secondaryArchSuffix} == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:grep
cmd:ld$secondaryArchSuffix
cmd:libtool
cmd:make
cmd:sed
"
doBuild()
{
if [ $# -lt 1 ]; then
echo >&2 "Usage: doBuild <targetDir> [ <configureFlags> ... ]"
exit 1
fi
targetDir=$(pwd)/$1
shift 1
# Parse additional arguments. "--libs-only" means we only want the
# libraries, nothing else. "--without-progs" means no programs and no
# terminfo DB (requires tic).
local noData
local libsOnly
local configureArgs
local arg
for arg in $@; do
case "$arg" in
--libs-only)
noData=1
libsOnly=1
arg="--without-progs"
;;
--without-progs)
noData=1
;;
esac
configureArgs="$configureArgs $arg"
done
rm -rf $targetDir
mkdir $targetDir
runConfigure \
--omit-dirs "dataRootDir docDir" ./configure \
--with-libtool \
--enable-termcap \
--enable-hard-tabs \
$configureArgs
make $jobArgs
if [ -z "$noData" ]; then
# We need LIBRARY_PATH to include the library installation directory,
# since the installation process for the terminfo database will run tic
# and the built-in rpath doesn't consider the DESTDIR we're using.
LIBRARY_PATH="$targetDir/$prefix/lib:$LIBRARY_PATH" \
make install DESTDIR=$targetDir
else
make install.libs DESTDIR=$targetDir
if [ -z "$libsOnly" ]; then
make install.includes DESTDIR=$targetDir
make install.man DESTDIR=$targetDir
fi
fi
# clean up for the next build
make clean
}
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
if [ -n "$secondaryArchSuffix" ]; then
withoutProgramArgs="--without-progs"
fi
doBuild build-nowidec $withoutProgramArgs
doBuild build-widec --enable-widec --libs-only
}
INSTALL()
{
cp -ra build-nowidec/$prefix/. $prefix
cp -ra build-widec/$prefix/. $prefix
# remove libtool files
rm $libDir/lib*.la
# prepare develop/lib
prepareInstalledDevelLibs \
libform libmenu libncurses libncurses++ libpanel \
libformw libmenuw libncursesw libncurses++w libpanelw
# fix ncurses[w]5-config
fixDevelopLibDirReferences $binDir/ncurses5-config $binDir/ncursesw5-config
# devel package
packageEntries devel \
$binDir/ncurses5-config \
$binDir/ncursesw5-config \
$developDir \
$manDir/man3
# For the secondary architecture package clean up stuff we don't need, since
# we make it depend on the primary architecture package.
if [ -n "$secondaryArchSuffix" ]; then
rm -rf $binDir
rm -rf $documentationDir
fi
}

View File

@@ -1,141 +0,0 @@
From 37e997f3fcf44261e3af16289f7412f63c7060d8 Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Mon, 8 Jul 2013 15:51:09 +0200
Subject: progs/Makefile.in: make sure the right programs are installed
The Makefile installed the libtool wrapper scripts which are only meant
to be used for the build.
diff --git a/progs/Makefile.in b/progs/Makefile.in
index bdb8a0f..f3170f1 100644
--- a/progs/Makefile.in
+++ b/progs/Makefile.in
@@ -188,19 +188,19 @@ transform.h :
echo "#endif /* __TRANSFORM_H */" >>$@
install.progs: $(AUTO_SRC) $(PROGS) $(DESTDIR)$(bindir)
-@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) tic$x $(DESTDIR)$(bindir)/$(actual_tic)
-@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) toe$x $(DESTDIR)$(bindir)/$(actual_toe)
+@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tic$x $(DESTDIR)$(bindir)/$(actual_tic)
+@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/toe$x $(DESTDIR)$(bindir)/$(actual_toe)
@MAKE_TERMINFO@ @echo "linking $(actual_infotocap) to $(actual_tic)"
@MAKE_TERMINFO@ -@rm -f $(DESTDIR)$(bindir)/$(actual_infotocap)
@MAKE_TERMINFO@ (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_infotocap))
@MAKE_TERMINFO@ @echo "linking $(actual_captoinfo) to $(actual_tic)"
@MAKE_TERMINFO@ -@rm -f $(DESTDIR)$(bindir)/$(actual_captoinfo)
@MAKE_TERMINFO@ (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_captoinfo))
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) infocmp$x $(DESTDIR)$(bindir)/$(actual_infocmp)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) clear$x $(DESTDIR)$(bindir)/$(actual_clear)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) tabs$x $(DESTDIR)$(bindir)/$(actual_tabs)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) tput$x $(DESTDIR)$(bindir)/$(actual_tput)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) tset$x $(DESTDIR)$(bindir)/$(actual_tset)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/infocmp$x $(DESTDIR)$(bindir)/$(actual_infocmp)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/clear$x $(DESTDIR)$(bindir)/$(actual_clear)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tabs$x $(DESTDIR)$(bindir)/$(actual_tabs)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tput$x $(DESTDIR)$(bindir)/$(actual_tput)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tset$x $(DESTDIR)$(bindir)/$(actual_tset)
@echo "linking $(actual_reset) to $(actual_tset)"
-@rm -f $(DESTDIR)$(bindir)/$(actual_reset)
(cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tset) $(actual_reset))
--
2.16.4
From da0fc621f822b1a96893382c96671a6107d4c8fc Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Sat, 11 Aug 2018 15:25:13 +0200
Subject: applying patch ncurses-5.9-gcc-5.patch
diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh
index 66ae295..b92f22b 100755
--- a/ncurses/base/MKlib_gen.sh
+++ b/ncurses/base/MKlib_gen.sh
@@ -437,11 +437,22 @@ sed -n -f $ED1 \
-e 's/gen_$//' \
-e 's/ / /g' >>$TMP
+cat >$ED1 <<EOF
+s/ / /g
+s/^ //
+s/ $//
+s/P_NCURSES_BOOL/NCURSES_BOOL/g
+EOF
+
+# A patch discussed here:
+# https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
+# introduces spurious #line markers. Work around that by ignoring the system's
+# attempt to define "bool" and using our own symbol here.
+sed -e 's/bool/P_NCURSES_BOOL/g' $TMP > $ED2
+cat $ED2 >$TMP
+
$preprocessor $TMP 2>/dev/null \
-| sed \
- -e 's/ / /g' \
- -e 's/^ //' \
- -e 's/_Bool/NCURSES_BOOL/g' \
+| sed -f $ED1 \
| $AWK -f $AW2 \
| sed -f $ED3 \
| sed \
--
2.16.4
From f3bd12f6cbc6838c00758b2a0d2d57223cc2d429 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Sat, 11 Aug 2018 16:23:27 +0200
Subject: gcc7 build fix.
diff --git a/c++/cursesf.h b/c++/cursesf.h
index 70a30c3..21eae51 100644
--- a/c++/cursesf.h
+++ b/c++/cursesf.h
@@ -381,7 +381,7 @@ protected:
uptr->m_user = user;
}
- inline void *get_user() {
+ inline void *get_user() const {
UserHook* uptr = reinterpret_cast<UserHook*>(::form_userptr (form));
assert (uptr != 0 && uptr->m_back==this && uptr->m_owner==form);
return uptr->m_user;
diff --git a/c++/cursesm.h b/c++/cursesm.h
index d9c2273..f2d9466 100644
--- a/c++/cursesm.h
+++ b/c++/cursesm.h
@@ -242,7 +242,7 @@ protected:
uptr->m_user = user;
}
- inline void *get_user() {
+ inline void *get_user() const {
UserHook* uptr = STATIC_CAST(UserHook*)(::menu_userptr (menu));
assert (uptr != 0 && uptr->m_back==this && uptr->m_owner==menu);
return uptr->m_user;
diff --git a/c++/cursesp.h b/c++/cursesp.h
index 9b63d6d..ca8f283 100644
--- a/c++/cursesp.h
+++ b/c++/cursesp.h
@@ -58,7 +58,7 @@ private:
const PANEL* m_owner; // the panel itself
} UserHook;
- inline UserHook *UserPointer()
+ inline UserHook *UserPointer() const
{
UserHook* uptr = reinterpret_cast<UserHook*>(
const_cast<void *>(::panel_userptr (p)));
@@ -77,7 +77,7 @@ protected:
}
// Set the user pointer of the panel.
- void *get_user()
+ void *get_user() const
{
UserHook* uptr = UserPointer();
void *result = 0;
--
2.16.4

View File

@@ -0,0 +1,122 @@
SUMMARY="New curses library"
DESCRIPTION="The Ncurses (new curses) library is a free software emulation of \
curses in System V Release 4.0, and more. It uses Terminfo format, supports \
pads and color and multiple highlights and forms characters and function-key \
mapping, and has all the other SYSV-curses enhancements over BSD Curses.
The ncurses code was developed under GNU/Linux. It has been in use for some \
time with OpenBSD as the system curses library, and on FreeBSD and NetBSD as \
an external package. It should port easily to any ANSI/POSIX-conforming UNIX. \
It has even been ported to OS/2 Warp!
This packages provides ncurses 5 ABI ocmpatibility and should not be used for \
new software."
HOMEPAGE="https://www.gnu.org/software/ncurses/ncurses.html"
COPYRIGHT="1998-2018 Free Software Foundation, Inc."
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://ftpmirror.gnu.org/ncurses/ncurses-$portVersion.tar.gz
https://ftp.gnu.org/gnu/ncurses/ncurses-$portVersion.tar.gz"
CHECKSUM_SHA256="30306e0c76e0f9f1f0de987cf1c82a5c21e1ce6568b9227f7da5b71cbea86c9d"
SOURCE_DIR="ncurses-$portVersion"
PATCHES="ncurses-$portVersion.patchset"
ARCHITECTURES=""
SECONDARY_ARCHITECTURES="x86"
libVersion="5.9.0"
libVersionCompat="$libVersion compat >= 5"
PROVIDES="
ncurses5$secondaryArchSuffix = $portVersion
lib:libformw$secondaryArchSuffix = $libVersionCompat
lib:libmenuw$secondaryArchSuffix = $libVersionCompat
lib:libncursesw$secondaryArchSuffix = $libVersionCompat
lib:libncurses++w$secondaryArchSuffix = $libVersionCompat
lib:libpanelw$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel
cmd:gcc$secondaryArchSuffix
cmd:grep
cmd:ld$secondaryArchSuffix
cmd:libtool$secondaryArchSuffix
cmd:make
cmd:sed
"
doBuild()
{
if [ $# -lt 1 ]; then
echo >&2 "Usage: doBuild <targetDir> [ <configureFlags> ... ]"
exit 1
fi
targetDir=$(pwd)/$1
shift 1
# Parse additional arguments. "--libs-only" means we only want the
# libraries, nothing else. "--without-progs" means no programs and no
# terminfo DB (requires tic).
local noData
local libsOnly
local configureArgs
local arg
for arg in $@; do
case "$arg" in
--libs-only)
noData=1
libsOnly=1
arg="--without-progs"
;;
--without-progs)
noData=1
;;
esac
configureArgs="$configureArgs $arg"
done
runConfigure \
--omit-dirs "dataRootDir docDir" ./configure \
--with-libtool --with-abi-version=5 --with-rel-version=5.9 \
--enable-termcap --without-tests \
--enable-hard-tabs \
--disable-pc-files \
$configureArgs
make $jobArgs
if [ -z "$noData" ]; then
# We need LIBRARY_PATH to include the library installation directory,
# since the installation process for the terminfo database will run tic
# and the built-in rpath doesn't consider the DESTDIR we're using.
LIBRARY_PATH="$targetDir/$prefix/lib:$LIBRARY_PATH" \
make install DESTDIR=$targetDir
else
make install.libs DESTDIR=$targetDir
if [ -z "$libsOnly" ]; then
make install.includes DESTDIR=$targetDir
make install.man DESTDIR=$targetDir
fi
fi
}
BUILD()
{
doBuild build-widec --enable-widec --libs-only
}
INSTALL()
{
cp -ra build-widec/$prefix/. $prefix
# prepare develop/lib
prepareInstalledDevelLibs \
libformw libmenuw libncursesw libncurses++w libpanelw
# library-only package, remove all other files
rm -r $binDir $developDir
}

View File

@@ -0,0 +1,89 @@
From d8b36eeadc493fe6193016174997dffa126bc312 Mon Sep 17 00:00:00 2001
From: Ingo Weinhold <ingo_weinhold@gmx.de>
Date: Mon, 8 Jul 2013 15:51:09 +0200
Subject: progs/Makefile.in: make sure the right programs are installed
The Makefile installed the libtool wrapper scripts which are only meant
to be used for the build.
diff --git a/progs/Makefile.in b/progs/Makefile.in
index 79cbc99..b2aad36 100644
--- a/progs/Makefile.in
+++ b/progs/Makefile.in
@@ -199,19 +199,19 @@ transform.h :
echo "#endif /* __TRANSFORM_H */" >>$@
install.progs: $(AUTO_SRC) $(PROGS) $(DESTDIR)$(bindir)
-@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) tic$x $(DESTDIR)$(bindir)/$(actual_tic)
-@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) toe$x $(DESTDIR)$(bindir)/$(actual_toe)
+@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tic$x $(DESTDIR)$(bindir)/$(actual_tic)
+@MAKE_TERMINFO@ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/toe$x $(DESTDIR)$(bindir)/$(actual_toe)
@MAKE_TERMINFO@ @echo "linking $(actual_infotocap) to $(actual_tic)"
@MAKE_TERMINFO@ -@rm -f $(DESTDIR)$(bindir)/$(actual_infotocap)
@MAKE_TERMINFO@ (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_infotocap))
@MAKE_TERMINFO@ @echo "linking $(actual_captoinfo) to $(actual_tic)"
@MAKE_TERMINFO@ -@rm -f $(DESTDIR)$(bindir)/$(actual_captoinfo)
@MAKE_TERMINFO@ (cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tic) $(actual_captoinfo))
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) infocmp$x $(DESTDIR)$(bindir)/$(actual_infocmp)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) clear$x $(DESTDIR)$(bindir)/$(actual_clear)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) tabs$x $(DESTDIR)$(bindir)/$(actual_tabs)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) tput$x $(DESTDIR)$(bindir)/$(actual_tput)
- $(LIBTOOL_INSTALL) $(INSTALL_PROG) tset$x $(DESTDIR)$(bindir)/$(actual_tset)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/infocmp$x $(DESTDIR)$(bindir)/$(actual_infocmp)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/clear$x $(DESTDIR)$(bindir)/$(actual_clear)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tabs$x $(DESTDIR)$(bindir)/$(actual_tabs)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tput$x $(DESTDIR)$(bindir)/$(actual_tput)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) .libs/tset$x $(DESTDIR)$(bindir)/$(actual_tset)
@echo "linking $(actual_reset) to $(actual_tset)"
-@rm -f $(DESTDIR)$(bindir)/$(actual_reset)
(cd $(DESTDIR)$(bindir) && $(LN_S) $(actual_tset) $(actual_reset))
--
2.28.0
From 67e19e268a2f5f200ec1a4e218e7a9299dc92841 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Sun, 27 Dec 2020 17:47:12 +0100
Subject: Fix linking with libtool disabled
Disabling libtool allows to set the ABI version for backwards
compatibility.
diff --git a/aclocal.m4 b/aclocal.m4
index c27cc36..2899f53 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -6704,6 +6704,10 @@ CF_EOF
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
fi
;;
+ (haiku*)
+ CF_SHARED_SONAME
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
+ ;;
(hpux[[7-8]]*)
# HP-UX 8.07 ld lacks "+b" option used for libdir search-list
if test "$GCC" != yes; then
diff --git a/configure b/configure
index 06f344f..8713faf 100755
--- a/configure
+++ b/configure
@@ -5899,6 +5899,15 @@ echo "${ECHO_T}$cf_cv_ldflags_search_paths_first" >&6
LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
fi
;;
+ (haiku*)
+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
+ if test "$cf_cv_shlib_version" = rel; then
+ cf_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
+ else
+ cf_shared_soname='`basename $@`'
+ fi
+ MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
+ ;;
(hpux[7-8]*)
# HP-UX 8.07 ld lacks "+b" option used for libdir search-list
if test "$GCC" != yes; then
--
2.28.0