Merge pull request #6114 from kenkeys/protobuf-lite

Protobuf lite
This commit is contained in:
Hannu Nyman 2018-05-29 21:14:29 +03:00 committed by GitHub
commit 1024a23021
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=protobuf PKG_NAME:=protobuf
PKG_VERSION:=3.3.0 PKG_VERSION:=3.5.1
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-cpp-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-cpp-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/google/protobuf/releases/download/v$(PKG_VERSION) PKG_SOURCE_URL:=https://github.com/google/protobuf/releases/download/v$(PKG_VERSION)
PKG_HASH:=578a2589bf9258adb03245dec5d624b61536867ebb732dbb8aeb30d96b0ada1f PKG_HASH:=c28dba8782da2cfea1e11c61d335958c31a9c1bc553063546af9cbe98f204092
PKG_LICENSE:=BSD-3-Clause PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENSE PKG_LICENSE_FILES:=LICENSE
@ -26,21 +26,45 @@ PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/host-build.mk
define Package/protobuf define Package/protobuf/Default
SECTION:=libs SECTION:=libs
CATEGORY:=Libraries CATEGORY:=Libraries
TITLE:=A structured data encoding library TITLE:=A structured data encoding library
URL:=https://github.com/google/protobuf URL:=https://github.com/google/protobuf
DEPENDS:=+zlib +libpthread +libstdcpp DEPENDS:=+zlib +libpthread +libstdcpp
MAINTAINER:=Per Sandström <per.j.sandstrom@gmail.com> MAINTAINER:=Ken Keys <kkeys@caida.org>
endef endef
define Package/protobuf/description define Package/protobuf
$(call Package/protobuf/Default)
DEPENDS+=+protobuf-lite
endef
define Package/protobuf-lite
$(call Package/protobuf/Default)
endef
define Package/protobuf/description/Default
Protocol Buffers are a way of encoding structured data in an efficient Protocol Buffers are a way of encoding structured data in an efficient
yet extensible format. Google uses Protocol Buffers for almost all yet extensible format. Google uses Protocol Buffers for almost all
of its internal RPC protocols and file formats. of its internal RPC protocols and file formats.
endef endef
define Package/protobuf/description
$(call Package/protobuf/description/Default)
This package provides the libprotoc, libprotobuf, and libprotobuf-lite
libraries. For a much smaller protobuf package, see "protobuf-lite".
endef
define Package/protobuf-lite/description
$(call Package/protobuf/description/Default)
This package provides the libprotobuf-lite library.
endef
CONFIGURE_ARGS += --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc CONFIGURE_ARGS += --with-protoc=$(STAGING_DIR_HOSTPKG)/bin/protoc
define Build/InstallDev define Build/InstallDev
@ -57,6 +81,15 @@ define Build/InstallDev
$(1)/usr/lib/ $(1)/usr/lib/
endef endef
define Package/protobuf-lite/install
$(INSTALL_DIR) \
$(1)/usr/lib
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/libprotobuf-lite.so* \
$(1)/usr/lib/
endef
define Package/protobuf/install define Package/protobuf/install
$(INSTALL_DIR) \ $(INSTALL_DIR) \
$(1)/usr/lib $(1)/usr/lib
@ -65,14 +98,11 @@ define Package/protobuf/install
$(PKG_INSTALL_DIR)/usr/lib/libprotoc.so* \ $(PKG_INSTALL_DIR)/usr/lib/libprotoc.so* \
$(1)/usr/lib/ $(1)/usr/lib/
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/libprotobuf-lite.so* \
$(1)/usr/lib/
$(CP) \ $(CP) \
$(PKG_INSTALL_DIR)/usr/lib/libprotobuf.so* \ $(PKG_INSTALL_DIR)/usr/lib/libprotobuf.so* \
$(1)/usr/lib/ $(1)/usr/lib/
endef endef
$(eval $(call BuildPackage,protobuf)) $(eval $(call BuildPackage,protobuf))
$(eval $(call BuildPackage,protobuf-lite))
$(eval $(call HostBuild)) $(eval $(call HostBuild))