Port Ben's parallell Makefile hack to VMS
As far as I know, there is no MMS / MMK with parallellism today.
However, it might be added in the future (perhaps in MMK at least), so
we may as well prepare for it now.
= qq(deassign statem
deassign record);
}
+ # This makes sure things get built in the order they need
+ # to. You're welcome.
+ sub dependmagic {
+ my $target = shift;
+
+ return "$target : build_generated\n\t\pipe $(MMS) depend && \$(MMS) _$target\n_$target";
+ }
#use Data::Dumper;
#print STDERR "DEBUG: before:\n", Dumper($unified_info{before});
#print STDERR "DEBUG: after:\n", Dumper($unified_info{after});
@@ -236,24 +243,21 @@ NODEBUG=@
# The main targets ###################################################
-all : build_generated, -
- build_libs_nodep, build_engines_nodep, build_programs_nodep, -
- depend
+{- dependmagic('all'); -} : build_libs_nodep, build_engines_nodep, build_programs_nodep
+{- dependmagic('build_libs'); -} : build_libs_nodep
+{- dependmagic('build_engines'); -} : build_engines_nodep
+{- dependmagic('build_programs'); -} : build_programs_nodep
-build_libs : build_generated, build_libs_nodep, depend
+build_generated : $(GENERATED_MANDATORY)
build_libs_nodep : $(LIBS), $(SHLIBS)
-build_engines : build_generated, build_engines_nodep, depend
build_engines_nodep : $(ENGINES)
-build_programs : build_generated, build_programs_nodep, depend
build_programs_nodep : $(PROGRAMS), $(SCRIPTS)
-build_generated : $(GENERATED_MANDATORY)
-
# Kept around for backward compatibility
build_apps build_tests : build_programs
-test tests : build_generated, build_programs_nodep, build_engines_nodep, -
- depend
+test : tests
+{- dependmagic('tests'); -} : build_programs_nodep, build_engines_nodep
@ ! {- output_off() if $disabled{tests}; "" -}
SET DEFAULT [.test]{- move("test") -}
DEFINE SRCTOP {- sourcedir() -}
