|
4 | 4 |
|
5 | 5 | # spell-checker:ignore (paths) abmon deref discrim eacces getlimits getopt ginstall inacc infloop inotify reflink ; (misc) INT_OFLOW OFLOW |
6 | 6 | # spell-checker:ignore baddecode submodules xstrtol distros ; (vars/env) SRCDIR vdir rcexp xpart dired OSTYPE ; (utils) gnproc greadlink gsed multihardlink texinfo CARGOFLAGS |
7 | | -# spell-checker:ignore openat TOCTOU CFLAGS |
| 7 | +# spell-checker:ignore openat TOCTOU CFLAGS BINDIR MANPAGES |
8 | 8 | # spell-checker:ignore hfsplus casefold chattr |
9 | 9 |
|
10 | 10 | set -e |
|
94 | 94 | fi |
95 | 95 | cd - |
96 | 96 |
|
97 | | -# Pass the feature flags to make, which will pass them to cargo |
98 | | -"${MAKE}" PROFILE="${PROFILE}" CARGOFLAGS="${CARGO_FEATURE_FLAGS}" |
| 97 | +# Build with MULTICALL=y for faster build time. But everything as a binary cause failure with SELinux by unknown reason. |
| 98 | +MULTICALL_UTILS="test hashsum true false yes" |
| 99 | +"${MAKE}" MULTICALL=y UTILS="${MULTICALL_UTILS}" PROFILE="${PROFILE}" CARGOFLAGS="${CARGO_FEATURE_FLAGS}" |
| 100 | +"${MAKE}" SKIP_UTILS="${MULTICALL_UTILS}" PROFILE="${PROFILE}" CARGOFLAGS="${CARGO_FEATURE_FLAGS}" |
| 101 | +for binary in "$(${UU_BUILD_DIR}/coreutils --list)" |
| 102 | + do ln -vf "${UU_BUILD_DIR}/coreutils" "${UU_BUILD_DIR}/${binary}" |
| 103 | +done |
| 104 | +ln -vf "${UU_BUILD_DIR}/install" "${UU_BUILD_DIR}/ginstall" # The GNU tests use renamed install to ginstall |
99 | 105 | # min test for SELinux |
100 | 106 | [ "${SELINUX_ENABLED}" = 1 ] && touch g && "${PROFILE}"/stat -c%C g && rm g |
101 | 107 |
|
102 | | -cp "${UU_BUILD_DIR}/install" "${UU_BUILD_DIR}/ginstall" # The GNU tests rename this script before running, to avoid confusion with the make target |
103 | | -# Create *sum binaries |
104 | | -for sum in b2sum b3sum md5sum sha1sum sha224sum sha256sum sha384sum sha512sum; do |
105 | | - sum_path="${UU_BUILD_DIR}/${sum}" |
106 | | - test -f "${sum_path}" || (cd ${UU_BUILD_DIR} && ln -s "hashsum" "${sum}") |
107 | | -done |
108 | | -test -f "${UU_BUILD_DIR}/[" || (cd ${UU_BUILD_DIR} && ln -s "test" "[") |
109 | | - |
110 | 108 | ## |
111 | 109 |
|
112 | 110 | cd "${path_GNU}" && echo "[ pwd:'${PWD}' ]" |
113 | 111 |
|
114 | | -# Any binaries that aren't built become `false` so their tests fail |
| 112 | +echo "Symlinking binaries that aren't built become `false` so their tests fail" |
115 | 113 | for binary in $(./build-aux/gen-lists-of-programs.sh --list-progs); do |
116 | 114 | bin_path="${UU_BUILD_DIR}/${binary}" |
117 | 115 | test -f "${bin_path}" || { |
118 | | - echo "'${binary}' was not built with uutils, using the 'false' program" |
119 | | - cp "${UU_BUILD_DIR}/false" "${bin_path}" |
| 116 | + ln -vf "${UU_BUILD_DIR}/false" "${bin_path}" |
120 | 117 | } |
121 | 118 | done |
122 | 119 |
|
|
0 commit comments