Name: indigo Version: 2.0.340 Release: 2%{?dist} Summary: INDIGO astronomy framework, tools, and drivers License: LicenseRef-INDIGO-2.0 URL: https://github.com/indigo-astronomy/indigo %global tag 2.0-340 Source0: %{url}/archive/refs/tags/%{tag}.tar.gz#/indigo-%{tag}.tar.gz BuildRequires: automake BuildRequires: autoconf BuildRequires: cmake BuildRequires: libtool BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: make BuildRequires: git BuildRequires: pkgconfig BuildRequires: curl BuildRequires: libcurl-devel BuildRequires: zlib-devel BuildRequires: libusb-compat-0.1-devel BuildRequires: avahi-compat-libdns_sd-devel BuildRequires: libudev-devel BuildRequires: systemd-devel BuildRequires: patchelf BuildRequires: LibRaw-devel # Optional, keeps linkers targeting system libs where possible BuildRequires: libjpeg-turbo-devel BuildRequires: libtiff-devel BuildConflicts: libraw1394-devel Requires: libusb-compat-0.1 Requires: avahi-compat-libdns_sd Requires: libcurl %description INDIGO framework with server, CLI tools, shared libraries, and a large set of loadable drivers for astronomical devices. # ---- subpackages %package libs Summary: INDIGO shared libraries and bundled vendor SDKs %description libs Shared libraries used by INDIGO tools and drivers. %package drivers Summary: INDIGO loadable and executable drivers plus driver lists Requires: %{name}-libs = %{version}-%{release} %description drivers All loadable (*.so) and executable drivers and the driver list files. %package devel Summary: Headers, pkg-config, and static libs for INDIGO Requires: %{name}-libs = %{version}-%{release} %description devel Headers under /usr/include/indigo and indigo.pc for building against INDIGO. %prep %autosetup -n %{name}-%{tag} %build # build LibRaw first to avoid header race # make -j1 -C indigo_libs/externals/libraw || : export CFLAGS="%{build_cflags} -I$PWD/indigo_libs/externals/libraw/libraw" export CXXFLAGS="%{build_cxxflags} -I$PWD/indigo_libs/externals/libraw/libraw" %make_build all -j1 all %install # ---- binaries: install INDIGO tools only (skip cjpeg/tiff* utilities) install -d %{buildroot}%{_bindir} for b in indigo_server indigo_prop_tool indigo_driver_metadata \ indigo_list_usbserial indigo_raw_crop indigo_raw_to_fits \ indigo_scan_drivers indigo_drivers; do [ -x build/bin/$b ] && install -m0755 build/bin/$b %{buildroot}%{_bindir}/$b done # ---- shared libs into system libdir install -d %{buildroot}%{_libdir} cp -a build/lib/*.so* %{buildroot}%{_libdir}/ 2>/dev/null || : # ---- drivers (.so + executable shims) in a private dir install -d %{buildroot}%{_libdir}/indigo/drivers cp -a build/drivers/*.so %{buildroot}%{_libdir}/indigo/drivers/ 2>/dev/null || : find build/drivers -maxdepth 1 -type f -perm /111 ! -name "*.so" ! -name "*.a" \ -exec install -m0755 {} %{buildroot}%{_libdir}/indigo/drivers/ \; # ---- driver lists install -d %{buildroot}%{_datadir}/indigo cp -a build/share/indigo/indigo_* %{buildroot}%{_datadir}/indigo/ 2>/dev/null || : # ---- devel bits install -d %{buildroot}%{_includedir}/indigo cp -a build/include/* %{buildroot}%{_includedir}/indigo/ 2>/dev/null || : cp -a build/lib/libindigo.a %{buildroot}%{_libdir}/ 2>/dev/null || : cp -a build/lib/libindigocat.a %{buildroot}%{_libdir}/ 2>/dev/null || : install -d %{buildroot}%{_libdir}/pkgconfig sed -e 's|^prefix=.*|prefix=%{_prefix}|' \ -e 's|^exec_prefix=.*|exec_prefix=%{_prefix}|' \ -e 's|^libdir=.*|libdir=%{_libdir}|' \ -e 's|^includedir=.*|includedir=%{_includedir}/indigo|' \ indigo.pc > %{buildroot}%{_libdir}/pkgconfig/indigo.pc # ---- scrub RPATH/RUNPATH everywhere while IFS= read -r -d '' f; do patchelf --remove-rpath "$f" 2>/dev/null || : done < <(find %{buildroot} -type f \( -perm /111 -o -name "*.so*" \) -print0) # Drop stray .la files if any find %{buildroot}%{_libdir} -name "*.la" -delete 2>/dev/null || : %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %check # no upstream tests %files %license LICENSE.md %doc README.md CHANGELOG.md %{_bindir}/indigo_* %files libs %{_libdir}/*.so* %files drivers %{_libdir}/indigo/drivers/* %{_datadir}/indigo/indigo_drivers %{_datadir}/indigo/indigo_linux_drivers %files devel %{_includedir}/indigo/ %{_libdir}/libindigo.a %{_libdir}/libindigocat.a %{_libdir}/pkgconfig/indigo.pc %changelog * Fri Sep 12 2025 Packager - 2.0.340-2 - Use system LibRaw headers. - Exclude JPEG/TIFF utilities to avoid file conflicts. - Add RPATH scrub. Package tools, libs, drivers, driver lists, headers, pc. * Fri Sep 12 2025 Packager - 2.0.340-1 - Initial Fedora packaging with binaries, drivers, libs, headers, mans, docs.