diff --git a/dev-libs/msgpack_c_cpp/msgpack_c_cpp-3.0.1.recipe b/dev-libs/msgpack_c_cpp/msgpack_c_cpp-3.0.1.recipe new file mode 100644 index 000000000..d92e3e2f8 --- /dev/null +++ b/dev-libs/msgpack_c_cpp/msgpack_c_cpp-3.0.1.recipe @@ -0,0 +1,106 @@ +SUMMARY="A serialization library" +DESCRIPTION="An efficient binary serialization format, which lets you exchange \ +data among multiple languages like JSON, except that it's faster and smaller. \ +Small integers are encoded into a single byte while typical short strings \ +require only one extra byte in addition to the strings themselves." +HOMEPAGE="https://msgpack.org/" +COPYRIGHT="2010-2018 MessagePack Developers" +LICENSE="Boost v1.0" +REVISION="1" +SOURCE_URI="https://github.com/msgpack/msgpack-c/archive/cpp-$portVersion.tar.gz" +SOURCE_DIR="msgpack-c-cpp-$portVersion" +CHECKSUM_SHA256="1b834ab0b5b41da1dbfb96dd4a673f6de7e79dbd7f212f45a553ff9cc54abf3b" + +ARCHITECTURES="x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="x86_gcc2 x86" + +libVersion=2.0.0 +libVersionCompat="$libVersion compat >= ${libVersion%%.*}" + +PROVIDES=" + msgpack_c_cpp$secondaryArchSuffix = $portVersion + lib:libmsgpackc$secondaryArchSuffix = $libVersionCompat + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +PROVIDES_devel=" + msgpack_c_cpp${secondaryArchSuffix}_devel = $portVersion + devel:libmsgpackc$secondaryArchSuffix = $libVersionCompat + " +REQUIRES_devel=" + msgpack_c_cpp$secondaryArchSuffix == $portVersion base + devel:libz$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libboost_chrono$secondaryArchSuffix + devel:libboost_context$secondaryArchSuffix + devel:libboost_timer$secondaryArchSuffix + devel:libboost_system$secondaryArchSuffix + devel:libgtest$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:doxygen + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:libtoolize$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + cmd:sed + " + +defineDebugInfoPackage msgpack_c_cpp$secondaryArchSuffix \ + "$libDir"/libmsgpackc.so.$libVersion + +PATCH() +{ + sed -i 's/-pthread/-lroot/g' example/cpp03/CMakeLists.txt +} + +BUILD() +{ + mkdir -p build && cd build + cmake \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX="$prefix" \ + -DCMAKE_INSTALL_LIBDIR="$libDir" \ + -DCMAKE_SKIP_RPATH=YES \ + -DMSGPACK_BUILD_EXAMPLES=OFF \ + -DMSGPACK_CXX11=OFF \ + .. + + make $jobArgs +} + +INSTALL() +{ + mkdir -p "$includeDir" + mkdir -p "$libDir" + + cd build + make install + + mv "$prefix"/include/* "$includeDir" + rm -rf "$prefix"/include + + rm -f "$libDir"/*.la + + prepareInstalledDevelLib libmsgpackc + + fixPkgconfig + + packageEntries devel \ + "$developDir" \ + "$libDir"/cmake +} + +TEST() +{ + make check +}