aboutsummaryrefslogtreecommitdiff
path: root/bpkg/package
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-09-16 07:16:06 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-09-16 07:16:06 +0200
commit236ad71b105365bedf9d28a5606616fb9aed3168 (patch)
tree3e9c4943c6ea854ed1c931033f7f62916585cd81 /bpkg/package
parentfbe0716682ad4fd64df670978785db372cbe2ed2 (diff)
Implement pkg-unpack command
Diffstat (limited to 'bpkg/package')
-rw-r--r--bpkg/package22
1 files changed, 19 insertions, 3 deletions
diff --git a/bpkg/package b/bpkg/package
index 8c1e047..0c46300 100644
--- a/bpkg/package
+++ b/bpkg/package
@@ -37,16 +37,24 @@ namespace bpkg
{
// path
//
+ using optional_string = optional<string>;
+ using optional_path = optional<path>;
+ using optional_dir_path = optional<dir_path>;
+
#pragma db map type(path) as(string) \
to((?).string ()) from(bpkg::path (?))
- using optional_path = optional<path>;
- using optional_string = optional<string>;
-
#pragma db map type(optional_path) as(bpkg::optional_string) \
to((?) ? (?)->string () : bpkg::optional_string ()) \
from((?) ? bpkg::path (*(?)) : bpkg::optional_path ())
+ #pragma db map type(dir_path) as(string) \
+ to((?).string ()) from(bpkg::dir_path (?))
+
+ #pragma db map type(optional_dir_path) as(bpkg::optional_string) \
+ to((?) ? (?)->string () : bpkg::optional_string ()) \
+ from((?) ? bpkg::dir_path (*(?)) : bpkg::optional_dir_path ())
+
// version
//
#pragma db map type(version) as(_version) \
@@ -101,6 +109,14 @@ namespace bpkg
optional<path> archive;
bool archive_purge;
+ // Path to the source directory of this package, if any. If not
+ // absolute, then it is relative to the configuration directory.
+ // The purge flag indicates whether the directory should be
+ // removed when the packaged is purged.
+ //
+ optional<dir_path> source;
+ bool source_purge;
+
// Database mapping.
//
#pragma db member(name) id