From: Michael Heimpold Date: Thu, 9 Mar 2023 06:54:48 +0000 (+0100) Subject: libgpiod: introduce libgpiodcxx package for C++ binding X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;ds=sidebyside;h=82ea104b978dcd84919dfe5d1ee630791d85df10;p=feed%2Fpackages.git libgpiod: introduce libgpiodcxx package for C++ binding This adds a new package for the C++ binding. Signed-off-by: Michael Heimpold --- diff --git a/libs/libgpiod/Makefile b/libs/libgpiod/Makefile index 862b6ced04..6320c24016 100644 --- a/libs/libgpiod/Makefile +++ b/libs/libgpiod/Makefile @@ -26,6 +26,12 @@ PYTHON3_PKG_BUILD:=0 include $(INCLUDE_DIR)/package.mk include ../../lang/python/python3-package.mk +ifneq ($(CONFIG_PACKAGE_libgpiodcxx),) +CONFIGURE_ARGS += --enable-bindings-cxx +else +CONFIGURE_ARGS += --disable-bindings-cxx +endif + ifneq ($(CONFIG_PACKAGE_gpiod-tools),) CONFIGURE_ARGS += --enable-tools endif @@ -61,6 +67,18 @@ define Package/gpiod-tools/description (gpiod stands for GPIO device). endef +define Package/libgpiodcxx + SECTION:=libs + CATEGORY:=Libraries + URL:=https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git + TITLE:=C++ binding for libgpiod + DEPENDS:=+libstdcpp +libgpiod +endef + +define Package/libgpiodcxx/description + This package contains the C++ binding for libgpiod. +endef + define Package/python3-gpiod SECTION:=lang CATEGORY:=Languages @@ -98,6 +116,15 @@ define Build/InstallDev $(INSTALL_DIR) $(1)/usr/lib/pkgconfig $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libgpiod.pc $(1)/usr/lib/pkgconfig/ + ifneq ($(CONFIG_PACKAGE_libgpiodcxx),) + $(CP) $(PKG_INSTALL_DIR)/usr/include/gpiodcxx $(1)/usr/include/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/gpiod.hpp $(1)/usr/include/ + + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgpiodcxx.{so*,a} $(1)/usr/lib/ + + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libgpiodcxx.pc $(1)/usr/lib/pkgconfig/ + endif + ifneq ($(CONFIG_PACKAGE_python3-gpiod),) $(INSTALL_DIR) $(1)$(PYTHON3_PKG_DIR) $(CP) $(PKG_INSTALL_DIR)$(PYTHON3_PKG_DIR)/* $(1)$(PYTHON3_PKG_DIR) @@ -109,6 +136,11 @@ define Package/libgpiod/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgpiod.so.* $(1)/usr/lib/ endef +define Package/libgpiodcxx/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgpiodcxx.so.* $(1)/usr/lib/ +endef + define Package/gpiod-tools/install $(INSTALL_DIR) $(1)/usr/bin $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ @@ -119,6 +151,7 @@ define Py3Package/python3-gpiod/install endef $(eval $(call BuildPackage,libgpiod)) +$(eval $(call BuildPackage,libgpiodcxx)) $(eval $(call BuildPackage,gpiod-tools)) $(eval $(call Py3Package,python3-gpiod)) $(eval $(call BuildPackage,python3-gpiod))