projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add --config option to map (#2543).
[dcpomatic.git]
/
src
/
lib
/
map_cli.cc
diff --git
a/src/lib/map_cli.cc
b/src/lib/map_cli.cc
index 1b99afa945fcf4f5157cdaf7ba4e46fe6944748b..c95d7f1a1aaa4c2f3bb2b5f2eda6ddf2b80c7bb0 100644
(file)
--- a/
src/lib/map_cli.cc
+++ b/
src/lib/map_cli.cc
@@
-63,6
+63,7
@@
help(std::function<void (string)> out)
out(" -s, --soft-link using soft links instead of copying");
out(" -d, --assets-dir look in this directory for assets (can be given more than once)");
out(" -r, --rename rename all files to <uuid>.<mxf|xml>");
out(" -s, --soft-link using soft links instead of copying");
out(" -d, --assets-dir look in this directory for assets (can be given more than once)");
out(" -r, --rename rename all files to <uuid>.<mxf|xml>");
+ out(" --config <dir> directory containing config.xml and cinemas.xml");
}
}
@@
-74,6
+75,7
@@
map_cli(int argc, char* argv[], std::function<void (string)> out)
bool soft_link = false;
bool rename = false;
vector<boost::filesystem::path> assets_dir;
bool soft_link = false;
bool rename = false;
vector<boost::filesystem::path> assets_dir;
+ optional<boost::filesystem::path> config_dir;
/* This makes it possible to call getopt several times in the same executable, for tests */
optind = 0;
/* This makes it possible to call getopt several times in the same executable, for tests */
optind = 0;
@@
-87,10
+89,11
@@
map_cli(int argc, char* argv[], std::function<void (string)> out)
{ "soft-link", no_argument, 0, 's' },
{ "assets-dir", required_argument, 0, 'd' },
{ "rename", no_argument, 0, 'r' },
{ "soft-link", no_argument, 0, 's' },
{ "assets-dir", required_argument, 0, 'd' },
{ "rename", no_argument, 0, 'r' },
+ { "config", required_argument, 0, 'c' },
{ 0, 0, 0, 0 }
};
{ 0, 0, 0, 0 }
};
- int c = getopt_long(argc, argv, "ho:lsd:r", long_options, &option_index);
+ int c = getopt_long(argc, argv, "ho:lsd:r
c:
", long_options, &option_index);
if (c == -1) {
break;
if (c == -1) {
break;
@@
-117,6
+120,9
@@
map_cli(int argc, char* argv[], std::function<void (string)> out)
case 'r':
rename = true;
break;
case 'r':
rename = true;
break;
+ case 'c':
+ config_dir = optarg;
+ break;
}
}
}
}
@@
-127,6
+133,10
@@
map_cli(int argc, char* argv[], std::function<void (string)> out)
exit(EXIT_FAILURE);
}
exit(EXIT_FAILURE);
}
+ if (config_dir) {
+ State::override_path = *config_dir;
+ }
+
vector<boost::filesystem::path> cpl_filenames;
for (int i = optind; i < argc; ++i) {
cpl_filenames.push_back(argv[i]);
vector<boost::filesystem::path> cpl_filenames;
for (int i = optind; i < argc; ++i) {
cpl_filenames.push_back(argv[i]);