···9, mesonEmulatorHook
10, ninja
11, perl
12-, rsync
13, python3
14, fetchpatch
15, gettext
···72 meson
73 ninja
74 perl
75- rsync
7677 # man pages
78 libxslt
···131 # at install time but Meson does not support this
132 # so we need to convince it to install all files to a temporary
133 # location using DESTDIR and then move it to proper one in postInstall.
134- DESTDIR = "${placeholder "out"}/dest";
135136 inherit doCheck;
137···165166 postInstall = ''
167 # Move stuff from DESTDIR to proper location.
168- # We use rsync to merge the directories.
169- rsync --archive "${DESTDIR}/etc" "$out"
170- rm --recursive "${DESTDIR}/etc"
171- rsync --archive "${DESTDIR}${system}"/* "$out"
172- rm --recursive "${DESTDIR}${system}"/*
173- rmdir --parents --ignore-fail-on-non-empty "${DESTDIR}${system}"
174 for o in $(getAllOutputNames); do
175- rsync --archive "${DESTDIR}/''${!o}" "$(dirname "''${!o}")"
176- rm --recursive "${DESTDIR}/''${!o}"
177 done
178- # Ensure the DESTDIR is removed.
179- destdirContainer="$(dirname "${DESTDIR}")"
180- pushd "$destdirContainer"; rmdir --parents "''${DESTDIR##$destdirContainer/}${builtins.storeDir}"; popd
00181 '';
182183 meta = with lib; {
···9, mesonEmulatorHook
10, ninja
11, perl
012, python3
13, fetchpatch
14, gettext
···71 meson
72 ninja
73 perl
07475 # man pages
76 libxslt
···129 # at install time but Meson does not support this
130 # so we need to convince it to install all files to a temporary
131 # location using DESTDIR and then move it to proper one in postInstall.
132+ env.DESTDIR = "dest";
133134 inherit doCheck;
135···163164 postInstall = ''
165 # Move stuff from DESTDIR to proper location.
166+ # We need to be careful with the ordering to merge without conflicts.
00000167 for o in $(getAllOutputNames); do
168+ mv "$DESTDIR/''${!o}" "''${!o}"
0169 done
170+ mv "$DESTDIR/etc" "$out"
171+ mv "$DESTDIR${system}/share"/* "$out/share"
172+ # Ensure we did not forget to install anything.
173+ rmdir --parents --ignore-fail-on-non-empty "$DESTDIR${builtins.storeDir}" "$DESTDIR${system}/share"
174+ ! test -e "$DESTDIR"
175 '';
176177 meta = with lib; {