Bug 282265 - devel/wasi-libc: after 9fd4b7c836f0, failing on build-depends
Summary: devel/wasi-libc: after 9fd4b7c836f0, failing on build-depends
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Charlie Li
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-10-22 11:38 UTC by Dimitry Andric
Modified: 2025-01-14 04:04 UTC (History)
0 users

See Also:
vishwin: maintainer-feedback+


Attachments
Full log file from poudriere (10.06 KB, text/plain)
2024-10-22 11:38 UTC, Dimitry Andric
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dimitry Andric freebsd_committer freebsd_triage 2024-10-22 11:38:30 UTC
This is with default ports tree and an empty make.conf, so everything default, but with a world built from the llvm-19-update branch (for bug 280562).

When building devel/wasi-libc under poudriere, I get:

===>   wasi-libc18-22.27 depends on package: gmake>=4.4.1 - not found
===>   Installing existing package /packages/All/gmake-4.4.1.pkg
[llvm-19-update-n272786-24958b70830a-amd64-local-job-03] Installing gmake-4.4.1...
[llvm-19-update-n272786-24958b70830a-amd64-local-job-03] `-- Installing gettext-runtime-0.22.5...
[llvm-19-update-n272786-24958b70830a-amd64-local-job-03] |   `-- Installing indexinfo-0.3.1...
[llvm-19-update-n272786-24958b70830a-amd64-local-job-03] |   `-- Extracting indexinfo-0.3.1: .... done
[llvm-19-update-n272786-24958b70830a-amd64-local-job-03] `-- Extracting gettext-runtime-0.22.5: .......... done
[llvm-19-update-n272786-24958b70830a-amd64-local-job-03] Extracting gmake-4.4.1: .......... done
===>   wasi-libc18-22.27 depends on package: gmake>=4.4.1 - found
===>   Returning to build of wasi-libc18-22.27
===>   wasi-libc18-22.27 depends on executable: llvm-config18 - not found
===>   wasi-libc18-22.27 depends on package: /packages/All/llvm18-18.1.8_2.pkg - not found
===>   USE_PACKAGE_DEPENDS_ONLY set - not building missing dependency from source
*** Error code 1

This appears to have been introduced with ports 9fd4b7c836f0.
Comment 1 Dimitry Andric freebsd_committer freebsd_triage 2024-10-22 11:38:52 UTC
Created attachment 254439 [details]
Full log file from poudriere
Comment 2 Charlie Li freebsd_committer freebsd_triage 2024-10-25 06:05:55 UTC
I don't think it was that commit, because devel/wasi-libc had not been flavoured yet. With flavours, during dogfooding I would sometimes transiently get this with only the 18 flavour, which solved itself when poudriere-bulk(8)-ing devel/llvm18 separately to get it in the repository prior to bulk or testporting devel/wasi-libc.
Comment 3 commit-hook freebsd_committer freebsd_triage 2025-01-14 03:45:11 UTC
A commit in branch main references this bug:

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

commit c0c57c629e25107ee5ead1f631fce3586280845f
Author:     Charlie Li <vishwin@FreeBSD.org>
AuthorDate: 2025-01-14 03:33:35 +0000
Commit:     Charlie Li <vishwin@FreeBSD.org>
CommitDate: 2025-01-14 03:33:35 +0000

    devel/wasi-libc: fix build when ${FLAVOR} is not specified

    To have separate flavours per supported LLVM version, USES=llvm is
    version-locked to each flavour as USES=llvm:${FLAVOR}. This allows
    ${LLVM_VERSION} to be used throughout the Makefile for consistency.
    However, when ${FLAVOR} is not specified, ${LLVM_VERSION} uses
    ${LLVM_DEFAULT} which may not match the first item in ${FLAVORS},
    resulting in missing dependency. Specify a fallback ${FLAVOR} when
    not otherwise set so USES=llvm is guaranteed a version lock.

    Consumers always explicitly specify ${FLAVOR} so this problem is
    not generally exposed.

    Reported by: dim
    PR: 282265

 devel/wasi-libc/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 4 Charlie Li freebsd_committer freebsd_triage 2025-01-14 03:46:56 UTC
Finally hit this while qualifying wasi-sdk-25, with my own LLVM_DEFAULT set to 19 but the first ${FLAVORS} is still 18, without explicitly specifying a ${FLAVOR}.
Comment 5 commit-hook freebsd_committer freebsd_triage 2025-01-14 04:04:13 UTC
A commit in branch 2025Q1 references this bug:

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

commit a8abb4ba3a710b8636de580f949feb26311a3f97
Author:     Charlie Li <vishwin@FreeBSD.org>
AuthorDate: 2025-01-14 03:33:35 +0000
Commit:     Charlie Li <vishwin@FreeBSD.org>
CommitDate: 2025-01-14 04:02:38 +0000

    devel/wasi-libc: fix build when ${FLAVOR} is not specified

    To have separate flavours per supported LLVM version, USES=llvm is
    version-locked to each flavour as USES=llvm:${FLAVOR}. This allows
    ${LLVM_VERSION} to be used throughout the Makefile for consistency.
    However, when ${FLAVOR} is not specified, ${LLVM_VERSION} uses
    ${LLVM_DEFAULT} which may not match the first item in ${FLAVORS},
    resulting in missing dependency. Specify a fallback ${FLAVOR} when
    not otherwise set so USES=llvm is guaranteed a version lock.

    Consumers always explicitly specify ${FLAVOR} so this problem is
    not generally exposed.

    Reported by: dim
    PR: 282265

    (cherry picked from commit c0c57c629e25107ee5ead1f631fce3586280845f)

 devel/wasi-libc/Makefile | 1 +
 1 file changed, 1 insertion(+)