summaryrefslogtreecommitdiff
path: root/dev-games
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-09-17 03:04:43 -0500
committerroot <root@alpha.trunkmasters.com>2026-09-17 03:04:43 -0500
commite354c0374d2aa19224b635b0ce38bd0e6a6b5fc3 (patch)
tree0c997c882ce62ff679b033d6fe8def52afb88216 /dev-games
parent687a263b5212436c1ced6387f36d785b0a34599f (diff)
downloadbaldeagleos-repo-e354c0374d2aa19224b635b0ce38bd0e6a6b5fc3.tar.gz
baldeagleos-repo-e354c0374d2aa19224b635b0ce38bd0e6a6b5fc3.tar.xz
baldeagleos-repo-e354c0374d2aa19224b635b0ce38bd0e6a6b5fc3.zip
Adding metadata
Diffstat (limited to 'dev-games')
-rw-r--r--dev-games/simgear/Manifest1
-rw-r--r--dev-games/simgear/files/simgear-2024.1.7-fix_gdal.patch14
-rw-r--r--dev-games/simgear/files/simgear-2024.1.7-fix_race_emesary.patch16
-rw-r--r--dev-games/simgear/simgear-2024.1.7.ebuild89
4 files changed, 120 insertions, 0 deletions
diff --git a/dev-games/simgear/Manifest b/dev-games/simgear/Manifest
index ca1871b82758..8cb27c34c6da 100644
--- a/dev-games/simgear/Manifest
+++ b/dev-games/simgear/Manifest
@@ -1 +1,2 @@
DIST simgear-2024.1.1.tar.bz2 1814060 BLAKE2B 296122debafe91fec4bad682071bd77d7ac84aac009fdca5db4143351da1a8fb6221c5137abb6bee66d49d0ff6417d7c8455ba738c66f4608dcead2f162fe274 SHA512 dfdf5515c3b8083bb9a314ce4cea619b049e33ca332cecaa14928be95de7ddadef1724c1aec126c49bfade030774b7952f79bb55facd1d3e2f26041f706eb231
+DIST simgear-2024.1.7.tar.bz2 1800607 BLAKE2B c3f503f33681541269a50be58e7617adabc710b2954e017033131ed38f7c43f3fd0bd46a80c2ca7929c3fed990a3d732b3ca2d293883c6ccb7620099473ef276 SHA512 e03dc7d9bdac75f356ae6644ab11396ce3e6999f1ec7808d8c7c32ec7af35d9c18980124adce17d53b64ee313939cf2ee30b8e550fe81de09653d2e06e2bba32
diff --git a/dev-games/simgear/files/simgear-2024.1.7-fix_gdal.patch b/dev-games/simgear/files/simgear-2024.1.7-fix_gdal.patch
new file mode 100644
index 000000000000..d8625745092f
--- /dev/null
+++ b/dev-games/simgear/files/simgear-2024.1.7-fix_gdal.patch
@@ -0,0 +1,14 @@
+see https://gitlab.com/flightgear/simgear/-/work_items/56
+fix compile with >=sci-libs/gdal-3.10
+see https://github.com/OSGeo/gdal/pull/10605.patch
+--- a/simgear/scene/dem/SGDemTile_gdal.cxx
++++ b/simgear/scene/dem/SGDemTile_gdal.cxx
+@@ -546,7 +546,7 @@ void SGDemTile::doWarp( int iSrc, char* pszSrcFile, GDALDatasetH hDstDS, char**
+
+ if( bHaveNodata )
+ {
+- if (CPLIsNan(dfReal))
++ if (std::isnan(dfReal))
+ printf( "Using internal nodata values (e.g. nan) for image %s.\n",
+ pszSrcFile );
+ else
diff --git a/dev-games/simgear/files/simgear-2024.1.7-fix_race_emesary.patch b/dev-games/simgear/files/simgear-2024.1.7-fix_race_emesary.patch
new file mode 100644
index 000000000000..e83b9e9ab425
--- /dev/null
+++ b/dev-games/simgear/files/simgear-2024.1.7-fix_race_emesary.patch
@@ -0,0 +1,16 @@
+From upstream https://gitlab.com/flightgear/simgear/-/merge_requests/313.patch
+Backport the functional changes only
+Fix data race in Emesary Transmitter::NotifyAll (segfault)
+see https://bugs.gentoo.org/886321
+--- a/simgear/emesary/Transmitter.hxx
++++ b/simgear/emesary/Transmitter.hxx
+@@ -176,6 +176,9 @@ namespace simgear
+ auto v = receiveDepth.fetch_add(1, std::memory_order_relaxed);
+ if (v == 0)
+ AddRemoveIFAppropriate();
++ else {
++ std::lock_guard<std::mutex> scopeLock(_lock);
++ }
+
+ sentMessageCount++;
+
diff --git a/dev-games/simgear/simgear-2024.1.7.ebuild b/dev-games/simgear/simgear-2024.1.7.ebuild
new file mode 100644
index 000000000000..925c4b535cb1
--- /dev/null
+++ b/dev-games/simgear/simgear-2024.1.7.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="Development library for simulation games"
+HOMEPAGE="https://www.flightgear.org/"
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/flightgear/${PN}.git"
+ EGIT_BRANCH="next"
+else
+ SRC_URI="https://gitlab.com/flightgear/simgear/-/archive/${PV}/${P}.tar.bz2"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="cpu_flags_x86_sse2 ffmpeg gdal test"
+RESTRICT="!test? ( test )"
+
+# TODO AeonWave, CycloneDDS
+RDEPEND="
+ app-arch/xz-utils
+ dev-libs/expat
+ dev-games/openscenegraph
+ media-libs/libglvnd[X]
+ media-libs/openal
+ net-dns/c-ares:=
+ net-misc/curl
+ virtual/zlib:=
+ ffmpeg? ( media-video/ffmpeg:0= )
+ gdal? ( >=sci-libs/gdal-3.10:= )
+"
+DEPEND="${RDEPEND}
+ dev-libs/boost
+"
+
+PATCHES=(
+ "${FILESDIR}"/0002-fix-support-for-aarch64.patch
+ "${FILESDIR}"/${P}-fix_race_emesary.patch
+
+ # https://gitlab.com/flightgear/simgear/-/work_items/56
+ "${FILESDIR}"/${PN}-2024.1.7-fix_gdal.patch
+)
+
+src_configure() {
+ # avoid -O3 -g
+ CMAKE_BUILD_TYPE="Release"
+ append-cppflags -DNDEBUG
+
+ # maybe fixed by https://gitlab.com/flightgear/simgear/-/merge_requests/251
+ append-cflags -std=gnu17 $(test-flags -Wno-deprecated-non-prototype)
+
+ local mycmakeargs=(
+ -DENABLE_ASAN=OFF
+ -DENABLE_CYCLONE=OFF
+ -DENABLE_GDAL=$(usex gdal)
+ -DENABLE_PKGUTIL=ON
+ -DENABLE_RTI=OFF
+ -DENABLE_SIMD=$(usex cpu_flags_x86_sse2)
+ -DENABLE_SOUND=ON
+ -DENABLE_TESTS=$(usex test)
+ -DENABLE_TSAN=OFF
+ -DENABLE_VIDEO_RECORD=$(usex ffmpeg)
+ -DSIMGEAR_HEADLESS=OFF
+ -DSIMGEAR_SHARED=ON
+ -DSYSTEM_EXPAT=ON
+ -DSYSTEM_UDNS=ON
+ -DUSE_AEONWAVE=OFF
+ -DUSE_OPENALSOFT=ON
+ -DOSG_FSTREAM_EXPORT_FIXED=OFF # TODO perhaps track it
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ local CMAKE_SKIP_TESTS=(
+ # sandbox restriction (passed w/o portage)
+ test_dns
+ # maybe fixed w/ https://gitlab.com/flightgear/simgear/-/merge_requests/277
+ test_http
+ )
+
+ # test_repository and catalog_test fail w/ parallel
+ cmake_src_test -j1
+}