cleanlog, reports.mk: factor the script out
Sometimes REPORT=1 just wasn't passed to make, and the build.log saved is noisy and harder to compare through diff(1); let's move the implementation out of the makefile and into a standalone script so it can be reused like this: BUILDDIR=$(sed -rn "s/^mki-image-scripts: export GLOBAL_BUILDDIR='(.*)'$/\1/p" build/build.log bin/cleanlog < build/build.log > build/reports/clean.log See "export GLOBAL_BUILDDIR=" line in the particular log (grabbing that one from stdin is not exactly trivial though).
This commit is contained in:
parent
0039b215ae
commit
f8ae619bbb
24
bin/cleanlog
Executable file
24
bin/cleanlog
Executable file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# try making build logs more diffable
|
||||||
|
# see also reports.mk
|
||||||
|
|
||||||
|
[ -n "$BUILDDIR" ] || exit 1
|
||||||
|
|
||||||
|
sed -r \
|
||||||
|
-e "s,$BUILDDIR,,g" \
|
||||||
|
-e '/\/var\/lib\/apt\/lists/d' \
|
||||||
|
-e 's/... .. ..:..:..//g' \
|
||||||
|
-e 's/\[[0-9]+\]//g' \
|
||||||
|
-e '/^(Reading Package Lists|Building Dependency Tree)/d' \
|
||||||
|
-e '/^(Fetched|Need to get|After unpacking) /d' \
|
||||||
|
-e '/^(Preparing packages for installation|Done\.)/d' \
|
||||||
|
-e '/^hsh(|-(initroot|install|fakedev|(mk|rm)chroot|run)): /d' \
|
||||||
|
-e '/^(hasher-priv|mkaptbox|(mk|rm)dir): /d' \
|
||||||
|
-e '/^mki-((invalidate-|)cache|check-obsolete|prepare): /d' \
|
||||||
|
-e '/^(mode of|changed (group|ownership)|removed) /d' \
|
||||||
|
-e '/^chroot\/.in\//d' \
|
||||||
|
-e '/ has started executing\.$/d' \
|
||||||
|
-e '/\/var\/log\/apt\.log$/d' \
|
||||||
|
-e '/\/usr\/share\/apt\/scripts\/log\.lua/d' \
|
||||||
|
-e '/\.rpm$/d' \
|
||||||
|
-e "/' -> '/d"
|
21
reports.mk
21
reports.mk
@ -28,26 +28,7 @@ reports/prep:
|
|||||||
# try to drop common noise rendering diff(1) mostly useless
|
# try to drop common noise rendering diff(1) mostly useless
|
||||||
reports/cleanlog: reports/prep
|
reports/cleanlog: reports/prep
|
||||||
@OUT="$(REPORTDIR)/$(@F).log"; \
|
@OUT="$(REPORTDIR)/$(@F).log"; \
|
||||||
sed -r \
|
BUILDDIR="$(BUILDDIR)" cleanlog < $(BUILDLOG) > "$$OUT" \
|
||||||
-e 's,$(BUILDDIR),,g' \
|
|
||||||
-e '/\/var\/lib\/apt\/lists/d' \
|
|
||||||
-e 's/... .. ..:..:..//g' \
|
|
||||||
-e 's/\[[0-9]+\]//g' \
|
|
||||||
-e '/^(Reading Package Lists|Building Dependency Tree)/d' \
|
|
||||||
-e '/^(Fetched|Need to get|After unpacking) /d' \
|
|
||||||
-e '/^(Preparing packages for installation|Done\.)/d' \
|
|
||||||
-e '/^hsh(|-(initroot|install|fakedev|(mk|rm)chroot|run)): /d' \
|
|
||||||
-e '/^(hasher-priv|mkaptbox|(mk|rm)dir): /d' \
|
|
||||||
-e '/^mki-((invalidate-|)cache|check-obsolete|prepare): /d' \
|
|
||||||
-e '/^(mode of|changed (group|ownership)|removed) /d' \
|
|
||||||
-e '/^chroot\/.in\//d' \
|
|
||||||
-e '/ has started executing\.$$/d' \
|
|
||||||
-e '/\/var\/log\/apt\.log$$/d' \
|
|
||||||
-e '/\/usr\/share\/apt\/scripts\/log\.lua/d' \
|
|
||||||
-e '/\.rpm$$/d' \
|
|
||||||
-e "/' -> '/d" \
|
|
||||||
< $(BUILDLOG) \
|
|
||||||
> "$(REPORTDIR)/$(@F).log" \
|
|
||||||
&& echo "** diffable log: $$OUT" $(SHORTEN)
|
&& echo "** diffable log: $$OUT" $(SHORTEN)
|
||||||
|
|
||||||
reports/scripts: reports/prep
|
reports/scripts: reports/prep
|
||||||
|
Loading…
Reference in New Issue
Block a user