static void initDefaults(void) { GET_LD systemDefaults.arch = PLARCH; systemDefaults.local = DEFLOCAL; systemDefaults.global = DEFGLOBAL; systemDefaults.trail = DEFTRAIL; systemDefaults.goal = "version"; systemDefaults.toplevel = "prolog"; systemDefaults.notty = NOTTYCONTROL; #ifdef __WINDOWS__ getDefaultsFromRegistry(); #endif GD->io_initialised = FALSE; GD->initialised = FALSE; GD->bootsession = FALSE; if ( systemDefaults.notty ) clearPrologFlagMask(PLFLAG_TTY_CONTROL); else setPrologFlagMask(PLFLAG_TTY_CONTROL); setPrologFlagMask(PLFLAG_DEBUGINFO); }
static void initDefaults(void) { GET_LD systemDefaults.arch = PLARCH; systemDefaults.stack_limit = DEFSTACKLIMIT; systemDefaults.table_space = DEFTABLE; systemDefaults.goal = NULL; systemDefaults.toplevel = "default"; systemDefaults.notty = NOTTYCONTROL; #ifdef __WINDOWS__ getDefaultsFromRegistry(); #endif GD->io_initialised = FALSE; GD->initialised = FALSE; GD->bootsession = FALSE; #ifdef SIG_ALERT GD->signals.sig_alert = SIG_ALERT; #endif if ( systemDefaults.notty ) clearPrologFlagMask(PLFLAG_TTY_CONTROL); else setPrologFlagMask(PLFLAG_TTY_CONTROL); setPrologFlagMask(PLFLAG_DEBUGINFO|PLFLAG_GCTHREAD); }
static void setupGNUEmacsInferiorMode() { char envbuf[4]; char *s; int val; if ( ((s = Getenv("EMACS", envbuf, sizeof(envbuf))) && s[0]) || ((s = Getenv("INFERIOR", envbuf, sizeof(envbuf))) && streq(s, "yes")) ) { GET_LD clearPrologFlagMask(PLFLAG_TTY_CONTROL); val = TRUE; } else { val = FALSE; } PL_set_prolog_flag("emacs_inferior_process", PL_BOOL|FF_READONLY, val); }
static int parseCommandLineOptions(int argc0, char **argv, int *compile) { GET_LD int argc = argc0; for( ; argc > 0 && (argv[0][0] == '-' || argv[0][0] == '+'); argc--, argv++ ) { char *s = &argv[0][1]; if ( streq(s, "-" ) ) /* swipl <plargs> -- <app-args> */ { break; } if ( streq(s, "tty") ) /* +/-tty */ { if ( s[-1] == '+' ) setPrologFlagMask(PLFLAG_TTY_CONTROL); else clearPrologFlagMask(PLFLAG_TTY_CONTROL); continue; } else if ( isoption(s, "nosignals") ) { clearPrologFlagMask(PLFLAG_SIGNALS); continue; } else if ( isoption(s, "nodebug") ) { clearPrologFlagMask(PLFLAG_DEBUGINFO); continue; } else if ( streq(s, "-quiet") ) { GD->options.silent = TRUE; continue; } if ( *s == '-' ) { const char *optval; s++; if ( (optval=is_longopt(s, "pldoc")) ) { GD->options.pldoc_server = store_string(optval); } else if ( is_longopt(s, "home") ) { /* already handled */ #ifdef __WINDOWS__ } else if ( (optval=is_longopt(s, "win_app")) ) { GD->options.win_app = TRUE; #endif } else if ( (optval=is_longopt(s, "traditional")) ) { setTraditional(); } continue; /* don't handle --long=value */ } while(*s) { switch(*s) { case 'd': if (argc > 1) { prolog_debug_from_string(argv[1], TRUE); argc--, argv++; } else return -1; break; case 'p': optionList(&GD->options.search_paths); break; case 'O': GD->cmdline.optimise = TRUE; /* see initFeatures() */ break; case 'x': case 'o': optionString(GD->options.compileOut); break; case 'f': optionString(GD->options.initFile); break; case 'F': optionString(GD->options.systemInitFile); break; case 'l': case 's': optionList(&GD->options.scriptFiles); break; case 'g': optionString(GD->options.goal); break; case 't': optionString(GD->options.topLevel); break; case 'c': *compile = TRUE; break; case 'b': GD->bootsession = TRUE; break; case 'q': GD->options.silent = TRUE; break; case 'L': case 'G': case 'T': case 'A': case 'H': { uintptr_t size = memarea_limit(&s[1]); if ( size == MEMAREA_INVALID_SIZE ) return -1; switch(*s) { case 'L': GD->options.localSize = size; goto next; case 'G': GD->options.globalSize = size; goto next; case 'T': GD->options.trailSize = size; goto next; case 'H': case 'A': Sdprintf("% Warning: -%csize is no longer supported\n", *s); goto next; } } } s++; } next:; } return argc0-argc; }