From 82c608e9743256b0e7fc480453c3f3e67e340f91 Mon Sep 17 00:00:00 2001 From: Robert Kausch Date: Fri, 12 Oct 2018 19:31:51 +0200 Subject: [PATCH] smooth: New recipe for smooth 0.8.74.0-pre4. (#3198) --- dev-libs/smooth/smooth-0.8.74.0~pre4.recipe | 107 ++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 dev-libs/smooth/smooth-0.8.74.0~pre4.recipe diff --git a/dev-libs/smooth/smooth-0.8.74.0~pre4.recipe b/dev-libs/smooth/smooth-0.8.74.0~pre4.recipe new file mode 100644 index 000000000..3af9dffa4 --- /dev/null +++ b/dev-libs/smooth/smooth-0.8.74.0~pre4.recipe @@ -0,0 +1,107 @@ +SUMMARY="A cross-platform C++ class library" +DESCRIPTION="smooth is an object oriented C++ class library for Windows, \ +macOS, Linux and most Unix-like operating systems. It provides basic \ +functionality and platform support for applications and libraries. + +Features provided by smooth include: + +- user interface API with various widgets +- simple to use multithreading API +- file and network IO interface +- completely transparent Unicode and software internationalization support +- a libxml2 based XML parser" +HOMEPAGE="http://www.smooth-project.org/" +COPYRIGHT="1998-2018 Robert Kausch" +LICENSE="Artistic v2.0" +REVISION="1" +SOURCE_URI="https://downloads.sourceforge.net/smooth/smooth-${portVersion/\~/-}.tar.gz" +CHECKSUM_SHA256="815f0329b5546c78feeb9ad1813855dfcb7bc062e28de44d0b4aadd7c6625d80" +SOURCE_DIR="smooth-${portVersion/\~/-}" + +ARCHITECTURES="!x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="x86" + +commandSuffix=$secondaryArchSuffix +commandBinDir=$binDir +if [ "$targetArchitecture" = x86_gcc2 ]; then + commandSuffix= + commandBinDir=$prefix/bin +fi + +libVersion="${portVersion%~*}" +libVersionCompat="${libVersion##*.} compat >= 0" + +PROVIDES=" + smooth$secondaryArchSuffix = $portVersion + lib:libsmooth_${libVersion%.*}$secondaryArchSuffix = $libVersionCompat + " +if [ -z "$commandSuffix" ]; then +PROVIDES+=" + cmd:smooth_translator = $portVersion + " +fi +REQUIRES=" + haiku$secondaryArchSuffix + lib:libbz2$secondaryArchSuffix + lib:libcurl$secondaryArchSuffix + lib:libiconv$secondaryArchSuffix + lib:libjpeg$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libxml2$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +PROVIDES_devel=" + smooth${secondaryArchSuffix}_devel = $portVersion + devel:libsmooth_${libVersion%.*}$secondaryArchSuffix = $libVersionCompat + " +REQUIRES_devel=" + smooth$secondaryArchSuffix == $portVersion base + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libbz2$secondaryArchSuffix + devel:libcurl$secondaryArchSuffix + devel:libiconv$secondaryArchSuffix + devel:libjpeg$secondaryArchSuffix + devel:libpng16$secondaryArchSuffix + devel:libxml2$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:g++$secondaryArchSuffix + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + " + +PATCH() +{ + if [ -n "$secondaryArchSuffix" ]; then + sed -i -r \ + -e "s|/system(/[^/]+)?/lib|/system\1/$relativeLibDir|" \ + classes/system/dynamicloader.cpp + fi +} + +BUILD() +{ + make $jobArgs +} + +INSTALL() +{ + make prefix="$prefix" bindir="$commandBinDir" libdir="$libDir" \ + includedir="$includeDir" install + + if [ -n "$commandSuffix" ]; then + rm -rf "$commandBinDir" + fi + + prepareInstalledDevelLib libsmooth-${libVersion%.*} + + packageEntries devel \ + "$developDir" +}