## START: Set by rpmautospec ## (rpmautospec version 0.3.5) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 2; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec # Define boolean to quickly set option and dependencies for # building QT5 client %global build_qt5_client 1 # Define boolean to quickly set option and dependencies for # building with websocket support %global build_websocket 1 # Define boolean to quickly set option and dependencies for # unit tests %global build_tests 1 Name: libindi Version: 2.0.5 Release: %autorelease Summary: Instrument Neutral Distributed Interface # See COPYRIGHT file for a description of the licenses and files covered # 'LicenseRef-NASA-FV-License-Agreement' (CFITSIO) headers found in: # - /libs/fpack/fpack.h # - /libs/fpack/fpackutil.c License: GPL-2.0-or-later AND LGPL-2.1-or-later AND LGPL-2.0-or-later and BSD-3-Clause AND ISC AND MIT AND CFITSIO URL: http://www.indilib.org Source0: https://github.com/indilib/indi/archive/v%{version}/indi-%{version}.tar.gz # Unbundle cpp json library # https://github.com/indilib/indi/pull/1970 Patch: system-jsonlib.patch BuildRequires: cmake BuildRequires: libev-devel BuildRequires: libogg-devel BuildRequires: libnova-devel BuildRequires: libtheora-devel BuildRequires: libXISF-devel BuildRequires: systemd-rpm-macros %if 0%{?fedora} %global system_httplib ON BuildRequires: cpp-httplib-static %global system_jsonlib ON BuildRequires: json-static %else %global system_httplib OFF %global system_jsonlib OFF %endif BuildRequires: pkgconfig(cfitsio) BuildRequires: pkgconfig(fftw3) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(gsl) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libusb-1.0) BuildRequires: pkgconfig(zlib) %if 0%{?build_qt5_client} BuildRequires: pkgconfig(Qt5Network) %global qt5_client ON %else %global qt5_client OFF %endif %if 0%{?build_websocket} BuildRequires: boost-devel BuildRequires: websocketpp-devel %global websocket ON %else %global websocket OFF %endif %if 0%{?build_tests} BuildRequires: pkgconfig(gtest) BuildRequires: pkgconfig(gmock) %global tests ON %else %global tests OFF %endif Requires: %{name}-libs%{?_isa} = %{version}-%{release} Provides: bundled(fpack) = 1.7.0 Provides: bundled(hidapi) %if !0%{?fedora} Provides: bundled(httplib) = 0.12.4 Provides: bundled(json) = 3.10.5 %endif %description INDI is a distributed control protocol designed to operate astronomical instrumentation. INDI is small, flexible, easy to parse, and scalable. It supports common DCS functions such as remote control, data acquisition, monitoring, and a lot more. %package devel Summary: Libraries, includes, etc. used to develop an application with %{name} Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-static%{?_isa} = %{version}-%{release} %description devel These are the header files needed to develop a %{name} application %package libs Summary: INDI shared libraries %description libs These are the shared libraries of INDI. %if 0%{?build_qt5_client} %package qt Summary: INDI Qt5 client libraries Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description qt These are the Qt5 client libraries of INDI. %endif %package static Summary: Static libraries, includes, etc. used to develop an application with %{name} Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description static Static library needed to develop a %{name} application %prep %autosetup -p1 -n indi-%{version} # For Fedora we want to put udev rules in %%{_udevrulesdir} sed -i 's|/lib/udev/rules.d|%{_udevrulesdir}|g' CMakeLists.txt chmod -x drivers/telescope/pmc8driver.h chmod -x drivers/telescope/pmc8driver.cpp %if 0%{?fedora} # Remove bundled httplib-headers and license file rm -rf libs/httplib # Remove bundled json library rm -rf libs/nlohmann %endif %build %cmake \ -DINDI_BUILD_QT5_CLIENT="%{qt5_client}" \ -DINDI_BUILD_UNITTESTS="%{tests}" \ -DINDI_BUILD_WEBSOCKET="%{websocket}" \ -DINDI_SYSTEM_HTTPLIB="%{system_httplib}" \ -DINDI_SYSTEM_JSONLIB="%{system_jsonlib}" %cmake_build %install %cmake_install %check %if 0%{?build_tests} %if 0%{?fedora} %ctest --test-dir %_vpath_builddir/test %else %ctest --test-dir test %endif %endif %files %license COPYING.BSD COPYING.GPL COPYING.LGPL COPYRIGHT LICENSE %doc AUTHORS ChangeLog NEWS README %{_bindir}/indi_* %{_bindir}/indiserver %{_bindir}/shelyak_usis %{_datadir}/indi %{_udevrulesdir}/80-dbk21-camera.rules %{_udevrulesdir}/99-indi_auxiliary.rules %files libs %license COPYING.BSD COPYING.GPL COPYING.LGPL COPYRIGHT LICENSE %if 0%{?build_qt5_client} %exclude %{_libdir}/libindiclientqt.so.* %endif %{_libdir}/%{name}*.so.2 %{_libdir}/%{name}*.so.2.* %{_libdir}/indi/MathPlugins %if 0%{?build_qt5_client} %files qt %{_libdir}/libindiclientqt.so.2 %{_libdir}/libindiclientqt.so.2.* %endif %files devel %{_includedir}/%{name} %{_libdir}/%{name}*.so %{_libdir}/pkgconfig/%{name}.pc %files static %{_libdir}/%{name}*.a %changelog * Sat Dec 02 2023 Mattia Verga - 2.0.5-2 - Use system's json library for Fedora * Sat Dec 02 2023 Mattia Verga - 2.0.5-1 - Update to 2.0.5 (fedora#2252411) * Mon Oct 02 2023 Mattia Verga - 2.0.4-1 - Update to 2.0.4 * Sun Oct 01 2023 Mattia Verga - 2.0.3-3 - Fix license and add declare bundled libs * Sun Sep 17 2023 Mattia Verga - 2.0.3-2 - Fix test call for EPEL * Sun Aug 20 2023 Mattia Verga - 2.0.3-1 - Update to 2.0.3 * Thu Jul 20 2023 Fedora Release Engineering - 2.0.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Fri Jun 02 2023 Mattia Verga - 2.0.2-1 - Update to 2.0.2 (fedora#2211737) * Mon Apr 17 2023 Yaakov Selkowitz - 2.0.1-3 - Fix systemd BuildRequires * Mon Apr 17 2023 Yaakov Selkowitz - 2.0.1-2 - Separate Qt5 client library * Tue Apr 11 2023 Mattia Verga - 2.0.1-1 - Update to 2.0.1 (fedora#2184574) - Enable libXISF support * Sun Feb 26 2023 Orion Poplawski - 2.0.0-3 - Rebuilt for Boost 1.81 * Tue Feb 14 2023 Mattia Verga - 2.0.0-2 - Remove old patch * Tue Feb 14 2023 Mattia Verga - 2.0.0-1 - Update to 2.0.0 (fedora#2165858) * Sun Jan 29 2023 Benjamin A. Beasley - 1.9.9-4 - Fix missing header for GCC 13 * Thu Jan 19 2023 Fedora Release Engineering - 1.9.9-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Thu Dec 29 2022 Maxwell G - 1.9.9-2 - Rebuild for cfitsio 4.2 * Sun Dec 04 2022 Mattia Verga - 1.9.9-1 - Update to 1.9.9 (fedora#2149808) * Tue Oct 04 2022 Mattia Verga - 1.9.8-1 - Update to 1.9.8 * Tue Aug 23 2022 Mamoru TASAKA - 1.9.7-2 - Rebuild for gsl-2.7.1 * Sat Aug 06 2022 Mattia Verga - 1.9.7-1 - Update to 1.9.7 * Thu Jul 21 2022 Fedora Release Engineering - 1.9.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Mon Mar 21 2022 Mattia Verga - 1.9.5.1-1 - Upgrade to 1.9.5.1 * Mon Feb 28 2022 Rex Dieter - 1.9.4-2 - enable ogg/theora support * Sat Feb 05 2022 Mattia Verga - 1.9.4-1 - Upgrade to 1.9.4 * Thu Jan 20 2022 Fedora Release Engineering - 1.9.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Thu Jan 06 2022 Mattia Verga - 1.9.3-2 - Disable tests on s390x * Thu Jan 06 2022 Mattia Verga - 1.9.3-1 - Upgrade to 1.9.3 - Remove unneeded patches - Fix and enable tests * Thu Jul 22 2021 Fedora Release Engineering - Packaging variables read or set by %forgemeta - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Thu May 13 2021 Mattia Verga - 1.9.0-1 - Upgrade to 1.9.0 - Added options to build qt5 client and unit tests - Remove %%ldconfig_scriptlets macro * Tue Feb 02 2021 Christian Dersch - 1.8.6-4 - Rebuilt for libcfitsio.so.7 * Tue Jan 26 2021 Fedora Release Engineering - 1.8.6-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Fri Dec 04 2020 Jeff Law - 1.8.6-2 - Fix missing #includes for gcc-11 * Mon Aug 24 2020 Sergio Pascual - 1.8.6-1 - New upstream source (1.8.6) * Tue Aug 18 2020 Sergio Pascual - 1.8.5-4 - Fix cmake out-of-source-build (bz #1864002) * Sat Aug 01 2020 Fedora Release Engineering - 1.8.5-3 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jul 28 2020 Fedora Release Engineering - 1.8.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Thu Jul 09 2020 Sergio Pascual 1.8.5-1 - New upstream source (1.8.5) * Wed Jul 08 2020 Jeff Law 1.8.1-4 - Disable LTO * Sun Mar 01 2020 Sergio Pascual 1.8.1-3 - Patch stime in arm (bz#1799588) * Wed Jan 29 2020 Fedora Release Engineering - 1.8.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Sun Oct 20 2019 Christian Dersch - 1.8.1-1 - new version * Tue Aug 20 2019 Susi Lehtola - 1.7.7-3 - Rebuilt for GSL 2.6. * Thu Jul 25 2019 Fedora Release Engineering - 1.7.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sun Apr 28 2019 Christian Dersch - 1.7.7-1 - new version * Fri Feb 01 2019 Fedora Release Engineering - 1.7.4-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Wed Jan 23 2019 Björn Esser - 1.7.4-3 - Append curdir to CMake invokation. (#1668512) * Tue Jul 31 2018 Florian Weimer - 1.7.4-2 - Rebuild with fixed binutils * Sun Jul 29 2018 Christian Dersch - 1.7.4-1 - new version * Fri Jul 13 2018 Fedora Release Engineering - 1.7.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Thu Jun 21 2018 Sergio Pascual 1.7.2-2 - Patch udev rule to remove plugdev (bz #1577332) * Sat May 26 2018 Christian Dersch - 1.7.2-1 - new version * Fri Feb 23 2018 Christian Dersch - 1.6.2-3 - rebuilt for cfitsio 3.420 (so version bump) * Wed Feb 07 2018 Fedora Release Engineering - 1.6.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Mon Jan 08 2018 Christian Dersch - 1.6.2-1 - new version * Mon Jan 08 2018 Christian Dersch - 1.6.1-1 - new version * Tue Jan 02 2018 Christian Dersch - 1.6.0-1 - new version - split shared libraries into -libs subpackage, to be multiarch clean * Sat Oct 07 2017 Christian Dersch - 1.5.0-1 - new version * Sat Aug 05 2017 Christian Dersch - 1.4.1-4 - Rebuild (gsl) * Thu Aug 03 2017 Fedora Release Engineering - 1.4.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 1.4.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Mon Feb 27 2017 Christian Dersch - 1.4.1-1 - new version * Sun Feb 26 2017 Christian Dersch - 1.4.0-1 - new version * Fri Feb 10 2017 Fedora Release Engineering - 1.3.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Thu Dec 15 2016 derschc - 1.3.1-1 - new version * Sat May 07 2016 Christian Dersch - 1.2.0-3 - Unified spec for Fedora and EPEL * Mon Feb 22 2016 Orion Poplawski - 1.2.0-2 - Rebuild for gsl 2.1 * Tue Feb 02 2016 Christian Dersch - 1.2.0-1 - new version * Mon Sep 07 2015 Christian Dersch 1.1.0-1 - New upstream source (1.1.0) - New BR: curl-devel - New BR: systemd (for udevrulesdir macro) * Mon Feb 23 2015 Sergio Pascual 1.0.0-1 - New upstream source (1.0.0) * Mon Oct 06 2014 Sergio Pascual 0.9.9-1 - New upstream source (0.9.9) - Removed patches ported upstream * Sun Aug 17 2014 Fedora Release Engineering - 0.9.8.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Mon Jul 28 2014 Peter Robinson 0.9.8.1-6 - rebuild (libnova) * Sat Jun 07 2014 Fedora Release Engineering - 0.9.8.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Mon May 12 2014 Marcin Juszkiewicz 0.9.8.1-4 - Add AArch64 definitions where needed. * Fri May 09 2014 Sergio Pascual 0.9.8.1-3 - Plugin directory has to be arch-dependent * Sun Apr 27 2014 Christian Dersch 0.9.8.1-2 - Fix wrong upstream version * Thu Apr 24 2014 Sergio Pascual 0.9.8.1-1 - New upstream source (0.9.8.1) * Tue Dec 03 2013 Sergio Pascual 0.9.7-1 - New upstream source (0.9.7) * Sat Aug 03 2013 Fedora Release Engineering - 0.9.6-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Wed Jul 17 2013 Sergio Pascual 0.9.6-5 - rebuild (cfitsio 3.350) * Fri Mar 22 2013 Rex Dieter 0.9.6-4 - rebuild (cfitsio) * Wed Mar 20 2013 Rex Dieter 0.9.6-3 - rebuild (cfitsio) * Thu Feb 14 2013 Fedora Release Engineering - 0.9.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Fri Dec 07 2012 Sergio Pascual - 0.9.6-1 - New upstream source - Added udev rules (in wrong directory) - Fixed FSF previous address bug, new appear * Tue Jan 24 2012 Sergio Pascual - 0.9-1 - New upstream source - All instruments created (solves #653690) - Library does not call exit() - Library does not build require boost-devel * Fri Jan 13 2012 Fedora Release Engineering - 0.8-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Fri Jul 15 2011 Sergio Pascual - 0.8-1 - New upstream source - Submitted a bug upstream, address of FSF is incorrect in some files * Tue Feb 08 2011 Fedora Release Engineering - 0.6.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Fri Nov 26 2010 Sergio Pascual - 0.6.2-2 - Adding manually telescopes missing (bz #653690) * Thu Jul 29 2010 Sergio Pascual - 0.6.2-1 - New upstream source (bz #618776) - Bz #564842 fixed upstream, patch removed - With pkgconfig file * Wed Feb 17 2010 Sergio Pascual - 0.6-11 - Added missing -lm in indi_sbig_stv. Fixes bz #564842 * Fri Jan 08 2010 Sergio Pascual - 0.6-10 - EVR bump, rebuilt with new libnova * Tue Dec 22 2009 Sergio Pascual - 0.6-9 - Static library moved to its own subpackage * Fri Jul 24 2009 Fedora Release Engineering - 0.6-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Wed Feb 25 2009 Fedora Release Engineering - 0.6-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Wed Feb 18 2009 Sergio Pascual - 0.6-6 - Provides libindi-static * Tue Feb 17 2009 Sergio Pascual - 0.6-5 - Need to provide the static library libindidriver.a to build indi-apogee * Sat Feb 14 2009 Sergio Pascual - 0.6-4 - Fixed patch to find cfitsio * Sat Feb 14 2009 Sergio Pascual - 0.6-3 - Patch to detect cfitsio in all architectures * Fri Feb 06 2009 Sergio Pascual - 0.6-2 - Commands (rm, make) instead of macros - Upstream bug about licenses (GPLv2 missing) - Upstream bug about libindi calling exit * Mon Jan 26 2009 Sergio Pascual - 0.6-1 - First version