@@ -46,73 +46,30 @@ set beforeExtra=
46
46
47
47
rem Recursive loop called for each parameter that parses the cmd line parameters
48
48
:startloop
49
- set par = " %1 "
49
+ set par = %1
50
50
shift
51
51
if " %par% " == " " (
52
52
rem if no parameters defined
53
53
goto :expand_erl_libs
54
54
)
55
55
rem ******* ERLANG PARAMETERS **********************
56
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--detached`) do (
57
- set parsErlang = %parsErlang% -detached
58
- goto :startloop
59
- )
60
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--hidden`) do (
61
- set parsErlang = %parsErlang% -hidden
62
- goto :startloop
63
- )
64
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--cookie`) do (
65
- set parsErlang = %parsErlang% -setcookie %1
66
- shift
67
- goto :startloop
68
- )
69
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--sname`) do (
70
- set parsErlang = %parsErlang% -sname %1
71
- shift
72
- goto :startloop
73
- )
74
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--name`) do (
75
- set parsErlang = %parsErlang% -name %1
76
- shift
77
- goto :startloop
78
- )
79
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--erl`) do (
80
- set beforeExtra = %beforeExtra% %~1
81
- shift
82
- goto :startloop
83
- )
56
+ IF NOT " %par% " == " %par:--detached =% " (Set parsErlang=%parsErlang% -detached)
57
+ IF NOT " %par% " == " %par:--hidden =% " (Set parsErlang=%parsErlang% -hidden)
58
+ IF NOT " %par% " == " %par:--cookie =% " (Set parsErlang=%parsErlang% -setcookie %1 && shift)
59
+ IF NOT " %par% " == " %par:--sname =% " (Set parsErlang=%parsErlang% -sname %1 && shift)
60
+ IF NOT " %par% " == " %par:--name =% " (Set parsErlang=%parsErlang% -name %1 && shift)
61
+ IF NOT " %par% " == " %par:--erl =% " (Set beforeExtra=%beforeExtra% %~1 && shift)
84
62
rem ******* elixir parameters **********************
85
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--v`) do (
86
- goto :startloop
87
- )
88
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--compile`) do (
89
- goto :startloop
90
- )
91
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--no-halt`) do (
92
- goto :startloop
93
- )
94
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \+iex`) do (
95
- goto :startloop
96
- )
97
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \+compile`) do (
98
- goto :startloop
99
- )
100
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \-[er]`) do (
101
- shift
102
- goto :startloop
103
- )
104
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \-p[raz]`) do (
105
- shift
106
- goto :startloop
107
- )
108
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--app`) do (
109
- shift
110
- goto :startloop
111
- )
112
- for /f " usebackq" %%m in (`echo %par% ^ |findstr \--remsh`) do (
113
- shift
114
- goto :startloop
115
- )
63
+ rem Note: we don't have to do anything with options that don't take an argument
64
+ IF NOT " %par% " == " %par:-e =% " (shift)
65
+ IF NOT " %par% " == " %par:-r =% " (shift)
66
+ IF NOT " %par% " == " %par:-pr =% " (shift)
67
+ IF NOT " %par% " == " %par:-pa =% " (shift)
68
+ IF NOT " %par% " == " %par:-pz =% " (shift)
69
+ IF NOT " %par% " == " %par:--app =% " (shift)
70
+ IF NOT " %par% " == " %par:--remsh =% " (shift)
71
+ goto :startloop
72
+
116
73
rem ******* assume all pre-params are parsed ********************
117
74
:expand_erl_libs
118
75
rem ******* expand all ebin paths as Windows does not support the ..\*\ebin wildcard ********************
@@ -124,3 +81,4 @@ for /d %%d in ("%originPath%..\lib\*.") do (
124
81
SETLOCAL disabledelayedexpansion
125
82
:run
126
83
erl %ext_libs% -noshell %ELIXIR_ERL_OPTS% %parsErlang% -s elixir start_cli %beforeExtra% -extra %*
84
+
0 commit comments