添加dbus-cxx,方便C++开发使用DBus用做IPC。openwrt自带的ubus虽然体积小,但是使用C++开发起来比较吃力。

This commit is contained in:
HEYAHONG 2024-05-05 22:26:15 +08:00
parent 833a2331f1
commit a84e7b7a8b
No known key found for this signature in database
GPG Key ID: 97E3E469FE2C920B
3 changed files with 108 additions and 2 deletions

View File

@ -1659,7 +1659,7 @@ CONFIG_PACKAGE_libgcc=y
# CONFIG_PACKAGE_libgomp is not set
CONFIG_PACKAGE_libpthread=y
CONFIG_PACKAGE_librt=y
# CONFIG_PACKAGE_libstdcpp is not set
CONFIG_PACKAGE_libstdcpp=y
CONFIG_PACKAGE_logd=y
CONFIG_PACKAGE_mtd=y
CONFIG_PACKAGE_netifd=y
@ -1792,7 +1792,9 @@ CONFIG_ZABBIX_POSTGRESQL=y
# CoreBoard-001
#
CONFIG_PACKAGE_FirstBootInit=y
CONFIG_PACKAGE_dbus-cxx=y
CONFIG_PACKAGE_libserialport=y
CONFIG_PACKAGE_libsigcplusplus=y
# end of CoreBoard-001
#
@ -4398,7 +4400,7 @@ CONFIG_PACKAGE_libpcre2=y
# CONFIG_PACKAGE_libpkcs11-spy is not set
# CONFIG_PACKAGE_libpkgconf is not set
# CONFIG_PACKAGE_libpng is not set
# CONFIG_PACKAGE_libpopt is not set
CONFIG_PACKAGE_libpopt=y
# CONFIG_PACKAGE_libpri is not set
# CONFIG_PACKAGE_libprotobuf-c is not set
# CONFIG_PACKAGE_libpsl is not set

52
FW/package/3rdparty/dbus-cxx/Makefile vendored Normal file
View File

@ -0,0 +1,52 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=dbus-cxx
PKG_RELEASE:=1
PKG_SOURCE_URL:= https://github.com/dbus-cxx/dbus-cxx.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2024-05-04
PKG_SOURCE_VERSION:=ca478ce28d70adffb76287a584abcabacd3ebc18
PKG_MIRROR_HASH:=c6ca630b353006103483049a5dbc2cb32bd7866a9d66998e8c858f763200b550
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=HEYAHONG <2229388563@qq.com>
PKG_INSTALL:=1
CMAKE_OPTIONS:= -DENABLE_EXAMPLES=OFF -DENABLE_TOOLS=OFF -DTOOLS_BUNDLED_CPPGENERATE=OFF -DBUILD_SITE=OFF -DBUILD_TESTING=OFF -DENABLE_GLIB_SUPPORT=OFF -DENABLE_QT_SUPPORT=OFF -DENABLE_UV_SUPPORT=OFF
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/dbus-cxx
SECTION := dbus-cxx
CATEGORY := CoreBoard-001
DEPENDS := +libstdcpp +libc +librt +libpthread +dbus +libdbus +libsigcplusplus +libexpat +libpopt
TITLE := DBus-cxx is a C++ implementation for DBus.
endef
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
TARGET_LDFLAGS += -L$(STAGING_DIR)/usr/lib
define Package/dbus-cxx/install
$(INSTALL_DIR) $(1)/bin
-$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/bin/
-$(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/bin/
$(INSTALL_DIR) $(1)/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/lib/
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/bin
-$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/bin/
-$(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/bin/
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc $(1)/usr/lib/pkgconfig
endef
$(eval $(call BuildPackage,dbus-cxx))

View File

@ -0,0 +1,52 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libsigcplusplus
PKG_RELEASE:=1
PKG_SOURCE_URL:= https://github.com/libsigcplusplus/libsigcplusplus.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2024-05-04
PKG_SOURCE_VERSION:=dae8f5839e447b93b13a3b00ff2ddc279b47411e
PKG_MIRROR_HASH:=9a16cb312bffbd562534977ac2fcfb6869ebfbc7367970d8e49d374340024db8
PKG_LICENSE_FILES:=COPYING
PKG_MAINTAINER:=HEYAHONG <2229388563@qq.com>
PKG_INSTALL:=1
CMAKE_OPTIONS:=
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/libsigcplusplus
SECTION := libsigcplusplus
CATEGORY := CoreBoard-001
DEPENDS := +libstdcpp +libc +librt +libpthread
TITLE := libsigc++ implements a typesafe callback system for standard C++.
endef
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
TARGET_LDFLAGS += -L$(STAGING_DIR)/usr/lib
define Package/libsigcplusplus/install
$(INSTALL_DIR) $(1)/bin
-$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/bin/
-$(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/bin/
$(INSTALL_DIR) $(1)/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/lib/
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/bin
-$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/bin/
-$(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/bin/
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc $(1)/usr/lib/pkgconfig
endef
$(eval $(call BuildPackage,libsigcplusplus))