aboutsummaryrefslogtreecommitdiff
path: root/bpkg/buildfile
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2017-07-12 16:29:53 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2017-07-12 16:56:24 +0300
commitbd7e3f411c8d46115229bf1fbb1187e853f00e40 (patch)
tree671134ae388765481fc8267709b065b113127209 /bpkg/buildfile
parentc500b854afd7ebd62d0cd3f0545b9715023370d8 (diff)
Make use of wildcards in buildfiles
Diffstat (limited to 'bpkg/buildfile')
-rw-r--r--bpkg/buildfile84
1 files changed, 39 insertions, 45 deletions
diff --git a/bpkg/buildfile b/bpkg/buildfile
index e214bc9..85c2417 100644
--- a/bpkg/buildfile
+++ b/bpkg/buildfile
@@ -2,56 +2,50 @@
# copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
# license : MIT; see accompanying LICENSE file
+# @@ ODB: these are ODB changelogs that are both generated and stored in the
+# repository (what if src != out?). Will need to think how to handle
+# them properly (always generate in src_base?).
+#
+define xml: file
+xml{*}: extension = xml
+
import libs = libbpkg%lib{bpkg}
import libs += libbutl%lib{butl}
import libs += libodb%lib{odb}
import libs += libodb-sqlite%lib{odb-sqlite}
-exe{bpkg}: \
-{hxx cxx}{ archive } \
-{hxx cxx}{ auth } \
-{ cxx}{ bpkg } {hxx ixx cxx}{ bpkg-options } \
-{hxx cxx}{ cfg-create } {hxx ixx cxx}{ cfg-create-options } \
-{hxx cxx}{ checksum } \
- {hxx ixx cxx}{ common-options } \
- {hxx ixx cxx}{ configuration-options } \
-{hxx cxx}{ database } \
-{hxx cxx}{ diagnostics } \
-{hxx cxx}{ fetch } \
-{hxx }{ forward } \
-{hxx cxx}{ help } {hxx ixx cxx}{ help-options } \
-{hxx cxx}{ manifest-utility } \
-{hxx }{ options-types } \
-{hxx ixx cxx}{ package } \
-{hxx ixx cxx}{ package-odb } file{ package.xml } \
-{hxx cxx}{ pkg-build } {hxx ixx cxx}{ pkg-build-options } \
-{hxx }{ pkg-clean } {hxx ixx cxx}{ pkg-clean-options } \
-{hxx cxx}{ pkg-drop } {hxx ixx cxx}{ pkg-drop-options } \
-{hxx cxx}{ pkg-command } \
-{hxx cxx}{ pkg-configure } {hxx ixx cxx}{ pkg-configure-options } \
-{hxx cxx}{ pkg-disfigure } {hxx ixx cxx}{ pkg-disfigure-options } \
-{hxx cxx}{ pkg-fetch } {hxx ixx cxx}{ pkg-fetch-options } \
-{hxx }{ pkg-install } {hxx ixx cxx}{ pkg-install-options } \
-{hxx cxx}{ pkg-purge } {hxx ixx cxx}{ pkg-purge-options } \
-{hxx cxx}{ pkg-status } {hxx ixx cxx}{ pkg-status-options } \
-{hxx }{ pkg-test } {hxx ixx cxx}{ pkg-test-options } \
-{hxx }{ pkg-uninstall } {hxx ixx cxx}{ pkg-uninstall-options } \
-{hxx cxx}{ pkg-unpack } {hxx ixx cxx}{ pkg-unpack-options } \
-{hxx }{ pkg-update } {hxx ixx cxx}{ pkg-update-options } \
-{hxx cxx}{ pkg-verify } {hxx ixx cxx}{ pkg-verify-options } \
-{hxx cxx}{ rep-add } {hxx ixx cxx}{ rep-add-options } \
-{hxx cxx}{ rep-create } {hxx ixx cxx}{ rep-create-options } \
-{hxx cxx}{ rep-fetch } {hxx ixx cxx}{ rep-fetch-options } \
-{hxx cxx}{ rep-info } {hxx ixx cxx}{ rep-info-options } \
- {hxx cxx}{ repository-signing } \
-{hxx cxx}{ satisfaction } \
-{hxx cxx}{ system-repository } \
-{hxx }{ types } \
-{hxx cxx}{ types-parsers } \
-{hxx cxx}{ utility } \
-{hxx }{ version } \
-{hxx }{ wrapper-traits } \
- $libs
+options_topics = \
+bpkg-options \
+cfg-create-options \
+common-options \
+configuration-options \
+help-options \
+pkg-build-options \
+pkg-clean-options \
+pkg-configure-options \
+pkg-disfigure-options \
+pkg-drop-options \
+pkg-fetch-options \
+pkg-install-options \
+pkg-purge-options \
+pkg-test-options \
+pkg-status-options \
+pkg-uninstall-options \
+pkg-unpack-options \
+pkg-update-options \
+pkg-verify-options \
+rep-add-options \
+rep-create-options \
+rep-fetch-options \
+rep-info-options
+
+help_topics = repository-signing
+
+exe{bpkg}: \
+ {hxx ixx txx cxx}{** -{$options_topics} -{$help_topics} -*-odb -version} \
+ {hxx ixx cxx}{$options_topics} {hxx cxx}{$help_topics} \
+ {hxx ixx cxx}{package-odb} {hxx}{version} \
+ $libs xml{*}
hxx{version}: in{version} $src_root/file{manifest}
hxx{version}: dist = true