Bug 281248 - sysutils/shim: Fails to build with GCC 14: error: implicit declaration of function 'WriteUnaligned32' [-Wimplicit-function-declaration]
Summary: sysutils/shim: Fails to build with GCC 14: error: implicit declaration of fun...
Status: In Progress
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Lorenzo Salvadore
URL: https://pkg-status.freebsd.org/gohan0...
Keywords:
Depends on:
Blocks:
 
Reported: 2024-09-03 14:02 UTC by Lorenzo Salvadore
Modified: 2025-01-22 09:25 UTC (History)
0 users

See Also:
salvadore: maintainer-feedback-


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lorenzo Salvadore freebsd_committer freebsd_triage 2024-09-03 14:02:40 UTC
Build fails with GCC 14. This blocks GCC_DEFAULT update to GCC 14.

gcc14 -std=gnu99 -ggdb -O0 -I. -fno-stack-protector -fno-strict-aliasing -fpic -fshort-wchar -Wall -IInclude -I/usr/local/include/efi -I/usr/local/include/efi/x86_64 -I/usr/local/include/efi/protocol -ffreestanding -I/usr/local/lib/gcc14/gcc/x86_64-portbld-freebsd14.0/14.2.0/include -mno-mmx -mno-sse -mno-red-zone -nostdinc -maccumulate-outgoing-args -DEFI_FUNCTION_WRAPPER -DGNU_EFI_USE_MS_ABI   -c -o Pk/CryptPkcs7Verify.o Pk/CryptPkcs7Verify.c
Pk/CryptPkcs7Verify.c: In function 'Pkcs7GetSigners':
Pk/CryptPkcs7Verify.c:435:5: error: implicit declaration of function 'WriteUnaligned32' [-Wimplicit-function-declaration]
  435 |     WriteUnaligned32 ((UINT32 *) (CertBuf + OldSize), (UINT32) SingleCertSize);
      |     ^~~~~~~~~~~~~~~~
gmake[1]: *** [<builtin>: Pk/CryptPkcs7Verify.o] Error 1
gmake[1]: Leaving directory '/wrkdirs/usr/ports/sysutils/shim/work/shim-0.9/Cryptlib'
gmake: *** [Makefile:128: Cryptlib/libcryptlib.a] Error 2
*** Error code 1

Stop.

Full log: https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-08-29_19h57m48s/logs/errors/shim-0.9_5.log

Useful link: https://gcc.gnu.org/gcc-14/porting_to.html
Comment 1 commit-hook freebsd_committer freebsd_triage 2025-01-22 09:11:06 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=7b612ca975c40aeff5b79e913610191463b0ba01

commit 7b612ca975c40aeff5b79e913610191463b0ba01
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2025-01-22 08:51:52 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2025-01-22 09:10:43 +0000

    sysutils/shim: Deprecate port

    Last commit on the master branch upstream is 10 years ago.
    The port does not build with GCC 14 [1].

    Give 1 month for expiration date.

    The port might be fixed by switching upstream to
    https://github.com/rhboot/shim (actual upstream is a fork of this repo,
    which is still active) and patching appropriately.
    Still, I believe it makes more sense to deprecate and expire the port
    since:
    - apparently nobody felt the need for a more up to date version of shim;
    - there are important security issues which are most likely not
    addressed by the actual port
    (e.g. https://github.com/advisories/GHSA-qjqj-4cq6-6f2f)

    PR:             281248 [1]

 sysutils/shim/Makefile | 3 +++
 1 file changed, 3 insertions(+)
Comment 2 commit-hook freebsd_committer freebsd_triage 2025-01-22 09:23:10 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=692a8de311b8e32f27109fac5b05a383a7711684

commit 692a8de311b8e32f27109fac5b05a383a7711684
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2025-01-22 09:19:46 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2025-01-22 09:19:46 +0000

    sysutils/shim: Set USE_GCC=13

    While we wait for expiration (or remediation), set USE_GCC=13 so that
    the port does not get in the way of the GCC_DEFAULT update to GCC 14.

    PR:             281248

 sysutils/shim/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 3 Lorenzo Salvadore freebsd_committer freebsd_triage 2025-01-22 09:25:35 UTC
This bug does not block GCC_DEFAULT update anymore.