diff --git a/.gitignore b/.gitignore index 875a5b0..5b1a282 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,10 @@ /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 new file mode 100644 index 0000000..ae480fa --- /dev/null +++ b/changelog @@ -0,0 +1,100 @@ +* 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 35b828a..650599b 100755 --- a/generate-tarball.sh +++ b/generate-tarball.sh @@ -20,6 +20,7 @@ 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 new file mode 100644 index 0000000..ca33330 --- /dev/null +++ b/phd2-eigen3.patch @@ -0,0 +1,25 @@ +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 cdbca27..6dfbdd3 100644 --- a/phd2.spec +++ b/phd2.spec @@ -1,40 +1,60 @@ +%global gittag v2.6.14 +#%%global commit a205f63238c8505cf641057d8d82734e51f9ab15 +#%%global shortcommit %%(c=%%{commit}; echo ${c:0:7}) +#%%global date 20230212 + Name: phd2 -Version: 2.6.8 -Release: 1%{?dist} +%if "%{?gittag}" +Version: 2.6.14 +%else +Version: 2.6.11^dev4^%{date}%{shortcommit} +%endif +Release: %autorelease Summary: Telescope guiding software -# 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+) +License: BSD-3-Clause AND LGPL-2.1-or-later AND ICU URL: http://openphdguiding.org/ +%if "%{?gittag}" # Download upstream tarball from -# https://github.com/OpenPHDGuiding/%%{name}/archive/v%%{version}.tar.gz +# https://github.com/OpenPHDGuiding/%%{name}/archive/%%{gittag}.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 -# Use C++14 flag -Patch99: phd2_cflags.patch +# Do not force c++ std +Patch99: phd2_2.9.10_std_cflags.patch + +# Fix eigen 5.0.0 detection +Patch101: phd2-eigen3.patch + +# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} 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: wxGTK3-devel +BuildRequires: wxGTK-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 @@ -47,42 +67,45 @@ 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 PHD_2.0_Architecture.docx +chmod -x doc/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 -%make_build +# Build is not parallel safe +# https://github.com/OpenPHDGuiding/phd2/issues/972 +%cmake_build -j1 %install -pushd %{_target_platform} -%make_install -popd +%cmake_install %find_lang %{name} %check -env CTEST_OUTPUT_ON_FAILURE=1 make test -C %{_target_platform} +%ctest +#env CTEST_OUTPUT_ON_FAILURE=1 make test -C %%{_vpath_builddir} 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 PHD_2.0_Architecture.docx +%doc README.txt doc/PHD_2.0_Architecture.docx %license LICENSE.txt %{_bindir}/* %{_datadir}/metainfo/%{name}.appdata.xml @@ -92,56 +115,4 @@ appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/%{name}. %changelog -* 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 +%autochangelog diff --git a/phd2_2.9.10_std_cflags.patch b/phd2_2.9.10_std_cflags.patch new file mode 100644 index 0000000..f0f4d1b --- /dev/null +++ b/phd2_2.9.10_std_cflags.patch @@ -0,0 +1,32 @@ +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 deleted file mode 100644 index 52f31f2..0000000 --- a/phd2_cflags.patch +++ /dev/null @@ -1,18 +0,0 @@ -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 f8ea090..77f1981 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (phd2-2.6.8-purged.tar.xz) = 8f57cf49972af92e7618f39352fda2d890286cca7697e7c855f9ceab108172263693ff61bb25bc4a979d3196fa1bcd5bb8c5a6886350c435246f7993772ad1e2 +SHA512 (phd2-2.6.14-purged.tar.xz) = 649f7bf7e3203097cce4fd37a614653da19d475f4118ae29a45f6db305923657bcfd5a9cb07f0e7d3ce5739c559b1ec2d1f3868a5c29b7afe975d12d22c9e1ec