@@ -81,8 +81,7 @@ public static void main(String[] args) {
8181 @ Override
8282 protected List <String > preprocessArguments (List <String > givenArgs , Map <String , String > polyglotOptions ) {
8383 ArrayList <String > unrecognized = new ArrayList <>();
84- List <String > defaultEnvironmentArgs = getDefaultEnvironmentArgs ();
85- ArrayList <String > inputArgs = new ArrayList <>(defaultEnvironmentArgs );
84+ ArrayList <String > inputArgs = new ArrayList <>();
8685 inputArgs .addAll (givenArgs );
8786 givenArguments = new ArrayList <>(inputArgs );
8887 List <String > arguments = new ArrayList <>(inputArgs );
@@ -152,10 +151,6 @@ protected List<String> preprocessArguments(List<String> givenArgs, Map<String, S
152151 break ;
153152 case "-CC" :
154153 if (wantsExperimental ) {
155- if (i != defaultEnvironmentArgs .size () + 1 ) {
156- // +1 because we need the --experimental-options
157- throw new IllegalArgumentException ("-CC must be the first given argument" );
158- }
159154 GraalPythonCC .main (arguments .subList (i + 1 , arguments .size ()).toArray (new String [0 ]));
160155 System .exit (0 );
161156 } else {
@@ -164,10 +159,6 @@ protected List<String> preprocessArguments(List<String> givenArgs, Map<String, S
164159 break ;
165160 case "-LD" :
166161 if (wantsExperimental ) {
167- if (i != defaultEnvironmentArgs .size () + 1 ) {
168- // +1 because we need the --experimental-options
169- throw new IllegalArgumentException ("-LD must be the first given argument" );
170- }
171162 GraalPythonLD .main (arguments .subList (i + 1 , arguments .size ()).toArray (new String [0 ]));
172163 System .exit (0 );
173164 } else {
@@ -269,60 +260,6 @@ protected List<String> preprocessArguments(List<String> givenArgs, Map<String, S
269260 return unrecognized ;
270261 }
271262
272- private static enum State {
273- NORMAL ,
274- SINGLE_QUOTE ,
275- DOUBLE_QUOTE ,
276- ESCAPE_SINGLE_QUOTE ,
277- ESCAPE_DOUBLE_QUOTE ,
278- }
279-
280- private static List <String > getDefaultEnvironmentArgs () {
281- String envArgsOpt = System .getenv ("GRAAL_PYTHON_OPTIONS" );
282- ArrayList <String > envArgs = new ArrayList <>();
283- State s = State .NORMAL ;
284- StringBuilder sb = new StringBuilder ();
285- if (envArgsOpt != null ) {
286- for (char x : envArgsOpt .toCharArray ()) {
287- if (s == State .NORMAL && Character .isWhitespace (x )) {
288- if (sb .length () > 0 ) {
289- envArgs .add (sb .toString ());
290- sb .setLength (0 );
291- }
292- } else {
293- if (x == '"' ) {
294- if (s == State .NORMAL ) {
295- s = State .DOUBLE_QUOTE ;
296- } else if (s == State .DOUBLE_QUOTE ) {
297- s = State .NORMAL ;
298- } else if (s == State .ESCAPE_DOUBLE_QUOTE ) {
299- s = State .DOUBLE_QUOTE ;
300- sb .append (x );
301- }
302- } else if (x == '\'' ) {
303- if (s == State .NORMAL ) {
304- s = State .SINGLE_QUOTE ;
305- } else if (s == State .SINGLE_QUOTE ) {
306- s = State .NORMAL ;
307- } else if (s == State .ESCAPE_SINGLE_QUOTE ) {
308- s = State .SINGLE_QUOTE ;
309- sb .append (x );
310- }
311- } else if (x == '\\' ) {
312- if (s == State .SINGLE_QUOTE ) {
313- s = State .ESCAPE_SINGLE_QUOTE ;
314- } else if (s == State .DOUBLE_QUOTE ) {
315- s = State .ESCAPE_DOUBLE_QUOTE ;
316- }
317- } else {
318- sb .append (x );
319- }
320- }
321- }
322- }
323- return envArgs ;
324- }
325-
326263 private static void printShortHelp () {
327264 print ("usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...\n " +
328265 "Try `python -h' for more information." );
@@ -617,10 +554,7 @@ protected void printHelp(OptionCategory maxCategory) {
617554 " All following arguments are passed to the linker.\n " +
618555 "\n Environment variables specific to the Graal Python launcher:\n " +
619556 "SULONG_LIBRARY_PATH: Specifies the library path for Sulong.\n " +
620- " This is required when starting subprocesses of python.\n " +
621- "GRAAL_PYTHON_OPTIONS: This environment variable can include default options that\n " +
622- " are always passed to the launcher. These are not shell expanded and given to\n " +
623- " the launcher as-is." : "" ));
557+ " This is required when starting subprocesses of python.\n " : "" ));
624558 }
625559
626560 @ Override
0 commit comments