commit:     cd56b669fdc4cabf72261ca5764d52871f515cb1
Author:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  1 20:26:38 2017 +0000
Commit:     Alon Bar-Lev <alonbl <AT> gentoo <DOT> org>
CommitDate: Sat Jul  1 20:31:11 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cd56b669

app-crypt/libscrypt: version bump

Bug: 623274

Package-Manager: Portage-2.3.6, Repoman-2.3.1

 app-crypt/libscrypt/Manifest                       |  1 +
 .../libscrypt/files/libscrypt-1.21-build.patch     | 76 ++++++++++++++++++++++
 app-crypt/libscrypt/libscrypt-1.21.ebuild          | 36 ++++++++++
 3 files changed, 113 insertions(+)

diff --git a/app-crypt/libscrypt/Manifest b/app-crypt/libscrypt/Manifest
index d1841cd9bb3..5a1906ee98c 100644
--- a/app-crypt/libscrypt/Manifest
+++ b/app-crypt/libscrypt/Manifest
@@ -1 +1,2 @@
 DIST libscrypt-1.20.tar.gz 18451 SHA256 
6074add2170b7d00e080fe3a58d3dec76850a4f272d488f5e8cc3c4acb6d8e21 SHA512 
c7db096c740681c328d4c156372147331c0441906c1f17656a8ddd8345348091295749c4e3105bf26106f826327acac9bda97efec4ce50ac56d64f903c59e9af
 WHIRLPOOL 
5d854936f955fbc08ec7d31e89396d3198ea58cac326ea8ceaedcc360e412cefc9e75b49a959870924cabe79ccf14453209cf450ff0256873c1de744f65706ac
+DIST libscrypt-1.21.tar.gz 19425 SHA256 
68e377e79745c10d489b759b970e52d819dbb80dd8ca61f8c975185df3f457d3 SHA512 
0f894bc2f47016cdd043ea692a4e4b08891b1a961443265230d5ccb76820d40e50b0d4d63588c44c985cd24e214f07b126d30989d3ce4cd79366f3b8f16c4d34
 WHIRLPOOL 
7fda5f5118c981d595f9f624ae40674c29fba6ee529ec8f4861b88d9bf11321b7a1285fabd1218356b59e889ddb96c4018513441fb4cebd302639085fcc097d0

diff --git a/app-crypt/libscrypt/files/libscrypt-1.21-build.patch 
b/app-crypt/libscrypt/files/libscrypt-1.21-build.patch
new file mode 100644
index 00000000000..236e80730d5
--- /dev/null
+++ b/app-crypt/libscrypt/files/libscrypt-1.21-build.patch
@@ -0,0 +1,76 @@
+From bdfec26744122e8f52a58bc086c89b27faaf5888 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <[email protected]>
+Date: Sat, 1 Jul 2017 23:06:41 +0300
+Subject: [PATCH 1/2] build: move non-essential flags to *_EXTRA
+
+This enables downstream to selectively add/replace the optimization and
+other non-essential flags.
+
+Signed-off-by: Alon Bar-Lev <[email protected]>
+---
+ Makefile | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 7022a4a..c9313cb 100644
+--- a/Makefile
++++ b/Makefile
+@@ -5,21 +5,22 @@ MAKE_DIR     ?= install -d
+ INSTALL_DATA ?= install
+ 
+ CC?=gcc
+-CFLAGS?=-O2 -Wall -g -D_FORTIFY_SOURCE=2 -fstack-protector -fPIC
+-LDFLAGS?=-Wl,-z,now -Wl,-z,relro -Wl,-soname,libscrypt.so.0 
-Wl,--version-script=libscrypt.version
+-CFLAGS_EXTRA?=-Wl,-rpath=.
++CFLAGS?=$(CFLAGS_EXTRA) -D_FORTIFY_SOURCE=2 -fPIC
++LDFLAGS?=$(LDFLAGS_EXTRA) -Wl,-soname,libscrypt.so.0 
-Wl,--version-script=libscrypt.version
++CFLAGS_EXTRA?=-Wl,-rpath=. -O2 -Wall -g -fstack-protector
++LDFLAGS_EXTRA?=-Wl,-z,relro
+ 
+ all: reference
+ 
+ OBJS= crypto_scrypt-nosse.o sha256.o crypto-mcf.o b64.o 
crypto-scrypt-saltgen.o crypto_scrypt-check.o crypto_scrypt-hash.o slowequals.o
+ 
+ libscrypt.so.0: $(OBJS) 
+-      $(CC)  $(LDFLAGS) -shared -o libscrypt.so.0  $(OBJS) -lm -lc
++      $(CC) $(LDFLAGS) -shared -o libscrypt.so.0  $(OBJS) -lm -lc
+       ar rcs libscrypt.a  $(OBJS)
+ 
+ reference: libscrypt.so.0 main.o crypto_scrypt-hexconvert.o
+       ln -s -f libscrypt.so.0 libscrypt.so
+-      $(CC) -Wall -o reference main.o b64.o crypto_scrypt-hexconvert.o 
$(CFLAGS_EXTRA) -L.  -lscrypt
++      $(CC) -o reference main.o b64.o crypto_scrypt-hexconvert.o $(CFLAGS) 
$(LDFLAGS_EXTRA) -L.  -lscrypt
+ 
+ clean:
+       rm -f *.o reference libscrypt.so* libscrypt.a endian.h
+-- 
+2.13.0
+
+From 7899df0447e0fcad32a6cce7439eef1f1295aaeb Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <[email protected]>
+Date: Sat, 1 Jul 2017 23:14:29 +0300
+Subject: [PATCH 2/2] build: run tests with local library
+
+Ensure tests can run and when run are run with current library.
+
+Signed-off-by: Alon Bar-Lev <[email protected]>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index c9313cb..783c537 100644
+--- a/Makefile
++++ b/Makefile
+@@ -26,7 +26,7 @@ clean:
+       rm -f *.o reference libscrypt.so* libscrypt.a endian.h
+ 
+ check: all
+-      ./reference
++      LD_LIBRARY_PATH=. ./reference
+ 
+ devtest:
+       splint crypto_scrypt-hexconvert.c 
+-- 
+2.13.0
+

diff --git a/app-crypt/libscrypt/libscrypt-1.21.ebuild 
b/app-crypt/libscrypt/libscrypt-1.21.ebuild
new file mode 100644
index 00000000000..416adce6238
--- /dev/null
+++ b/app-crypt/libscrypt/libscrypt-1.21.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs
+
+DESCRIPTION="Shared library to impliment the scrypt algorithm"
+HOMEPAGE="https://github.com/technion/libscrypt";
+SRC_URI="https://github.com/technion/${PN}/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/${P}-build.patch"
+)
+
+pkg_setup() {
+       export LIBDIR=${PREFIX}/$(get_libdir)
+       export CFLAGS_EXTRA="${CFLAGS}"
+       export LDFLAGS_EXTRA="${LDFLAGS}"
+       export PREFIX=/usr
+       unset CFLAGS
+       unset LDFLAGS
+}
+
+src_compile() {
+       emake \
+               CC=$(tc-getCC)
+}

Reply via email to