|
@@ -56,6 +56,7 @@ int main(int argc, char **argv) {
|
|
|
|
|
|
int wait_for_debugger = 0; // wait 5 second by default
|
|
|
bool is_embedded = false;
|
|
|
+ bool is_headless = false;
|
|
|
|
|
|
for (int i = 0; i < argc; i++) {
|
|
|
if (strcmp("-NSDocumentRevisionsDebugMode", argv[i]) == 0) {
|
|
@@ -75,6 +76,12 @@ int main(int argc, char **argv) {
|
|
|
if (strcmp("--embedded", argv[i]) == 0) {
|
|
|
is_embedded = true;
|
|
|
}
|
|
|
+ if (strcmp("--headless", argv[i]) == 0 || strcmp("--doctool", argv[i]) == 0) {
|
|
|
+ is_headless = true;
|
|
|
+ }
|
|
|
+ if (i < argc - 1 && strcmp("--display-driver", argv[i]) == 0 && strcmp("headless", argv[i + 1]) == 0) {
|
|
|
+ is_headless = true;
|
|
|
+ }
|
|
|
|
|
|
args.ptr()[argsc] = argv[i];
|
|
|
argsc++;
|
|
@@ -90,6 +97,8 @@ int main(int argc, char **argv) {
|
|
|
WARN_PRINT("Embedded mode is not supported in release builds.");
|
|
|
return EXIT_FAILURE;
|
|
|
#endif
|
|
|
+ } else if (is_headless) {
|
|
|
+ os = memnew(OS_MacOS_Headless(args[0], remaining_args, remaining_args > 0 ? &args[1] : nullptr));
|
|
|
} else {
|
|
|
os = memnew(OS_MacOS_NSApp(args[0], remaining_args, remaining_args > 0 ? &args[1] : nullptr));
|
|
|
}
|