diff --git a/sdata/dist-fedora/SPECS/cpptrace.spec b/sdata/dist-fedora/SPECS/cpptrace.spec new file mode 100644 index 000000000..a4542bf96 --- /dev/null +++ b/sdata/dist-fedora/SPECS/cpptrace.spec @@ -0,0 +1,42 @@ +%global source_date_epoch_from_changelog 0 + +%global tag 1.0.4 +%global commits 1054 +%global commit 91b6b78e408a8b1c0b7146c9034a03156c082da2 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +Name: cpptrace +Version: 1.0.4 +Release: 1%{?dist} +Summary: Simple, portable, and self-contained stacktrace library for C++11 and newer + +License: MIT +URL: https://github.com/jeremy-rifkin/cpptrace +Source0: %{url}/archive/%{commit}/cpptrace-%{shortcommit}.tar.gz + +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: make +BuildRequires: ninja-build + +%description +C++ lightweight logging library used by Quickshell. + +%prep +%autosetup -n cpptrace-%{commit} -p1 + +%build +mkdir -p build +cd build +cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DCPPTRACE_UNWIND_WITH_LIBUNWIND=true +cmake --build . + +%install +cd build +DESTDIR=%{buildroot} cmake --install . + +%files +%{_prefix}/local/include/* +%{_prefix}/local/lib64/* +%license LICENSE +%doc README.md diff --git a/sdata/dist-fedora/feddeps.toml b/sdata/dist-fedora/feddeps.toml index aa8091ec1..7329cdfc5 100644 --- a/sdata/dist-fedora/feddeps.toml +++ b/sdata/dist-fedora/feddeps.toml @@ -149,6 +149,7 @@ packages = [ "libdrm", "breakpad", "kf6-kirigami", + "libunwind-devel", # NOTE: Below are custom dependencies of illogical-impulse "qt6-qt5compat", "qt6-qtimageformats", diff --git a/sdata/dist-fedora/install-deps.sh b/sdata/dist-fedora/install-deps.sh index 18da73e06..c8cad76e5 100644 --- a/sdata/dist-fedora/install-deps.sh +++ b/sdata/dist-fedora/install-deps.sh @@ -5,6 +5,7 @@ # ------------------------- user_config="${REPO_ROOT}/sdata/dist-fedora/user_data.yaml" rpmbuildroot="${REPO_ROOT}/cache/rpmbuild" +rpm_specs="${REPO_ROOT}/sdata/dist-fedora/SPECS" deps_data_file="${REPO_ROOT}/sdata/dist-fedora/feddeps.toml" # ------------------------- @@ -24,15 +25,20 @@ function r() { # Start building and install the missing RPM package locally. function install_RPMS() { - local local_specs local_rpms + local local_rpms rpmbuildroot="${rpmbuildroot:-${REPO_ROOT}/cache/rpmbuild}" x mkdir -p "$rpmbuildroot"/{BUILD,RPMS,SOURCES} x cp -r "${REPO_ROOT}/sdata/dist-fedora/SPECS" "$rpmbuildroot/" x cd $rpmbuildroot/SPECS - - mapfile -t -d '' local_specs < <(find "$rpmbuildroot/SPECS" -maxdepth 1 -type f -name "*.spec" -print0) + + # we need cpptrace BEFORE quickshell-git + local_specs=( + "$rpm_specs/cpptrace.spec" + "$rpm_specs/quickshell-git.spec" + "$rpm_specs/hyprland-qt-support.spec" + ) for spec_file in ${local_specs[@]}; do # Download sources x spectool -g -C "$rpmbuildroot/SOURCES" "$spec_file"