diff --git a/.gitignore b/.gitignore index 5b1a282..41fca93 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,3 @@ /phd2-2.6.4-purged.tar.xz /phd2-2.6.5-purged.tar.xz /phd2-2.6.6-purged.tar.xz -/phd2-2.6.7-purged.tar.xz -/phd2-2.6.8-purged.tar.xz -/phd2-2.6.9-purged.tar.xz -/phd2-2.6.10-purged.tar.xz -/phd2-2.6.11-purged.tar.xz -/phd2-a205f63238c8505cf641057d8d82734e51f9ab15-purged.tar.xz -/phd2-2.6.12-purged.tar.xz -/phd2-2.6.13-purged.tar.xz -/phd2-2.6.14-purged.tar.xz diff --git a/changelog b/changelog deleted file mode 100644 index ae480fa..0000000 --- a/changelog +++ /dev/null @@ -1,100 +0,0 @@ -* Thu Aug 04 2022 Scott Talbert - 2.6.11-4 -- Rebuild with wxWidgets 3.2 - -* Fri Jul 22 2022 Fedora Release Engineering - 2.6.11-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Feb 26 2022 Mattia Verga - 2.6.11-2 -- Disable parallel build - -* Thu Feb 24 2022 Mattia Verga - 2.6.11-1 -- Update to 2.6.11 (fedora#2057427) - -* Fri Jan 21 2022 Fedora Release Engineering - 2.6.10-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Sat Jul 31 2021 Mattia Verga - 2.6.10-3 -- Replace _target_platform macro with _vpath_builddir -- Fixes rhbz#1987803 - -* Fri Jul 23 2021 Fedora Release Engineering - 2.6.10-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Sun Jun 27 2021 Mattia Verga - 2.6.10-1 -- Update to 2.6.10 -- Fixes rhbz#1976560 - -* Thu Feb 11 2021 Mattia Verga - 2.6.9-6 -- Rebuilt for cfitsio soname bump - -* Wed Jan 27 2021 Fedora Release Engineering - 2.6.9-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Aug 04 2020 Mattia Verga - 2.6.9-4 -- Another rebuild attempt for F33 Mass Rebuild after gettext has been fixed -- Use new cmake macros - -* Sat Aug 01 2020 Fedora Release Engineering - 2.6.9-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 2.6.9-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jul 05 2020 Mattia Verga - 2.6.9-1 -- Upgrade to 2.6.9 -- Fixes rhbz#1853866 - -* Mon May 18 2020 Mattia Verga - 2.6.8-1 -- Upgrade to 2.6.8 - -* Sat Feb 08 2020 Mattia Verga - 2.6.7-1 -- Upgrade to 2.6.7 - -* Thu Jan 30 2020 Fedora Release Engineering - 2.6.6-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Fri Jul 26 2019 Fedora Release Engineering - 2.6.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sat Mar 30 2019 Mattia Verga - 2.6.6-1 -- Upgrade to 2.6.6 -- Enable tests on i686 - -* Sat Feb 02 2019 Fedora Release Engineering - 2.6.5-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jul 13 2018 Fedora Release Engineering - 2.6.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Sat May 26 2018 Christian Dersch - 2.6.5-2 -- rebuilt for cfitsio 3.450 - -* Mon May 07 2018 Mattia Verga - 2.6.5-1 -- Upgrade to 2.6.5 -- Remove obsolete scriptlets -- Use upstream patch to disable third party drivers -- Specify libindi to be >= 1.5 - -* Fri Feb 23 2018 Christian Dersch - 2.6.4-6 -- rebuilt for cfitsio 3.420 (so version bump) - -* Tue Feb 13 2018 Mattia Verga - 2.6.4-5 -- Enable test output on failures - -* Fri Feb 09 2018 Fedora Release Engineering - 2.6.4-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sun Nov 05 2017 Mattia Verga - 2.6.4-3 -- Fix spurious exec bits and line endings -- Use more macros -- Purge another unneeded directory from sources -- Use C++14 flag - -* Sat Nov 04 2017 Mattia Verga - 2.6.4-2 -- Breakdown components licenses -- Add some useful docs -- Add weak dependency to libindi - -* Thu Nov 02 2017 Mattia Verga - 2.6.4-1 -- Initial packaging diff --git a/generate-tarball.sh b/generate-tarball.sh index 650599b..ed87723 100755 --- a/generate-tarball.sh +++ b/generate-tarball.sh @@ -14,13 +14,10 @@ rm -rf phd2-$VERSION/thirdparty/frameworks rm -rf phd2-$VERSION/thirdparty/HID_Utilities rm -rf phd2-$VERSION/thirdparty/include rm -rf phd2-$VERSION/thirdparty/openssag -rm -rf phd2-$VERSION/thirdparty/VidCapture find . -name "*.dll" -type f -delete find . -name "*.lib" -type f -delete -find . -name "*.dylib" -type f -delete find . -name "*.a" -type f -delete find . -name "*.so" -type f -delete -find . -name "*.so.*" -type f -delete rm -rf phd2-$VERSION/cameras/qhyccdlibs/qhyfirmware.zip tar -cJvf phd2-$VERSION-purged.tar.xz phd2-$VERSION diff --git a/phd2-eigen3.patch b/phd2-eigen3.patch deleted file mode 100644 index ca33330..0000000 --- a/phd2-eigen3.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff: a/cameras/playerone/linux/arm32/libPlayerOneCamera.so: File o directory non esistente -diff: a/cameras/playerone/linux/arm32/libPlayerOneCamera.so.3: File o directory non esistente -diff: a/cameras/playerone/linux/arm32/libPlayerOneCamera.so.3.7: File o directory non esistente -diff: a/cameras/playerone/linux/arm64/libPlayerOneCamera.so: File o directory non esistente -diff: a/cameras/playerone/linux/arm64/libPlayerOneCamera.so.3: File o directory non esistente -diff: a/cameras/playerone/linux/arm64/libPlayerOneCamera.so.3.7: File o directory non esistente -diff: a/cameras/playerone/linux/x64/libPlayerOneCamera.so: File o directory non esistente -diff: a/cameras/playerone/linux/x64/libPlayerOneCamera.so.3: File o directory non esistente -diff: a/cameras/playerone/linux/x64/libPlayerOneCamera.so.3.7: File o directory non esistente -diff: a/cameras/playerone/linux/x86/libPlayerOneCamera.so: File o directory non esistente -diff: a/cameras/playerone/linux/x86/libPlayerOneCamera.so.3: File o directory non esistente -diff: a/cameras/playerone/linux/x86/libPlayerOneCamera.so.3.7: File o directory non esistente -diff -U 3 -dHrN a/thirdparty/thirdparty.cmake b/thirdparty/thirdparty.cmake ---- a/thirdparty/thirdparty.cmake 2025-12-10 05:46:14.000000000 +0100 -+++ b/thirdparty/thirdparty.cmake 2025-12-14 09:44:56.704446893 +0100 -@@ -384,6 +384,9 @@ - set(EIGEN_SRC ${VCPKG_INCLUDE}/eigen3) - else() - find_package(Eigen3 REQUIRED) -+ if(TARGET Eigen3::Eigen) -+ get_target_property(EIGEN3_INCLUDE_DIR Eigen3::Eigen INTERFACE_INCLUDE_DIRECTORIES) -+ endif() - set(EIGEN_SRC ${EIGEN3_INCLUDE_DIR}) - message(STATUS "Using system's Eigen3.") - endif() diff --git a/phd2.spec b/phd2.spec index 6dfbdd3..b3c12d5 100644 --- a/phd2.spec +++ b/phd2.spec @@ -1,60 +1,44 @@ -%global gittag v2.6.14 -#%%global commit a205f63238c8505cf641057d8d82734e51f9ab15 -#%%global shortcommit %%(c=%%{commit}; echo ${c:0:7}) -#%%global date 20230212 - Name: phd2 -%if "%{?gittag}" -Version: 2.6.14 -%else -Version: 2.6.11^dev4^%{date}%{shortcommit} -%endif -Release: %autorelease +Version: 2.6.6 +Release: 1%{?dist} Summary: Telescope guiding software -License: BSD-3-Clause AND LGPL-2.1-or-later AND ICU +# Main program files are BSD licensed +# Some components have different licenses: +# QHY camera headers are GPLv2+ +# SX camera headers are ICU +# INDI GUI is LGPLv2+ +License: BSD and (GPLv2+ and MIT and LGPLv2+) URL: http://openphdguiding.org/ -%if "%{?gittag}" # Download upstream tarball from -# https://github.com/OpenPHDGuiding/%%{name}/archive/%%{gittag}.tar.gz +# https://github.com/OpenPHDGuiding/%%{name}/archive/v%%{version}.tar.gz # and then run ./generate-tarball.sh %%{version} Source0: %{name}-%{version}-purged.tar.xz -%else -# Download upstream tarball from -# https://github.com/OpenPHDGuiding/%%{name}/archive/%%{commit}/%%{name}-%%{commit}.tar.gz -# and then run ./generate-tarball.sh %%{commit} -Source0: %{name}-%{commit}-purged.tar.xz -%endif # Script to purge binaries and unneeded files from downloaded sources Source1: generate-tarball.sh -# Do not force c++ std -Patch99: phd2_2.9.10_std_cflags.patch +# Use C++14 flag +Patch99: phd2_cflags.patch -# Fix eigen 5.0.0 detection -Patch101: phd2-eigen3.patch - -# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval -ExcludeArch: %{ix86} +# Disable OpenSSAG +# https://github.com/OpenPHDGuiding/phd2/pull/758 +Patch100: phd2_2.6.6_disable_openssag.patch BuildRequires: cmake BuildRequires: desktop-file-utils BuildRequires: dos2unix BuildRequires: extra-cmake-modules -BuildRequires: gcc -BuildRequires: gcc-c++ BuildRequires: gettext BuildRequires: gtest-devel BuildRequires: libappstream-glib BuildRequires: libindi-static BuildRequires: libnova-devel -BuildRequires: wxGTK-devel +BuildRequires: wxGTK3-devel BuildRequires: pkgconfig(cfitsio) BuildRequires: pkgconfig(eigen3) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libindi) >= 1.5 BuildRequires: pkgconfig(libusb-1.0) -BuildRequires: pkgconfig(opencv) BuildRequires: pkgconfig(zlib) Recommends: libindi @@ -67,45 +51,42 @@ or spectroscopy. %prep -%if "%{?gittag}" %autosetup -p1 -%else -%autosetup -n %{name}-%{commit} -p1 -%endif # Remove spurious executable bit set on icons and docs find icons -type f -print0 |xargs -0 chmod -x -chmod -x doc/PHD_2.0_Architecture.docx +chmod -x PHD_2.0_Architecture.docx %build +mkdir -p %{_target_platform} +pushd %{_target_platform} %{cmake} -DUSE_SYSTEM_CFITSIO=ON \ -DUSE_SYSTEM_LIBUSB=ON \ -DUSE_SYSTEM_EIGEN3=ON \ -DUSE_SYSTEM_GTEST=ON \ -DUSE_SYSTEM_LIBINDI=ON \ - -DOPENSOURCE_ONLY=ON + -DOPENSOURCE_ONLY=ON .. -# Build is not parallel safe -# https://github.com/OpenPHDGuiding/phd2/issues/972 -%cmake_build -j1 +%make_build %install -%cmake_install +pushd %{_target_platform} +%make_install +popd %find_lang %{name} %check -%ctest -#env CTEST_OUTPUT_ON_FAILURE=1 make test -C %%{_vpath_builddir} +env CTEST_OUTPUT_ON_FAILURE=1 make test -C %{_target_platform} desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/%{name}.appdata.xml %files -f %{name}.lang -%doc README.txt doc/PHD_2.0_Architecture.docx +%doc README.txt PHD_2.0_Architecture.docx %license LICENSE.txt %{_bindir}/* %{_datadir}/metainfo/%{name}.appdata.xml @@ -115,4 +96,44 @@ appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/%{name}. %changelog -%autochangelog +* Sat Mar 30 2019 Mattia Verga - 2.6.6-1 +- Upgrade to 2.6.6 +- Enable tests on i686 + +* Sat Feb 02 2019 Fedora Release Engineering - 2.6.5-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 2.6.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Sat May 26 2018 Christian Dersch - 2.6.5-2 +- rebuilt for cfitsio 3.450 + +* Mon May 07 2018 Mattia Verga - 2.6.5-1 +- Upgrade to 2.6.5 +- Remove obsolete scriptlets +- Use upstream patch to disable third party drivers +- Specify libindi to be >= 1.5 + +* Fri Feb 23 2018 Christian Dersch - 2.6.4-6 +- rebuilt for cfitsio 3.420 (so version bump) + +* Tue Feb 13 2018 Mattia Verga - 2.6.4-5 +- Enable test output on failures + +* Fri Feb 09 2018 Fedora Release Engineering - 2.6.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sun Nov 05 2017 Mattia Verga - 2.6.4-3 +- Fix spurious exec bits and line endings +- Use more macros +- Purge another unneeded directory from sources +- Use C++14 flag + +* Sat Nov 04 2017 Mattia Verga - 2.6.4-2 +- Breakdown components licenses +- Add some useful docs +- Add weak dependency to libindi + +* Thu Nov 02 2017 Mattia Verga - 2.6.4-1 +- Initial packaging diff --git a/phd2_2.6.6_disable_openssag.patch b/phd2_2.6.6_disable_openssag.patch new file mode 100644 index 0000000..92656f2 --- /dev/null +++ b/phd2_2.6.6_disable_openssag.patch @@ -0,0 +1,43 @@ +diff -U 3 -dHrN -- a/thirdparty/thirdparty.cmake b/thirdparty/thirdparty.cmake +--- a/thirdparty/thirdparty.cmake 2019-03-24 19:50:39.000000000 +0100 ++++ b/thirdparty/thirdparty.cmake 2019-03-29 18:30:18.853081815 +0100 +@@ -1295,23 +1295,23 @@ + # temporarily disable qhy camera pending fix for link error on Ubuntu Trusty + remove_definitions(-DHAVE_QHY_CAMERA=1) + +- endif() # OPENSOURCE_ONLY ++ set(LIBOPENSSAG openssag) ++ set(libopenssag_dir ${thirdparty_dir}/${LIBOPENSSAG}/src) ++ include_directories(${libopenssag_dir}) ++ set(libOPENSSAG_SRC ++ ${libopenssag_dir}/firmware.h ++ ${libopenssag_dir}/loader.cpp ++ ${libopenssag_dir}/openssag_priv.h ++ ${libopenssag_dir}/openssag.cpp ++ ${libopenssag_dir}/openssag.h ++ ) ++ add_library(OpenSSAG ${libOPENSSAG_SRC}) ++ target_link_libraries(OpenSSAG openphd_libusb) ++ target_include_directories(OpenSSAG PRIVATE ${thirdparty_dir}/${LIBOPENSSAG}/src) ++ set(PHD_LINK_EXTERNAL ${PHD_LINK_EXTERNAL} OpenSSAG) ++ set_property(TARGET OpenSSAG PROPERTY FOLDER "Thirdparty/") + +- set(LIBOPENSSAG openssag) +- set(libopenssag_dir ${thirdparty_dir}/${LIBOPENSSAG}/src) +- include_directories(${libopenssag_dir}) +- set(libOPENSSAG_SRC +- ${libopenssag_dir}/firmware.h +- ${libopenssag_dir}/loader.cpp +- ${libopenssag_dir}/openssag_priv.h +- ${libopenssag_dir}/openssag.cpp +- ${libopenssag_dir}/openssag.h +- ) +- add_library(OpenSSAG ${libOPENSSAG_SRC}) +- target_link_libraries(OpenSSAG openphd_libusb) +- target_include_directories(OpenSSAG PRIVATE ${thirdparty_dir}/${LIBOPENSSAG}/src) +- set(PHD_LINK_EXTERNAL ${PHD_LINK_EXTERNAL} OpenSSAG) +- set_property(TARGET OpenSSAG PROPERTY FOLDER "Thirdparty/") ++ endif() # OPENSOURCE_ONLY + + # math library is needed, and should be one of the last things to link to here + find_library(mathlib NAMES m) diff --git a/phd2_2.9.10_std_cflags.patch b/phd2_2.9.10_std_cflags.patch deleted file mode 100644 index f0f4d1b..0000000 --- a/phd2_2.9.10_std_cflags.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff -udHrN -- a/cmake_modules/compiler_options.cmake b/cmake_modules/compiler_options.cmake ---- a/cmake_modules/compiler_options.cmake 2021-06-26 21:07:31.000000000 +0200 -+++ b/cmake_modules/compiler_options.cmake 2021-06-27 12:09:22.294653542 +0200 -@@ -57,28 +57,3 @@ - # Set the possible values of build type for cmake-gui - set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo") - endif() -- --# compiler capabilities --include(CheckCXXCompilerFlag) --if(WIN32) -- set(FIND_LIBRARY_USE_LIB64_PATHS FALSE) -- #set(CMAKE_LIBRARY_ARCHITECTURE x86) --else() -- # c++11 options -- check_cxx_compiler_flag(-std=c++11 HAS_CXX11_FLAG) -- check_cxx_compiler_flag(-std=c++0x HAS_CXX0X_FLAG) -- -- if(HAS_CXX11_FLAG) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -- elseif(HAS_CXX0X_FLAG) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") -- endif() -- -- if(APPLE) -- check_cxx_compiler_flag(-stdlib=libc++ HAS_LIBCXX11_FLAG) -- -- if(HAS_LIBCXX11_FLAG) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") -- endif() -- endif() --endif() diff --git a/phd2_cflags.patch b/phd2_cflags.patch new file mode 100644 index 0000000..52f31f2 --- /dev/null +++ b/phd2_cflags.patch @@ -0,0 +1,18 @@ +diff -U 3 -dHrN -- a/cmake_modules/compiler_options.cmake b/cmake_modules/compiler_options.cmake +--- a/cmake_modules/compiler_options.cmake 2017-09-26 00:21:15.000000000 +0200 ++++ b/cmake_modules/compiler_options.cmake 2017-11-05 08:22:16.662695768 +0100 +@@ -64,10 +64,13 @@ + #set(CMAKE_LIBRARY_ARCHITECTURE x86) + else() + # c++11 options ++ check_cxx_compiler_flag(-std=c++14 HAS_CXX14_FLAG) + check_cxx_compiler_flag(-std=c++11 HAS_CXX11_FLAG) + check_cxx_compiler_flag(-std=c++0x HAS_CXX0X_FLAG) + +- if(HAS_CXX11_FLAG) ++ if(HAS_CXX14_FLAG) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") ++ elseif(HAS_CXX11_FLAG) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + elseif(HAS_CXX0X_FLAG) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") diff --git a/sources b/sources index 77f1981..e806d51 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (phd2-2.6.14-purged.tar.xz) = 649f7bf7e3203097cce4fd37a614653da19d475f4118ae29a45f6db305923657bcfd5a9cb07f0e7d3ce5739c559b1ec2d1f3868a5c29b7afe975d12d22c9e1ec +SHA512 (phd2-2.6.6-purged.tar.xz) = 72ae939c1ed4917d35a7620a02b92bea64ee1e2f8d1b94db6ff11d7402829f6994cd6a8bede292e128d421a13ede718c34b2a898695111bbbe92a35d390349eb