From patchwork Fri Jun 2 10:16:40 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vicente Olivert Riera X-Patchwork-Id: 770226 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3wfKrX50txz9s2G for ; Fri, 2 Jun 2017 20:17:00 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 41E1689AC5; Fri, 2 Jun 2017 10:16:56 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tiHv85y6RJMl; Fri, 2 Jun 2017 10:16:54 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 510AF89A90; Fri, 2 Jun 2017 10:16:54 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id CA29E1C04A5 for ; Fri, 2 Jun 2017 10:16:52 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id C63A88A3CC for ; Fri, 2 Jun 2017 10:16:52 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yIbioNbbXylG for ; Fri, 2 Jun 2017 10:16:52 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mailapp01.imgtec.com (mailapp01.imgtec.com [195.59.15.196]) by hemlock.osuosl.org (Postfix) with ESMTP id CF07B89D08 for ; Fri, 2 Jun 2017 10:16:51 +0000 (UTC) Received: from hhmail02.hh.imgtec.org (unknown [10.100.10.20]) by Forcepoint Email with ESMTPS id 0B4BD161FF54A for ; Fri, 2 Jun 2017 11:16:47 +0100 (IST) Received: from vriera-linux.le.imgtec.org (192.168.154.36) by hhmail02.hh.imgtec.org (10.100.10.21) with Microsoft SMTP Server (TLS) id 14.3.294.0; Fri, 2 Jun 2017 11:16:49 +0100 From: Vicente Olivert Riera To: Date: Fri, 2 Jun 2017 11:16:40 +0100 Message-ID: <20170602101641.63979-1-Vincent.Riera@imgtec.com> X-Mailer: git-send-email 2.13.0 MIME-Version: 1.0 X-Originating-IP: [192.168.154.36] Subject: [Buildroot] [PATCH v6 1/2] rhash: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Signed-off-by: Vicente Olivert Riera --- Changes v5 -> v6: - Nothing Changes v4 -> v5: - Do not install the console utility to staging. Changes v3 -> v4: - Add a comment explaining why we install the console utility to the staging directory. (Baruch) - Perform the installation of the console utility to the staging directory into a post-install-staginig-hook. (Yann) Changes v2 -> v3: - Nothing Changes v1 -> v2: - Rename package to rhash - Take the help text of the library instead of the console utility - Sub-config option for the rhash binary starts with the package name - Conditionals for shared/static/shared-static reordered - Put make options into a make_opts variable - Install the console utility to staging as well (All suggestions by Arnout) --- package/Config.in | 1 + package/rhash/Config.in | 24 ++++++++++++++++++ package/rhash/rhash.hash | 3 +++ package/rhash/rhash.mk | 66 ++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 94 insertions(+) create mode 100644 package/rhash/Config.in create mode 100644 package/rhash/rhash.hash create mode 100644 package/rhash/rhash.mk diff --git a/package/Config.in b/package/Config.in index 497cac8b7..a7467977b 100644 --- a/package/Config.in +++ b/package/Config.in @@ -969,6 +969,7 @@ menu "Crypto" source "package/mbedtls/Config.in" source "package/nettle/Config.in" source "package/openssl/Config.in" + source "package/rhash/Config.in" source "package/tinydtls/Config.in" source "package/trousers/Config.in" source "package/ustream-ssl/Config.in" diff --git a/package/rhash/Config.in b/package/rhash/Config.in new file mode 100644 index 000000000..65812438e --- /dev/null +++ b/package/rhash/Config.in @@ -0,0 +1,24 @@ +config BR2_PACKAGE_RHASH + bool "rhash" + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE + help + LibRHash is a professional, portable, thread-safe C library for + computing a wide variety of hash sums, such as CRC32, MD4, MD5, + SHA1, SHA256, SHA512, SHA3, AICH, ED2K, Tiger, DC++ TTH, BitTorrent + BTIH, GOST R 34.11-94, RIPEMD-160, HAS-160, EDON-R, Whirlpool and + Snefru. + + https://github.com/rhash/RHash + +if BR2_PACKAGE_RHASH + +config BR2_PACKAGE_RHASH_BIN + bool "rhash binary" + depends on !BR2_STATIC_LIBS + help + Install rhash console utility + +comment "rhash binary needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + +endif diff --git a/package/rhash/rhash.hash b/package/rhash/rhash.hash new file mode 100644 index 000000000..5efc3a67b --- /dev/null +++ b/package/rhash/rhash.hash @@ -0,0 +1,3 @@ +# From https://sourceforge.net/projects/rhash/files/rhash/1.3.4/ +md5 0b51010604659e9e99f6307b053ba13b rhash-1.3.4-src.tar.gz +sha1 411d8c7ba84fa9763bc49fa2fd3a7587712fd52c rhash-1.3.4-src.tar.gz diff --git a/package/rhash/rhash.mk b/package/rhash/rhash.mk new file mode 100644 index 000000000..5a31bef08 --- /dev/null +++ b/package/rhash/rhash.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# rhash +# +################################################################################ + +RHASH_VERSION = 1.3.4 +RHASH_SOURCE = rhash-$(RHASH_VERSION)-src.tar.gz +RHASH_SITE = https://sourceforge.net/projects/rhash/files/rhash/$(RHASH_VERSION) +RHASH_LICENSE = MIT +RHASH_LICENSE_FILES = COPYING +RHASH_INSTALL_STAGING = YES + +ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) +RHASH_DEPENDENCIES += gettext +RHASH_ADDCFLAGS += -DUSE_GETTEXT +RHASH_ADDLDFLAGS += -lintl +endif + +ifeq ($(BR2_PACKAGE_OPENSSL)x$(BR2_STATIC_LIBS),yx) +RHASH_DEPENDENCIES += openssl +RHASH_ADDCFLAGS += -DOPENSSL_RUNTIME -rdynamic +RHASH_ADDLDFLAGS += -ldl +endif + +RHASH_MAKE_OPTS = \ + ADDCFLAGS="$(RHASH_ADDCFLAGS)" \ + ADDLDFLAGS="$(RHASH_ADDLDFLAGS)" \ + PREFIX="/usr" + +ifeq ($(BR2_SHARED_LIBS),y) +RHASH_BUILD_TARGETS = lib-shared build-shared +RHASH_INSTALL_TARGETS = install-lib-shared install-so-link +else ifeq ($(BR2_STATIC_LIBS),y) +RHASH_BUILD_TARGETS = lib-static +RHASH_INSTALL_TARGETS = install-lib-static +else +RHASH_BUILD_TARGETS = lib-static lib-shared build-shared +RHASH_INSTALL_TARGETS = install-lib-static install-lib-shared install-so-link +endif + +define RHASH_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(RHASH_MAKE_OPTS) $(RHASH_BUILD_TARGETS) +endef + +define RHASH_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/librhash \ + DESTDIR="$(STAGING_DIR)" $(RHASH_MAKE_OPTS) $(RHASH_INSTALL_TARGETS) \ + install-headers +endef + +define RHASH_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/librhash \ + DESTDIR="$(TARGET_DIR)" $(RHASH_MAKE_OPTS) $(RHASH_INSTALL_TARGETS) +endef + +ifeq ($(BR2_PACKAGE_RHASH_BIN),y) +define RHASH_INSTALL_TARGET_RHASH_BIN + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + DESTDIR="$(TARGET_DIR)" $(RHASH_MAKE_OPTS) install-shared +endef +RHASH_POST_INSTALL_TARGET_HOOKS += RHASH_INSTALL_TARGET_RHASH_BIN +endif + +$(eval $(generic-package))