From d4e8e70325b94509575e6722595fe5ed752c9013 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Wed, 12 Jul 2017 20:30:34 +0300 Subject: Make use of wildcards in buildfiles --- buildfile | 7 +++---- examples/buildfile | 4 +--- examples/hybrid/buildfile | 2 +- examples/inheritance/buildfile | 2 +- examples/performance/buildfile | 2 +- examples/persistence/buildfile | 2 +- examples/processing/buildfile | 2 +- examples/roundtrip/buildfile | 2 +- examples/xhtml/buildfile | 2 +- libstudxml/buildfile | 46 ++++++++++++------------------------------ tests/build/bootstrap.build | 2 +- tests/build/root.build | 2 +- tests/buildfile | 2 +- tests/parser/buildfile | 2 +- tests/roundtrip/buildfile | 4 ++-- tests/serializer/buildfile | 2 +- 16 files changed, 31 insertions(+), 54 deletions(-) diff --git a/buildfile b/buildfile index 6d248f7..7687ac4 100644 --- a/buildfile +++ b/buildfile @@ -2,14 +2,13 @@ # copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC # license : MIT; see accompanying LICENSE file -./: libstudxml/ examples/ tests/ doc/ \ - doc{INSTALL LICENSE NEWS README version} file{manifest} +./: {*/ -build/} doc{INSTALL LICENSE NEWS README version} file{manifest} doc{version}: file{manifest} # Generated by the version module. doc{version}: dist = true # Don't install examples, tests or the INSTALL file. # -dir{examples/}: install = false -dir{tests/}: install = false +dir{examples/}: install = false +dir{tests/}: install = false doc{INSTALL}@./: install = false diff --git a/examples/buildfile b/examples/buildfile index b14235a..c5e408c 100644 --- a/examples/buildfile +++ b/examples/buildfile @@ -2,6 +2,4 @@ # copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC # license : MIT; see accompanying LICENSE file -./: hybrid/ inheritance/ performance/ persistence/ processing/ roundtrip/ \ - xhtml/ doc{README} - +./: {*/ -build/} doc{README} diff --git a/examples/hybrid/buildfile b/examples/hybrid/buildfile index 67a80af..e574bfa 100644 --- a/examples/hybrid/buildfile +++ b/examples/hybrid/buildfile @@ -4,5 +4,5 @@ import libs = libstudxml%lib{studxml} -exe{driver}: {cxx hxx}{dom} cxx{driver} $libs doc{README} +exe{driver}: {hxx cxx}{*} $libs doc{README} exe{driver}: test.input = position.xml diff --git a/examples/inheritance/buildfile b/examples/inheritance/buildfile index e59c1c2..9a6c17e 100644 --- a/examples/inheritance/buildfile +++ b/examples/inheritance/buildfile @@ -4,5 +4,5 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} {cxx hxx}{position} $libs doc{README} +exe{driver}: {hxx cxx}{*} $libs doc{README} exe{driver}: test.input = position.xml diff --git a/examples/performance/buildfile b/examples/performance/buildfile index e95af75..ec194d2 100644 --- a/examples/performance/buildfile +++ b/examples/performance/buildfile @@ -4,5 +4,5 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} {cxx hxx}{time} $libs doc{README} file{test.xsd} +exe{driver}: {hxx cxx}{* -expat -gen} $libs doc{README} file{*.xsd} exe{driver}: test.input = test-50k.xml diff --git a/examples/persistence/buildfile b/examples/persistence/buildfile index 61facb9..7899768 100644 --- a/examples/persistence/buildfile +++ b/examples/persistence/buildfile @@ -4,5 +4,5 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} {cxx hxx}{position} $libs doc{README} +exe{driver}: {hxx cxx}{*} $libs doc{README} exe{driver}: test.input = position.xml diff --git a/examples/processing/buildfile b/examples/processing/buildfile index a69d810..a0cdbdc 100644 --- a/examples/processing/buildfile +++ b/examples/processing/buildfile @@ -4,5 +4,5 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} $libs doc{README} +exe{driver}: {hxx cxx}{*} $libs doc{README} exe{driver}: test.input = position.xml diff --git a/examples/roundtrip/buildfile b/examples/roundtrip/buildfile index 7a95b2c..f401cc9 100644 --- a/examples/roundtrip/buildfile +++ b/examples/roundtrip/buildfile @@ -4,5 +4,5 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} $libs doc{README} +exe{driver}: {hxx cxx}{*} $libs doc{README} exe{driver}: test.input = position.xml diff --git a/examples/xhtml/buildfile b/examples/xhtml/buildfile index 28b7cf4..670c0f9 100644 --- a/examples/xhtml/buildfile +++ b/examples/xhtml/buildfile @@ -4,4 +4,4 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} $libs doc{README} +exe{driver}: {hxx cxx}{*} $libs doc{README} diff --git a/libstudxml/buildfile b/libstudxml/buildfile index 668de68..204d84b 100644 --- a/libstudxml/buildfile +++ b/libstudxml/buildfile @@ -2,51 +2,31 @@ # copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC # license : MIT; see accompanying LICENSE file -lib{studxml}: \ - {hxx }{ content } \ - {hxx }{ exception } \ - {hxx }{ forward } \ - {hxx ixx txx cxx}{ parser } \ - {hxx cxx}{ qname } \ - {hxx ixx cxx}{ serializer } \ - {hxx txx cxx}{ value-traits } \ - {hxx }{ version } \ - details/{hxx }{ config.hxx } \ - details/{hxx }{ export.hxx } \ - details/{hxx }{ post.hxx } \ - details/{hxx }{ pre.hxx } \ - details/{h }{ config } \ - details/{h }{ config-vc } +lib{studxml}: {hxx ixx txx cxx}{** -version} {hxx}{version} \ + details/{h}{config*} # Expat. Note that we treat a whole bunch of its sources as files since they # are private and #include's (including .c file). # -lib{studxml}: \ -details/expat/h{ expat } \ -details/expat/h{ expat_external } \ -details/expat/c{ xmlparse } \ -details/expat/c{ xmlrole } \ -details/expat/c{ xmltok } \ -details/expat/file{ ascii.h asciitab.h config.h iasciitab.h internal.h \ -latin1tab.h nametab.h utf8tab.h xmlrole.h xmltok.h xmltok_impl.c \ -xmltok_impl.h xmltok_ns.c} \ -details/expat/doc{LICENSE README} - -details/expat/doc{README}@./: install = false +lib{studxml}: details/expat/{ \ + h{expat expat_external} \ + c{xmlparse xmlrole xmltok} \ +file{ascii.h asciitab.h config.h iasciitab.h internal.h latin1tab.h nametab.h \ + utf8tab.h xmlrole.h xmltok.h xmltok_impl.h xmltok_impl.c xmltok_ns.c} \ + doc{LICENSE README} \ +} + +details/expat/doc{README}@./: install = false details/expat/doc{LICENSE}@./: install = doc/EXPAT-LICENSE # Genx. # -lib{studxml}: \ -details/genx/c{ char-props } \ -details/genx/c{ genx } \ -details/genx/h{ genx } \ -details/genx/doc{LICENSE README} +lib{studxml}: details/genx/{h{*} c{*} doc{LICENSE README}} hxx{version}: in{version} $src_root/file{manifest} hxx{version}: dist = true -details/genx/doc{README}@./: install = false +details/genx/doc{README}@./: install = false details/genx/doc{LICENSE}@./: install = doc/GENX-LICENSE # For pre-releases use the complete version to make sure they cannot be used diff --git a/tests/build/bootstrap.build b/tests/build/bootstrap.build index 3cca91f..3a9b241 100644 --- a/tests/build/bootstrap.build +++ b/tests/build/bootstrap.build @@ -1,4 +1,4 @@ -# file : examples/build/bootstrap.build +# file : tests/build/bootstrap.build # copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC # license : MIT; see accompanying LICENSE file diff --git a/tests/build/root.build b/tests/build/root.build index c93bac1..377bb0b 100644 --- a/tests/build/root.build +++ b/tests/build/root.build @@ -1,4 +1,4 @@ -# file : examples/build/root.build +# file : tests/build/root.build # copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC # license : MIT; see accompanying LICENSE file diff --git a/tests/buildfile b/tests/buildfile index b79265a..fcea29f 100644 --- a/tests/buildfile +++ b/tests/buildfile @@ -2,4 +2,4 @@ # copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC # license : MIT; see accompanying LICENSE file -./: parser/ roundtrip/ serializer/ +./: {*/ -build/} diff --git a/tests/parser/buildfile b/tests/parser/buildfile index 99f8624..cf63348 100644 --- a/tests/parser/buildfile +++ b/tests/parser/buildfile @@ -4,4 +4,4 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} $libs +exe{driver}: {hxx cxx}{*} $libs diff --git a/tests/roundtrip/buildfile b/tests/roundtrip/buildfile index ab156e1..14fd49a 100644 --- a/tests/roundtrip/buildfile +++ b/tests/roundtrip/buildfile @@ -4,9 +4,9 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} $libs test{testscript} +exe{driver}: {hxx cxx}{*} $libs test{testscript} define xml: file xml{*}: extension = xml -./: exe{driver} xml{attribute characters followup-1 followup-2 namespace} +./: exe{driver} xml{*} diff --git a/tests/serializer/buildfile b/tests/serializer/buildfile index c115c77..91c2f45 100644 --- a/tests/serializer/buildfile +++ b/tests/serializer/buildfile @@ -4,4 +4,4 @@ import libs = libstudxml%lib{studxml} -exe{driver}: cxx{driver} $libs +exe{driver}: {hxx cxx}{*} $libs -- cgit v1.1