Name: quit Version: 3.4 Release: 1%{?dist} Summary: Quantitative Imaging Tools for MRI data processing License: MPL-2.0 URL: https://github.com/spinicist/QUIT Source0: %{url}/archive/v%{version}/QUIT-%{version}.tar.gz # Header-only argument parser library (not packaged in Fedora) Source1: https://github.com/Taywee/args/archive/refs/tags/6.4.8.tar.gz#/args-6.4.8.tar.gz # CMake find module for bundled args library Source2: Findargs.cmake BuildRequires: cmake >= 3.12 BuildRequires: gcc-c++ BuildRequires: make BuildRequires: InsightToolkit5-devel >= 5.3.0 BuildRequires: ceres-solver-devel BuildRequires: suitesparse-devel BuildRequires: blas-devel BuildRequires: lapack-devel BuildRequires: fmt-devel BuildRequires: json-devel Requires: InsightToolkit5%{?_isa} Provides: bundled(args) = 6.4.8 Provides: bundled(NumericalIntegration) %description QUIT (QUantitative Imaging Tools) is a collection of programs for processing quantitative MRI data, including DESPOT, relaxometry, magnetization transfer, perfusion, susceptibility mapping, and more. All tools are accessed via the single 'qi' command with subcommands, similar to git or bart. QUIT processes NIfTI format neuroimaging files and accepts sequence parameters via JSON input. %prep %autosetup -n QUIT-%{version} # Install bundled args header tar xf %{SOURCE1} install -p -m 0644 args-6.4.8/args.hxx External/include/ # Install cmake find module for args install -p -m 0644 %{SOURCE2} cmake/Findargs.cmake # Use ITK's bundled Eigen instead of system eigen3 to avoid include guard # conflicts (both copies define EIGEN_CORE_MODULE_H, causing mismatched # macro/type definitions) sed -i '/find_package(Eigen3 REQUIRED)/d' CMakeLists.txt sed -i '/include( ${ITK_USE_FILE} )/a\ # Use ITK bundled Eigen to avoid dual-Eigen include guard conflicts\ add_library(Eigen3::Eigen INTERFACE IMPORTED)\ set_target_properties(Eigen3::Eigen PROPERTIES\ INTERFACE_INCLUDE_DIRECTORIES "${ITK_INCLUDE_DIRS}")' CMakeLists.txt %build # Suppress GCC 15 -Wtemplate-body diagnostics triggered by ITK's bundled Eigen export CXXFLAGS="%{optflags} -Wno-template-body" %cmake \ -DCMAKE_MODULE_PATH:PATH="%{_builddir}/QUIT-%{version}/cmake" \ -DExternal_Include_DIR:PATH="%{_builddir}/QUIT-%{version}/External/include" \ -DBUILD_PARMESAN:BOOL=OFF %cmake_build %install %cmake_install %files %license LICENSE.txt %doc README.md CHANGELOG.md %{_bindir}/qi %changelog * Sun Mar 29 2026 Morgan Hough - 3.4-1 - Initial package for Fedora