On Wed, Oct 28, 2020 at 04:19:42PM -0400, Don Zickus wrote:
On Wed, Oct 28, 2020 at 09:46:37AM -0400, Brian Masney wrote:
> On Wed, Oct 28, 2020 at 12:44:14PM -0000, GitLab Bridge on behalf of dzickusrh
wrote:
> > From: Don Zickus <dzickus(a)redhat.com>
> >
> > For CKI and its cross-compile environment, it can not cross
> > compile userspace tools. Instead we will native compiles them.
> >
> > To allow this split, the kernel.spec needs to support only
> > building userspace stuff and not the kernel itself.
> >
> > However the userspace tools need some vars defined. This
> > patch creates a new function and sets up those vars.
> >
> > Also very useful for debugging userspace tools and skipping
> > the hour long kernel build times (like LTO).
> >
> > To use this effectively, one would use
> > --without_up
> > --without_debug
> > --without_zfcpdump
>
> These should be --without= instead of --without_.
>
> I remember now why I never submitted this patch to ARK. I couldn't get
> the userspace RPMs for ELN to build and it's likely something wrong with
> the way that I'm building the kernel. Here's how I am building an ELN
> kernel:
>
> DIST='.eln' make dist-srpm IS_FEDORA=0
> rpmbuild --define 'dist .eln' --rebuild --with=bpftool \
> --with=tools --with=perf --with=selftests --without=up \
> --without=kabidw_base --without=debug \
> --without=ipaclones --without=debuginfo \
> --without=cross_headers --without=pae \
> redhat/rpm/SRPMS/*.src.rpm
>
> That won't actually build any RPMs. We are using similar flags for
> the RHEL 8 kernel.
>
> If I try to build it with just the three --without flags that you have
> above like so, then it gives a different error:
>
> $ DIST='.eln' make dist-srpm IS_FEDORA=0
> $ rpmbuild --define 'dist .eln' --rebuild --without=up \
> --without=debug --without=zfcpdump \
> redhat/rpm/SRPMS/*.src.rpm
> RPM build errors:
> Empty %files file
/home/masneyb/rpmbuild/BUILD/kernel-5.10.0-0.rc1.57.test/debugfiles.list
Ah. Because you are compiling on a Fedora machine, the %fedora macro is
still defined. Add "--define 'fedora %{nil}'" and it should work now.
OK, that makes sense. I tested this on Fedora 32 and in a CentOS 8
container and it works in both situations.
Acked-by: Brian Masney <bmasney(a)redhat.com>