speech_tools: Various improvements

- Fix gcc_syslibs dep on secondary architectures
- Remove -lstdc++ from linking commands
- Fix provide of devel package
- Make the devel package depend on devel:libncurses
- Install headers to speech_tools directory inside $includeDir
- Work around Festival's broken build system by symlinking configuration files
  and makefile rules
- Remove unneeded dependency on makefile_engine
This commit is contained in:
Timothy Gu
2014-12-27 12:51:28 -08:00
parent 8390c3785c
commit a776592824
2 changed files with 62 additions and 6 deletions

View File

@@ -2975,3 +2975,41 @@ index 71b271c..b7ac4a1 100644
--
1.8.3.4
From d1dec5aa5d0de6e3f83fcf1ad07b2486a5f62e63 Mon Sep 17 00:00:00 2001
From: Timothy Gu <timothygu99@gmail.com>
Date: Fri, 26 Dec 2014 23:17:23 -0800
Subject: Remove -lstdc++ from linking command
diff --git a/config/compilers/gcc32.mak b/config/compilers/gcc32.mak
index 9703a3e..43fea62 100644
--- a/config/compilers/gcc32.mak
+++ b/config/compilers/gcc32.mak
@@ -56,7 +56,7 @@ STATIC_LINKFLAGS = -Dstatic
MAKE_DEPEND_C = $(CC) -MM $(INCLUDES) $(TEMPLATES) $(TEMPLATE_SPECIFIC)
MAKE_DEPEND_CXX = $(CC) -MM $(INCLUDES) $(WARN_CXXFLAGS) $(TEMPLATES) $(TEMPLATE_SPECIFIC)
-COMPILERLIBS= $(COMPILER_LIBS_DIR:%=-L%) -lstdc++
+COMPILERLIBS= $(COMPILER_LIBS_DIR:%=-L%)
diff --git a/config/compilers/gcc_defaults.mak b/config/compilers/gcc_defaults.mak
index befcd31..0be771d 100644
--- a/config/compilers/gcc_defaults.mak
+++ b/config/compilers/gcc_defaults.mak
@@ -96,10 +96,7 @@ STATIC_LINKFLAGS = -static
TEMPLATE_SPECIFIC = -DINSTANTIATE_TEMPLATES
TEMPLATE_ARGS =
-## The -lgcc here is redundant - gcc does this anyway - but it
-## helps java know what needs to be loaded.
-
-COMPILERLIBS= $(COMPILER_LIBS_DIR:%=-L%) -lstdc++
+COMPILERLIBS= $(COMPILER_LIBS_DIR:%=-L%)
## special ways of doing things, blank means default
--
1.8.3.4

View File

@@ -10,7 +10,7 @@ HOMEPAGE="http://www.cstr.ed.ac.uk/projects/speech_tools/"
SRC_URI="http://www.festvox.org/packed/festival/${portVersion}/speech_tools-${portVersion}-release.tar.gz"
CHECKSUM_SHA256="fbc2482c443919aa79d2e599d6a5faee4e793df55a79ef377f1dc7e8ba237010"
SOURCE_DIR="speech_tools"
REVISION="1"
REVISION="2"
# Although individually many files have different licenses, as a whole this
# license covers all the files.
@@ -45,7 +45,7 @@ PROVIDES="
lib:libeststring$secondaryArchSuffix = $portVersion compat >= 2
"
PROVIDES_devel="
flite${secondaryArchSuffix}_devel = $portVersion
speech_tools${secondaryArchSuffix}_devel = $portVersion
devel:libestbase$secondaryArchSuffix = $portVersion compat >= 2
devel:libestools$secondaryArchSuffix = $portVersion compat >= 2
devel:libeststring$secondaryArchSuffix = $portVersion compat >= 2
@@ -63,7 +63,7 @@ SCRIPTS="
resynth
"
PROVIDES_tools="
speech_tools_tools = $portVersion
speech_tools${secondaryArchSuffix}_tools = $portVersion
cmd:simple_pitchmark = $portVersion
"
for p in $PROGS $SCRIPTS; do
@@ -74,26 +74,28 @@ for p in $PROGS $SCRIPTS; do
done
REQUIRES="
haiku$secondaryArchSuffix
gcc${secondaryArchSuffix}_syslibs
lib:libgcc_s$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
lib:libstdc++$secondaryArchSuffix
"
REQUIRES_devel="
haiku${secondaryArchSuffix}_devel
speech_tools$secondaryArchSuffix == $portVersion base
devel:libncurses$secondaryArchSuffix
"
REQUIRES_tools="
haiku$secondaryArchSuffix
gcc${secondaryArchSuffix}_syslibs
speech_tools$secondaryArchSuffix == $portVersion base
cmd:perl
lib:libgcc_s$secondaryArchSuffix
lib:libncurses$secondaryArchSuffix
lib:libstdc++$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libncurses$secondaryArchSuffix
"
BUILD_PREREQUIRES="
makefile_engine
cmd:awk
cmd:find
cmd:gcc$secondaryArchSuffix
@@ -130,6 +132,7 @@ INSTALL()
cp lib/*.a lib/*.so lib/*.so.* $libDir
# Installs possibly internal headers as well, as debian installs them
includeDir=$includeDir/speech_tools
mkdir -p $includeDir/
cp -a include/* $includeDir/
rm -rf $includeDir/Makefile \
@@ -139,10 +142,25 @@ INSTALL()
mkdir -p $includeDir/base_class/
cp -a base_class/*.cc $includeDir/base_class/
# Install configurations as festival need them. Yes it's ugly but it's
# the only way to do it. (Debian does this too.)
privDir=$developLibDir/$portName
mkdir -p $privDir/lib/siod
cp -a make.include config $privDir
cp -a lib/siod/*.scm $privDir/lib/siod
prepareInstalledDevelLibs \
libestbase \
libestools \
libeststring
# Evil linking for Festival
for i in $developLibDir/libest*.a \
$developLibDir/libest*.so; do
ln -s "$i" "$privDir/lib/`basename $i`"
done
ln -s "$includeDir" "$privDir/include"
packageEntries devel \
$developDir
packageEntries tools \