diff --git a/.gitignore b/.gitignore index 44110b9..9177031 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /ckb-next-0.4.3.tar.gz /ckb-next-0.4.4.tar.gz /ckb-next-0.5.0.tar.gz +/ckb-next-0.6.0.tar.gz diff --git a/0001-unbundle-kissfft.patch b/0001-unbundle-kissfft.patch new file mode 100644 index 0000000..56f0254 --- /dev/null +++ b/0001-unbundle-kissfft.patch @@ -0,0 +1,49 @@ +diff -r -U4 ckb-next-0.6.0--orig/src/animations/mviz/CMakeLists.txt ckb-next-0.6.0--patched/src/animations/mviz/CMakeLists.txt +--- ckb-next-0.6.0--orig/src/animations/mviz/CMakeLists.txt 2023-06-22 23:07:29.000000000 +0200 ++++ ckb-next-0.6.0--patched/src/animations/mviz/CMakeLists.txt 2023-06-25 22:59:31.481115661 +0200 +@@ -65,14 +65,18 @@ + + set(AUDIO_LIBRARIES "${PULSEAUDIO_LIBRARIES}") + endif () + ++add_library(kissfft STATIC IMPORTED) ++set_target_properties(kissfft PROPERTIES IMPORTED_LOCATION "${LIB_INSTALL_DIR}/libkiss_fft_float.a") ++add_library(kissfftr STATIC IMPORTED) ++set_target_properties(kissfftr PROPERTIES IMPORTED_LOCATION "${LIB_INSTALL_DIR}/libkiss_fftr_float.a") ++ + if (MACOS) + target_link_libraries( + mviz + PRIVATE + m +- KissFFT::KissFFT + ${CMAKE_PROJECT_NAME}::Animation + ${CORESERVICES_LIBRARY} + ${COREFOUNDATION_LIBRARY} + ${AUDIOUNIT_LIBRARY} +@@ -83,9 +87,10 @@ + target_link_libraries( + mviz + PRIVATE + m +- KissFFT::KissFFT ++ kissfft ++ kissfftr + ${CMAKE_PROJECT_NAME}::Animation + "${AUDIO_LIBRARIES}") + else() + message(WARNING "PortAudio link library has not been specified for this OS.") +diff -r -U4 ckb-next-0.6.0--orig/src/libs/CMakeLists.txt ckb-next-0.6.0--patched/src/libs/CMakeLists.txt +--- ckb-next-0.6.0--orig/src/libs/CMakeLists.txt 2023-06-22 23:07:29.000000000 +0200 ++++ ckb-next-0.6.0--patched/src/libs/CMakeLists.txt 2023-06-25 22:59:56.191319405 +0200 +@@ -24,10 +24,6 @@ + # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + # POSSIBILITY OF SUCH DAMAGE. + +-if (WITH_MVIZ) # otherwise doesn't make sense to include +- add_subdirectory(kissfft) +-endif () +- + # ckb-next libraries + add_subdirectory(ckb-next) diff --git a/ckb-next.spec b/ckb-next.spec index cd90e7a..893e31d 100644 --- a/ckb-next.spec +++ b/ckb-next.spec @@ -1,10 +1,13 @@ Name: ckb-next -Version: 0.5.0 -Release: 2%{?dist} +Version: 0.6.0 +Release: 1%{?dist} Summary: Unofficial driver for Corsair RGB keyboards -# ckb-next is GPLv2 -# The kissfft library (src/libs/kissfft) is BSD +# ckb-next is GPLv2. +# +# The kissfft library (src/libs/kissfft) is BSD. +# This library is un-bundled by Patch1, but since it's statically linked, +# its license is still included here. License: GPLv2 and BSD URL: https://github.com/ckb-next/ckb-next @@ -15,6 +18,9 @@ Source1: ckb-next.appdata.xml Source2: ckb-next.1 Source3: 99-ckb-next.preset +# CMakeLists need to be adjusted to compile properly with un-bundled kissfft +Patch1: 0001-unbundle-kissfft.patch + BuildRequires: cmake BuildRequires: desktop-file-utils BuildRequires: gcc-c++ @@ -23,6 +29,7 @@ BuildRequires: libappstream-glib BuildRequires: qt5-linguist BuildRequires: dbusmenu-qt5-devel +BuildRequires: kiss-fft-devel BuildRequires: libappindicator-devel BuildRequires: libgudev-devel BuildRequires: libxcb-devel @@ -40,8 +47,6 @@ BuildRequires: systemd-devel Requires: qt5-qtbase >= 5.2.0 Requires: qt5ct -Provides: bundled(kissfft) - # ckb-next, as the name suggests, is a re-activation and continuation of "ckb". # The last released version of the original "ckb" was 0.2.7. Obsoletes: ckb < 0.2.8-0 @@ -55,10 +60,10 @@ supports much of the same functionality, including full RGB animations. %prep -%setup -q +%autosetup -p1 -# Remove the bundled quazip library -rm -rf src/libs/quazip +# Remove the bundled libraries +rm -rf src/libs/kissfft # Fedora uses /usr/libexec for daemons sed -e '/^ExecStart/cExecStart=%{_libexecdir}/ckb-next-daemon' -i linux/systemd/ckb-next-daemon.service.in @@ -76,7 +81,6 @@ sed -e 's|"/lib/udev/rules.d"|"%{_udevrulesdir}"|g' -i CMakeLists.txt -DFORCE_INIT_SYSTEM=systemd \ -DSAFE_INSTALL=OFF \ -DSAFE_UNINSTALL=OFF \ - -DWITH_SHIPPED_QUAZIP=OFF \ %cmake_build @@ -121,6 +125,7 @@ udevadm control --reload-rules 2>&1 > /dev/null || : %{_bindir}/ckb-next %{_bindir}/ckb-next-dev-detect %{_libexecdir}/ckb-next-daemon +%{_libexecdir}/ckb-next-sinfo %{_libexecdir}/ckb-next-animations/ %{_libdir}/cmake/ckb-next/ %{_datadir}/applications/ckb-next.desktop @@ -135,6 +140,14 @@ udevadm control --reload-rules 2>&1 > /dev/null || : %changelog +* Sun Jun 25 2023 Artur Frenszek-Iwicki - 0.6.0-1 +- Update to v0.6.0 +- Drop Patch0 (buffer overflow fix - backported from this release) + +* Tue May 02 2023 Artur Frenszek-Iwicki - 0.5.0-3 +- Add a patch to fix program aborting on launch +- Un-bundle kissfft + * Wed Jul 20 2022 Fedora Release Engineering - 0.5.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 1798b34..9fc37d7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ckb-next-0.5.0.tar.gz) = d4e46466df4cdac7f4d4be05072592101780c94af261ec1b0bf6ec8bb1f97f892fb5da17dd91cf5f9b45fe128547cc7393c13e29843d6a7ae0de7a4688a5cdb1 +SHA512 (ckb-next-0.6.0.tar.gz) = 34236199d420b663bb71db9400622bb868a3a0b384b58d5da3f80d2bd7ec9586d4e4ac9caad0b047b8440dc4200e4dd6077f4e0d1edb5a75a1327bf9c9ba9392