diff options
-rwxr-xr-x | .compile.do | 2 | ||||
-rwxr-xr-x | default.o.do | 8 |
2 files changed, 4 insertions, 6 deletions
diff --git a/.compile.do b/.compile.do index 6634b55..3f48dc4 100755 --- a/.compile.do +++ b/.compile.do @@ -4,5 +4,5 @@ redo-ifchange .vars.rc exec >"$3" echo "# generated by $0" declare -p CC CFLAGS CPPFLAGS -echo '"$CC" -MMD -MF "$depfile" "${CFLAGS[@]}" "${CPPFLAGS[@]}" -c -o "$3" "${1%.o}.c"' +echo '"$CC" -MMD -MF - "${CFLAGS[@]}" "${CPPFLAGS[@]}" -c -o "$3" "${1%.o}.c"' if command -v redo-stamp &>/dev/null; then redo-stamp <"$3"; fi diff --git a/default.o.do b/default.o.do index c7e415b..a2a5e38 100755 --- a/default.o.do +++ b/default.o.do @@ -1,8 +1,6 @@ #!/bin/bash -e +redo-ifchg-pipe() { tr '\n' '\0' | xargs -r0 redo-ifchange; } src=${1%.o}.c redo-ifchange .compile .parse-depfile "$src" -sed -n 's|.*@BUILD_DEP \(.*\)|\1|p' "$src" | tr '\n' '\0' | xargs -r0 redo-ifchange -depfile=$(mktemp) -. ./.compile -./.parse-depfile "$depfile" | tr '\n' '\0' | xargs -r0 redo-ifchange -rm "$depfile" +sed -n 's|.*@BUILD_DEP \(.*\)|\1|p' "$src" | redo-ifchg-pipe +. ./.compile | ./.parse-depfile | redo-ifchg-pipe |