diff mbox series

[v3,1/2] package/jitterentropy-library: new package

Message ID 20190911162030.19418-1-matthew.weber@rockwellcollins.com
State Superseded
Headers show
Series [v3,1/2] package/jitterentropy-library: new package | expand

Commit Message

Matt Weber Sept. 11, 2019, 4:20 p.m. UTC
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 v1 -> v3
 - No changes
---
 DEVELOPERS                                    |  1 +
 package/Config.in                             |  1 +
 .../0001-Makefile-cleanup-install.patch       | 41 +++++++++++++++++++
 package/jitterentropy-library/Config.in       |  6 +++
 .../jitterentropy-library.hash                |  5 +++
 .../jitterentropy-library.mk                  | 25 +++++++++++
 6 files changed, 79 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

Comments

Romain Naour Sept. 22, 2019, 12:41 p.m. UTC | #1
Hi Matt,

Le 11/09/2019 à 18:20, Matt Weber a écrit :
> 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>

I had a build issue with this package due to optimizations:

itterentropy-base.c:60:4: error: "The CPU Jitter random number generator must
not be compiled with optimizations. See documentation. Use the compiler switch
-O0 for compiling
      jitterentropy-base.c."
  #error "The CPU Jitter random number generator must not be compiled with
optimizations. See documentation. Use the compiler switch -O0 for compiling
jitterentropy-base.c."
   ^

I forced -O0 in the CFLAGS to fixes the issue.

Best regards,
Romain

> ---
> Changes v1 -> v3
>  - No changes
> ---
>  DEVELOPERS                                    |  1 +
>  package/Config.in                             |  1 +
>  .../0001-Makefile-cleanup-install.patch       | 41 +++++++++++++++++++
>  package/jitterentropy-library/Config.in       |  6 +++
>  .../jitterentropy-library.hash                |  5 +++
>  .../jitterentropy-library.mk                  | 25 +++++++++++
>  6 files changed, 79 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 58d18a36e8..9d5e568e9b 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1523,6 +1523,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 9336261c5d..4a4d388d52 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1378,6 +1378,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..4311d1b201
> --- /dev/null
> +++ b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
> @@ -0,0 +1,41 @@
> +From 21477af2c36df184cb41ba8d34e4f320bb385912 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
> +
> +Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> +---
> + Makefile | 10 +++-------
> + 1 file changed, 3 insertions(+), 7 deletions(-)
> +
> +diff --git a/Makefile b/Makefile
> +index 5e31276..a8848cc 100644
> +--- a/Makefile
> ++++ b/Makefile
> +@@ -47,16 +47,12 @@ 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 -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..e047d506ad
> --- /dev/null
> +++ b/package/jitterentropy-library/jitterentropy-library.mk
> @@ -0,0 +1,25 @@
> +################################################################################
> +#
> +# 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
> +	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS)
> +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))
>
Matt Weber Oct. 21, 2019, 8:27 p.m. UTC | #2
Romain,


On Sun, Sep 22, 2019 at 7:41 AM Romain Naour <romain.naour@smile.fr> wrote:
>
> Hi Matt,
>
> Le 11/09/2019 à 18:20, Matt Weber a écrit :
> > 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>
>
> I had a build issue with this package due to optimizations:
>
> itterentropy-base.c:60:4: error: "The CPU Jitter random number generator must
> not be compiled with optimizations. See documentation. Use the compiler switch
> -O0 for compiling
>       jitterentropy-base.c."
>   #error "The CPU Jitter random number generator must not be compiled with
> optimizations. See documentation. Use the compiler switch -O0 for compiling
> jitterentropy-base.c."
>    ^

I can't seem to trigger this case.  Was this with Clang?  I assume
"#pragma GCC optimize ("O0")" handles it for GCC?

>
> I forced -O0 in the CFLAGS to fixes the issue.
>
> Best regards,
> Romain
>
> > ---
> > Changes v1 -> v3
> >  - No changes
> > ---
> >  DEVELOPERS                                    |  1 +
> >  package/Config.in                             |  1 +
> >  .../0001-Makefile-cleanup-install.patch       | 41 +++++++++++++++++++
> >  package/jitterentropy-library/Config.in       |  6 +++
> >  .../jitterentropy-library.hash                |  5 +++
> >  .../jitterentropy-library.mk                  | 25 +++++++++++
> >  6 files changed, 79 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 58d18a36e8..9d5e568e9b 100644
> > --- a/DEVELOPERS
> > +++ b/DEVELOPERS
> > @@ -1523,6 +1523,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 9336261c5d..4a4d388d52 100644
> > --- a/package/Config.in
> > +++ b/package/Config.in
> > @@ -1378,6 +1378,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..4311d1b201
> > --- /dev/null
> > +++ b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
> > @@ -0,0 +1,41 @@
> > +From 21477af2c36df184cb41ba8d34e4f320bb385912 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
> > +
> > +Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> > +---
> > + Makefile | 10 +++-------
> > + 1 file changed, 3 insertions(+), 7 deletions(-)
> > +
> > +diff --git a/Makefile b/Makefile
> > +index 5e31276..a8848cc 100644
> > +--- a/Makefile
> > ++++ b/Makefile
> > +@@ -47,16 +47,12 @@ 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 -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..e047d506ad
> > --- /dev/null
> > +++ b/package/jitterentropy-library/jitterentropy-library.mk
> > @@ -0,0 +1,25 @@
> > +################################################################################
> > +#
> > +# 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
> > +     $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS)
> > +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))
> >
>
Romain Naour Oct. 21, 2019, 8:35 p.m. UTC | #3
Hi Matt,

Le 21/10/2019 à 22:27, Matthew Weber a écrit :
> Romain,
> 
> 
> On Sun, Sep 22, 2019 at 7:41 AM Romain Naour <romain.naour@smile.fr> wrote:
>>
>> Hi Matt,
>>
>> Le 11/09/2019 à 18:20, Matt Weber a écrit :
>>> 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>
>>
>> I had a build issue with this package due to optimizations:
>>
>> itterentropy-base.c:60:4: error: "The CPU Jitter random number generator must
>> not be compiled with optimizations. See documentation. Use the compiler switch
>> -O0 for compiling
>>       jitterentropy-base.c."
>>   #error "The CPU Jitter random number generator must not be compiled with
>> optimizations. See documentation. Use the compiler switch -O0 for compiling
>> jitterentropy-base.c."
>>    ^
> 
> I can't seem to trigger this case.  Was this with Clang?  I assume
> "#pragma GCC optimize ("O0")" handles it for GCC?

Indeed, it was with Clang used as cross-compiler.

Best regards,
Romain

> 
>>
>> I forced -O0 in the CFLAGS to fixes the issue.
>>
>> Best regards,
>> Romain
>>
>>> ---
>>> Changes v1 -> v3
>>>  - No changes
>>> ---
>>>  DEVELOPERS                                    |  1 +
>>>  package/Config.in                             |  1 +
>>>  .../0001-Makefile-cleanup-install.patch       | 41 +++++++++++++++++++
>>>  package/jitterentropy-library/Config.in       |  6 +++
>>>  .../jitterentropy-library.hash                |  5 +++
>>>  .../jitterentropy-library.mk                  | 25 +++++++++++
>>>  6 files changed, 79 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 58d18a36e8..9d5e568e9b 100644
>>> --- a/DEVELOPERS
>>> +++ b/DEVELOPERS
>>> @@ -1523,6 +1523,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 9336261c5d..4a4d388d52 100644
>>> --- a/package/Config.in
>>> +++ b/package/Config.in
>>> @@ -1378,6 +1378,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..4311d1b201
>>> --- /dev/null
>>> +++ b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
>>> @@ -0,0 +1,41 @@
>>> +From 21477af2c36df184cb41ba8d34e4f320bb385912 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
>>> +
>>> +Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
>>> +---
>>> + Makefile | 10 +++-------
>>> + 1 file changed, 3 insertions(+), 7 deletions(-)
>>> +
>>> +diff --git a/Makefile b/Makefile
>>> +index 5e31276..a8848cc 100644
>>> +--- a/Makefile
>>> ++++ b/Makefile
>>> +@@ -47,16 +47,12 @@ 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 -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..e047d506ad
>>> --- /dev/null
>>> +++ b/package/jitterentropy-library/jitterentropy-library.mk
>>> @@ -0,0 +1,25 @@
>>> +################################################################################
>>> +#
>>> +# 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
>>> +     $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS)
>>> +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))
>>>
>>
> 
>
diff mbox series

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index 58d18a36e8..9d5e568e9b 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1523,6 +1523,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 9336261c5d..4a4d388d52 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1378,6 +1378,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..4311d1b201
--- /dev/null
+++ b/package/jitterentropy-library/0001-Makefile-cleanup-install.patch
@@ -0,0 +1,41 @@ 
+From 21477af2c36df184cb41ba8d34e4f320bb385912 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
+
+Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
+---
+ Makefile | 10 +++-------
+ 1 file changed, 3 insertions(+), 7 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 5e31276..a8848cc 100644
+--- a/Makefile
++++ b/Makefile
+@@ -47,16 +47,12 @@ 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 -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..e047d506ad
--- /dev/null
+++ b/package/jitterentropy-library/jitterentropy-library.mk
@@ -0,0 +1,25 @@ 
+################################################################################
+#
+# 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
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS)
+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))