]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commit
base: Switch UNPACKDIR to a subdir of WORKDIR
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 9 May 2024 16:01:27 +0000 (17:01 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 22 May 2024 21:26:27 +0000 (22:26 +0100)
commitb84eec5c4cbf4b39d6712800dd0d2fe5337721cb
treeeae3bdecdeb262c45bf7d5fa9a84c2e885c07b76
parent094273bd7d1768e14fbdcd2f239bee14c630a625
base: Switch UNPACKDIR to a subdir of WORKDIR

Change do_unpack to unpack files to a subdirectory of WORKDIR instead of WORKDIR
itself. There are several good reasons for this but it is mainly about being able
to isolate the output of the unpack task and tell the files apart from other things
which are created in workdir (logs, sysroots, temp dirs and more).

This means that when the do_unpack task reruns, we can clean UNPACKDIR and know
we have a standard point to start builds from.

It also makes code in tools like devtool and recipetool easier.

To reduce the impact to users, if a subdirectory under UNPACKDIR matches
the first subdirectory under WORKDIR of S, that directory is moved into position
inside WORKDIR. This preserves the behaviour of S = "${WORKDIR}/git",
S = "${WORKDIR}/${BPN}" and other commonly used source directory setups.

The directory is moved since sadly many autotools based projects can't cope with
symlinks in their paths.

The patch also updates reproducible and SOURCE_DATE_EPOCH handling to
match the new potential source locations. We can get rid of the horrible
list of hardcoded directories in WORKDIR to ignore from that code.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes-global/base.bbclass
meta/conf/bitbake.conf
meta/lib/oe/reproducible.py