* [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package
@ 2019-10-21 21:38 Matt Weber
2019-10-21 21:38 ` [Buildroot] [PATCH v4 2/2] package/rng-tools: bump to 6.7 Matt Weber
2019-10-22 7:12 ` [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package Thomas Petazzoni
0 siblings, 2 replies; 5+ messages in thread
From: Matt Weber @ 2019-10-21 21:38 UTC (permalink / raw)
To: buildroot
New library to support rng-tools using a CPU source as a backup entropy
source when a kernel provided rng isn't present.
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
---
Changes
v4
[Matt
- Added include folder creation in Makefile cleanup patch to cover
case of when it might not exist on a rebuild
[Romain
- Force no optimization for case where Clang is used to compile and
doesn't respect GCC pragmas
v1 -> v3
- No changes
---
DEVELOPERS | 1 +
package/Config.in | 1 +
.../0001-Makefile-cleanup-install.patch | 43 +++++++++++++++++++
package/jitterentropy-library/Config.in | 6 +++
.../jitterentropy-library.hash | 5 +++
.../jitterentropy-library.mk | 27 ++++++++++++
6 files changed, 83 insertions(+)
create mode 100644 package/jitterentropy-library/0001-Makefile-cleanup-install.patch
create mode 100644 package/jitterentropy-library/Config.in
create mode 100644 package/jitterentropy-library/jitterentropy-library.hash
create mode 100644 package/jitterentropy-library/jitterentropy-library.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 906ccae006..9a64fccb60 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1541,6 +1541,7 @@ F: package/iperf/
F: package/iperf3/
F: package/iputils/
F: package/iw/
+F: package/jitterentropy-library/
F: package/kvm-unit-tests/
F: package/kvmtool/
F: package/libcsv/
diff --git a/package/Config.in b/package/Config.in
index c8ff524e83..c7bb726812 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1400,6 +1400,7 @@ menu "Hardware handling"
source "package/gnu-efi/Config.in"
source "package/hackrf/Config.in"
source "package/hidapi/Config.in"
+ source "package/jitterentropy-library/Config.in"
source "package/lcdapi/Config.in"
source "package/let-me-create/Config.in"
source "package/libaio/Config.in"
diff --git a/package/jitterentropy-library/0001-Makefile-cleanup-install.patch b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
new file mode 100644
index 0000000000..5234b072b1
--- /dev/null
+++ b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
@@ -0,0 +1,43 @@
+From f94975948ff259f86b14d36d3f3ede2e41e41ff4 Mon Sep 17 00:00:00 2001
+From: Matt Weber <matthew.weber@rockwellcollins.com>
+Date: Mon, 9 Sep 2019 20:42:14 -0500
+Subject: [PATCH] Makefile: cleanup install
+
+- drop install of man pages
+- don't strip library install
+- force symlink creation
+- create include folder before copying headers
+
+Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
+---
+ Makefile | 11 ++++-------
+ 1 file changed, 4 insertions(+), 7 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 5e31276..575ee2d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -47,16 +47,13 @@ scan: $(OBJS)
+ scan-build --use-analyzer=/usr/bin/clang $(CC) -shared -Wl,-soname,lib$(NAME).so.$(LIBMAJOR) -o lib$(NAME).so.$(LIBVERSION) $(OBJS) $(LDFLAGS)
+
+ install:
+- install -d -m 0755 $(DESTDIR)$(PREFIX)/share/man/man3
+- install -m 644 doc/$(NAME).3 $(DESTDIR)$(PREFIX)/share/man/man3/
+- gzip -9 $(DESTDIR)$(PREFIX)/share/man/man3/$(NAME).3
+ install -d -m 0755 $(DESTDIR)$(PREFIX)/$(LIBDIR)
+- install -m 0755 -s lib$(NAME).so.$(LIBVERSION) $(DESTDIR)$(PREFIX)/$(LIBDIR)/
++ install -d -m 0755 $(DESTDIR)$(PREFIX)/$(INCDIR)
++ install -m 0755 lib$(NAME).so.$(LIBVERSION) $(DESTDIR)$(PREFIX)/$(LIBDIR)/
+ install -m 0644 jitterentropy.h $(DESTDIR)$(PREFIX)/$(INCDIR)/
+ install -m 0644 jitterentropy-base-user.h $(DESTDIR)$(PREFIX)/$(INCDIR)/
+- $(RM) $(DESTDIR)$(PREFIX)/$(LIBDIR)/lib$(NAME).so.$(LIBMAJOR)
+- ln -s lib$(NAME).so.$(LIBVERSION) $(DESTDIR)$(PREFIX)/$(LIBDIR)/lib$(NAME).so.$(LIBMAJOR)
+- ln -s lib$(NAME).so.$(LIBMAJOR) $(DESTDIR)$(PREFIX)/$(LIBDIR)/lib$(NAME).so
++ ln -sf lib$(NAME).so.$(LIBVERSION) $(DESTDIR)$(PREFIX)/$(LIBDIR)/lib$(NAME).so.$(LIBMAJOR)
++ ln -sf lib$(NAME).so.$(LIBMAJOR) $(DESTDIR)$(PREFIX)/$(LIBDIR)/lib$(NAME).so
+
+ clean:
+ @- $(RM) $(NAME)
+--
+2.17.1
+
diff --git a/package/jitterentropy-library/Config.in b/package/jitterentropy-library/Config.in
new file mode 100644
index 0000000000..02f8ff6164
--- /dev/null
+++ b/package/jitterentropy-library/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_JITTERENTROPY_LIBRARY
+ bool "libjitterentropy"
+ help
+ Hardware RNG based on CPU timing jitter.
+
+ https://github.com/smuellerDD/jitterentropy-library
diff --git a/package/jitterentropy-library/jitterentropy-library.hash b/package/jitterentropy-library/jitterentropy-library.hash
new file mode 100644
index 0000000000..5846f2147d
--- /dev/null
+++ b/package/jitterentropy-library/jitterentropy-library.hash
@@ -0,0 +1,5 @@
+# Locally computed
+sha256 38519115c6b750b7fa15547826123a7821b271535c168823259e609b42847223 jitterentropy-library-2.1.2.tar.gz
+sha256 c3352794eff829a3c8097b77e4cbc9f1faf5c3f47a8abed960a0f411cbc6ab9f COPYING
+sha256 13aa749a5b0a454917a944ed8fffc530b784f5ead522b1aacaf4ec8aa55a6239 COPYING.bsd
+sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 COPYING.gplv2
diff --git a/package/jitterentropy-library/jitterentropy-library.mk b/package/jitterentropy-library/jitterentropy-library.mk
new file mode 100644
index 0000000000..62aea1b516
--- /dev/null
+++ b/package/jitterentropy-library/jitterentropy-library.mk
@@ -0,0 +1,27 @@
+################################################################################
+#
+# jitterentropy-library
+#
+################################################################################
+
+JITTERENTROPY_LIBRARY_VERSION = 2.1.2
+JITTERENTROPY_LIBRARY_SITE = $(call github,smuellerDD,$(JITTERENTROPY_LIBRARY_NAME),v$(JITTERENTROPY_LIBRARY_VERSION))
+JITTERENTROPY_LIBRARY_LICENSE = GPL-2.0, BSD-3-Clause
+JITTERENTROPY_LIBRARY_LICENSE_FILES = COPYING COPYING.bsd COPYING.gplv2
+JITTERENTROPY_LIBRARY_INSTALL_STAGING = YES
+
+define JITTERENTROPY_LIBRARY_BUILD_CMDS
+ # CFLAGS is being forced to not optimize for the case where Clang doesn't
+ # respect "#pragma GCC optimize" in jitterentropy-base.c
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) CFLAGS="-O0"
+endef
+
+define JITTERENTROPY_LIBRARY_INSTALL_STAGING_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr install
+endef
+
+define JITTERENTROPY_LIBRARY_INSTALL_TARGET_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr install
+endef
+
+$(eval $(generic-package))
--
2.17.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH v4 2/2] package/rng-tools: bump to 6.7
2019-10-21 21:38 [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package Matt Weber
@ 2019-10-21 21:38 ` Matt Weber
2019-10-22 7:13 ` Thomas Petazzoni
2019-10-22 7:12 ` [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package Thomas Petazzoni
1 sibling, 1 reply; 5+ messages in thread
From: Matt Weber @ 2019-10-21 21:38 UTC (permalink / raw)
To: buildroot
* Switch to new site and add license file hash
* Add new libsysfs dependency for rng available check
* Remove patch adding special return code when no RNG module is available.
This has been replaced by using the jitter library to always have a
source (new jitterentropy dependency)
* Change to a autotools build and add patch to allow README file to not be
found during autoreconfig
Cc: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Tested-by: Romain Naour <romain.naour@smile.fr>
---
Changes
v4
- None
v2 -> v3
[Thomas P
- Add patch to set AM_INIT_AUTOMAKE to foreign to prevent missing
README file from breaking the reconfigure. Thanks Fabrice for
already starting the upstream up this.
v1 -> v2
[Thomas P
- Added host automake/autotools dependencies and checked for no
libtool dependency.
[Baruch
- Removed cut paste error in comment for autoreconf
---
.../0001-configure.ac-fix-autoreconf.patch | 34 +++++++++++++++++++
package/rng-tools/0001-rngd-exit-code.patch | 22 ------------
package/rng-tools/Config.in | 2 ++
package/rng-tools/rng-tools.hash | 6 ++--
package/rng-tools/rng-tools.mk | 12 +++++--
package/rng-tools/rngd.service | 1 -
6 files changed, 49 insertions(+), 28 deletions(-)
create mode 100644 package/rng-tools/0001-configure.ac-fix-autoreconf.patch
delete mode 100644 package/rng-tools/0001-rngd-exit-code.patch
diff --git a/package/rng-tools/0001-configure.ac-fix-autoreconf.patch b/package/rng-tools/0001-configure.ac-fix-autoreconf.patch
new file mode 100644
index 0000000000..567a7a2891
--- /dev/null
+++ b/package/rng-tools/0001-configure.ac-fix-autoreconf.patch
@@ -0,0 +1,34 @@
+From 1af1b4aab717a58da1dff8888c36c741b0f6ac03 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Fri, 5 Apr 2019 19:22:22 +0200
+Subject: [PATCH] configure.ac: fix autoreconf
+
+Use foreign instead of gnu in AM_INIT_AUTOMAKE otherwise autoreconf will
+fail on:
+Makefile.am: error: required file './README' not found
+
+Upstream:
+https://github.com/nhorman/rng-tools/commit/1af1b4aab717a58da1dff8888c36c741b0f6ac03
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index d00a6f1..26b4806 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -21,7 +21,7 @@ AC_INIT(rng-tools, 6.7, [Neil Horman <nhorman@tuxdriver.com>])
+ AC_PREREQ(2.52)
+ AC_CONFIG_SRCDIR([rngd.c])
+ AC_CANONICAL_TARGET
+-AM_INIT_AUTOMAKE([gnu])
++AM_INIT_AUTOMAKE([foreign])
+ AC_CONFIG_HEADERS([rng-tools-config.h])
+ AC_CONFIG_MACRO_DIRS([m4])
+
+--
+2.17.1
+
diff --git a/package/rng-tools/0001-rngd-exit-code.patch b/package/rng-tools/0001-rngd-exit-code.patch
deleted file mode 100644
index 709e20c70d..0000000000
--- a/package/rng-tools/0001-rngd-exit-code.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Exit with a special value when RNG modules are not available
-
-Instead of returning with an error, exit with a special value when the
-RNG kernel modules are not present in the kernel. This is not really a
-hard failure.
-
-Patch borrowed from Fedora, at
-http://pkgs.fedoraproject.org/cgit/rng-tools.git/tree/rngd-exit-code.patch.
-
-Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
-
---- a/rngd.c
-+++ b/rngd.c
-@@ -319,7 +319,7 @@ int main(int argc, char **argv)
- message(LOG_DAEMON|LOG_ERR,
- "Maybe RNG device modules are not loaded\n");
- }
-- return 1;
-+ return 66;
- }
-
- if (arguments->verbose) {
diff --git a/package/rng-tools/Config.in b/package/rng-tools/Config.in
index b00477d336..18521bdd90 100644
--- a/package/rng-tools/Config.in
+++ b/package/rng-tools/Config.in
@@ -4,6 +4,8 @@ config BR2_PACKAGE_RNG_TOOLS
select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL
# For rdrand ligcrypt is required and it's not obvious to users
select BR2_PACKAGE_LIBGCRYPT if BR2_i386 || BR2_x86_64
+ select BR2_PACKAGE_LIBSYSFS
+ select BR2_PACKAGE_JITTERENTROPY_LIBRARY
help
Daemon to use hardware random number generators.
diff --git a/package/rng-tools/rng-tools.hash b/package/rng-tools/rng-tools.hash
index 09769e4622..a0771034fe 100644
--- a/package/rng-tools/rng-tools.hash
+++ b/package/rng-tools/rng-tools.hash
@@ -1,3 +1,3 @@
-# From http://sourceforge.net/projects/gkernel/files/rng-tools/5/
-md5 6726cdc6fae1f5122463f24ae980dd68 rng-tools-5.tar.gz
-sha1 3092768ac45315a5dcc0170d05566d1d00dbad96 rng-tools-5.tar.gz
+# Locally computed
+sha256 b85e3530dbf943b6da03ebecaf64d0a4febfcc4f562fc7f8d886483906b15f08 rng-tools-6.7.tar.gz
+sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
diff --git a/package/rng-tools/rng-tools.mk b/package/rng-tools/rng-tools.mk
index bbb1a64c15..1e8092be38 100644
--- a/package/rng-tools/rng-tools.mk
+++ b/package/rng-tools/rng-tools.mk
@@ -4,10 +4,18 @@
#
################################################################################
-RNG_TOOLS_VERSION = 5
-RNG_TOOLS_SITE = http://downloads.sourceforge.net/project/gkernel/rng-tools/$(RNG_TOOLS_VERSION)
+RNG_TOOLS_VERSION = 6.7
+RNG_TOOLS_SITE = $(call github,nhorman,$(RNG_TOOLS_NAME),v$(RNG_TOOLS_VERSION))
RNG_TOOLS_LICENSE = GPL-2.0
RNG_TOOLS_LICENSE_FILES = COPYING
+RNG_TOOLS_DEPENDENCIES = libsysfs jitterentropy-library host-automake \
+ host-autoconf
+
+RNG_TOOLS_AUTORECONF = YES
+
+RNG_TOOLS_CONF_OPTS = \
+ --without-nistbeacon \
+ --without-pkcs11
# Work around for uClibc or musl toolchains which lack argp_*()
# functions.
diff --git a/package/rng-tools/rngd.service b/package/rng-tools/rngd.service
index c0bcffe59e..11386d1e5d 100644
--- a/package/rng-tools/rngd.service
+++ b/package/rng-tools/rngd.service
@@ -3,7 +3,6 @@ Description=Hardware RNG Entropy Gatherer Daemon
[Service]
ExecStart=/usr/sbin/rngd -f $DAEMON_ARGS
-SuccessExitStatus=66
EnvironmentFile=-/etc/default/rngd
[Install]
--
2.17.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* [Buildroot] [PATCH v4 2/2] package/rng-tools: bump to 6.7
2019-10-21 21:38 ` [Buildroot] [PATCH v4 2/2] package/rng-tools: bump to 6.7 Matt Weber
@ 2019-10-22 7:13 ` Thomas Petazzoni
0 siblings, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2019-10-22 7:13 UTC (permalink / raw)
To: buildroot
Hello Matt,
On Mon, 21 Oct 2019 16:38:39 -0500
Matt Weber <matthew.weber@rockwellcollins.com> wrote:
> diff --git a/package/rng-tools/Config.in b/package/rng-tools/Config.in
> index b00477d336..18521bdd90 100644
> --- a/package/rng-tools/Config.in
> +++ b/package/rng-tools/Config.in
> @@ -4,6 +4,8 @@ config BR2_PACKAGE_RNG_TOOLS
> select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL
> # For rdrand ligcrypt is required and it's not obvious to users
> select BR2_PACKAGE_LIBGCRYPT if BR2_i386 || BR2_x86_64
> + select BR2_PACKAGE_LIBSYSFS
> + select BR2_PACKAGE_JITTERENTROPY_LIBRARY
Alphabetic ordering.
> diff --git a/package/rng-tools/rng-tools.mk b/package/rng-tools/rng-tools.mk
> index bbb1a64c15..1e8092be38 100644
> --- a/package/rng-tools/rng-tools.mk
> +++ b/package/rng-tools/rng-tools.mk
> @@ -4,10 +4,18 @@
> #
> ################################################################################
>
> -RNG_TOOLS_VERSION = 5
> -RNG_TOOLS_SITE = http://downloads.sourceforge.net/project/gkernel/rng-tools/$(RNG_TOOLS_VERSION)
> +RNG_TOOLS_VERSION = 6.7
> +RNG_TOOLS_SITE = $(call github,nhorman,$(RNG_TOOLS_NAME),v$(RNG_TOOLS_VERSION))
> RNG_TOOLS_LICENSE = GPL-2.0
> RNG_TOOLS_LICENSE_FILES = COPYING
> +RNG_TOOLS_DEPENDENCIES = libsysfs jitterentropy-library host-automake \
> + host-autoconf
Please drop the dependencies on host-automake and host-autoconf, they
are not needed as they are automatically added by AUTORECONF = YES.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package
2019-10-21 21:38 [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package Matt Weber
2019-10-21 21:38 ` [Buildroot] [PATCH v4 2/2] package/rng-tools: bump to 6.7 Matt Weber
@ 2019-10-22 7:12 ` Thomas Petazzoni
2019-10-22 15:46 ` Matthew Weber
1 sibling, 1 reply; 5+ messages in thread
From: Thomas Petazzoni @ 2019-10-22 7:12 UTC (permalink / raw)
To: buildroot
Hello Matt,
On Mon, 21 Oct 2019 16:38:38 -0500
Matt Weber <matthew.weber@rockwellcollins.com> wrote:
> diff --git a/package/jitterentropy-library/0001-Makefile-cleanup-install.patch b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
> new file mode 100644
> index 0000000000..5234b072b1
> --- /dev/null
> +++ b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
> @@ -0,0 +1,43 @@
> +From f94975948ff259f86b14d36d3f3ede2e41e41ff4 Mon Sep 17 00:00:00 2001
> +From: Matt Weber <matthew.weber@rockwellcollins.com>
> +Date: Mon, 9 Sep 2019 20:42:14 -0500
> +Subject: [PATCH] Makefile: cleanup install
> +
> +- drop install of man pages
Please leave the man page installation in place, so that the patch is
acceptable upstream, and submit the patch as a pull request on Github.
> +- don't strip library install
> +- force symlink creation
> +- create include folder before copying headers
The only thing that could be controversial here is the removal of the
library stripping. If upstream does not want to remove it, then I'd suggest:
INSTALL_STRIP = install -s
with:
$(INSTALL_STRIP) -m 0755 lib$(NAME).so.$(LIBVERSION) $(DESTDIR)$(PREFIX)/$(LIBDIR)/
so that we can override INSTALL_STRIP from the Buildroot .mk file.
This should make the change acceptable upstream.
> +JITTERENTROPY_LIBRARY_VERSION = 2.1.2
> +JITTERENTROPY_LIBRARY_SITE = $(call github,smuellerDD,$(JITTERENTROPY_LIBRARY_NAME),v$(JITTERENTROPY_LIBRARY_VERSION))
> +JITTERENTROPY_LIBRARY_LICENSE = GPL-2.0, BSD-3-Clause
> +JITTERENTROPY_LIBRARY_LICENSE_FILES = COPYING COPYING.bsd COPYING.gplv2
> +JITTERENTROPY_LIBRARY_INSTALL_STAGING = YES
> +
> +define JITTERENTROPY_LIBRARY_BUILD_CMDS
> + # CFLAGS is being forced to not optimize for the case where Clang doesn't
> + # respect "#pragma GCC optimize" in jitterentropy-base.c
> + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) CFLAGS="-O0"
Why do we care about Clang ? It is not supported as a Buildroot
compiler for the moment. When it will, perhaps we will have some
BR2_TOOLCHAIN_USES_GCC and BR2_TOOLCHAIN_USES_CLANG options, so that
packages can do whatever hacks they need depending on the compiler
being used.
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package
2019-10-22 7:12 ` [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package Thomas Petazzoni
@ 2019-10-22 15:46 ` Matthew Weber
0 siblings, 0 replies; 5+ messages in thread
From: Matthew Weber @ 2019-10-22 15:46 UTC (permalink / raw)
To: buildroot
Thomas,
On Tue, Oct 22, 2019 at 2:13 AM Thomas Petazzoni
<thomas.petazzoni@bootlin.com> wrote:
>
> Hello Matt,
>
> On Mon, 21 Oct 2019 16:38:38 -0500
> Matt Weber <matthew.weber@rockwellcollins.com> wrote:
>
> > diff --git a/package/jitterentropy-library/0001-Makefile-cleanup-install.patch b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
> > new file mode 100644
> > index 0000000000..5234b072b1
> > --- /dev/null
> > +++ b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
> > @@ -0,0 +1,43 @@
> > +From f94975948ff259f86b14d36d3f3ede2e41e41ff4 Mon Sep 17 00:00:00 2001
> > +From: Matt Weber <matthew.weber@rockwellcollins.com>
> > +Date: Mon, 9 Sep 2019 20:42:14 -0500
> > +Subject: [PATCH] Makefile: cleanup install
> > +
> > +- drop install of man pages
>
> Please leave the man page installation in place, so that the patch is
> acceptable upstream, and submit the patch as a pull request on Github.
Sure, I was debating on how to handle this. I'll do some rework and
send out a refreshed patch to the project and here.
>
> > +- don't strip library install
> > +- force symlink creation
> > +- create include folder before copying headers
>
> The only thing that could be controversial here is the removal of the
> library stripping. If upstream does not want to remove it, then I'd suggest:
>
> INSTALL_STRIP = install -s
>
> with:
>
> $(INSTALL_STRIP) -m 0755 lib$(NAME).so.$(LIBVERSION) $(DESTDIR)$(PREFIX)/$(LIBDIR)/
>
> so that we can override INSTALL_STRIP from the Buildroot .mk file.
>
> This should make the change acceptable upstream.
Thank you for that example.
>
> > +JITTERENTROPY_LIBRARY_VERSION = 2.1.2
> > +JITTERENTROPY_LIBRARY_SITE = $(call github,smuellerDD,$(JITTERENTROPY_LIBRARY_NAME),v$(JITTERENTROPY_LIBRARY_VERSION))
> > +JITTERENTROPY_LIBRARY_LICENSE = GPL-2.0, BSD-3-Clause
> > +JITTERENTROPY_LIBRARY_LICENSE_FILES = COPYING COPYING.bsd COPYING.gplv2
> > +JITTERENTROPY_LIBRARY_INSTALL_STAGING = YES
> > +
> > +define JITTERENTROPY_LIBRARY_BUILD_CMDS
> > + # CFLAGS is being forced to not optimize for the case where Clang doesn't
> > + # respect "#pragma GCC optimize" in jitterentropy-base.c
> > + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) CFLAGS="-O0"
>
> Why do we care about Clang ? It is not supported as a Buildroot
> compiler for the moment. When it will, perhaps we will have some
> BR2_TOOLCHAIN_USES_GCC and BR2_TOOLCHAIN_USES_CLANG options, so that
> packages can do whatever hacks they need depending on the compiler
> being used.
>
Romain did some testing and found it. I can drop it for this series.
Regards,
Matt
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-10-22 15:46 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-21 21:38 [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package Matt Weber
2019-10-21 21:38 ` [Buildroot] [PATCH v4 2/2] package/rng-tools: bump to 6.7 Matt Weber
2019-10-22 7:13 ` Thomas Petazzoni
2019-10-22 7:12 ` [Buildroot] [PATCH v4 1/2] package/jitterentropy-library: new package Thomas Petazzoni
2019-10-22 15:46 ` Matthew Weber
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox