diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-04-29 00:37:13 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-04-29 00:37:13 +0100 |
| commit | 04badd0c82d3ce82ee87c07e120e585899d4acff (patch) | |
| tree | a58dfba6872d7bf2f1a9e7c462e41af12e964906 /src/tools/dcpomatic_create.cc | |
| parent | e935952ec68482352294fed637d4bfa533120e36 (diff) | |
Allow command-line configuration of config location (#1284).
Diffstat (limited to 'src/tools/dcpomatic_create.cc')
| -rw-r--r-- | src/tools/dcpomatic_create.cc | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/tools/dcpomatic_create.cc b/src/tools/dcpomatic_create.cc index a9d1165f1..5c6fc3567 100644 --- a/src/tools/dcpomatic_create.cc +++ b/src/tools/dcpomatic_create.cc @@ -30,6 +30,7 @@ #include "lib/image_content.h" #include "lib/video_content.h" #include "lib/cross.h" +#include "lib/config.h" #include "lib/dcp_content.h" #include <dcp/exceptions.h> #include <libxml++/libxml++.h> @@ -66,6 +67,7 @@ syntax (string n) << " --standard <standard> SMPTE or interop (default SMPTE)\n" << " --no-use-isdcf-name do not use an ISDCF name; use the specified name unmodified\n" << " --no-sign do not sign the DCP\n" + << " --config <dir> directory containing config.xml and cinemas.xml\n" << " -o, --output <dir> output directory\n"; } @@ -105,6 +107,7 @@ main (int argc, char* argv[]) optional<boost::filesystem::path> output; bool sign = true; bool use_isdcf_name = true; + optional<boost::filesystem::path> config; int option_index = 0; while (true) { @@ -122,10 +125,11 @@ main (int argc, char* argv[]) { "no-use-isdcf-name", no_argument, 0, 'D'}, { "no-sign", no_argument, 0, 'E'}, { "output", required_argument, 0, 'o'}, + { "config", required_argument, 0, 'F'}, { 0, 0, 0, 0} }; - int c = getopt_long (argc, argv, "vhn:f:c:f:A:B:C:s:o:DE", long_options, &option_index); + int c = getopt_long (argc, argv, "vhn:f:c:f:A:B:C:s:o:DEF:", long_options, &option_index); if (c == -1) { break; } @@ -185,6 +189,9 @@ main (int argc, char* argv[]) case 'E': sign = false; break; + case 'F': + config = optarg; + break; case 's': still_length = atoi (optarg); break; @@ -202,6 +209,10 @@ main (int argc, char* argv[]) exit (EXIT_FAILURE); } + if (config) { + Config::override_path = *config; + } + if (!content_ratio) { cerr << argv[0] << ": missing required option --content-ratio.\n"; exit (EXIT_FAILURE); |
