1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-22 17:35:35 +03:00

mkosi: Fix debian/not-installed build logic

- Expand globs
- Filter out directories
- Append to the list of packaged files, not the list of installed files

Fixes the issue in https://github.com/systemd/systemd/pull/32363

(cherry picked from commit 0409213cbc)
This commit is contained in:
Daan De Meyer 2024-08-14 16:51:11 +02:00 committed by Luca Boccassi
parent 2a328ce809
commit 91a2152628

View File

@ -102,18 +102,22 @@ if ! build; then
sed "s/Package: //" |
xargs -d '\n' -I {} sh -c "[ -d debian/{} ] && (cd debian/{} && find . ! -type d ! -path "*dh-exec*" -printf '%P\n')" |
# Remove compression suffix from compressed manpages as the manpages in debian/tmp will be uncompressed.
sed --regexp-extended 's/([0-9])\.gz$/\1/' |
sort --unique >/tmp/packaged-files
sed --regexp-extended 's/([0-9])\.gz$/\1/' >/tmp/packaged-files
# We figure out the installed files by running find on debian/tmp/ which contains the files installed
# by meson install.
(cd debian/tmp/ && find . ! -type d ! -path "*dh-exec*" -printf '%P\n') >/tmp/installed-files
(cd debian/tmp/ && find . ! -type d ! -path "*dh-exec*" -printf '%P\n' | sort --unique) >/tmp/installed-files
if [[ -f debian/not-installed ]]; then
grep --invert-match "^#" debian/not-installed >>/tmp/installed-files
pushd debian/tmp
grep --invert-match "^#" ../not-installed |
xargs -I {} bash -O nullglob -c "printf '%s\n' {}" |
sed "/^$/d" |
xargs -I {} sh -c "test -f '{}' && echo '{}' || true" >>/tmp/packaged-files
popd
fi
sort --unique --output /tmp/installed-files /tmp/installed-files
sort --unique --output /tmp/packaged-files /tmp/packaged-files
# We get all the installed files that were not packaged by finding entries in the installed file that are
# not in the packaged file.