[packages/libindi] - updated to 1.9.9
qboosh
qboosh at pld-linux.org
Sun Apr 9 19:48:17 CEST 2023
commit a55d7dea2d35293cb9b7aee971fc74e814ac3029
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sun Apr 9 19:50:52 2023 +0200
- updated to 1.9.9
libindi.spec | 113 ++++++++++++++++++++++++++++++++++++++--------------
link.patch | 41 ++++++++++++-------
no_static_lib.patch | 14 +++----
3 files changed, 115 insertions(+), 53 deletions(-)
---
diff --git a/libindi.spec b/libindi.spec
index d3dcd00..9d2b937 100644
--- a/libindi.spec
+++ b/libindi.spec
@@ -1,27 +1,32 @@
#
# Conditional build:
-%bcond_without qt5 # Qt5 client library
+%bcond_without qt5 # Qt5 client library
+%bcond_without websocketpp # websocket support (via websocketpp)
#
Summary: Instrument Neutral Distributed Interface
Summary(pl.UTF-8): Instrument Neutral Distributed Interface - interfejs do sterowania przyrządami
Name: libindi
-Version: 1.9.3
-Release: 2
+Version: 1.9.9
+Release: 1
License: LGPL v2.1+
Group: Libraries
-Source0: https://github.com/indilib/indi/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 32524aca0ea53a6f224468fae6107edf
+#Source0Download: https://github.com/indilib/indi/releases
+Source0: https://github.com/indilib/indi/archive/v%{version}/indi-%{version}.tar.gz
+# Source0-md5: 8c5a1b485156cd209d3fb71fb8748172
Patch0: no_static_lib.patch
Patch1: link.patch
-URL: http://www.indilib.org/
+URL: https://www.indilib.org/
+%{?with_qt5:BuildRequires: Qt5Core-devel >= 5.0}
%{?with_qt5:BuildRequires: Qt5Network-devel >= 5.0}
+%{?with_websocketpp:BuildRequires: boost-devel}
BuildRequires: cfitsio-devel >= 3.03
-BuildRequires: cmake >= 3.0
+BuildRequires: cmake >= 3.13
BuildRequires: curl-devel
+BuildRequires: fftw3-devel >= 3
BuildRequires: gsl-devel >= 1.10
-# not actually used now
-#BuildRequires: libfli-devel >= 1.7
+BuildRequires: libev-devel
BuildRequires: libjpeg-devel
+BuildRequires: libogg-devel
BuildRequires: libnova-devel >= 0.12.2
BuildRequires: librtlsdr-devel
BuildRequires: libstdc++-devel >= 6:4.3
@@ -30,16 +35,14 @@ BuildRequires: libusb-devel >= 1
BuildRequires: pkgconfig
%{?with_qt5:BuildRequires: qt5-build >= 5.0}
BuildRequires: rpmbuild(macros) >= 1.603
+%{?with_websocketpp:BuildRequires: websocketpp-devel}
BuildRequires: zlib-devel
Requires: cfitsio >= 3.03
Requires: gsl >= 1.10
Requires: libnova >= 0.12.2
-Obsoletes: indilib
+Obsoletes: indilib < 0.6
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-# these libs rely on symbols in drivers/binaries
-%define skip_post_check_so libindidriver.so.* libindiAlignmentDriver.so.*
-
%description
INDI is a distributed control protocol designed to operate
astronomical instrumentation. INDI is small, flexible, easy to parse,
@@ -63,7 +66,7 @@ Summary: Header files for INDI libraries
Summary(pl.UTF-8): Pliki nagłówkowe bibliotek INDI
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Obsoletes: indilib-devel
+Obsoletes: indilib-devel < 0.6
%description devel
Header files for INDI libraries.
@@ -83,18 +86,44 @@ Static INDI libraries.
%description static -l pl.UTF-8
Statyczne biblioteki INDI.
-%package qt5-devel
+%package qt5
Summary: INDI Qt5 client library
-Summary(pl.UTF-8): Biblioteka kliencka INDI oparta o Qt5
+Summary(pl.UTF-8): Biblioteka kliencka INDI oparta na Qt5
Group: Libraries
+Requires: Qt5Network >= 5
+Requires: libnova >= 0.12.2
+
+%description qt5
+INDI Qt5 client library.
+
+%description qt5 -l pl.UTF-8
+Biblioteka kliencka INDI oparta na Qt5.
+
+%package qt5-devel
+Summary: Header file for INDI Qt5 client library
+Summary(pl.UTF-8): Plik nagłówkowy biblioteki klienckiej INDI opartej na Qt5
+Group: Development/Libraries
Requires: %{name}-devel = %{version}-%{release}
+Requires: %{name}-qt5 = %{version}-%{release}
Requires: Qt5Network-devel >= 5
%description qt5-devel
-INDI Qt5 client library.
+Header file for INDI Qt5 client library.
%description qt5-devel -l pl.UTF-8
-Biblioteka kliencka INDI oparta o Qt5.
+Plik nagłówkowy biblioteki klienckiej INDI opartej na Qt5.
+
+%package qt5-static
+Summary: Static INDI Qt5 client library
+Summary(pl.UTF-8): Statyczna biblioteka kliencka INDI oparta na Qt5
+Group: Development/Libraries
+Requires: %{name}-qt5-devel = %{version}-%{release}
+
+%description qt5-static
+Static INDI Qt5 client library.
+
+%description qt5-static -l pl.UTF-8
+Statyczna biblioteka kliencka INDI oparta na Qt5.
%prep
%setup -q -n indi-%{version}
@@ -102,15 +131,14 @@ Biblioteka kliencka INDI oparta o Qt5.
%patch1 -p1
%build
-install -d build
-cd build
# note: CMakeLists expect relative CMAKE_INSTALL_LIBDIR
-%cmake .. \
+%cmake -B build \
-DCMAKE_INSTALL_LIBDIR=%{_lib} \
%{?with_qt5:-DINDI_BUILD_QT5_CLIENT=ON} \
+ %{?with_websocketpp:-DINDI_BUILD_WEBSOCKET=ON} \
-DINDI_MATH_PLUGINS_DIRECTORY:PATH=%{_libdir}/indi/MathPlugins
-%{__make}
+%{__make} -C build
%install
rm -rf $RPM_BUILD_ROOT
@@ -124,9 +152,13 @@ rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
+%post qt5 -p /sbin/ldconfig
+%postun qt5 -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog NEWS README*
+%doc AUTHORS COPYING.BSD COPYRIGHT ChangeLog NEWS README README.md
+%attr(755,root,root) %{_bindir}/indi_Excalibur
%attr(755,root,root) %{_bindir}/indi_aaf2_focus
%attr(755,root,root) %{_bindir}/indi_activefocuser_focus
%attr(755,root,root) %{_bindir}/indi_arduinost4
@@ -148,6 +180,7 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/indi_dsc_telescope
%attr(755,root,root) %{_bindir}/indi_efa_focus
%attr(755,root,root) %{_bindir}/indi_eq500x_telescope
+%attr(755,root,root) %{_bindir}/indi_esattoarco_focus
%attr(755,root,root) %{_bindir}/indi_eval
%attr(755,root,root) %{_bindir}/indi_falcon_rotator
%attr(755,root,root) %{_bindir}/indi_fcusb_focus
@@ -168,9 +201,11 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/indi_lakeside_focus
%attr(755,root,root) %{_bindir}/indi_lx200_10micron
%attr(755,root,root) %{_bindir}/indi_lx200_16
+%attr(755,root,root) %{_bindir}/indi_lx200_OpenAstroTech
+%attr(755,root,root) %{_bindir}/indi_lx200am5
%attr(755,root,root) %{_bindir}/indi_lx200ap
-%attr(755,root,root) %{_bindir}/indi_lx200ap_experimental
%attr(755,root,root) %{_bindir}/indi_lx200ap_gtocp2
+%attr(755,root,root) %{_bindir}/indi_lx200ap_v2
%attr(755,root,root) %{_bindir}/indi_lx200autostar
%attr(755,root,root) %{_bindir}/indi_lx200basic
%attr(755,root,root) %{_bindir}/indi_lx200classic
@@ -192,7 +227,9 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/indi_moonlitedro_focus
%attr(755,root,root) %{_bindir}/indi_moonlite_focus
%attr(755,root,root) %{_bindir}/indi_myfocuserpro2_focus
+%attr(755,root,root) %{_bindir}/indi_nexdome_beaver
%attr(755,root,root) %{_bindir}/indi_nfocus
+%attr(755,root,root) %{_bindir}/indi_nframe_rotator
%attr(755,root,root) %{_bindir}/indi_nightcrawler_focus
%attr(755,root,root) %{_bindir}/indi_nstep_focus
%attr(755,root,root) %{_bindir}/indi_onfocus_focus
@@ -203,6 +240,7 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/indi_pegasus_focuscube
%attr(755,root,root) %{_bindir}/indi_pegasus_ppb
%attr(755,root,root) %{_bindir}/indi_pegasus_ppba
+%attr(755,root,root) %{_bindir}/indi_pegasus_prodigyMF
%attr(755,root,root) %{_bindir}/indi_pegasus_scopsoag
%attr(755,root,root) %{_bindir}/indi_pegasus_uch
%attr(755,root,root) %{_bindir}/indi_pegasus_upb
@@ -224,7 +262,6 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/indi_scopedome_dome
%attr(755,root,root) %{_bindir}/indi_script_dome
%attr(755,root,root) %{_bindir}/indi_script_telescope
-%attr(755,root,root) %{_bindir}/indiserver
%attr(755,root,root) %{_bindir}/indi_sestosenso2_focus
%attr(755,root,root) %{_bindir}/indi_sestosenso_focus
%attr(755,root,root) %{_bindir}/indi_setprop
@@ -244,7 +281,6 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/indi_skycommander_telescope
%attr(755,root,root) %{_bindir}/indi_skysafari
%attr(755,root,root) %{_bindir}/indi_skywatcherAltAzMount
-%attr(755,root,root) %{_bindir}/indi_skywatcherAltAzSimple
%attr(755,root,root) %{_bindir}/indi_smartfocus_focus
%attr(755,root,root) %{_bindir}/indi_snapcap
%attr(755,root,root) %{_bindir}/indi_sqm_weather
@@ -258,20 +294,26 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/indi_teenastro_focus
%attr(755,root,root) %{_bindir}/indi_temma_telescope
%attr(755,root,root) %{_bindir}/indi_trutech_wheel
+%attr(755,root,root) %{_bindir}/indi_uranus_weather
%attr(755,root,root) %{_bindir}/indi_usbdewpoint
%attr(755,root,root) %{_bindir}/indi_usbfocusv3_focus
%attr(755,root,root) %{_bindir}/indi_v4l2_ccd
%attr(755,root,root) %{_bindir}/indi_vantage_weather
+%attr(755,root,root) %{_bindir}/indi_wanderer_cover
+%attr(755,root,root) %{_bindir}/indi_wanderer_lite_rotator
%attr(755,root,root) %{_bindir}/indi_watchdog
%attr(755,root,root) %{_bindir}/indi_watcher_weather
%attr(755,root,root) %{_bindir}/indi_weather_safety_proxy
%attr(755,root,root) %{_bindir}/indi_xagyl_wheel
+%attr(755,root,root) %{_bindir}/indiserver
+%attr(755,root,root) %{_libdir}/libindiAlignmentDriver.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libindiAlignmentDriver.so.1
+%attr(755,root,root) %{_libdir}/libindiclient.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libindiclient.so.1
%attr(755,root,root) %{_libdir}/libindidriver.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libindidriver.so.1
%attr(755,root,root) %{_libdir}/libindilx200.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libindilx200.so.1
-%attr(755,root,root) %{_libdir}/libindiAlignmentDriver.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libindiAlignmentDriver.so.1
%dir %{_libdir}/indi
%dir %{_libdir}/indi/MathPlugins
%attr(755,root,root) %{_libdir}/indi/MathPlugins/libindi_Nearest_MathPlugin.so
@@ -284,22 +326,31 @@ rm -rf $RPM_BUILD_ROOT
%files devel
%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libindiAlignmentDriver.so
+%attr(755,root,root) %{_libdir}/libindiclient.so
%attr(755,root,root) %{_libdir}/libindidriver.so
%attr(755,root,root) %{_libdir}/libindilx200.so
-%attr(755,root,root) %{_libdir}/libindiAlignmentDriver.so
%{_libdir}/libindiAlignmentClient.a
-%{_libdir}/libindiclient.a
%{_includedir}/libindi
%{?with_qt5:%exclude %{_includedir}/libindi/baseclientqt.h}
%{_pkgconfigdir}/libindi.pc
%files static
%defattr(644,root,root,755)
+%{_libdir}/libindiclient.a
%{_libdir}/libindidriver.a
%if %{with qt5}
+%files qt5
+%attr(755,root,root) %{_libdir}/libindiclientqt.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libindiclientqt.so.1
+
%files qt5-devel
%defattr(644,root,root,755)
-%{_libdir}/libindiclientqt.a
+%attr(755,root,root) %{_libdir}/libindiclientqt.so
%{_includedir}/libindi/baseclientqt.h
+
+%files qt5-static
+%defattr(644,root,root,755)
+%{_libdir}/libindiclientqt.a
%endif
diff --git a/link.patch b/link.patch
index fcfb779..b6589b2 100644
--- a/link.patch
+++ b/link.patch
@@ -1,21 +1,32 @@
---- indi-1.9.3/libs/indibase/alignment/CMakeLists.txt~ 2021-12-03 22:14:34.000000000 +0100
-+++ indi-1.9.3/libs/indibase/alignment/CMakeLists.txt 2021-12-03 22:21:23.609154205 +0100
-@@ -43,7 +43,7 @@
- ELSE ()
- # Force linking all referenced libraries because of libgsl is not linked against cblas library on Linux
- SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-as-needed")
-- target_link_libraries(AlignmentDriver dl ${GSL_LIBRARIES})
-+ target_link_libraries(AlignmentDriver indidriver dl ${GSL_LIBRARIES})
- ENDIF ()
- ENDIF ()
+--- indi-1.9.9/libs/alignment/CMakeLists.txt.orig 2023-04-09 14:03:53.041693784 +0200
++++ indi-1.9.9/libs/alignment/CMakeLists.txt 2023-04-09 14:40:35.479762154 +0200
+@@ -46,7 +46,7 @@ ELSE()
+ ENDIF()
+ ENDIF()
---- indi-1.9.3/CMakeLists.txt~ 2021-11-11 12:06:03.000000000 +0100
-+++ indi-1.9.3/CMakeLists.txt 2021-12-03 22:23:39.017116177 +0100
-@@ -597,6 +597,7 @@
- endif (NOT CYGWIN AND NOT WIN32)
+-target_link_libraries(AlignmentDriver indicore indidevice indiclient)
++target_link_libraries(AlignmentDriver indidriver indicore indidevice indiclient)
+
+ if(INDI_BUILD_QT5)
+ target_link_libraries(AlignmentDriver Qt5::Network)
+--- indi-1.9.9/drivers/telescope/CMakeLists.txt.orig 2022-11-29 18:29:12.000000000 +0100
++++ indi-1.9.9/drivers/telescope/CMakeLists.txt 2023-04-09 14:41:33.999445125 +0200
+@@ -17,7 +17,7 @@ endif(NOT CYGWIN AND NOT WIN32)
target_compile_definitions(indilx200 PRIVATE "-DHAVE_LIBNOVA")
set_target_properties(indilx200 PROPERTIES VERSION ${CMAKE_INDI_VERSION_STRING} SOVERSION ${INDI_SOVERSION} OUTPUT_NAME indilx200)
-+target_link_libraries(indilx200 indidriver)
+
+-target_link_libraries(indilx200 indidevice)
++target_link_libraries(indilx200 indidriver indidevice)
install(TARGETS indilx200 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(FILES
+--- indi-1.9.9/libs/indiclientqt/CMakeLists.txt.orig 2022-11-29 18:29:12.000000000 +0100
++++ indi-1.9.9/libs/indiclientqt/CMakeLists.txt 2023-04-09 18:35:59.516579034 +0200
+@@ -48,6 +48,7 @@ list(APPEND ${PROJECT_NAME}_PRIVATE_HEAD
+ # Build Object Library
+ add_library(${PROJECT_NAME}_OBJECT OBJECT)
+ set_property(TARGET ${PROJECT_NAME}_OBJECT PROPERTY POSITION_INDEPENDENT_CODE 1)
++set_property(TARGET ${PROJECT_NAME}_OBJECT PROPERTY AUTOMOC ON)
+
+ target_include_directories(${PROJECT_NAME}_OBJECT
+ PUBLIC .
diff --git a/no_static_lib.patch b/no_static_lib.patch
index 1c55bf2..bde8d2a 100644
--- a/no_static_lib.patch
+++ b/no_static_lib.patch
@@ -1,11 +1,11 @@
---- libindi/libs/indibase/alignment/CMakeLists.txt.orig 2017-06-29 05:55:25.448075443 +0200
-+++ libindi/libs/indibase/alignment/CMakeLists.txt 2017-06-29 15:33:03.307679715 +0200
-@@ -80,7 +80,7 @@
- SET_TARGET_PROPERTIES(AlignmentClient PROPERTIES COMPILE_FLAGS "-fPIC")
- endif(NOT CYGWIN AND NOT WIN32)
+--- indi-1.9.9/libs/alignment/CMakeLists.txt.orig 2022-11-29 18:29:12.000000000 +0100
++++ indi-1.9.9/libs/alignment/CMakeLists.txt 2023-04-09 13:54:17.838143262 +0200
+@@ -99,7 +99,7 @@ endif(NOT CYGWIN AND NOT WIN32)
+ target_link_libraries(AlignmentClient indicore indidevice indiclient)
+
set_target_properties(AlignmentClient PROPERTIES OUTPUT_NAME indiAlignmentClient)
-install(TARGETS AlignmentClient ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+install(TARGETS AlignmentClient DESTINATION ${CMAKE_INSTALL_LIBDIR})
- ##################################################
- ############ LoaderCLient test program ###########
+ # #################################################
+ # ########### LoaderCLient test program ###########
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/libindi.git/commitdiff/a55d7dea2d35293cb9b7aee971fc74e814ac3029
More information about the pld-cvs-commit
mailing list