From: Petr Špaček Date: Fri, 21 Jun 2019 10:57:13 +0000 (+0200) Subject: kres-gen: improve debugability in case of missing files or symbols X-Git-Tag: v4.1.0~7^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b529f1aa709d6b03729e13268f36a5720b2cc65e;p=thirdparty%2Fknot-resolver.git kres-gen: improve debugability in case of missing files or symbols --- diff --git a/daemon/lua/kres-gen.sh b/daemon/lua/kres-gen.sh index a8e9d1bb0..92be8d733 100755 --- a/daemon/lua/kres-gen.sh +++ b/daemon/lua/kres-gen.sh @@ -7,15 +7,24 @@ CDEFS="../../scripts/gen-cdefs.sh" LIBKRES="${MESON_BUILD_ROOT}/lib/libkres.so" KRESD="${MESON_BUILD_ROOT}/daemon/kresd" +for REQFILE in "$CDEFS" "$LIBKRES" "$KRESD" +do + test '!' -s "$REQFILE" -a -r "$REQFILE" \ + && echo "Required file $REQFILE cannot be read, did you build binaries and shared libraries?" \ + && exit 1 +done + # Write to kres-gen.lua instead of stdout mv kres-gen.lua{,.bak} ||: -exec 1>&- -exec 1<>kres-gen.lua +exec 5<&1- # move stdout into FD 5 +exec 1<>kres-gen.lua # replace stdout with file restore() { - exec 1>&- - mv kres-gen.lua{.bak,} ||: - (>&2 echo "Failed to re-generate kres-gen.lua! Missing debugsymbols?") + exec 1>&- # close stdout redirected into kres-gen.lua + exec 1<&5- # restore original stdout + mv -v kres-gen.lua{,.fail} ||: + mv -v kres-gen.lua{.bak,} ||: + (>&2 echo "Failed to re-generate kres-gen.lua! Missing debugsymbols? Missing shared library?") } trap restore ERR INT TERM