[packages/libindi] - updated to 1.4.1 (note: libindi shared library is gone; there are libindidriver shared libs and li

qboosh qboosh at pld-linux.org
Thu Jun 29 21:23:00 CEST 2017


commit a13a97a2f7c06ecfc79e54964aeaadc11f5b959e
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Thu Jun 29 21:24:30 2017 +0200

    - updated to 1.4.1 (note: libindi shared library is gone; there are libindidriver shared libs and libindiclient static libs now)
    - updated no_static_lib patch
    - added pc patch (.pc file fix from git)

 libindi-pc.patch    | 50 +++++++++++++++++++++++++++++++++++++++++
 libindi.spec        | 65 +++++++++++++++++++++++++++++++++++++++++------------
 no_static_lib.patch | 14 ++++++------
 3 files changed, 108 insertions(+), 21 deletions(-)
---
diff --git a/libindi.spec b/libindi.spec
index ce15f1b..f061577 100644
--- a/libindi.spec
+++ b/libindi.spec
@@ -1,16 +1,22 @@
+#
+# Conditional build:
+%bcond_without	qt5	# Qt5 client library
+#
 Summary:	Instrument Neutral Distributed Interface
 Summary(pl.UTF-8):	Instrument Neutral Distributed Interface - interfejs do sterowania przyrządami
 Name:		libindi
-Version:	1.2.0
-Release:	2
+Version:	1.4.1
+Release:	1
 License:	LGPL v2.1+
 Group:		Libraries
 Source0:	http://downloads.sourceforge.net/indi/%{name}_%{version}.tar.gz
-# Source0-md5:	21eae8f5ccfef8a28cc0c3a763a1f4fb
+# Source0-md5:	9f7556239dda08b7175ec44bd5a61b71
 Patch0:		no_static_lib.patch
+Patch1:		%{name}-pc.patch
 URL:		http://www.indilib.org/
+%{?with_qt5:BuildRequires:	Qt5Network-devel >= 5.0}
 BuildRequires:	cfitsio-devel >= 3.03
-BuildRequires:	cmake >= 2.8.0
+BuildRequires:	cmake >= 3.0
 BuildRequires:	curl-devel
 BuildRequires:	gsl-devel >= 1.10
 # not actually used now
@@ -20,6 +26,7 @@ BuildRequires:	libnova-devel >= 0.12.2
 BuildRequires:	libusb-devel >= 1
 BuildRequires:	libstdc++-devel >= 6:4.3
 BuildRequires:	pkgconfig
+%{?with_qt5:BuildRequires:	qt5-build >= 5.0}
 BuildRequires:	rpmbuild(macros) >= 1.603
 BuildRequires:	zlib-devel
 Requires:	cfitsio >= 3.03
@@ -74,20 +81,38 @@ Static INDI libraries.
 %description static -l pl.UTF-8
 Statyczne biblioteki INDI.
 
+%package qt5-devel
+Summary:	INDI Qt5 client library
+Summary(pl.UTF-8):	Biblioteka kliencka INDI oparta o Qt5
+Group:		Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+Requires:	Qt5Network-devel >= 5
+
+%description qt5-devel
+INDI Qt5 client library.
+
+%description qt5-devel -l pl.UTF-8
+Biblioteka kliencka INDI oparta o Qt5.
+
 %prep
-%setup -q -n %{name}_%{version}
+%setup -q -n %{name}
 %patch0 -p1
+%patch1 -p2
 
 %build
 install -d build
 cd build
+# note: CMakeLists expect relative CMAKE_INSTALL_LIBDIR
 %cmake .. \
+	-DCMAKE_INSTALL_LIBDIR=%{_lib} \
+	%{?with_qt5:-DINDI_BUILD_QT5_CLIENT=ON} \
 	-DINDI_MATH_PLUGINS_DIRECTORY:PATH=%{_libdir}/indi/MathPlugins
 
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
+
 %{__make} -C build install \
 	DESTDIR=$RPM_BUILD_ROOT
 
@@ -106,11 +131,13 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/indi_flipflat
 %attr(755,root,root) %{_bindir}/indi_getprop
 %attr(755,root,root) %{_bindir}/indi_gpusb
+%attr(755,root,root) %{_bindir}/indi_hitecastrodc_focus
 %attr(755,root,root) %{_bindir}/indi_ieq_telescope
 %attr(755,root,root) %{_bindir}/indi_imager_agent
-%attr(755,root,root) %{_bindir}/indi_intelliscope
 %attr(755,root,root) %{_bindir}/indi_joystick
+%attr(755,root,root) %{_bindir}/indi_lx200_10micron
 %attr(755,root,root) %{_bindir}/indi_lx200_16
+%attr(755,root,root) %{_bindir}/indi_lx200_OnStep
 %attr(755,root,root) %{_bindir}/indi_lx200ap
 %attr(755,root,root) %{_bindir}/indi_lx200autostar
 %attr(755,root,root) %{_bindir}/indi_lx200basic
@@ -123,14 +150,18 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/indi_lx200ss2000pc
 %attr(755,root,root) %{_bindir}/indi_lx200zeq25
 %attr(755,root,root) %{_bindir}/indi_lynx_focus
-%attr(755,root,root) %{_bindir}/indi_magellan1
 %attr(755,root,root) %{_bindir}/indi_meta_weather
+%attr(755,root,root) %{_bindir}/indi_microtouch_focus
 %attr(755,root,root) %{_bindir}/indi_moonlite_focus
 %attr(755,root,root) %{_bindir}/indi_nfocus
+%attr(755,root,root) %{_bindir}/indi_nstep_focus
+%attr(755,root,root) %{_bindir}/indi_optec_wheel
 %attr(755,root,root) %{_bindir}/indi_perfectstar_focus
+%attr(755,root,root) %{_bindir}/indi_quantum_wheel
 %attr(755,root,root) %{_bindir}/indi_robo_focus
 %attr(755,root,root) %{_bindir}/indi_rolloff_dome
-%attr(755,root,root) %{_bindir}/indi_sbig_stv
+%attr(755,root,root) %{_bindir}/indi_script_dome
+%attr(755,root,root) %{_bindir}/indi_script_telescope
 %attr(755,root,root) %{_bindir}/indi_setprop
 %attr(755,root,root) %{_bindir}/indi_simulator_ccd
 %attr(755,root,root) %{_bindir}/indi_simulator_dome
@@ -138,24 +169,22 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/indi_simulator_gps
 %attr(755,root,root) %{_bindir}/indi_simulator_telescope
 %attr(755,root,root) %{_bindir}/indi_simulator_wheel
-%attr(755,root,root) %{_bindir}/indi_skycommander
 %attr(755,root,root) %{_bindir}/indi_skywatcherAPIMount
 %attr(755,root,root) %{_bindir}/indi_smartfocus_focus
+%attr(755,root,root) %{_bindir}/indi_sqm_weather
 %attr(755,root,root) %{_bindir}/indi_star2000
 %attr(755,root,root) %{_bindir}/indi_steeldrive_focus
 %attr(755,root,root) %{_bindir}/indi_synscan
-%attr(755,root,root) %{_bindir}/indi_tcfs_focus
 %attr(755,root,root) %{_bindir}/indi_tcfs3_focus
+%attr(755,root,root) %{_bindir}/indi_tcfs_focus
 %attr(755,root,root) %{_bindir}/indi_temma
-%attr(755,root,root) %{_bindir}/indi_trutech_wheel
+%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_watchdog
 %attr(755,root,root) %{_bindir}/indi_wunderground_weather
 %attr(755,root,root) %{_bindir}/indi_xagyl_wheel
 %attr(755,root,root) %{_bindir}/indiserver
-%attr(755,root,root) %{_libdir}/libindi.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libindi.so.1
 %attr(755,root,root) %{_libdir}/libindidriver.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libindidriver.so.1
 %attr(755,root,root) %{_libdir}/libindiAlignmentDriver.so.*.*.*
@@ -168,19 +197,27 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/indi/indi_tcfs_sk.xml
 /lib/udev/rules.d/99-flipflat.rules
 /lib/udev/rules.d/99-gpusb.rules
+/lib/udev/rules.d/99-hitecastrodcfocuser.rules
 /lib/udev/rules.d/99-perfectstar.rules
 /lib/udev/rules.d/99-vantage.rules
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libindi.so
 %attr(755,root,root) %{_libdir}/libindidriver.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}/libindidriver.a
+
+%if %{with qt5}
+%files qt5-devel
+%defattr(644,root,root,755)
+%{_libdir}/libindiclientqt.a
+%{_includedir}/libindi/baseclientqt.h
+%endif
diff --git a/libindi-pc.patch b/libindi-pc.patch
new file mode 100644
index 0000000..87e9cd6
--- /dev/null
+++ b/libindi-pc.patch
@@ -0,0 +1,50 @@
+From 2363105d83087e83adf86846d192e5e17cd61b19 Mon Sep 17 00:00:00 2001
+From: Jasem Mutlaq <mutlaqja at ikarustech.com>
+Date: Sun, 19 Mar 2017 11:10:37 +0300
+Subject: [PATCH] Update libindi.pc to include updated libs in 1.4.1
+
+---
+ libindi/CMakeLists.txt   | 3 +++
+ libindi/libindi.pc.cmake | 4 ++--
+ 2 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/libindi/CMakeLists.txt b/libindi/CMakeLists.txt
+index 46247a7b..18ea148d 100644
+--- a/libindi/CMakeLists.txt
++++ b/libindi/CMakeLists.txt
+@@ -48,6 +48,8 @@ set(INCLUDE_INSTALL_DIR      "${CMAKE_INSTALL_PREFIX}/include/")
+ set(PKGCONFIG_INSTALL_PREFIX "${CMAKE_INSTALL_LIBDIR}/pkgconfig/")
+ set(UDEVRULES_INSTALL_DIR "/lib/udev/rules.d" CACHE STRING "Base directory for udev rules")
+ 
++set(PKG_CONFIG_LIBDIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
++
+ #####################################  Build Options  ##############################################
+ # Select which components to build and what options to apply
+ 
+@@ -318,6 +320,7 @@ set_target_properties(indidriver PROPERTIES COMPILE_FLAGS "-fPIC")
+ set_target_properties(indidriver PROPERTIES VERSION ${CMAKE_INDI_VERSION_STRING} SOVERSION ${INDI_SOVERSION} OUTPUT_NAME indidriver)
+ target_link_libraries(indidriver ${LIBUSB_1_LIBRARIES} ${NOVA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CFITSIO_LIBRARIES} ${M_LIB} ${ZLIB_LIBRARY} ${JPEG_LIBRARY})
+ install(TARGETS indidriver LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
++set(PKG_CONFIG_LIBS "${PKG_CONFIG_LIBS} -lindidriver -lindiAlignmentDriver")
+ endif(CYGWIN)
+ 
+ 
+diff --git a/libindi/libindi.pc.cmake b/libindi/libindi.pc.cmake
+index 39b8cdb7..8deb8420 100644
+--- a/libindi/libindi.pc.cmake
++++ b/libindi/libindi.pc.cmake
+@@ -1,12 +1,12 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=@LIB_DESTINATION@
++libdir=@PKG_CONFIG_LIBDIR@
+ includedir=@INCLUDE_INSTALL_DIR@
+ 
+ Name: libindi
+ Description: Instrument Neutral Distributed Interface
+ URL: http://www.indilib.org/
+ Version: @CMAKE_INDI_VERSION_STRING@
+-Libs: -L${libdir} -lindi
++Libs: -L${libdir} @PKG_CONFIG_LIBS@
+ Cflags: -I${includedir} -I${includedir}/libindi
+ 
diff --git a/no_static_lib.patch b/no_static_lib.patch
index 0e19e72..1c55bf2 100644
--- a/no_static_lib.patch
+++ b/no_static_lib.patch
@@ -1,11 +1,11 @@
---- libindi-0.9.8/libs/indibase/alignment/CMakeLists.txt.orig	2014-08-25 12:37:15.100484050 +0200
-+++ libindi-0.9.8/libs/indibase/alignment/CMakeLists.txt	2014-08-25 12:37:36.873688353 +0200
-@@ -62,7 +62,7 @@ set (AlignmentClient_SRCS
- 
- add_library(AlignmentClient ${AlignmentClient_SRCS})
+--- 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)
  set_target_properties(AlignmentClient PROPERTIES OUTPUT_NAME indiAlignmentClient)
--install(TARGETS AlignmentClient ARCHIVE DESTINATION ${LIB_DESTINATION})
-+install(TARGETS AlignmentClient DESTINATION ${LIB_DESTINATION})
+-install(TARGETS AlignmentClient ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++install(TARGETS AlignmentClient DESTINATION ${CMAKE_INSTALL_LIBDIR})
  
  ##################################################
  ############ LoaderCLient test program ###########
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/libindi.git/commitdiff/a13a97a2f7c06ecfc79e54964aeaadc11f5b959e



More information about the pld-cvs-commit mailing list