Bug 250049

Summary: lang/luajit-openresty: does not build under Poudriere version: 3.3.4 / freebsd 11.4 (freebsd 12.1 host)
Product: Ports & Packages Reporter: peter.larsen
Component: Individual Port(s)Assignee: Martin Matuska <mm>
Status: Closed FIXED    
Severity: Affects Some People CC: jcfyecrayz, mm, osa, peter.larsen
Priority: --- Flags: bugzilla: maintainer-feedback? (mm)
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
log of Poudriere
none
[patch] fall back to /dev/urandom for 11.x (no getentropy(3)) jcfyecrayz: maintainer-approval? (mm)

Description peter.larsen 2020-10-02 12:21:45 UTC
Created attachment 218466 [details]
log of Poudriere

it seems there is somehow a difference in freebsd 12.1 vs 11.4 for poudriere to be able to compile this


full log attached, snippet below



DYNLINK   libluajit.so
AR        libluajit.a
LINK      luajit
libluajit.a(lj_prng.o): In function `lj_prng_seed_secure':
lj_prng.c:(.text+0x174): undefined reference to `getentropy'
cc: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[2]: *** [Makefile:728: luajit] Error 1
gmake[2]: Leaving directory '/wrkdirs/usr/ports/lang/luajit-openresty/work/luajit2-2.1-20201002/src'
gmake[1]: *** [Makefile:113: all] Error 2
gmake[1]: Leaving directory '/wrkdirs/usr/ports/lang/luajit-openresty/work/luajit2-2.1-20201002'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make: stopped in /usr/ports/lang/luajit-openresty
=>> Cleaning up wrkdir
===>  Cleaning for luajit-openresty-2.1.20201002
build of lang/luajit-openresty | luajit-openresty-2.1.20201002 ended at Fri Oct  2 13:10:48 CEST 2020
build time: 00:00:11
!!! build failure encountered !!!
Comment 1 peter.larsen 2020-10-02 14:25:09 UTC
it appears it does not build on any of my freebsd 11.4's
Comment 2 John Hein 2020-10-02 16:02:39 UTC
(In reply to peter.larsen from comment #1)
getentropy(3) is not (currently) available on 11.x, so that failure is real and expected.

On FreeBSD 11, the build should probably be changed to undefine LJ_TARGET_HAS_GETENTROPY.  The code will fall back to using /dev/urandom
Comment 3 John Hein 2020-10-02 17:42:25 UTC
Created attachment 218470 [details]
[patch] fall back to /dev/urandom for 11.x (no getentropy(3))

Tell the build to not use getentropy(3) on 11.x.
Comment 4 commit-hook freebsd_committer freebsd_triage 2020-10-02 19:25:15 UTC
A commit references this bug:

Author: mm
Date: Fri Oct  2 19:25:11 UTC 2020
New revision: 551228
URL: https://svnweb.freebsd.org/changeset/ports/551228

Log:
  Unbreak build on FreeBSD 11

  PR:		250049
  Submitted by:	John Hein <jcfyecrayz@liamekaens.com>
  Reported by:	peter.larsen@larsendata.dk

Changes:
  head/lang/luajit-openresty/Makefile
Comment 5 commit-hook freebsd_committer freebsd_triage 2020-10-02 19:26:17 UTC
A commit references this bug:

Author: mm
Date: Fri Oct  2 19:25:50 UTC 2020
New revision: 551229
URL: https://svnweb.freebsd.org/changeset/ports/551229

Log:
  Add patch missing in previous commit

  PR:		250049

Changes:
  head/lang/luajit-openresty/files/patch-src_lj__prng.c
Comment 6 Sergey A. Osokin freebsd_committer freebsd_triage 2022-01-28 03:01:02 UTC
Hi,

it seems the issue has been fixed a while go, so we'd need to close this PR.

Please let me know your thoughts.

Thank you.