From cea82c4ee95b7bc57924e69638106a6c6b80b6cd Mon Sep 17 00:00:00 2001 From: amai Date: Wed, 24 May 2017 00:07:59 +0200 Subject: [PATCH] Add validateCFG target to validate library files against RNG --- Makefile | 8 ++++++++ tools/dmake.cpp | 9 +++++++++ 2 files changed, 17 insertions(+) diff --git a/Makefile b/Makefile index c4d4bddae..8f76e247a 100644 --- a/Makefile +++ b/Makefile @@ -125,6 +125,14 @@ DB2MAN?=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl XP=xsltproc -''-nonet -''-param man.charmap.use.subset "0" MAN_SOURCE=man/cppcheck.1.xml +Validation of library files: +ConfigFiles := $(wildcard cfg/*.cfg) +ConfigFilesCHECKED := $(patsubst %.cfg,%.checked,$(ConfigFiles)) +.PHONY: validateCFG +%.checked:%.cfg + xmllint --noout --relaxng cfg/cppcheck-cfg.rng $< +validateCFG: ${ConfigFilesCHECKED} + ###### Object Files diff --git a/tools/dmake.cpp b/tools/dmake.cpp index bd120d604..737304657 100644 --- a/tools/dmake.cpp +++ b/tools/dmake.cpp @@ -346,6 +346,15 @@ int main(int argc, char **argv) fout << "XP=xsltproc -''-nonet -''-param man.charmap.use.subset \"0\"\n"; fout << "MAN_SOURCE=man/cppcheck.1.xml\n\n"; + fout << "Validation of library files:\n"; + fout << "ConfigFiles := $(wildcard cfg/*.cfg)\n"; + fout << "ConfigFilesCHECKED := $(patsubst %.cfg,%.checked,$(ConfigFiles))\n"; + fout << ".PHONY: validateCFG\n"; + fout << "%.checked:%.cfg\n"; + fout << "\txmllint --noout --relaxng cfg/cppcheck-cfg.rng $<\n"; + fout << "validateCFG: ${ConfigFilesCHECKED}\n\n"; + + fout << "\n###### Object Files\n\n"; fout << "LIBOBJ = " << objfile(libfiles[0]); for (size_t i = 1; i < libfiles.size(); ++i)