Date: Sunday, September 18, 2022 @ 03:07:47 Author: felixonmars Revision: 1304768
archrelease: copy trunk to community-staging-x86_64 Added: srslte/repos/community-staging-x86_64/ srslte/repos/community-staging-x86_64/PKGBUILD (from rev 1304767, srslte/trunk/PKGBUILD) srslte/repos/community-staging-x86_64/gcc-12.patch (from rev 1304767, srslte/trunk/gcc-12.patch) srslte/repos/community-staging-x86_64/srslte-avx2.install (from rev 1304767, srslte/trunk/srslte-avx2.install) srslte/repos/community-staging-x86_64/srslte.install (from rev 1304767, srslte/trunk/srslte.install) ---------------------+ PKGBUILD | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++ gcc-12.patch | 12 ++++++ srslte-avx2.install | 4 ++ srslte.install | 4 ++ 4 files changed, 115 insertions(+) Copied: srslte/repos/community-staging-x86_64/PKGBUILD (from rev 1304767, srslte/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2022-09-18 03:07:47 UTC (rev 1304768) @@ -0,0 +1,95 @@ +# Maintainer: Filipe LaĆns (FFY00) <la...@archlinux.org> + +pkgbase=srslte +pkgname=($pkgbase $pkgbase-avx2) +_pkgname=srsRAN +pkgver=22.04 +_pkgver=release_${pkgver//./_} +pkgrel=3 +pkgdesc='Open source SDR LTE software suite from Software Radio Systems (SRS)' +arch=('x86_64') +url='https://www.srslte.com' +license=('AGPL3') +depends=('fftw' 'mbedtls' 'boost-libs' 'lksctp-tools' 'libconfig' + 'libuhd' 'soapysdr' 'bladerf' 'zeromq' 'pcsclite' 'srsgui') +makedepends=('cmake' 'boost') +provides=('srsue' 'srsenb' 'srsenb') +conflicts=('srsue' 'srsenb' 'srsenb') +source=("$_pkgname-$pkgver.tar.gz::https://github.com/srsran/srsRAN/archive/$_pkgver.tar.gz" + gcc-12.patch) +sha512sums=('3446421d4965705aa08044d283cf980a86ed2804f8e71268084d3667cd78048024400fe18beeb627b1fcd66ec86c8182d5467e57fa78d30f8d44b47f5d327040' + '5179f49cc39dfc031d4a9829a47f94e39910e8994a0dc15480aa5c2805bd2d0ec36a9fd655b62648353f18bf6f998342acf40ef5a77df397917a2e36f0f3961a') +options=(!lto) + +prepare() { + cd $_pkgname-$_pkgver + + # Fix build with GCC 12 + patch -p1 -i ../gcc-12.patch + + # Using too old of a version to even attempt to properly fix these + sed -e '/-Werror\"/d' -i CMakeLists.txt + CXXFLAGS+=' -Wno-error -Wp,-U_GLIBCXX_ASSERTIONS' + + # Disable failing test + sed -i '/add_test(ue_rf_failure/d' srsue/src/CMakeLists.txt + + mkdir build + + cp -r "$srcdir"/$_pkgname-$_pkgver "$srcdir"/$_pkgname-avx2-$_pkgver +} + +build() { + echo 'Building srslte...' + cd "$srcdir"/$_pkgname-$_pkgver/build + + cmake .. \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DENABLE_GENERIC=True + + make + + echo 'Building srslte-avx2...' + cd "$srcdir"/$_pkgname-avx2-$_pkgver/build + + cmake .. \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DENABLE_GENERIC=True \ + -DHAVE_AVX2=True + + make +} + +check() { + echo 'Running tests for srslte...' + cd "$srcdir"/$_pkgname-$_pkgver/build + +# network_utils_test fails on build server + ctest $(echo $MAKEFLAGS | grep -Po '\-j[0-9][0-9]*') -E network_utils_test + + echo 'Running tests for srslte-avx2...' + cd "$srcdir"/$_pkgname-avx2-$_pkgver/build + + ctest $(echo $MAKEFLAGS | grep -Po '\-j[0-9][0-9]*') -E network_utils_test +} + +package_srslte() { + install=$pkgname.install + + cd $_pkgname-$_pkgver/build + + make DESTDIR="$pkgdir" install +} + +package_srslte-avx2() { + pkgdesc="$pkgdesc (with AVX2 extensions)" + provides=($pkgbase) + conflicts=($pkgbase) + install=$pkgname.install + + cd $_pkgname-avx2-$_pkgver/build + + make DESTDIR="$pkgdir" install +} Copied: srslte/repos/community-staging-x86_64/gcc-12.patch (from rev 1304767, srslte/trunk/gcc-12.patch) =================================================================== --- community-staging-x86_64/gcc-12.patch (rev 0) +++ community-staging-x86_64/gcc-12.patch 2022-09-18 03:07:47 UTC (rev 1304768) @@ -0,0 +1,12 @@ +diff --git a/lib/include/srsran/srslog/bundled/fmt/core.h b/lib/include/srsran/srslog/bundled/fmt/core.h +index d676f27e5..d5c6f423a 100644 +--- a/lib/include/srsran/srslog/bundled/fmt/core.h ++++ b/lib/include/srsran/srslog/bundled/fmt/core.h +@@ -8,6 +8,7 @@ + #ifndef FMT_CORE_H_ + #define FMT_CORE_H_ + ++#include <array> + #include <cstdio> // std::FILE + #include <cstring> + #include <functional> Copied: srslte/repos/community-staging-x86_64/srslte-avx2.install (from rev 1304767, srslte/trunk/srslte-avx2.install) =================================================================== --- community-staging-x86_64/srslte-avx2.install (rev 0) +++ community-staging-x86_64/srslte-avx2.install 2022-09-18 03:07:47 UTC (rev 1304768) @@ -0,0 +1,4 @@ +post_install(){ + echo 'The binaries in the package include AVX2 instructions.' + echo 'If your CPU does not support them please use the sdrangel package.' +} Copied: srslte/repos/community-staging-x86_64/srslte.install (from rev 1304767, srslte/trunk/srslte.install) =================================================================== --- community-staging-x86_64/srslte.install (rev 0) +++ community-staging-x86_64/srslte.install 2022-09-18 03:07:47 UTC (rev 1304768) @@ -0,0 +1,4 @@ +post_install(){ + echo 'The binaries in the package have limited SIMD support.' + echo 'Please consider using srslte-avx2 if your CPU supports AVX2 extensions, it will give you a bigperformance boost.' +}