From 10ea2a71e20c9aea08c2e2c332a0eabcdf3d8c75 Mon Sep 17 00:00:00 2001 From: Volker Diels-Grabsch Date: Fri, 5 Jun 2026 17:12:23 +0200 Subject: [PATCH] jasterix: init at 0.1.4 --- pkgs/by-name/ja/jasterix/package.nix | 70 ++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 pkgs/by-name/ja/jasterix/package.nix diff --git a/pkgs/by-name/ja/jasterix/package.nix b/pkgs/by-name/ja/jasterix/package.nix new file mode 100644 index 000000000000..77dfdaf99f07 --- /dev/null +++ b/pkgs/by-name/ja/jasterix/package.nix @@ -0,0 +1,70 @@ +{ + applyPatches, + boost, + catch2_3, + cmake, + fetchFromGitHub, + lib, + libarchive, + libpcap, + log4cpp, + onetbb, + openssl, + stdenv, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "jasterix"; + version = "0.1.4"; + + src = fetchFromGitHub { + owner = "OpenATSGmbH"; + repo = "jASTERIX"; + tag = "v${finalAttrs.version}"; + hash = "sha256-df5tByZwtQLdV0UlSo1WkgyoF3hReU/mN74V2WL6zoI="; + }; + + # Disable boost-stacktrace_backtrace, which is an optional dependency and not yet available in Nix. + postPatch = '' + sed -i 's/\(find_package .*\) stacktrace_backtrace/\1/' CMakeLists.txt + sed -i 's/BOOST_STACKTRACE_USE_BACKTRACE/#BOOST_STACKTRACE_USE_BACKTRACE/' CMakeLists.txt + sed -i 's/BOOST_STACKTRACE_LINK/#BOOST_STACKTRACE_LINK/' CMakeLists.txt + ''; + + outputs = [ + "out" + "dev" + ]; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ + (lib.cmakeBool "BUILD_SHARED" (!stdenv.hostPlatform.isStatic)) + (lib.cmakeBool "BUILD_STATIC" stdenv.hostPlatform.isStatic) + (lib.cmakeBool "WITH_UNIT_TESTS" finalAttrs.doCheck) + ]; + + buildInputs = [ + boost.dev + catch2_3 + libarchive.dev + libpcap + log4cpp + onetbb.dev + openssl.dev + ]; + + doCheck = false; # The tests require ASTERIX files that are not publicly provided + + strictDeps = true; + __structuredAttrs = true; + + meta = { + description = "C++ Library for EUROCONTROL's ASTERIX to JSON conversion"; + homepage = "https://github.com/OpenATSGmbH/jASTERIX"; + changelog = "https://github.com/OpenATSGmbH/jASTERIX/releases/tag/v${finalAttrs.src.tag}"; + maintainers = [ lib.maintainers.vog ]; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.all; + }; +})