Merge pull request #12294 from neheb/keab

[19.07] backport kea changes
This commit is contained in:
Rosen Penev 2020-05-28 15:17:01 -07:00 committed by GitHub
commit a9b5867e29
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 167 additions and 113 deletions

View file

@ -9,27 +9,28 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=kea PKG_NAME:=kea
PKG_VERSION:=1.5.0 PKG_VERSION:=1.6.2
PKG_RELEASE:=3 PKG_RELEASE:=1
PKG_MAINTAINER:=BangLang Huang<banglang.huang@foxmail.com>, Rosy Song<rosysong@rosinson.com>
PKG_BUILD_DEPENDS:=boost log4cplus kea/host
HOST_BUILD_DEPENDS:=boost boost/host log4cplus/host
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://ftp.isc.org/isc/kea/$(PKG_VERSION)/ PKG_SOURCE_URL:=https://ftp.isc.org/isc/kea/$(PKG_VERSION)
PKG_HASH:=2af7336027143c3e98d8d1d44165b2c2cbb0252a92bd88f6dd4d2c6adb69d7b5
PKG_HASH:=edce4fab68ca7af607cf7f5bc86596e04fe0ef4b8e88906e339cdefcf21daaec PKG_MAINTAINER:=BangLang Huang<banglang.huang@foxmail.com>, Rosy Song<rosysong@rosinson.com>
PKG_LICENSE:=MPL-2.0
PKG_LICENSE_FILES:=COPYING
HOST_BUILD_DEPENDS:=boost/host log4cplus/host
PKG_BUILD_DEPENDS:=kea/host
HOST_BUILD_PARALLEL:=1
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
PKG_LICENSE:=MPL-2.0
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/host-build.mk
HOST_BUILD_PREFIX:=$(STAGING_DIR_HOST)
define Package/kea/Default define Package/kea/Default
SECTION:=net SECTION:=net
CATEGORY:=Network CATEGORY:=Network
@ -38,6 +39,13 @@ define Package/kea/Default
URL:=https://www.isc.org/kea URL:=https://www.isc.org/kea
endef endef
###### *************************************************************************
define Package/kea
$(call Package/kea/Default)
TITLE+=ISC Kea
endef
# shown in LuCI package description
define Package/kea/description define Package/kea/description
Kea is an open source DHCPv4/DHCPv6 server being developed by Internet Kea is an open source DHCPv4/DHCPv6 server being developed by Internet
Systems Consortium. Kea is a high-performance, extensible DHCP server Systems Consortium. Kea is a high-performance, extensible DHCP server
@ -47,75 +55,115 @@ define Package/kea/description
management REST interface, and a DHCP benchmarking tool, perfdhcp. management REST interface, and a DHCP benchmarking tool, perfdhcp.
endef endef
###### *************************************************************************
define Package/kea-libs define Package/kea-libs
$(call Package/kea/Default) $(call Package/kea/Default)
TITLE+=Libraries TITLE+=Libraries
DEPENDS:=+libopenssl +log4cplus \ DEPENDS:=+libopenssl +log4cplus \
+boost +boost-python3 +boost-system +boost +boost-system
endef
define Package/kea-libs/description
Kea required Libraries.
endef endef
###### *************************************************************************
define Package/kea-ctrl
$(call Package/kea/Default)
TITLE+=Control
DEPENDS:=+procps-ng +procps-ng-ps +kea-dhcp4 \
+IPV6:kea-dhcp6 +kea-dhcp-ddns
endef
define Package/kea-ctrl/description
Tool to start, stop, reconfigure, and report status for the Kea servers.
endef
###### *************************************************************************
define Package/kea-dhcp4 define Package/kea-dhcp4
$(call Package/kea/Default) $(call Package/kea/Default)
TITLE+=DHCP Server v4 TITLE+=DHCP Server v4
DEPENDS:=+kea-libs DEPENDS:=+kea-libs
endef endef
define Package/kea-dhcp4/description
The DHCPv4 server process. This process responds to DHCPv4 queries from clients.
endef
###### *************************************************************************
define Package/kea-dhcp6 define Package/kea-dhcp6
$(call Package/kea/Default) $(call Package/kea/Default)
TITLE+=DHCP Server v6 TITLE+=DHCP Server v6
DEPENDS:=@IPV6 +kea-libs DEPENDS:=@IPV6 +kea-libs
endef endef
define Package/kea-dhcp6/description
define Package/kea-dhcp-ddns The DHCPv6 server process. This process responds to DHCPv6 queries from clients.
$(call Package/kea/Default)
TITLE+= DHCP - DDNS
DEPENDS:=+kea-libs
endef endef
###### *************************************************************************
define Package/kea-dhcp-ddns
$(call Package/kea/Default)
TITLE+=DHCP Dynamic DNS
DEPENDS:=+kea-libs
endef
define Package/kea-dhcp-ddns/description
The DHCP Dynamic DNS process. This process acts as an intermediary between
the DHCP servers and DNS servers. It receives name update requests from the
DHCP servers and sends DNS Update messages to the DNS servers.
endef
###### *************************************************************************
define Package/kea-admin define Package/kea-admin
$(call Package/kea/Default) $(call Package/kea/Default)
TITLE+=Admin TITLE+=Admin
DEPENDS:= +kea-libs +python3 DEPENDS:=+kea-libs
endef endef
define Package/kea-admin/description
define Package/kea-ctrl A useful tool for database backend maintenance (creating a new database,
$(call Package/kea/Default) checking versions, upgrading etc.).
TITLE+= Control
DEPENDS:= +kea-dhcp4 +IPV6:kea-dhcp6 \
+kea-dhcp-ddns
endef endef
##### *************************************************************************
define Package/kea-lfc define Package/kea-lfc
$(call Package/kea/Default) $(call Package/kea/Default)
TITLE+=lfc TITLE+=lfc
DEPENDS:=+kea-libs DEPENDS:=+kea-libs
endef endef
define Package/kea-lfc/description
define Package/kea-perfdhcp This process removes redundant information from the files used to provide
$(call Package/kea/Default) persistent storage for the memfile data base backend. While it can be run
TITLE+= perfdhcp standalone, it is normally run as and when required by the Kea DHCP servers.
DEPENDS:=+kea-libs
endef endef
##### *************************************************************************
define Package/kea-perfdhcp
$(call Package/kea/Default)
TITLE+=perfdhcp (Benchmarking)
DEPENDS:=+kea-libs
endef
define Package/kea-perfdhcp/description
A DHCP benchmarking tool which simulates multiple clients to test both
DHCPv4 and DHCPv6 server performance.
endef
###### *************************************************************************
HOST_CONFIGURE_ARGS += \
--with-boost-include="$(STAGING_DIR_HOSTPKG)" \
--with-log4cplus="$(STAGING_DIR_HOSTPKG)" \
--with-openssl="$(STAGING_DIR_HOST)" \
--enable-boost-headers-only \
--enable-generate-messages
HOST_LDFLAGS += \
-Wl,--gc-sections,--as-needed
CONFIGURE_ARGS += \ CONFIGURE_ARGS += \
--with-boost-include="$(STAGING_DIR)/usr" \
--with-log4cplus="$(STAGING_DIR)/usr" \ --with-log4cplus="$(STAGING_DIR)/usr" \
--with-openssl="$(STAGING_DIR)/usr" \ --with-openssl="$(STAGING_DIR)/usr" \
--without-pic \
$(if $(CONFIG_PACKAGE_kea-perfdhcp),--enable-perfdhcp,) $(if $(CONFIG_PACKAGE_kea-perfdhcp),--enable-perfdhcp,)
CONFIGURE_VARS += \ CONFIGURE_VARS += \
cross_compiling="yes" cross_compiling="yes"
HOST_CONFIGURE_ARGS += \
--enable-static-link \
--enable-boost-headers-only \
--with-log4cplus="$(STAGING_DIR_HOSTPKG)" \
--with-boost-include="$(STAGING_DIR)/usr/include" \
--with-openssl="$(STAGING_DIR)/usr" \
--without-pic
HOST_LDFLAGS += \
-Wl,--gc-sections,--as-needed
TARGET_CXXFLAGS += \ TARGET_CXXFLAGS += \
$(FPIC) \ $(FPIC) \
-fdata-sections \ -fdata-sections \
@ -149,7 +197,7 @@ endef
define Package/kea-libs/install define Package/kea-libs/install
$(INSTALL_DIR) $(1)/usr/lib $(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/
endef endef
define Package/kea-dhcp4/install define Package/kea-dhcp4/install
@ -181,7 +229,6 @@ define Package/kea-ctrl/install
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kea-ctrl-agent $(1)/usr/sbin/kea-ctrl-agent $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kea-ctrl-agent $(1)/usr/sbin/kea-ctrl-agent
$(CP) $(PKG_INSTALL_DIR)/etc/kea/keactrl.conf $(1)/etc/kea/ $(CP) $(PKG_INSTALL_DIR)/etc/kea/keactrl.conf $(1)/etc/kea/
$(CP) $(PKG_INSTALL_DIR)/etc/kea/kea-ctrl-agent.conf $(1)/etc/kea/ $(CP) $(PKG_INSTALL_DIR)/etc/kea/kea-ctrl-agent.conf $(1)/etc/kea/
$(CP) $(PKG_INSTALL_DIR)/etc/kea/kea-netconf.conf $(1)/etc/kea/
endef endef
define Package/kea-lfc/install define Package/kea-lfc/install
@ -196,10 +243,10 @@ endef
$(eval $(call HostBuild)) $(eval $(call HostBuild))
$(eval $(call BuildPackage,kea-libs)) $(eval $(call BuildPackage,kea-libs))
$(eval $(call BuildPackage,kea-ctrl))
$(eval $(call BuildPackage,kea-dhcp4)) $(eval $(call BuildPackage,kea-dhcp4))
$(eval $(call BuildPackage,kea-dhcp6)) $(eval $(call BuildPackage,kea-dhcp6))
$(eval $(call BuildPackage,kea-dhcp-ddns)) $(eval $(call BuildPackage,kea-dhcp-ddns))
$(eval $(call BuildPackage,kea-admin)) $(eval $(call BuildPackage,kea-admin))
$(eval $(call BuildPackage,kea-ctrl))
$(eval $(call BuildPackage,kea-lfc)) $(eval $(call BuildPackage,kea-lfc))
$(eval $(call BuildPackage,kea-perfdhcp)) $(eval $(call BuildPackage,kea-perfdhcp))

View file

@ -1,8 +1,6 @@
--- a/configure.ac --- a/configure.ac
+++ b/configure.ac +++ b/configure.ac
@@ -580,10 +580,10 @@ AC_TRY_COMPILE([ @@ -542,8 +542,8 @@ AC_TRY_COMPILE([
AC_MSG_RESULT(no))
AC_MSG_CHECKING(for usuable C++11 regex) AC_MSG_CHECKING(for usuable C++11 regex)
-AC_TRY_RUN([ -AC_TRY_RUN([
+AC_TRY_COMPILE([ +AC_TRY_COMPILE([

View file

@ -252,11 +252,9 @@
AM_CPPFLAGS += $(BOOST_INCLUDES) AM_CPPFLAGS += $(BOOST_INCLUDES)
--- a/src/lib/log/Makefile.am --- a/src/lib/log/Makefile.am
+++ b/src/lib/log/Makefile.am +++ b/src/lib/log/Makefile.am
@@ -2,7 +2,6 @@ SUBDIRS = interprocess . @@ -1,4 +1,4 @@
if !CROSS_COMPILING -SUBDIRS = interprocess . compiler tests
SUBDIRS += compiler +SUBDIRS = interprocess . compiler
endif
-SUBDIRS += tests
AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
AM_CPPFLAGS += $(BOOST_INCLUDES) AM_CPPFLAGS += $(BOOST_INCLUDES)
@ -289,9 +287,9 @@
@@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
-SUBDIRS = . testutils tests -SUBDIRS = . testutils tests
+SUBDIRS = . +SUBDIRS = .
dhcp_data_dir = @localstatedir@/@PACKAGE@ # DATA_DIR is the directory where to put PID files.
dhcp_data_dir = @runstatedir@/@PACKAGE@
AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
AM_CPPFLAGS += -DDATA_DIR="\"$(dhcp_data_dir)\""
--- a/src/lib/stats/Makefile.am --- a/src/lib/stats/Makefile.am
+++ b/src/lib/stats/Makefile.am +++ b/src/lib/stats/Makefile.am
@@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@

View file

@ -0,0 +1,11 @@
--- a/src/lib/cryptolink/openssl_link.cc
+++ b/src/lib/cryptolink/openssl_link.cc
@@ -79,7 +79,7 @@ CryptoLink::initialize() {
std::string
CryptoLink::getVersion() {
- return (SSLeay_version(SSLEAY_VERSION));
+ return (OpenSSL_version(OPENSSL_VERSION));
}
} // namespace cryptolink