43 * GOT_PATH, PATH, LENP)
51 USE spmd_comm_world_mod,
ONLY : spmd_comm_world
52#include "implicit_f.inc"
57#include "commandline.inc"
62 INTEGER GOT_INPUT,LENI,GOT_PATH,LENP
69 INTEGER PHELPI,PEXECI,PINPUTI, PNTHI,PUSERLNAMI,MDS_PATHI
71 INTEGER I,STRL,STRLN,ERR,LENLIST,ISIN,BEGIN,IERRMSG
73 CHARACTER*2096 ,INPUTC,INPUTR,MSG,STRING
76 INTEGER IARGC,CDL_CASE,IJK
77 CHARACTER :: LAST_LETTER,SEPARATOR
78 CHARACTER(LEN=2096) ARGS2,ARGS_REDUCE,ARGP
79 CHARACTER(LEN=4096) ULIBC
81 CHARACTER(LEN=12):: ARGLIST(LENLIST)
95 .
'-INSPIRE_ALM',
'-NORST',
96 .
'-MDS_LIBPATH',
'-MDSDIR'/
134#if CPP_mach == CPP_w95 || CPP_mach == CPP_win64_spmd || CPP_mach == CPP_p4win64_spmd || CPP_mach == CPP_wnt || CPP_mach == CPP_wmr || CPP_mach == CPP_p4win64 || CPP_mach == CPP_p4win32
140 argn = command_argument_count()
147 args2(1:strl) = args(1:strl)
150 args_reduce(1:9) = args(1:9)
152 IF(args_reduce(1:9)==
'-OUTFILE=') cdl_case = 1
153 IF(args_reduce(1:8)==
'-INFILE=') cdl_case = 2
181 IF (pinputi==0) pinputi = i
183 IF (pinputi==0) pinputi = i
195 IF (pnthi==0) pnthi = i
197 IF (pnthi==0) pnthi = i
200 CASE (
'-DYNAMIC_LIB')
201 IF (puserlnami==0) puserlnami=i
203 IF (puserlnami==0) puserlnami=i
206 CASE (
'-MDS_LIBPATH')
207 IF (mds_pathi==0) mds_pathi=i
211 IF (mds_diri==0) mds_diri=i
218 CASE (
'-INSPIRE_ALM')
233 CALL getarg(i-1,argp)
237 IF (argp ==
'-I' .OR. argp ==
'-INPUT' .OR.
238 * argp ==
'-RST' .OR. argp ==
'-NT' .OR.
239 * argp ==
'-NTHREAD' .OR.
240 * argp ==
'-DYLIB' .OR. argp ==
'-DYNAMIC_LIB'.OR.
241 * argp ==
'-MDS_LIBPATH' .OR. argp ==
'-MDSDIR' )
THEN
249 IF (err == 1.AND.strl>4)
THEN
250 IF (args(strl-3:strl)==
'.XML')
THEN
264 SELECT CASE(cdl_case)
276 IF(last_letter/=separator)
THEN
291 IF(last_letter/=separator)
THEN
318 IF (ierrmsg /= 0)
THEN
319 IF (ierrmsg+1 > argn)
THEN
323 CALL getarg(ierrmsg,argp)
329 CALL getarg(ierrmsg+1,inputr)
330 leni=len_trim(inputr)
339 CALL getarg(pinputi,argp)
353 IF (pinputi /= 0)
THEN
354 IF (pinputi+1 > argn)
THEN
358 CALL getarg(pinputi,argp)
364 CALL getarg(pinputi+1,inputr)
365 leni=len_trim(inputr)
375 CALL getarg(pinputi,argp)
382 begin=len_trim(inputr)
384 DO WHILE (begin > 0 .AND. .NOT.condition)
385 c = inputr(begin:begin)
386 IF (ichar(c)==47 .OR. ichar(c)==92)
THEN
393 leni = len_trim(inputr) - begin
395 input(1:leni) = inputr(begin:len_trim(inputr))
400 path(1:lenp)=inputr(1:lenp)
414 IF (pnthi+1 > argn)
THEN
416 CALL getarg(pnthi,argp)
422 CALL getarg(pnthi+1,string)
428 CALL getarg(pnthi,argp)
436 CALL getarg(pnthi+1,string)
437 READ(string,
'(I10)',err=1999) nth
442 strln=len_trim(string)
453 IF (puserlnami /= 0)
THEN
454 IF (puserlnami+1 > argn)
THEN
458 CALL getarg(puserlnami,argp)
463 CALL getarg(puserlnami+1,userl_altname)
464 len_userl_altname=len_trim(userl_altname)
465 got_userl_altname = 1
468 ulibc(1:len_userl_altname) = userl_altname(1:len_userl_altname)
473 CALL getarg(puserlnami,argp)
484 IF (mds_pathi /= 0)
THEN
486 IF (mds_pathi+1 > argn)
THEN
490 CALL get_command_argument(mds_pathi,argp)
495 CALL get_command_argument(mds_pathi+1,mds_path)
496 mds_path_len=len_trim(mds_path)
500 ulibc(1:mds_path_len) = mds_path(1:mds_path_len)
506 CALL getarg(mds_pathi,argp)
517 IF (mds_diri /= 0)
THEN
519 IF (mds_diri+1 > argn)
THEN
522 CALL get_command_argument(mds_diri,argp)
528 CALL get_command_argument(mds_diri+1,mds_path)
529 mds_path_len=len_trim(mds_path)
533 ulibc(1:mds_path_len) = mds_path(1:mds_path_len)
539 CALL getarg(mds_diri,argp)