|
@ -0,0 +1,206 @@ |
|
|
|
|
|
#
|
|
|
|
|
|
# Copyright (C) 2022 Nita Vesa (werecatf@outlook.com)
|
|
|
|
|
|
#
|
|
|
|
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
|
|
|
|
# See /LICENSE for more information.
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
|
|
include $(TOPDIR)/rules.mk |
|
|
|
|
|
|
|
|
|
|
|
PKG_NAME:=gensio |
|
|
|
|
|
PKG_VERSION:=2.3.5 |
|
|
|
|
|
PKG_RELEASE:=1 |
|
|
|
|
|
|
|
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz |
|
|
|
|
|
PKG_SOURCE_URL:=@SF/ser2net |
|
|
|
|
|
PKG_HASH:=e9943b392ba85bdc13063059125794554f07e569d8ca0afd38f773a390f5f234 |
|
|
|
|
|
|
|
|
|
|
|
PKG_LICENSE:=GPL-2.0-or-later |
|
|
|
|
|
PKG_LICENSE_FILES:=COPYING |
|
|
|
|
|
PKG_MAINTAINER:=Nita Vesa <werecatf@outlook.com> |
|
|
|
|
|
|
|
|
|
|
|
PKG_FIXUP:=autoreconf |
|
|
|
|
|
PKG_INSTALL:=1 |
|
|
|
|
|
PYTHON3_PKG_BUILD:=0 |
|
|
|
|
|
|
|
|
|
|
|
PKG_CONFIG_DEPENDS:= \
|
|
|
|
|
|
CONFIG_GENSIO_SSL \
|
|
|
|
|
|
CONFIG_GENSIO_WRAP \
|
|
|
|
|
|
CONFIG_GENSIO_SCTP \
|
|
|
|
|
|
CONFIG_GENSIO_PTHREADS \
|
|
|
|
|
|
CONFIG_GENSIO_AVAHI \
|
|
|
|
|
|
CONFIG_GENSIO_GLIB \
|
|
|
|
|
|
CONFIG_GENSIO_TCL \
|
|
|
|
|
|
CONFIG_GENSIO_SSHD |
|
|
|
|
|
|
|
|
|
|
|
include $(INCLUDE_DIR)/package.mk |
|
|
|
|
|
include ../../lang/python/python3-package.mk |
|
|
|
|
|
|
|
|
|
|
|
CONFIGURE_ARGS += \
|
|
|
|
|
|
--$(if $(CONFIG_GENSIO_SSL),with,without)-openssl \
|
|
|
|
|
|
--$(if $(CONFIG_GENSIO_SCTP),with,without)-sctp \
|
|
|
|
|
|
--$(if $(CONFIG_GENSIO_WRAP),with,without)-tcp-wrappers \
|
|
|
|
|
|
--$(if $(CONFIG_GENSIO_PTHREADS),with,without)-pthreads \
|
|
|
|
|
|
--$(if $(CONFIG_GENSIO_GLIB),with,without)-glib \
|
|
|
|
|
|
--$(if $(CONFIG_GENSIO_TCL),with,without)-tcl \
|
|
|
|
|
|
--without-openipmi \
|
|
|
|
|
|
--with-cplusplus \
|
|
|
|
|
|
--disable-doc |
|
|
|
|
|
|
|
|
|
|
|
CONFIGURE_VARS += \
|
|
|
|
|
|
ac_cv_lib_avahi_client_avahi_client_new=$(if $(CONFIG_GENSIO_AVAHI),yes,no) \
|
|
|
|
|
|
ac_cv_lib_pam_pam_start=$(if $(CONFIG_GENSIO_SSHD),yes,no) |
|
|
|
|
|
|
|
|
|
|
|
ifneq ($(CONFIG_PACKAGE_python3-gensio),) |
|
|
|
|
|
CONFIGURE_ARGS += \
|
|
|
|
|
|
--with-swig \
|
|
|
|
|
|
--with-python \
|
|
|
|
|
|
--with-pythoninstall=$(PYTHON3_PKG_DIR) |
|
|
|
|
|
|
|
|
|
|
|
CONFIGURE_VARS += \
|
|
|
|
|
|
PYTHON_LIBS="$(shell $(STAGING_DIR)/host/bin/$(PYTHON3)-config --ldflags) -l${PYTHON3}" \
|
|
|
|
|
|
PYTHON_CPPFLAGS="$(shell $(STAGING_DIR)/host/bin/$(PYTHON3)-config --includes)" \
|
|
|
|
|
|
PYTHON="$(STAGING_DIR_HOSTPKG)/bin/$(PYTHON3)" |
|
|
|
|
|
else |
|
|
|
|
|
CONFIGURE_ARGS += \
|
|
|
|
|
|
--without-python \
|
|
|
|
|
|
--without-swig |
|
|
|
|
|
endif |
|
|
|
|
|
|
|
|
|
|
|
define Package/gensio/Default |
|
|
|
|
|
TITLE:=Abstract stream I/O |
|
|
|
|
|
URL:=https://github.com/cminyard/gensio |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/gensio/Default/description |
|
|
|
|
|
This project (pronounced gen'-see-oh) is used to abstract stream I/O |
|
|
|
|
|
like serial port, TCP, telnet, UDP, SSL, IPMI SOL etc and offers a |
|
|
|
|
|
framework for giving a consistent view of various stream (and packet) |
|
|
|
|
|
I/O types. You create a gensio object (or a gensio), and you can use |
|
|
|
|
|
that gensio without having to know too much about what is going on |
|
|
|
|
|
underneath. You can stack gensio on top of another one to add protocol |
|
|
|
|
|
funcionality. For instance, you can create a TCP gensio, stack SSL on |
|
|
|
|
|
top of that, and stack Telnet on top of that. It supports a number of |
|
|
|
|
|
network I/O and serial ports. Gensio can be used for sending and |
|
|
|
|
|
receiving ports, and it also supports establishing encrypted and |
|
|
|
|
|
authenticated connections. |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/libgensio |
|
|
|
|
|
$(call Package/gensio/Default) |
|
|
|
|
|
TITLE+= (runtime files) |
|
|
|
|
|
SECTION:=libs |
|
|
|
|
|
CATEGORY:=Libraries |
|
|
|
|
|
ABI_VERSION:=0 |
|
|
|
|
|
MENU:=1 |
|
|
|
|
|
DEPENDS:=+GENSIO_SSL:libopenssl +GENSIO_WRAP:libwrap +GENSIO_SCTP:libsctp +GENSIO_PTHREADS:libpthread +GENSIO_AVAHI:libavahi-client +GENSIO_TCL:tcl +GENSIO_GLIB:glib2 +GENSIO_SSHD:libpam |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/libgensio/description |
|
|
|
|
|
$(call Package/gensio/Default/description) |
|
|
|
|
|
. |
|
|
|
|
|
This package contains the runtime libraries. |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/libgensio/config |
|
|
|
|
|
source "$(SOURCE)/Config.in" |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/gensio-bin |
|
|
|
|
|
$(call Package/gensio/Default) |
|
|
|
|
|
TITLE+= (command-line tools) |
|
|
|
|
|
SECTION:=net |
|
|
|
|
|
CATEGORY:=Network |
|
|
|
|
|
MENU:=1 |
|
|
|
|
|
DEPENDS:=+libgensio |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/gensio-bin/description |
|
|
|
|
|
$(call Package/gensio/Default/description) |
|
|
|
|
|
. |
|
|
|
|
|
This package contains the command-line tools. |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/gensio-bin/config |
|
|
|
|
|
source "$(SOURCE)/Config-bin.in" |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/python3-gensio |
|
|
|
|
|
$(call Package/gensio/Default) |
|
|
|
|
|
TITLE+= (Python3-bindings) |
|
|
|
|
|
SECTION:=lang |
|
|
|
|
|
CATEGORY:=Languages |
|
|
|
|
|
BUILD_DEPENDS:=+swig +python3 |
|
|
|
|
|
DEPENDS:=+python3-light +libgensio |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/python3-gensio/description |
|
|
|
|
|
$(call Package/gensio/Default/description) |
|
|
|
|
|
. |
|
|
|
|
|
This package contains the Python3-bindings for libgensio. |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/libgensiocpp |
|
|
|
|
|
$(call Package/gensio/Default) |
|
|
|
|
|
TITLE+= (C++ - bindings) |
|
|
|
|
|
SECTION:=libs |
|
|
|
|
|
CATEGORY:=Libraries |
|
|
|
|
|
ABI_VERSION:=0 |
|
|
|
|
|
DEPENDS:=+libgensio +libstdcpp |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/libgensiocpp/description |
|
|
|
|
|
$(call Package/gensio/Default/description) |
|
|
|
|
|
. |
|
|
|
|
|
This package contains the C++ runtime files. |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Build/InstallDev |
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/include/gensio/ |
|
|
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/gensio/* $(1)/usr/include/gensio/ |
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib/ |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a,la} $(1)/usr/lib/ |
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig/ |
|
|
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ |
|
|
|
|
|
ifneq ($(CONFIG_PACKAGE_python3-gensio),) |
|
|
|
|
|
$(INSTALL_DIR) $(1)/$(PYTHON3_PKG_DIR) |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/$(PYTHON3_PKG_DIR)/*.{so*,a,la} $(1)/$(PYTHON3_PKG_DIR) |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/$(PYTHON3_PKG_DIR)/*.py* $(1)/$(PYTHON3_PKG_DIR) |
|
|
|
|
|
endif |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/libgensio/install |
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libgensio.so.* $(1)/usr/lib/ |
|
|
|
|
|
ifeq ($(CONFIG_GENSIO_GLIB),y) |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libgensioglib.so.* $(1)/usr/lib/ |
|
|
|
|
|
endif |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/gensio-bin/install |
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/bin |
|
|
|
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ |
|
|
|
|
|
ifeq ($(CONFIG_GENSIO_SSHD),y) |
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/sbin |
|
|
|
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/ |
|
|
|
|
|
endif |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/python3-gensio/install |
|
|
|
|
|
$(INSTALL_DIR) $(1)/$(PYTHON3_PKG_DIR) |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/$(PYTHON3_PKG_DIR)/*.so* $(1)/$(PYTHON3_PKG_DIR) |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/$(PYTHON3_PKG_DIR)/*.py* $(1)/$(PYTHON3_PKG_DIR) |
|
|
|
|
|
|
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libgensio_python_swig.so.* $(1)/usr/lib/ |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
define Package/libgensiocpp/install |
|
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib |
|
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libgensiocpp.so.* $(1)/usr/lib/ |
|
|
|
|
|
endef |
|
|
|
|
|
|
|
|
|
|
|
$(eval $(call BuildPackage,libgensio)) |
|
|
|
|
|
$(eval $(call BuildPackage,gensio-bin)) |
|
|
|
|
|
$(eval $(call BuildPackage,python3-gensio)) |
|
|
|
|
|
$(eval $(call BuildPackage,libgensiocpp)) |