summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-libs/indilib/Manifest1
-rw-r--r--sci-libs/indilib/files/indilib-2.0.5-link-system-httplib.patch21
-rw-r--r--sci-libs/indilib/indilib-2.0.5.ebuild80
3 files changed, 102 insertions, 0 deletions
diff --git a/sci-libs/indilib/Manifest b/sci-libs/indilib/Manifest
index 7eeba85ab97f..d05290120206 100644
--- a/sci-libs/indilib/Manifest
+++ b/sci-libs/indilib/Manifest
@@ -1 +1,2 @@
DIST indilib-2.0.4.tar.gz 2778082 BLAKE2B 21573abeb054f6693d29e5e67908be8be06246c138dba7dd8815c80d338fe8dbc202b103454f8e9a0b97e0fa05d5464547f32a2aa6bc0fa6189ddabd1f67428c SHA512 cb8c05ed2d814350e8357dfb3fd42ce5f2db88a0d150b0feb63fcb85cadd70369bfce1600a60837e242e5815ad076923428c456f4b331ffe1a22a2c02e11ced4
+DIST indilib-2.0.5.tar.gz 2781981 BLAKE2B 7347c3e6cf5a32d1b136d8251253154fe7b25252070c34b8d03627e02c2cb3472ed2f44a12a7b7d87f95ba6b6b18a66a9cd528d5cba64c5df0a167fa6a20e017 SHA512 42cdc6d48ac1daf39ab96552dc134aa400bb847d2bcf22f0845aec9639ed44cdf9a2abb4b80d7c3b1c15b76b6f3d3a86333cc7a1a0b84033bc5404b78d758ea2
diff --git a/sci-libs/indilib/files/indilib-2.0.5-link-system-httplib.patch b/sci-libs/indilib/files/indilib-2.0.5-link-system-httplib.patch
new file mode 100644
index 000000000000..5f50d6967444
--- /dev/null
+++ b/sci-libs/indilib/files/indilib-2.0.5-link-system-httplib.patch
@@ -0,0 +1,21 @@
+From 0d5beb7fe9d8a7f0fa6f56044077f83605a778fa Mon Sep 17 00:00:00 2001
+From: Mario Haustein <mario.haustein@hrz.tu-chemnitz.de>
+Date: Sat, 2 Dec 2023 10:06:59 +0100
+Subject: [PATCH] Link against httplib if using system libraries (#1968)
+
+---
+ drivers/telescope/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/telescope/CMakeLists.txt b/drivers/telescope/CMakeLists.txt
+index 331a30d84e..9c2f9f234c 100644
+--- a/drivers/telescope/CMakeLists.txt
++++ b/drivers/telescope/CMakeLists.txt
+@@ -262,6 +262,6 @@ install(TARGETS indi_skywatcherAltAzMount RUNTIME DESTINATION bin)
+ add_executable(indi_planewave_telescope
+ planewave_mount.cpp)
+
+-target_link_libraries(indi_planewave_telescope indidriver)
++target_link_libraries(indi_planewave_telescope indidriver ${HTTPLIB_LIBRARY})
+
+ install(TARGETS indi_planewave_telescope RUNTIME DESTINATION bin)
diff --git a/sci-libs/indilib/indilib-2.0.5.ebuild b/sci-libs/indilib/indilib-2.0.5.ebuild
new file mode 100644
index 000000000000..82fc5ae8b896
--- /dev/null
+++ b/sci-libs/indilib/indilib-2.0.5.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake udev
+
+DESCRIPTION="INDI Astronomical Control Protocol library"
+HOMEPAGE="https://www.indilib.org/"
+SRC_URI="https://github.com/${PN}/${PN/lib/}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P/lib/}"
+
+LICENSE="BSD GPL-2+ LGPL-2+ LGPL-2.1+"
+SLOT="0/1"
+KEYWORDS="~amd64 ~x86"
+IUSE="ogg rtlsdr test websocket"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-cpp/cpp-httplib:=
+ dev-libs/libev
+ media-libs/libjpeg-turbo:=
+ net-misc/curl
+ sci-libs/cfitsio:=
+ sci-libs/fftw:3.0=
+ sci-libs/gsl:=
+ sci-libs/libnova:=
+ sys-libs/zlib
+ virtual/libusb:1
+ ogg? (
+ media-libs/libogg
+ media-libs/libtheora
+ )
+ rtlsdr? ( net-wireless/rtl-sdr )
+ websocket? ( dev-libs/boost:= )
+"
+DEPEND="${RDEPEND}
+ kernel_linux? ( sys-kernel/linux-headers )
+ test? ( >=dev-cpp/gtest-1.8.0 )
+ websocket? ( dev-cpp/websocketpp )
+"
+
+PATCHES=( "${FILESDIR}/${P}-link-system-httplib.patch" )
+
+src_configure() {
+ local mycmakeargs=(
+ -DINDI_SYSTEM_HTTPLIB=ON
+ -DINDI_BUILD_QT5_CLIENT=OFF
+ -DINDI_BUILD_SHARED=ON
+ -DINDI_BUILD_STATIC=OFF
+ -DINDI_BUILD_XISF=OFF # not packaged
+ -DUDEVRULES_INSTALL_DIR="${EPREFIX}$(get_udevdir)"/rules.d
+ $(cmake_use_find_package ogg OggTheora)
+ $(cmake_use_find_package rtlsdr RTLSDR)
+ -DINDI_BUILD_UNITTESTS=$(usex test)
+ -DINDI_BUILD_INTEGTESTS=$(usex test)
+ -DINDI_BUILD_WEBSOCKET=$(usex websocket)
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ # Unit tests
+ BUILD_DIR="${BUILD_DIR}"/test cmake_src_test
+
+ # Integration tests
+ # They fail in parallel because they try to bind to the same port more
+ # than once.
+ BUILD_DIR="${BUILD_DIR}"/integs cmake_src_test -j1
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}