From a776592824cec53fcfcb647614d7dbcfe31ceb70 Mon Sep 17 00:00:00 2001 From: Timothy Gu Date: Sat, 27 Dec 2014 12:51:28 -0800 Subject: [PATCH] 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 --- .../patches/speech_tools-2.4.patchset | 38 +++++++++++++++++++ .../speech_tools/speech_tools-2.4.recipe | 30 ++++++++++++--- 2 files changed, 62 insertions(+), 6 deletions(-) diff --git a/app-accessibility/speech_tools/patches/speech_tools-2.4.patchset b/app-accessibility/speech_tools/patches/speech_tools-2.4.patchset index ed06dd054..0f31a31a8 100644 --- a/app-accessibility/speech_tools/patches/speech_tools-2.4.patchset +++ b/app-accessibility/speech_tools/patches/speech_tools-2.4.patchset @@ -2975,3 +2975,41 @@ index 71b271c..b7ac4a1 100644 -- 1.8.3.4 +From d1dec5aa5d0de6e3f83fcf1ad07b2486a5f62e63 Mon Sep 17 00:00:00 2001 +From: Timothy Gu +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 + diff --git a/app-accessibility/speech_tools/speech_tools-2.4.recipe b/app-accessibility/speech_tools/speech_tools-2.4.recipe index 7c644a8f0..1998e6c26 100644 --- a/app-accessibility/speech_tools/speech_tools-2.4.recipe +++ b/app-accessibility/speech_tools/speech_tools-2.4.recipe @@ -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 \