Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

quote $KERNEL not only when checked, also when used #819

Merged
merged 3 commits into from Jan 12, 2021

Conversation

igalic
Copy link
Contributor

@igalic igalic commented Jan 6, 2021

since -K kernel could be a list, we should quote it when we use it, not
only when checking if it's set.

This pull request fixes part of #818, namely the build error in poudriere.

since -K kernel could be a list, we should quote it when we use it, not
only when checking if it's set.
@evadot
Copy link
Contributor

evadot commented Jan 9, 2021

LGTM

@igalic
Copy link
Contributor Author

igalic commented Jan 9, 2021

finally have actually time to test this: compile goes thru, but no GENERIC-NODEBUG kernel package is created: https://alpha.pkgbase.live/FreeBSD:13:amd64/13.0.s20210109160611/

our documentation https://wiki.freebsd.org/PkgBase
suggests that KERNCONF needs to be set in make.conf, but we set
export __MAKE_CONF=/dev/null
that means that all `make` arguments must be passed explicitly.
@igalic
Copy link
Contributor Author

igalic commented Jan 9, 2021

testing f1b60ab right now (with a clean build) so let's see what we see here tomorrow.

@igalic
Copy link
Contributor Author

igalic commented Jan 10, 2021

frustratingly, even after f1b60ab the result is still the same, https://alpha.pkgbase.live/FreeBSD:13:amd64/13.0.s20210110155125/
both kernels get built, but only generic gets built

@igalic
Copy link
Contributor Author

igalic commented Jan 10, 2021

so the issue may be with update-packages / -u, so I'm now trying a run where i rebuild the jail from scratch

@igalic
Copy link
Contributor Author

igalic commented Jan 11, 2021

after recreating the jail, with the same name, it still doesn't work

@igalic
Copy link
Contributor Author

igalic commented Jan 11, 2021

now I'm wondering if i also need to throw away existing images before trying this again

@evadot
Copy link
Contributor

evadot commented Jan 11, 2021

Something is broken in base, this isn't a problem with poudriere.
I just did a test by setting KERNCONF="GENERIC GENERIC-DEBUG" and make buildkernel, both kernels are built correctly.
But make create-packages-kernel only creates the generic package, not both.
Setting NO_INSTALLEXTRAKERNELS=no doesn't make a difference.

@igalic
Copy link
Contributor Author

igalic commented Jan 11, 2021

okay, so let's merge this for now, since at least it makes poudriere complete the compilation.

is the other kernel absorbed into the generic package or into the utilities package, or is it really not packaged at all?

@bdrewery
Copy link
Member

To be clear, is this PR ready for merge?

@bdrewery bdrewery merged commit 3569e61 into freebsd:master Jan 12, 2021
@igalic igalic deleted the fix/build-kernel branch January 12, 2021 19:54
@kevans91
Copy link
Contributor

kevans91 commented Jan 13, 2021

Something is broken in base, this isn't a problem with poudriere.
I just did a test by setting KERNCONF="GENERIC GENERIC-DEBUG" and make buildkernel, both kernels are built correctly.
But make create-packages-kernel only creates the generic package, not both.
Setting NO_INSTALLEXTRAKERNELS=no doesn't make a difference.

My last build was 429c7d1ab4c0f56495e7b2e4acd15df91cbc14ab and this worked fine at that point, though I don't specifically build GENERIC/GENERIC-NODEBUG (was that a typo? you wrote GENERIC-DEBUG) but rather a bunch of other custom kernels:

root@viper:/usr/src# pkg search -r FreeBSD-base 'FreeBSD-kernel-*' | cut -f1 -d' '
FreeBSD-kernel-gemini-13.0.s20210108062354
FreeBSD-kernel-gemini-dbg-13.0.s20210108062354
FreeBSD-kernel-generic-13.0.s20210108062354
FreeBSD-kernel-generic-dbg-13.0.s20210108062354
FreeBSD-kernel-hondura-13.0.s20210108062354
FreeBSD-kernel-hondura-dbg-13.0.s20210108062354
FreeBSD-kernel-satellite-13.0.s20210108062354
FreeBSD-kernel-satellite-dbg-13.0.s20210108062354
FreeBSD-kernel-shiva-13.0.s20210108062354
FreeBSD-kernel-shiva-dbg-13.0.s20210108062354
FreeBSD-kernel-slowbro-13.0.s20210108062354
FreeBSD-kernel-slowbro-dbg-13.0.s20210108062354
FreeBSD-kernel-viper-13.0.s20210108062354
FreeBSD-kernel-viper-dbg-13.0.s20210108062354

[edit]

Here's some relevant details:

# ps fx
make -C /usr/src NO_INSTALLEXTRAKERNELS=no SRCCONF=/root/freebsd-pkgbase-build/files/src.conf _SRC_ENV_CONF=/dev/null __MAKE_CONF=/dev/null TARGET=amd64 TARGET_ARCH=amd64 packages
# cat /root/freebsd-pkgbase-build/files/src.conf
root@viper:/usr/src# cat /root/freebsd-pkgbase-build/files/src.conf
PKG_FORMAT="tzst"
WITHOUT_CLEAN="YES"

WITH_BSD_GREP="YES"
WITH_LOADER_LUA="YES"
WITH_CLANG_EXTRAS="YES"

WITHOUT_APM="YES"
WITHOUT_ATM="YES"
WITHOUT_BOOTPARAMD="YES"
WITHOUT_BOOTPD="YES"
WITHOUT_BSD_GREP_FASTMATCH="YES"
WITHOUT_BSNMP="YES"
WITHOUT_CCD="YES"
WITHOUT_CXGBETOOL="YES"
WITHOUT_FINGER="YES"
WITHOUT_FLOPPY="YES"
WITHOUT_FORTH="YES"
WITHOUT_HAST="YES"
WITH_MALLOC_PRODUCTION="YES"
#WITHOUT_LIB32="YES"
WITHOUT_LLVM_ASSERTIONS="YES"
WITHOUT_NLS="YES"
WITHOUT_PROFILE="YES"
WITHOUT_SENDMAIL="YES"
WITHOUT_TALK="YES"
WITHOUT_TCP_WRAPPERS="YES"
WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT="YES"

So NO_INSTALLEXTRAKERNELS=no to make(1) combined with KERNCONF does the trick here (KERNCONF is also specified as a make arg, but it was omitted here)

@bdrewery bdrewery added this to the 3.4.0 milestone Jan 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants