diff --git a/dev-libs/flatbuffers/flatbuffers-1.10.0.recipe b/dev-libs/flatbuffers/flatbuffers-1.10.0.recipe new file mode 100644 index 000000000..95591f9e2 --- /dev/null +++ b/dev-libs/flatbuffers/flatbuffers-1.10.0.recipe @@ -0,0 +1,90 @@ +SUMMARY="Memory efficient serialization library" +DESCRIPTION="FlatBuffers is an efficient cross platform serialization library \ +for C++, C#, C, Go, Java, JavaScript, Lobster, Lua, TypeScript, PHP, Python, \ +and Rust. It was originally created at Google for game development and other \ +performance-critical applications." +HOMEPAGE="https://google.github.io/flatbuffers/" +COPYRIGHT="2014 Google Inc." +LICENSE="Apache v2" +REVISION="1" +SOURCE_URI="https://github.com/google/flatbuffers/archive/v$portVersion.tar.gz" +CHECKSUM_SHA256="3714e3db8c51e43028e10ad7adffb9a36fc4aa5b1a363c2d0c4303dd1be59a7c" +SOURCE_FILENAME="flatbuffers-$portVersion.tar.gz" + +ARCHITECTURES="?x86_gcc2 ?x86 x86_64" +SECONDARY_ARCHITECTURES="x86" + +libVersion="$portVersion" +libVersionCompat="$libVersion compat >= ${libVersion%%.*}" + +PROVIDES=" + flatbuffers$secondaryArchSuffix = $portVersion + lib:libflatbuffers$secondaryArchSuffix = $libVersionCompat + " +REQUIRES=" + haiku$secondaryArchSuffix + " + +PROVIDES_devel=" + flatbuffers${secondaryArchSuffix}_devel = $portVersion + cmd:flatc$secondaryArchSuffix = $portVersion + devel:libflatbuffers$secondaryArchSuffix = $libVersionCompat + " +REQUIRES_devel=" + haiku$secondaryArchSuffix + flatbuffers$secondaryArchSuffix == $portVersion base + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + " + +defineDebugInfoPackage flatbuffers$secondaryArchSuffix \ + "$libDir"/libflatbuffers.so.$portVersion + +BUILD() +{ + mkdir -p haiku_build + cd haiku_build + + cmake .. \ + -DFLATBUFFERS_BUILD_SHAREDLIB=ON \ + -DFLATBUFFERS_BUILD_FLATLIB=ON \ + -DFLATBUFFERS_BUILD_FLATC=ON \ + -DFLATBUFFERS_BUILD_FLATHASH=ON \ + -DFLATBUFFERS_BUILD_TESTS=ON \ + -DFLATBUFFERS_INSTALL=ON \ + $cmakeDirArgs + + make $jobArgs +} + +INSTALL() +{ + cd haiku_build + make install + + install -d -m 755 "$binDir" + install -m 755 -t "$binDir" flatc + + # prepare develop/lib + prepareInstalledDevelLibs libflatbuffers + + # devel package + packageEntries devel \ + $binDir \ + $developDir \ + $libDir/cmake +} + +TEST() +{ + cd haiku_build + make test +}