diff --git a/extra/mason/child/child-tests.factor b/extra/mason/child/child-tests.factor index f8046ac8e5..1018a1ec40 100644 --- a/extra/mason/child/child-tests.factor +++ b/extra/mason/child/child-tests.factor @@ -1,7 +1,7 @@ IN: mason.child.tests USING: mason.child mason.config tools.test namespaces io kernel sequences ; -[ { "nmake" "/f" "nmakefile" } ] [ +[ { "nmake" "/f" "nmakefile" "x86-32" } ] [ [ "winnt" target-os set "x86.32" target-cpu set diff --git a/extra/mason/child/child.factor b/extra/mason/child/child.factor index 017e4401d8..d9821f8fcc 100644 --- a/extra/mason/child/child.factor +++ b/extra/mason/child/child.factor @@ -4,13 +4,20 @@ USING: accessors arrays calendar combinators.short-circuit fry continuations debugger io.directories io.files io.launcher io.pathnames io.encodings.ascii kernel make mason.common mason.config mason.platform mason.report mason.notify namespaces sequences -quotations macros system combinators ; +quotations macros system combinators splitting ; IN: mason.child +: nmake-cmd ( -- args ) + { "nmake" "/f" "nmakefile" } + target-cpu get "." split "-" join suffix ; + +: gnu-make-cmd ( -- args ) + gnu-make platform 2array ; + : make-cmd ( -- args ) { - { [ target-os get "winnt" = ] [ { "nmake" "/f" "nmakefile" } ] } - [ gnu-make platform 2array ] + { [ target-os get "winnt" = ] [ nmake-cmd ] } + [ gnu-make-cmd ] } cond ; : make-vm ( -- )