Files
haikuports/dev-cpp/gulrak-filesystem/gulrak_filesystem-1.5.12.recipe
2023-02-22 19:15:46 +01:00

63 lines
2.0 KiB
Bash

SUMMARY="Header-only single-file std::filesystem compatible helper library"
DESCRIPTION="This is a header-only single-file std::filesystem compatible helper library, \
based on the C++17 and C++20 specs, but implemented for C++11, C++14, C++17 or C++20 (tightly \
following the C++17 standard with very few documented exceptions). It is currently tested on \
macOS 10.12/10.14/10.15/11.6, Windows 10, Ubuntu 18.04, Ubuntu 20.04, CentOS 7, CentOS 8, \
FreeBSD 12, Alpine ARM/ARM64 Linux and Solaris 10 but should work on other systems too, as long \
as you have at least a C++11 compatible compiler. It should work with Android NDK, Emscripten and \
I even had reports of it being used on iOS (within sandboxing constraints) and with v1.5.6 there \
is experimental support for QNX. The support of Android NDK, Emscripten and QNX is not backed up \
by automated testing but PRs and bug reports are welcome for those too. It is of course in its \
own namespace ghc::filesystem to not interfere with a regular std::filesystem should you use \
it in a mixed C++17 environment (which is possible)."
HOMEPAGE="https://github.com/gulrak/filesystem/"
COPYRIGHT="2018 Steffen Schümann"
LICENSE="MIT"
REVISION="1"
SOURCE_URI="$HOMEPAGE/archive/refs/tags/v$portVersion.tar.gz"
CHECKSUM_SHA256="7d62c5746c724d28da216d9e11827ba4e573df15ef40720292827a4dfd33f2e9"
SOURCE_FILENAME="gulrak_filesystem-v$portVersion.tar.gz"
SOURCE_DIR="filesystem-$portVersion"
PATCHES="163.patch"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
gulrak_filesystem$secondaryArchSuffix = $portVersion
devel:filesystem$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:make
"
PATCH()
{
sed -i "s:-Werror::g" cmake/GhcHelper.cmake test/CMakeLists.txt
}
BUILD()
{
cmake -Bbuild -S. -DCMAKE_BUILD_TYPE=Release \
$cmakeDirArgs
make -C build $jobArgs
}
INSTALL()
{
make -C build install
}
TEST()
{
ctest --output-on-failure --test-dir build/test
}