* Massachusetts.
*
* Enhancements Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006,
- * 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
+ * 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
*
* The following terms apply to Digital Equipment Corporation's copyright
* interest in XBoard:
# define SLASH '-'
// redefine some defaults
# undef ICS_LOGON
-# undef SYSCONFDIR
+# undef DATADIR
+# undef SETTINGS_FILE
# define ICS_LOGON "Library/Preferences/XboardICS.conf"
-# define SYSCONFDIR "../etc"
# define DATADIR dataDir
- char *dataDir; // for expanding ~~
+# define SETTINGS_FILE masterSettings
+ char dataDir[MSG_SIZ]; // for expanding ~~
+ char masterSettings[MSG_SIZ];
#else
# define SLASH '/'
-# define DATADIR "~~"
#endif
#ifdef __EMX__
case ArgTwo:
case ArgNone:
case ArgCommSettings:
+ default:
break;
}
return p;
debugFP = stderr;
if(argc > 1 && (!strcmp(argv[1], "-v" ) || !strcmp(argv[1], "--version" ))) {
- printf("%s version %s\n", PACKAGE_NAME, PACKAGE_VERSION);
+ printf("%s version %s\n\n configure options: %s\n", PACKAGE_NAME, PACKAGE_VERSION, CONFIGURE_OPTIONS);
exit(0);
}
#ifdef __APPLE__
{ // prepare to catch OX OpenFile signal, which will tell us the clicked file
GtkosxApplication *theApp = g_object_new(GTKOSX_TYPE_APPLICATION, NULL);
- dataDir = gtkosx_application_get_bundle_path();
+ char *path = gtkosx_application_get_bundle_path();
+ strncpy(dataDir, path, MSG_SIZ);
+ snprintf(masterSettings, MSG_SIZ, "%s/../Resources/etc/xboard.conf", path);
g_signal_connect(theApp, "NSApplicationOpenFile", G_CALLBACK(StartNewXBoard), NULL);
// we must call application ready before we can get the signal,
// and supply a (dummy) menu bar before that, to avoid problems with dual apples in it
}
#endif
+ if(argc > 1 && !strcmp(argv[1], "--show-config")) { // [HGM] install: called to print config info
+ typedef struct {char *name, *value; } Config;
+ static Config configList[] = {
+ { "Datadir", DATADIR },
+ { "Sysconfdir", SYSCONFDIR },
+ { NULL }
+ };
+ int i;
+
+ for(i=0; configList[i].name; i++) {
+ if(argc > 2 && strcmp(argv[2], configList[i].name)) continue;
+ if(argc > 2) printf("%s", configList[i].value);
+ else printf("%-12s: %s\n", configList[i].name, configList[i].value);
+ }
+ exit(0);
+ }
+
/* set up keyboard accelerators group */
GtkAccelerators = gtk_accel_group_new();