mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-16 02:29:12 +02:00
* support passing options to the emulator when using one for testing
git-svn-id: trunk@47604 -
This commit is contained in:
parent
903486642e
commit
9c77e4a899
@ -2588,6 +2588,9 @@ endif
|
|||||||
ifdef EMULATOR
|
ifdef EMULATOR
|
||||||
override DOTESTOPT+=-M$(EMULATOR)
|
override DOTESTOPT+=-M$(EMULATOR)
|
||||||
endif
|
endif
|
||||||
|
ifdef EMULATOR_OPTS
|
||||||
|
override DOTESTOPT+=-N$(EMULATOR_OPTS)
|
||||||
|
endif
|
||||||
ifdef USEENV
|
ifdef USEENV
|
||||||
override DOTESTENV:=$(DOTESTOPT)
|
override DOTESTENV:=$(DOTESTOPT)
|
||||||
override DOTESTOPT=!DOTESTENV
|
override DOTESTOPT=!DOTESTENV
|
||||||
|
@ -390,6 +390,10 @@ ifdef EMULATOR
|
|||||||
override DOTESTOPT+=-M$(EMULATOR)
|
override DOTESTOPT+=-M$(EMULATOR)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifdef EMULATOR_OPTS
|
||||||
|
override DOTESTOPT+=-N$(EMULATOR_OPTS)
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
ifdef USEENV
|
ifdef USEENV
|
||||||
override DOTESTENV:=$(DOTESTOPT)
|
override DOTESTENV:=$(DOTESTOPT)
|
||||||
|
@ -217,6 +217,7 @@ Emulator execution is possible as well. It can't be combined with remote
|
|||||||
execution though.
|
execution though.
|
||||||
|
|
||||||
EMULATOR: name of the emulator to use
|
EMULATOR: name of the emulator to use
|
||||||
|
EMULATOR_OPTS: pass the given options to the emulator
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
|
@ -112,6 +112,7 @@ const
|
|||||||
rquote : string = '''';
|
rquote : string = '''';
|
||||||
UseTimeout : boolean = false;
|
UseTimeout : boolean = false;
|
||||||
emulatorname : string = '';
|
emulatorname : string = '';
|
||||||
|
EmulatorOpts : string = '';
|
||||||
TargetCanCompileLibraries : boolean = true;
|
TargetCanCompileLibraries : boolean = true;
|
||||||
UniqueSuffix: string = '';
|
UniqueSuffix: string = '';
|
||||||
|
|
||||||
@ -1314,7 +1315,7 @@ begin
|
|||||||
{ Add -Ssource_file_name for dosbox_wrapper }
|
{ Add -Ssource_file_name for dosbox_wrapper }
|
||||||
if pos('dosbox_wrapper',EmulatorName)>0 then
|
if pos('dosbox_wrapper',EmulatorName)>0 then
|
||||||
s:=s+' -S'+PPFile[current];
|
s:=s+' -S'+PPFile[current];
|
||||||
execres:=ExecuteEmulated(EmulatorName,s,FullExeLogFile,StartTicks,EndTicks);
|
execres:=ExecuteEmulated(EmulatorName,EmulatorOpts+' '+s,FullExeLogFile,StartTicks,EndTicks);
|
||||||
{$I-}
|
{$I-}
|
||||||
ChDir(OldDir);
|
ChDir(OldDir);
|
||||||
{$I+}
|
{$I+}
|
||||||
@ -1555,6 +1556,7 @@ procedure getargs;
|
|||||||
writeln(' -K include known bug tests');
|
writeln(' -K include known bug tests');
|
||||||
writeln(' -L<ext> set extension of temporary files (prevent conflicts with parallel invocations)');
|
writeln(' -L<ext> set extension of temporary files (prevent conflicts with parallel invocations)');
|
||||||
writeln(' -M<emulator> run the tests using the given emulator');
|
writeln(' -M<emulator> run the tests using the given emulator');
|
||||||
|
writeln(' -N<emulator opts.> pass options to the emulator');
|
||||||
writeln(' -O use timeout wrapper for (remote) execution');
|
writeln(' -O use timeout wrapper for (remote) execution');
|
||||||
writeln(' -P<path> path to the tests tree on the remote machine');
|
writeln(' -P<path> path to the tests tree on the remote machine');
|
||||||
writeln(' -R<remote> run the tests remotely with the given rsh/ssh address');
|
writeln(' -R<remote> run the tests remotely with the given rsh/ssh address');
|
||||||
@ -1630,6 +1632,8 @@ procedure getargs;
|
|||||||
|
|
||||||
'M' : EmulatorName:=Para;
|
'M' : EmulatorName:=Para;
|
||||||
|
|
||||||
|
'N' : EmulatorOpts:=Para;
|
||||||
|
|
||||||
'O' : UseTimeout:=true;
|
'O' : UseTimeout:=true;
|
||||||
|
|
||||||
'P' : RemotePath:=Para;
|
'P' : RemotePath:=Para;
|
||||||
|
Loading…
Reference in New Issue
Block a user