1SUMMARY="Experimental range library for C++11/14/17" 2DESCRIPTION="Ranges are an extension of the Standard Template Library that \ 3makes its iterators and algorithms more powerful by making them composable. \ 4Unlike other range-like solutions which seek to do away with iterators, in \ 5range-v3 ranges are an abstration layer on top of iterators. 6 7Range-v3 is built on three pillars: Views, Actions, and Algorithms. \ 8The algorithms are the same as those with which you are already familiar \ 9in the STL, except that in range-v3 all the algorithms have overloads that \ 10take ranges in addition to the overloads that take iterators. Views are \ 11composable adaptations of ranges where the adaptation happens lazily as the \ 12view is iterated. And an action is an eager application of an algorithm to a \ 13container that mutates the container in-place and returns it for further processing." 14HOMEPAGE="https://github.com/ericniebler/range-v3" 15COPYRIGHT="2021 Eric Niebler" 16LICENSE="Boost v1.0" 17REVISION="1" 18SOURCE_URI="https://github.com/ericniebler/range-v3/archive/$portVersion.tar.gz" 19CHECKSUM_SHA256="376376615dbba43d3bef75aa590931431ecb49eb36d07bb726a19f680c75e20c" 20SOURCE_DIR="range-v3-$portVersion" 21PATCHES="range_v3-$portVersion.patchset" 22 23ARCHITECTURES="all !x86_gcc2" 24SECONDARY_ARCHITECTURES="x86" 25 26PROVIDES=" 27 range_v3$secondaryArchSuffix = $portVersion 28 devel:range_v3$secondaryArchSuffix = $portVersion 29 " 30REQUIRES=" 31 haiku$secondaryArchSuffix 32 " 33 34BUILD_REQUIRES=" 35 haiku${secondaryArchSuffix}_devel 36 " 37BUILD_PREREQUIRES=" 38 cmd:cmake 39 cmd:gcc$secondaryArchSuffix 40 cmd:ld$secondaryArchSuffix 41 cmd:make 42 cmd:pkg_config$secondaryArchSuffix 43 " 44 45BUILD() 46{ 47 mkdir -p build 48 cd build 49 cmake .. $cmakeDirArgs \ 50 -DCMAKE_BUILD_TYPE=Release \ 51 -DRANGE_V3_TESTS=OFF \ 52 -DRANGE_V3_EXAMPLES=OFF \ 53 -DRANGES_MODULES=ON \ 54 -DRANGE_V3_PERF=OFF 55 make $jobArgs 56} 57 58INSTALL() 59{ 60 cd build 61 make install 62 sed -i 's,\/include,/'${relativeIncludeDir}',g' \ 63 $libDir/cmake/range-v3/range-v3-targets.cmake 64} 65