diff --git a/Makefile b/Makefile
index 9bfbf2441a09d305f97046b0917dddc86746c116..4041e0dc2c7b79497e145564bae7d474080fc519 100644
--- a/Makefile
+++ b/Makefile
@@ -314,8 +314,12 @@ CORELIB      := $(LPATH)/libCore.$(SOEXT)
 
 ifeq ($(EXPLICITLINK),yes)
 MAINLIBS      = $(CORELIB) $(CINTLIB)
+MAKE_VERSION_MAJOR = $(word 1,$(subst ., ,$(MAKE_VERSION)))
+MAKE_VERSION_MINOR = $(word 2,$(subst ., ,$(MAKE_VERSION)))
+ORDER_       := $(shell test $(MAKE_VERSION_MAJOR) -gt 3 -o $(MAKE_VERSION_MAJOR) -eq 3 -a $(MAKE_VERSION_MINOR) -ge 80 && echo '|')
 else
 MAINLIBS      =
+ORDER_        =
 endif
 
 ##### all #####
diff --git a/alien/Module.mk b/alien/Module.mk
index 1aa9688f66b5d5dccf05ec6140d3bf5990e20c2a..5d5b3ad69bc4235f31e9a66af82fee2f48d37e0b 100644
--- a/alien/Module.mk
+++ b/alien/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(ALIENDEP)
 include/%.h:    $(ALIENDIRI)/%.h
 		cp $< $@
 
-$(ALIENLIB):    $(ALIENO) $(ALIENDO) $(MAINLIBS) $(ALIENLIBDEP)
+$(ALIENLIB):    $(ALIENO) $(ALIENDO) $(ORDER_) $(MAINLIBS) $(ALIENLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRAliEn.$(SOEXT) $@ "$(ALIENO) $(ALIENDO)" \
 		   "$(ALIENLIBEXTRA) $(ALIENLIBDIR) $(ALIENCLILIB)"
diff --git a/asimage/Module.mk b/asimage/Module.mk
index a92727b986ebec1bc35468cadb1493ef890bc615..097af0db3b4eb6fec5e12406289d8ccb45584f2b 100644
--- a/asimage/Module.mk
+++ b/asimage/Module.mk
@@ -191,7 +191,7 @@ endif
 
 ##### libASImage #####
 $(ASIMAGELIB):  $(ASIMAGEO) $(ASIMAGEDO) $(ASTEPDEP) $(FREETYPEDEP) \
-                $(MAINLIBS) $(ASIMAGELIBDEP)
+                $(ORDER_) $(MAINLIBS) $(ASIMAGELIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libASImage.$(SOEXT) $@ \
 		   "$(ASIMAGEO) $(ASIMAGEDO)" \
@@ -208,7 +208,7 @@ $(ASIMAGEDO):   $(ASIMAGEDS) $(ASTEPLIB)
 
 ##### libASImageGui #####
 $(ASIMAGEGUILIB):  $(ASIMAGEGUIO) $(ASIMAGEGUIDO) $(ASTEPDEP) $(FREETYPEDEP) \
-                   $(MAINLIBS) $(ASIMAGEGUILIBDEP)
+                   $(ORDER_) $(MAINLIBS) $(ASIMAGEGUILIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libASImageGui.$(SOEXT) $@ \
 		   "$(ASIMAGEGUIO) $(ASIMAGEGUIDO)" \
@@ -225,7 +225,7 @@ $(ASIMAGEGUIDO): $(ASIMAGEGUIDS) $(ASTEPLIB)
 
 ##### libASPluginGS #####
 $(ASIMAGEGSLIB):  $(ASIMAGEGSO) $(ASIMAGEGSDO) $(ASTEPDEP) $(FREETYPEDEP) \
-                  $(MAINLIBS) $(ASIMAGEGSLIBDEP)
+                  $(ORDER_) $(MAINLIBS) $(ASIMAGEGSLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libASPluginGS.$(SOEXT) $@ \
 		   "$(ASIMAGEGSO) $(ASIMAGEGSDO)" \
diff --git a/auth/Module.mk b/auth/Module.mk
index a46ca4fdc6ee84f8930da2ee74e938f0a6434ab1..2b2db1ef514c4a5bd9bbfa413f329ec60948e176 100644
--- a/auth/Module.mk
+++ b/auth/Module.mk
@@ -55,7 +55,7 @@ INCLUDEFILES += $(RAUTHDEP)
 include/%.h:    $(AUTHDIRI)/%.h
 		cp $< $@
 
-$(RAUTHLIB):    $(RAUTHO) $(RAUTHDO) $(MAINLIBS) $(RAUTHLIBDEP)
+$(RAUTHLIB):    $(RAUTHO) $(RAUTHDO) $(ORDER_) $(MAINLIBS) $(RAUTHLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRootAuth.$(SOEXT) $@ "$(RAUTHO) $(RAUTHDO)" \
 		   "$(RAUTHLIBEXTRA) $(EXTRA_RAUTHLIBS)"
diff --git a/base/Module.mk b/base/Module.mk
index d323925b8d6ba5e0e3c5952e7a2357af263238c1..69f6162460a397c5881955876a5b44fe1a23664f 100644
--- a/base/Module.mk
+++ b/base/Module.mk
@@ -64,6 +64,10 @@ INCLUDEFILES += $(BASEDEP)
 include/%.h:    $(BASEDIRI)/%.h
 		cp $< $@
 
+# Explicitely state this dependency.
+# rmkdepend does not pick it up if $(COMPILEDATA) doesn't exist yet.
+base/src/TSystem.d base/src/TSystem.o: $(COMPILEDATA)
+
 $(BASEDS1):     $(BASEH1) $(BASEL1) $(ROOTCINTTMP)
 		@echo "Generating dictionary $@..."
 		$(ROOTCINTTMP) -f $@ -c $(BASEH1) $(BASEL1)
diff --git a/chirp/Module.mk b/chirp/Module.mk
index c9267a04146a0d9b111f3852289908b944bdde39..3abae9440a82db8071c043b34a58acd2f9851cf5 100644
--- a/chirp/Module.mk
+++ b/chirp/Module.mk
@@ -35,7 +35,7 @@ INCLUDEFILES += $(CHIRPDEP)
 include/%.h:    $(CHIRPDIRI)/%.h
 		cp $< $@
 
-$(CHIRPLIB):    $(CHIRPO) $(CHIRPDO) $(MAINLIBS)
+$(CHIRPLIB):    $(CHIRPO) $(CHIRPDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libChirp.$(SOEXT) $@ "$(CHIRPO) $(CHIRPDO)" \
 		   "$(CHIRPLIBEXTRA) $(CHIRPLIBDIR) $(CHIRPCLILIB)"
diff --git a/cintex/Module.mk b/cintex/Module.mk
index 54fc3ac5b6dca21d6cac703aaa301405e46042c0..877ed85eb0692fe5f7381d562b2da804f4c3a01d 100644
--- a/cintex/Module.mk
+++ b/cintex/Module.mk
@@ -28,8 +28,10 @@ else
 CINTEXPY     := $(subst $(MODDIR)/python,$(LPATH),$(CINTEXPYS))
 $(LPATH)/%.py: $(MODDIR)/python/%.py; cp $< $@
 endif
+ifneq ($(BUILDPYTHON),no)
 CINTEXPYC    := $(CINTEXPY:.py=.pyc)
 CINTEXPYO    := $(CINTEXPY:.py=.pyo)
+endif
 
 # used in the main Makefile
 ALLHDRS      += $(patsubst $(MODDIRI)/Cintex/%.h,include/Cintex/%.h,$(CINTEXH))
@@ -61,7 +63,7 @@ include/Cintex/%.h: $(CINTEXDIRI)/Cintex/%.h
 %.pyc: %.py;    python -c 'import py_compile; py_compile.compile( "$<" )'
 %.pyo: %.py;    python -O -c 'import py_compile; py_compile.compile( "$<" )'
 
-$(CINTEXLIB):   $(CINTEXO) $(MAINLIBS) $(CINTEXLIBDEP) $(CINTEXPY) $(CINTEXPYC) $(CINTEXPYO)
+$(CINTEXLIB):   $(CINTEXO) $(CINTEXPY) $(CINTEXPYC) $(CINTEXPYO) $(ORDER_) $(MAINLIBS) $(CINTEXLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)"      \
 		"$(SOFLAGS)" libCintex.$(SOEXT) $@ "$(CINTEXO)" \
 		"$(CINTEXLIBEXTRA)"
@@ -89,16 +91,15 @@ distclean-cintex: clean-cintex
 distclean::     distclean-cintex
 
 # test suite
-
-check-cintex: $(REFLEXLIB) $(CINTEXLIB) $(TESTLIB) 
+check-cintex: $(REFLEXLIB) $(CINTEXLIB) $(TESTLIB)
 		export ROOTSYS=`pwd`; root
 
 lib/libtest_%Rflx.$(SOEXT) : $(TESTLIBD)/%_rflx.o
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" "$(SOFLAGS)" $@ $@ $< $(REFLEXLL)
 
-%_rflx.o : %_rflx.cpp
+%_rflx.o: %_rflx.cpp
 		$(CXX) $(OPT) $(CXXFLAGS) -c $< -o $@
 
-$(TESTLIBS) :
+$(TESTLIBS):
 		cd $(TESTLIBD); $(GENREFLEXX) CintexTest.h -s selection.xml -I../../../include
 
diff --git a/clarens/Module.mk b/clarens/Module.mk
index 084ecbdea3a7742f4a59e63f41edcd6eb27dbbe7..5e3a4a73a7f027b79a23a6415f0b905744f7fd60 100644
--- a/clarens/Module.mk
+++ b/clarens/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(CLARENSDEP)
 include/%.h:    $(CLARENSDIRI)/%.h
 		cp $< $@
 
-$(CLARENSLIB):  $(CLARENSO) $(CLARENSDO) $(MAINLIBS) $(CLARENSLIBDEP)
+$(CLARENSLIB):  $(CLARENSO) $(CLARENSDO) $(ORDER_) $(MAINLIBS) $(CLARENSLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libClarens.$(SOEXT) $@ \
 		   "$(CLARENSO) $(CLARENSDO) $(CLARENSLIBS)" \
diff --git a/dcache/Module.mk b/dcache/Module.mk
index af9323376ed07b8fedcb73c69abede2765549543..41de8fe28654d5094d989c8ec6b877b82a5fb610 100644
--- a/dcache/Module.mk
+++ b/dcache/Module.mk
@@ -35,7 +35,7 @@ INCLUDEFILES += $(DCACHEDEP)
 include/%.h:    $(DCACHEDIRI)/%.h
 	cp $< $@
 
-$(DCACHELIB):   $(DCACHEO) $(DCACHEDO) $(MAINLIBS)
+$(DCACHELIB):   $(DCACHEO) $(DCACHEDO) $(ORDER_) $(MAINLIBS)
 	@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 	"$(SOFLAGS)" libDCache.$(SOEXT) $@ "$(DCACHEO) $(DCACHEDO)" \
 	"$(DCACHELIBEXTRA) $(DCAPLIBDIR) $(DCAPLIB)"
diff --git a/eg/Module.mk b/eg/Module.mk
index 593f0401dc8085baea6fb43c5accead4bb479350..42b0558d3702e0b87dc0936f1c7b35d01dc04690 100644
--- a/eg/Module.mk
+++ b/eg/Module.mk
@@ -37,7 +37,7 @@ INCLUDEFILES += $(EGDEP)
 include/%.h:    $(EGDIRI)/%.h
 		cp $< $@
 
-$(EGLIB):       $(EGO) $(EGDO) $(MAINLIBS) $(EGLIBDEP)
+$(EGLIB):       $(EGO) $(EGDO) $(ORDER_) $(MAINLIBS) $(EGLIBDEP)
 ifeq ($(PLATFORM),macosx)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libEG.$(SOEXT) $@ "$(EGO) $(EGDO)" \
diff --git a/foam/Module.mk b/foam/Module.mk
index 97e1ee77c97a4151575aebbedb5059c4141f9ca0..e6061c75abd6167e2941afc35ffd453579ed768a 100644
--- a/foam/Module.mk
+++ b/foam/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(FOAMDEP)
 include/%.h:    $(FOAMDIRI)/%.h
 		cp $< $@
 
-$(FOAMLIB):     $(FOAMO) $(FOAMDO) $(MAINLIBS) $(FOAMLIBDEP)
+$(FOAMLIB):     $(FOAMO) $(FOAMDO) $(ORDER_) $(MAINLIBS) $(FOAMLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libFoam.$(SOEXT) $@ "$(FOAMO) $(FOAMDO)" \
 		   "$(FOAMLIBEXTRA)"
diff --git a/fumili/Module.mk b/fumili/Module.mk
index 4a0294856c8a437d79d7a1acaa987ca0cf4fdd30..4aa4f9728298bbbb0179ec7cafe04c06cdd39e97 100644
--- a/fumili/Module.mk
+++ b/fumili/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(FUMILIDEP)
 include/%.h:    $(FUMILIDIRI)/%.h
 		cp $< $@
 
-$(FUMILILIB):   $(FUMILIO) $(FUMILIDO) $(MAINLIBS) $(FUMILILIBDEP)
+$(FUMILILIB):   $(FUMILIO) $(FUMILIDO) $(ORDER_) $(MAINLIBS) $(FUMILILIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libFumili.$(SOEXT) $@ "$(FUMILIO) $(FUMILIDO)" \
 		   "$(FUMILILIBEXTRA)"
diff --git a/g3d/Module.mk b/g3d/Module.mk
index bbbb2cc44ef43f948f5574a37480b70946449651..686458d3b7667fc142c8c3bb11b779237f4d1185 100644
--- a/g3d/Module.mk
+++ b/g3d/Module.mk
@@ -41,7 +41,7 @@ INCLUDEFILES += $(G3DDEP)
 include/%.h:    $(G3DDIRI)/%.h
 		cp $< $@
 
-$(G3DLIB):      $(G3DO) $(G3DDO) $(MAINLIBS) $(G3DLIBDEP)
+$(G3DLIB):      $(G3DO) $(G3DDO) $(ORDER_) $(MAINLIBS) $(G3DLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGraf3d.$(SOEXT) $@ "$(G3DO) $(G3DDO)" \
 		   "$(G3DLIBEXTRA)"
diff --git a/ged/Module.mk b/ged/Module.mk
index 47fe69b1d1acbfad5cd12df88d2fe7f544367b31..e453f4d6e544fc7e17c7c827b0f47034e08f305a 100644
--- a/ged/Module.mk
+++ b/ged/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(GEDDEP)
 include/%.h:    $(GEDDIRI)/%.h
 		cp $< $@
 
-$(GEDLIB):      $(GEDO) $(GEDDO) $(MAINLIBS) $(GEDLIBDEP)
+$(GEDLIB):      $(GEDO) $(GEDDO) $(ORDER_) $(MAINLIBS) $(GEDLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGed.$(SOEXT) $@ "$(GEDO) $(GEDDO)" \
 		   "$(GEDLIBEXTRA)"
diff --git a/gedold/Module.mk b/gedold/Module.mk
index b138f3950079324f271fa071462c0068772fee0d..44ab45db5eff813620341ee313a15280cc990bf0 100644
--- a/gedold/Module.mk
+++ b/gedold/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(GEDOLDDEP)
 include/%.h:    $(GEDOLDDIRI)/%.h
 		cp $< $@
 
-$(GEDOLDLIB):   $(GEDOLDO) $(GEDOLDDO) $(MAINLIBS) $(GEDOLDLIBDEP)
+$(GEDOLDLIB):   $(GEDOLDO) $(GEDOLDDO) $(ORDER_) $(MAINLIBS) $(GEDOLDLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGedOld.$(SOEXT) $@ "$(GEDOLDO) $(GEDOLDDO)" \
 		   "$(GEDOLDLIBEXTRA)"
diff --git a/geom/Module.mk b/geom/Module.mk
index d2a18724fb40688a6bfeaccbcee57bb12c290b82..631e410ed72e7dcb3bfeb374f212aa55e30a5288 100644
--- a/geom/Module.mk
+++ b/geom/Module.mk
@@ -55,7 +55,7 @@ INCLUDEFILES += $(GEOMDEP)
 include/%.h:    $(GEOMDIRI)/%.h
 		cp $< $@
 
-$(GEOMLIB):     $(GEOMO) $(GEOMDO) $(MAINLIBS) $(GEOMLIBDEP)
+$(GEOMLIB):     $(GEOMO) $(GEOMDO) $(ORDER_) $(MAINLIBS) $(GEOMLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGeom.$(SOEXT) $@ "$(GEOMO) $(GEOMDO)" \
 		   "$(GEOMLIBEXTRA)"
diff --git a/geompainter/Module.mk b/geompainter/Module.mk
index 28a51d3a2d438523bd2d45e3a289174127d59ba4..51092003fa6ec37029a6cc5308250a50f8372ba4 100644
--- a/geompainter/Module.mk
+++ b/geompainter/Module.mk
@@ -37,7 +37,7 @@ INCLUDEFILES += $(GEOMPAINTERDEP)
 include/%.h:    $(GEOMPAINTERDIRI)/%.h
 		cp $< $@
 
-$(GEOMPAINTERLIB): $(GEOMPAINTERO) $(GEOMPAINTERDO) $(MAINLIBS) \
+$(GEOMPAINTERLIB): $(GEOMPAINTERO) $(GEOMPAINTERDO) $(ORDER_) $(MAINLIBS) \
                    $(GEOMPAINTERLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGeomPainter.$(SOEXT) $@ \
diff --git a/gl/Module.mk b/gl/Module.mk
index 832b6c0d3ef9833f4e917c058b52fa6a8acbdf64..0a095f74a173f30b360e757e498bc7b8cee45996 100644
--- a/gl/Module.mk
+++ b/gl/Module.mk
@@ -60,7 +60,7 @@ INCLUDEFILES += $(GLDEP)
 include/%.h:    $(GLDIRI)/%.h
 		cp $< $@
 
-$(GLLIB):       $(GLO) $(GLO1) $(GLDO) $(MAINLIBS) $(GLLIBDEP)
+$(GLLIB):       $(GLO) $(GLO1) $(GLDO) $(ORDER_) $(MAINLIBS) $(GLLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRGL.$(SOEXT) $@ "$(GLO) $(GLO1) $(GLDO)" \
 		   "$(GLLIBEXTRA) $(GLLIBS)"
diff --git a/globusauth/Module.mk b/globusauth/Module.mk
index df9d23f13af42cd6c211c7b1713120fc0ab4da63..044bb13dfb07fffc54a0ddc8510f67d07eb4314b 100644
--- a/globusauth/Module.mk
+++ b/globusauth/Module.mk
@@ -42,7 +42,7 @@ INCLUDEFILES += $(GLBSAUTHDEP)
 include/%.h:    $(GLBSAUTHDIRI)/%.h
 		cp $< $@
 
-$(GLBSAUTHLIB): $(GLBSAUTHO) $(GLBPATCHO) $(MAINLIBS)
+$(GLBSAUTHLIB): $(GLBSAUTHO) $(GLBPATCHO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGlobusAuth.$(SOEXT) $@ \
 		   "$(GLBSAUTHO) $(GLBPATCHO)" \
diff --git a/gpad/Module.mk b/gpad/Module.mk
index a9869c1dec27c60c8bb2689a202110d220e057bb..272d2eba34de9ea583e742da9e338c9f0cbfbb13 100644
--- a/gpad/Module.mk
+++ b/gpad/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(GPADDEP)
 include/%.h:    $(GPADDIRI)/%.h
 		cp $< $@
 
-$(GPADLIB):     $(GPADO) $(GPADDO) $(MAINLIBS) $(GPADLIBDEP)
+$(GPADLIB):     $(GPADO) $(GPADDO) $(ORDER_) $(MAINLIBS) $(GPADLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGpad.$(SOEXT) $@ "$(GPADO) $(GPADDO)" \
 		   "$(GPADLIBEXTRA)"
diff --git a/graf/Module.mk b/graf/Module.mk
index ef7679489efd2e47ed70fce808d6cd0a3a450ff5..041f888eaec7a87e8c8976f180ad823e1ccdb55f 100644
--- a/graf/Module.mk
+++ b/graf/Module.mk
@@ -44,7 +44,7 @@ INCLUDEFILES += $(GRAFDEP)
 include/%.h:    $(GRAFDIRI)/%.h
 		cp $< $@
 
-$(GRAFLIB):     $(GRAFO) $(GRAFDO) $(FREETYPEDEP) $(MAINLIBS) $(GRAFLIBDEP)
+$(GRAFLIB):     $(GRAFO) $(GRAFDO) $(FREETYPEDEP) $(ORDER_) $(MAINLIBS) $(GRAFLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGraf.$(SOEXT) $@ \
 		   "$(GRAFO) $(GRAFDO)" \
diff --git a/gui/Module.mk b/gui/Module.mk
index eb0eb42e161eaf30bbc6bd5d87fe500087d0cb0f..efe7e6a3c6bc9300d1369e764b002a6bcd464b19 100644
--- a/gui/Module.mk
+++ b/gui/Module.mk
@@ -70,7 +70,7 @@ INCLUDEFILES += $(GUIDEP)
 include/%.h:    $(GUIDIRI)/%.h
 		cp $< $@
 
-$(GUILIB):      $(GUIO) $(GUIDO) $(MAINLIBS) $(GUILIBDEP)
+$(GUILIB):      $(GUIO) $(GUIDO) $(ORDER_) $(MAINLIBS) $(GUILIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGui.$(SOEXT) $@ "$(GUIO) $(GUIDO)" \
 		   "$(GUILIBEXTRA)"
diff --git a/guibuilder/Module.mk b/guibuilder/Module.mk
index 114783c16754cf99b30375a9a20687cee3ba92e5..2dd095d44c3dff71bd5f85a2dcf83669399bf983 100644
--- a/guibuilder/Module.mk
+++ b/guibuilder/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(GUIBLDDEP)
 include/%.h:    $(GUIBLDDIRI)/%.h
 		cp $< $@
 
-$(GUIBLDLIB):   $(GUIBLDO) $(GUIBLDDO) $(MAINLIBS) $(GUIBLDLIBDEP)
+$(GUIBLDLIB):   $(GUIBLDO) $(GUIBLDDO) $(ORDER_) $(MAINLIBS) $(GUIBLDLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGuiBld.$(SOEXT) $@ "$(GUIBLDO) $(GUIBLDDO)" \
 		   "$(GUIBLDLIBEXTRA)"
diff --git a/hbook/Module.mk b/hbook/Module.mk
index b8efd2855f1ec1fa0e178c320934f9df3016a43c..b3e498c47b1696592ca6ef411ed72efee05c1afc 100644
--- a/hbook/Module.mk
+++ b/hbook/Module.mk
@@ -39,7 +39,7 @@ INCLUDEFILES += $(HBOOKDEP)
 include/%.h:    $(HBOOKDIRI)/%.h
 		cp $< $@
 
-$(HBOOKLIB):    $(HBOOKO) $(HBOOKDO) $(MAINLIBS) $(HBOOKLIBDEP)
+$(HBOOKLIB):    $(HBOOKO) $(HBOOKDO) $(ORDER_) $(MAINLIBS) $(HBOOKLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libHbook.$(SOEXT) $@ "$(HBOOKO1) $(HBOOKDO)" \
 		   "$(HBOOKO2) $(CERNLIBDIR) $(CERNLIBS) $(RFIOLIBEXTRA) \
diff --git a/hist/Module.mk b/hist/Module.mk
index ecf5820bc03d4ba7713522603fe908b1db338964..48dc7053c46f9adfc3e355ccca66ffb1c9029071 100644
--- a/hist/Module.mk
+++ b/hist/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(HISTDEP)
 include/%.h:    $(HISTDIRI)/%.h
 		cp $< $@
 
-$(HISTLIB):     $(HISTO) $(HISTDO) $(MAINLIBS) $(HISTLIBDEP)
+$(HISTLIB):     $(HISTO) $(HISTDO) $(ORDER_) $(MAINLIBS) $(HISTLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libHist.$(SOEXT) $@ "$(HISTO) $(HISTDO)" \
 		   "$(HISTLIBEXTRA)"
diff --git a/histpainter/Module.mk b/histpainter/Module.mk
index 9675f492959d2a1e24a39bb413c68707851b8477..e26ca980a07cb400263c340f9bdde1f4ba2ea9c7 100644
--- a/histpainter/Module.mk
+++ b/histpainter/Module.mk
@@ -37,7 +37,7 @@ INCLUDEFILES += $(HISTPAINTERDEP)
 include/%.h:    $(HISTPAINTERDIRI)/%.h
 		cp $< $@
 
-$(HISTPAINTERLIB): $(HISTPAINTERO) $(HISTPAINTERDO) $(MAINLIBS) \
+$(HISTPAINTERLIB): $(HISTPAINTERO) $(HISTPAINTERDO) $(ORDER_) $(MAINLIBS) \
                    $(HISTPAINTERLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libHistPainter.$(SOEXT) $@ \
diff --git a/html/Module.mk b/html/Module.mk
index 1dc21910e1dc1a446726aef71e18bce6fe44f8f1..ee3ba6a5f637eb55346a0235cb7f926f74d938b6 100644
--- a/html/Module.mk
+++ b/html/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(HTMLDEP)
 include/%.h:    $(HTMLDIRI)/%.h
 		cp $< $@
 
-$(HTMLLIB):     $(HTMLO) $(HTMLDO) $(MAINLIBS) $(HTMLLIBDEP)
+$(HTMLLIB):     $(HTMLO) $(HTMLDO) $(ORDER_) $(MAINLIBS) $(HTMLLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libHtml.$(SOEXT) $@ "$(HTMLO) $(HTMLDO)" \
 		   "$(HTMLLIBEXTRA)"
diff --git a/krb5auth/Module.mk b/krb5auth/Module.mk
index 8ea11add7af453dac5c489efb88158ca28d2f72f..55acdcc274e3112280e56dd051198cb3d4ad635a 100644
--- a/krb5auth/Module.mk
+++ b/krb5auth/Module.mk
@@ -38,7 +38,7 @@ INCLUDEFILES += $(KRB5AUTHDEP)
 include/%.h:    $(KRB5AUTHDIRI)/%.h
 		cp $< $@
 
-$(KRB5AUTHLIB): $(KRB5AUTHO) $(KRB5AUTHDO) $(MAINLIBS) $(KRB5AUTHLIBDEP)
+$(KRB5AUTHLIB): $(KRB5AUTHO) $(KRB5AUTHDO) $(ORDER_) $(MAINLIBS) $(KRB5AUTHLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libKrb5Auth.$(SOEXT) $@ \
 		   "$(KRB5AUTHO) $(KRB5AUTHDO)" \
diff --git a/ldap/Module.mk b/ldap/Module.mk
index 26eccf68c6f6d9ab85daac6376400703047ff40c..db4f6a8e50cac7df7b9a02393fb6d313c8efac44 100644
--- a/ldap/Module.mk
+++ b/ldap/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(LDAPDEP)
 include/%.h:    $(LDAPDIRI)/%.h
 		cp $< $@
 
-$(LDAPLIB):     $(LDAPO) $(LDAPDO) $(MAINLIBS)
+$(LDAPLIB):     $(LDAPO) $(LDAPDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRLDAP.$(SOEXT) $@ "$(LDAPO) $(LDAPDO)" \
 		   "$(LDAPLIBEXTRA) $(LDAPLIBDIR) $(LDAPCLILIB)"
diff --git a/mathcore/Module.mk b/mathcore/Module.mk
index da6510cef8e1b031c4ac386cf787e79c79ad7f62..6f93cd3590c047534f4baf45087c5993edda5cf4 100644
--- a/mathcore/Module.mk
+++ b/mathcore/Module.mk
@@ -71,7 +71,7 @@ include/Math/%.h: $(MATHCOREDIRI)/Math/%.h
 		fi)
 		cp $< $@
 
-$(MATHCORELIB): $(MATHCOREO) $(MATHCOREDO) $(MAINLIBS)
+$(MATHCORELIB): $(MATHCOREO) $(MATHCOREDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)"  \
 		   "$(SOFLAGS)" libMathCore.$(SOEXT) $@     \
 		   "$(MATHCOREO) $(MATHCOREDO)"             \
diff --git a/mathmore/Module.mk b/mathmore/Module.mk
index a96a5b656491799fe4694382ac1794c111455b62..5cb1dcff094fda273af322e27b5f2ea4e5629baf 100644
--- a/mathmore/Module.mk
+++ b/mathmore/Module.mk
@@ -139,7 +139,7 @@ else
 		$(MAKE))
 endif
 
-$(MATHMORELIB): $(GSLDEP) $(MATHMOREO) $(MATHMOREDO) $(MAINLIBS)
+$(MATHMORELIB): $(GSLDEP) $(MATHMOREO) $(MATHMOREDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)"  \
 		   "$(SOFLAGS)" libMathMore.$(SOEXT) $@     \
 		   "$(MATHMOREO) $(MATHMOREDO)"             \
diff --git a/matrix/Module.mk b/matrix/Module.mk
index 6037ae2fd318348784c1778d18c8d417a006597e..7436c8c86b87e7ad86aeacbe3b323c05d23c0357 100644
--- a/matrix/Module.mk
+++ b/matrix/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(MATRIXDEP)
 include/%.h:    $(MATRIXDIRI)/%.h
 		cp $< $@
 
-$(MATRIXLIB):   $(MATRIXO) $(MATRIXDO) $(MAINLIBS)
+$(MATRIXLIB):   $(MATRIXO) $(MATRIXDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libMatrix.$(SOEXT) $@ "$(MATRIXO) $(MATRIXDO)" \
 		   "$(MATRIXLIBEXTRA)"
diff --git a/minuit/Module.mk b/minuit/Module.mk
index ffffd956016068cad50f57829318a60dd1c2875c..09dbc9ce6b4557096fc3818d526852055d434210 100644
--- a/minuit/Module.mk
+++ b/minuit/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(MINUITDEP)
 include/%.h:    $(MINUITDIRI)/%.h
 		cp $< $@
 
-$(MINUITLIB):   $(MINUITO) $(MINUITDO) $(MAINLIBS) $(MINUITLIBDEP)
+$(MINUITLIB):   $(MINUITO) $(MINUITDO) $(ORDER_) $(MAINLIBS) $(MINUITLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libMinuit.$(SOEXT) $@ "$(MINUITO) $(MINUITDO)" \
 		   "$(MINUITLIBEXTRA)"
diff --git a/minuit2/Module.mk b/minuit2/Module.mk
index 057bc7bc5f4bc405f095a811f51d14e479f9aee8..b2e20fbc3c88203658692a2fd0690648f1d68aa0 100644
--- a/minuit2/Module.mk
+++ b/minuit2/Module.mk
@@ -66,7 +66,7 @@ include/%.h:    $(MINUIT2DIRI)/%.h
 		cp $< $@
 
 
-$(MINUIT2LIB):  $(MINUIT2O) $(MINUIT2DO) $(MAINLIBS) $(MINUIT2LIBDEP)
+$(MINUIT2LIB):  $(MINUIT2O) $(MINUIT2DO) $(ORDER_) $(MAINLIBS) $(MINUIT2LIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libMinuit2.$(SOEXT) $@ \
 		   "$(MINUIT2O) $(MINUIT2DO)" \
diff --git a/mlp/Module.mk b/mlp/Module.mk
index e19662d2c5957a0ea71958794c167358fa10def7..7beed87814721b5c82476cada9636f97de0f1e16 100644
--- a/mlp/Module.mk
+++ b/mlp/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(MLPDEP)
 include/%.h:    $(MLPDIRI)/%.h
 		cp $< $@
 
-$(MLPLIB):      $(MLPO) $(MLPDO) $(MAINLIBS) $(MLPLIBDEP)
+$(MLPLIB):      $(MLPO) $(MLPDO) $(ORDER_) $(MAINLIBS) $(MLPLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libMLP.$(SOEXT) $@ "$(MLPO) $(MLPDO)" \
 		   "$(MLPLIBEXTRA)"
diff --git a/mysql/Module.mk b/mysql/Module.mk
index 8a337fdbab5661c4644fa6f73c60d5b747208ebc..2f61a299aa28f27e083af0f698d6adcd9c50635b 100644
--- a/mysql/Module.mk
+++ b/mysql/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(MYSQLDEP)
 include/%.h:    $(MYSQLDIRI)/%.h
 		cp $< $@
 
-$(MYSQLLIB):    $(MYSQLO) $(MYSQLDO) $(MAINLIBS)
+$(MYSQLLIB):    $(MYSQLO) $(MYSQLDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libMySQL.$(SOEXT) $@ "$(MYSQLO) $(MYSQLDO)" \
 		   "$(MYSQLLIBEXTRA) $(MYSQLLIBDIR) $(MYSQLCLILIB)"
diff --git a/netx/Module.mk b/netx/Module.mk
index 83f7018a55b66f85c92435e5c2a13b64aa535a9a..e0eef1ff141890c4f28d88f009ac415229f790db 100644
--- a/netx/Module.mk
+++ b/netx/Module.mk
@@ -56,7 +56,7 @@ NETXLIBEXTRA += $(XROOTDDIRL)/libXrdClient.a $(XROOTDDIRL)/libXrdOuc.a \
 include/%.h:    $(NETXDIRI)/%.h
 		cp $< $@
 
-$(NETXLIB):     $(NETXO) $(NETXDO) $(MAINLIBS) $(NETXLIBDEP) $(XRDPLUGINS)
+$(NETXLIB):     $(NETXO) $(NETXDO) $(XRDPLUGINS) $(ORDER_) $(MAINLIBS) $(NETXLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libNetx.$(SOEXT) $@ "$(NETXO) $(NETXDO)" \
 		   "$(NETXLIBEXTRA)"
diff --git a/newdelete/Module.mk b/newdelete/Module.mk
index 4729d83dec29656f4205b4896e7055657b2c76e1..ce6ebf41fb462b8dd1d1e32515e7ec6902abf087 100644
--- a/newdelete/Module.mk
+++ b/newdelete/Module.mk
@@ -31,7 +31,7 @@ INCLUDEFILES += $(NEWDEP)
 include/%.h:    $(NEWDIRI)/%.h
 		cp $< $@
 
-$(NEWLIB):      $(NEWO) $(MAINLIBS)
+$(NEWLIB):      $(NEWO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libNew.$(SOEXT) $@ "$(NEWO)" "$(NEWLIBEXTRA)"
 
diff --git a/oracle/Module.mk b/oracle/Module.mk
index 39604eb50b82b2ebb1735f78f6fd42bad80cfd85..72d6d280ac476dc28467c068537f2681ea94d541 100644
--- a/oracle/Module.mk
+++ b/oracle/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(ORACLEDEP)
 include/%.h:    $(ORACLEDIRI)/%.h
 		cp $< $@
 
-$(ORACLELIB):   $(ORACLEO) $(ORACLEDO) $(MAINLIBS)
+$(ORACLELIB):   $(ORACLEO) $(ORACLEDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libOracle.$(SOEXT) $@ "$(ORACLEO) $(ORACLEDO)" \
 		   "$(ORACLELIBEXTRA) $(ORACLELIBDIR) $(ORACLECLILIB)"
diff --git a/peac/Module.mk b/peac/Module.mk
index 1c19fccdc5b89bfa77517a4f218f39acf56b4c4c..e440c0c2fb686ecf6ebf7f35788a3b9a9a99bb3f 100644
--- a/peac/Module.mk
+++ b/peac/Module.mk
@@ -57,7 +57,7 @@ INCLUDEFILES += $(PEACDEP) $(PEACGUIDEP)
 include/%.h:    $(PEACDIRI)/%.h
 		cp $< $@
 
-$(PEACLIB):     $(PEACO) $(PEACDO) $(MAINLIBS) $(PEACLIBDEP)
+$(PEACLIB):     $(PEACO) $(PEACDO) $(ORDER_) $(MAINLIBS) $(PEACLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libPeac.$(SOEXT) $@ "$(PEACO) $(PEACDO)" \
 		   "$(PEACLIBEXTRA)"
@@ -69,7 +69,7 @@ $(PEACDS):      $(PEACH) $(PEACL) $(ROOTCINTTMP)
 $(PEACDO):      $(PEACDS)
 		$(CXX) $(NOOPT) $(CXXFLAGS) -I. -o $@ -c $<
 
-$(PEACGUILIB):  $(PEACGUIO) $(PEACGUIDO) $(MAINLIBS) $(PEACGUILIBDEP)
+$(PEACGUILIB):  $(PEACGUIO) $(PEACGUIDO) $(ORDER_) $(MAINLIBS) $(PEACGUILIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libPeacGui.$(SOEXT) $@ \
 		   "$(PEACGUIO) $(PEACGUIDO)" \
diff --git a/pgsql/Module.mk b/pgsql/Module.mk
index aa3298e3809188569f96d78b9482246f3d22fd76..c4d76b12e0f3dab610a3c81aab25829ae8c2e11b 100644
--- a/pgsql/Module.mk
+++ b/pgsql/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(PGSQLDEP)
 include/%.h:    $(PGSQLDIRI)/%.h
 		cp $< $@
 
-$(PGSQLLIB):    $(PGSQLO) $(PGSQLDO) $(MAINLIBS)
+$(PGSQLLIB):    $(PGSQLO) $(PGSQLDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libPgSQL.$(SOEXT) $@ "$(PGSQLO) $(PGSQLDO)" \
 		   "$(PGSQLLIBEXTRA) $(PGSQLLIBDIR) $(PGSQLCLILIB)"
diff --git a/physics/Module.mk b/physics/Module.mk
index 0532a83236aaebbfc145fd2005d1cb9554197a15..0f747b06329a262c79c8614a84880507dea6adb1 100644
--- a/physics/Module.mk
+++ b/physics/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(PHYSICSDEP)
 include/%.h:    $(PHYSICSDIRI)/%.h
 		cp $< $@
 
-$(PHYSICSLIB):  $(PHYSICSO) $(PHYSICSDO) $(MAINLIBS) $(PHYSICSLIBDEP)
+$(PHYSICSLIB):  $(PHYSICSO) $(PHYSICSDO) $(ORDER_) $(MAINLIBS) $(PHYSICSLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libPhysics.$(SOEXT) $@ \
 		   "$(PHYSICSO) $(PHYSICSDO)" "$(PHYSICSLIBEXTRA)"
diff --git a/postscript/Module.mk b/postscript/Module.mk
index 228f429f08ff5afee487151b0efaa75a63675df6..a364556b3aacb77c9a7010829111b6b565198f07 100644
--- a/postscript/Module.mk
+++ b/postscript/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(POSTSCRIPTDEP)
 include/%.h:    $(POSTSCRIPTDIRI)/%.h
 		cp $< $@
 
-$(POSTSCRIPTLIB): $(POSTSCRIPTO) $(POSTSCRIPTDO) $(MAINLIBS) $(POSTSCRIPTLIBDEP)
+$(POSTSCRIPTLIB): $(POSTSCRIPTO) $(POSTSCRIPTDO) $(ORDER_) $(MAINLIBS) $(POSTSCRIPTLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libPostscript.$(SOEXT) $@ \
 		   "$(POSTSCRIPTO) $(POSTSCRIPTDO)" \
diff --git a/proof/Module.mk b/proof/Module.mk
index 7e284e690eac1c58643ab482d95a6959632f0a36..3864415cad3edba786ddad5dcff5132d61645944 100644
--- a/proof/Module.mk
+++ b/proof/Module.mk
@@ -57,7 +57,7 @@ INCLUDEFILES += $(PROOFDEP) $(PROOFGUIDEP)
 include/%.h:    $(PROOFDIRI)/%.h
 		cp $< $@
 
-$(PROOFLIB):    $(PROOFO) $(PROOFDO) $(MAINLIBS) $(PROOFLIBDEP)
+$(PROOFLIB):    $(PROOFO) $(PROOFDO) $(ORDER_) $(MAINLIBS) $(PROOFLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libProof.$(SOEXT) $@ "$(PROOFO) $(PROOFDO)" \
 		   "$(PROOFLIBEXTRA)"
@@ -69,7 +69,7 @@ $(PROOFDS):     $(PROOFH) $(PROOFL) $(ROOTCINTTMP)
 $(PROOFDO):     $(PROOFDS)
 		$(CXX) $(NOOPT) $(CXXFLAGS) -I. -o $@ -c $<
 
-$(PROOFGUILIB): $(PROOFGUIO) $(PROOFGUIDO) $(MAINLIBS) $(PROOFGUILIBDEP)
+$(PROOFGUILIB): $(PROOFGUIO) $(PROOFGUIDO) $(ORDER_) $(MAINLIBS) $(PROOFGUILIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libProofGui.$(SOEXT) $@ \
 		   "$(PROOFGUIO) $(PROOFGUIDO)" \
diff --git a/pythia/Module.mk b/pythia/Module.mk
index eff25579184af8a9836c27962e2d09f413e0dd61..8622cfbcb8ecc76402cb3187c060f73b1c2a11de 100644
--- a/pythia/Module.mk
+++ b/pythia/Module.mk
@@ -37,7 +37,7 @@ INCLUDEFILES += $(PYTHIADEP)
 include/%.h:    $(PYTHIADIRI)/%.h
 		cp $< $@
 
-$(PYTHIALIB):   $(PYTHIAO) $(PYTHIADO) $(MAINLIBS) $(PYTHIALIBDEP)
+$(PYTHIALIB):   $(PYTHIAO) $(PYTHIADO) $(ORDER_) $(MAINLIBS) $(PYTHIALIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libEGPythia.$(SOEXT) $@ \
 		   "$(PYTHIAO) $(PYTHIADO)" \
diff --git a/pythia6/Module.mk b/pythia6/Module.mk
index dd4f899913876107bb6ca1460ff99a8ba732ab19..33dbea9da3d0a0c8408da9412c6a37a2672f236f 100644
--- a/pythia6/Module.mk
+++ b/pythia6/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(PYTHIA6DEP)
 include/%.h:    $(PYTHIA6DIRI)/%.h
 		cp $< $@
 
-$(PYTHIA6LIB):  $(PYTHIA6O) $(PYTHIA6DO) $(MAINLIBS) $(PYTHIA6LIBDEP)
+$(PYTHIA6LIB):  $(PYTHIA6O) $(PYTHIA6DO) $(ORDER_) $(MAINLIBS) $(PYTHIA6LIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libEGPythia6.$(SOEXT) $@ \
 		   "$(PYTHIA6O) $(PYTHIA6DO)" \
diff --git a/qt/Module.mk b/qt/Module.mk
index 3f2d83c443a84f0b70668d2231739dbd2707d15a..5a4b797a710a4f684aeb63cba8579a7957df78ae 100644
--- a/qt/Module.mk
+++ b/qt/Module.mk
@@ -62,7 +62,7 @@ include/%.cw:    $(GQTDIRI)/%.cw
 include/%.pri:    $(GQTDIRI)/%.pri
 		cp $< $@
       
-$(GQTLIB):      $(GQTO) $(GQTDO) $(GQTMOCO) $(MAINLIBS) $(GQTLIBDEP)
+$(GQTLIB):      $(GQTO) $(GQTDO) $(GQTMOCO) $(ORDER_) $(MAINLIBS) $(GQTLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGQt.$(SOEXT) $@ \
 		   "$(GQTO) $(GQTMOCO) $(GQTDO)" \
diff --git a/qtroot/Module.mk b/qtroot/Module.mk
index d1918446a366983b1028f403678d5cab4e963ea1..272f203c5f585973f07ffad26f86cc554b3cff58 100644
--- a/qtroot/Module.mk
+++ b/qtroot/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(QTROOTDEP)
 include/%.h:    $(QTROOTDIRI)/%.h
 		cp $< $@
 
-$(QTROOTLIB):   $(QTROOTO) $(QTROOTDO) $(MAINLIBS) $(QTROOTLIBDEP)
+$(QTROOTLIB):   $(QTROOTO) $(QTROOTDO) $(ORDER_) $(MAINLIBS) $(QTROOTLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libQtRoot.$(SOEXT) $@ "$(QTROOTO) $(QTROOTDO)" \
 		   "$(QTROOTLIBEXTRA) $(QTLIBDIR) $(QTLIB)"
diff --git a/quadp/Module.mk b/quadp/Module.mk
index 1151cb3a106cca4af88f3ce7e9da3939b7185d78..5f32200105557c7df102866dcc336e561f5b470a 100644
--- a/quadp/Module.mk
+++ b/quadp/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(QUADPDEP)
 include/%.h:    $(QUADPDIRI)/%.h
 		cp $< $@
 
-$(QUADPLIB):    $(QUADPO) $(QUADPDO) $(MAINLIBS) $(QUADPLIBDEP)
+$(QUADPLIB):    $(QUADPO) $(QUADPDO) $(ORDER_) $(MAINLIBS) $(QUADPLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libQuadp.$(SOEXT) $@ "$(QUADPO) $(QUADPDO)" \
 		   "$(QUADPLIBEXTRA)"
diff --git a/reflex/Module.mk b/reflex/Module.mk
index 24909027c3035632b8f29586f97210cf5b52bf33..7fd50a55d5e09e4ad6a114d77d63303bf41b7e9a 100644
--- a/reflex/Module.mk
+++ b/reflex/Module.mk
@@ -38,7 +38,9 @@ GCCXMLPATHPY := $(GRFLXDD)/gccxmlpath.py
 GRFLXS   := $(wildcard $(GRFLXSD)/*.py)
 GRFLXPY  := $(patsubst $(GRFLXSD)/%.py,$(GRFLXDD)/%.py,$(GRFLXS))
 GRFLXPY  += $(GCCXMLPATHPY)
+ifneq ($(BUILDPYTHON),no)
 GRFLXPYC := $(subst .py,.pyc,$(GRFLXPY))
+endif
 
 ifeq ($(PLATFORM),win32)
 GENREFLEX = bin/genreflex.bat
@@ -70,7 +72,7 @@ RFLX_UNITTESTS = $(RFLX_TESTD)/test_Reflex_generate.cxx    \
                  $(RFLX_TESTD)/test_ReflexBuilder_unit.cxx \
                  $(RFLX_TESTD)/test_Reflex_unit.cxx        \
                  $(RFLX_TESTD)/test_Reflex_simple1.cxx     \
-                 $(RFLX_TESTD)/test_Reflex_simple2.cxx 
+                 $(RFLX_TESTD)/test_Reflex_simple2.cxx
 RFLX_UNITTESTO = $(subst .cxx,.o,$(RFLX_UNITTESTS))
 RFLX_UNITTESTX = $(subst .cxx,,$(RFLX_UNITTESTS))
 
@@ -88,7 +90,7 @@ $(GCCXMLPATHPY):
 		  mkdir -p lib/python/genreflex; fi )
 		@echo "gccxmlpath = '$(GCCXML)'" > $(GCCXMLPATHPY);
 
-$(GRFLXDD)/%.py: $(GRFLXSD)/%.py $(GCCXMLPATHPY) 
+$(GRFLXDD)/%.py: $(GRFLXSD)/%.py $(GCCXMLPATHPY)
 		@(if [ ! -d "lib/python/genreflex" ]; then \
 		  mkdir -p lib/python/genreflex; fi )
 		cp $< $@
@@ -96,19 +98,19 @@ $(GRFLXDD)/%.py: $(GRFLXSD)/%.py $(GCCXMLPATHPY)
 $(GRFLXDD)/%.pyc: $(GRFLXDD)/%.py
 		@python -c 'import py_compile; py_compile.compile( "$<" )'
 
-$(GENREFLEX): $(GRFLXPYC) 
+$(GENREFLEX): $(GRFLXPYC)
 		@echo $(GNRFLX_L1) > $(GENREFLEX)
 		@echo $(GNRFLX_L2) >> $(GENREFLEX)
 ifneq ($(PLATFORM),win32)
 		@chmod a+x $(GENREFLEX)
 endif
 
-$(REFLEXLIB): $(GENREFLEX) $(REFLEXO)
+$(REFLEXLIB): $(GENREFLEX) $(REFLEXO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)"      \
 		"$(SOFLAGS)" libReflex.$(SOEXT) $@ "$(REFLEXO)" \
 		"$(REFLEXLIBEXTRA)"
 
-all-reflex:     $(REFLEXLIB) 
+all-reflex:     $(REFLEXLIB)
 
 map-reflex:     $(RLIBMAP)
 		$(RLIBMAP) -r $(ROOTMAP) -l $(REFLEXLIB) \
@@ -124,7 +126,7 @@ clean-check-reflex:
 		@rm -f $(RFLX_TESTLIBS) $(RFLX_TESTLIBO) $(RFLX_UNITTESTO) $(RFLX_UNITTESTX)
 
 clean-reflex: clean-genreflex clean-check-reflex
-		@rm -f $(REFLEXO) 
+		@rm -f $(REFLEXO)
 
 clean::         clean-reflex
 
@@ -157,7 +159,7 @@ $(RFLX_TESTLIBS2) :
 		cd $(RFLX_TESTD); $(RFLX_GENREFLEXX) testDict2/Class2Dict.h -s testDict2/selection.xml -I../../include
 
 $(RFLX_UNITTESTO) : %.o : %.cxx
-		$(CXX) $(OPT) $(CXXFLAGS) $(CPPUNITI) -Ireflex -c $< -o $@ 
+		$(CXX) $(OPT) $(CXXFLAGS) $(CPPUNITI) -Ireflex -c $< -o $@
 
 $(RFLX_UNITTESTX) : % : %.o
 		$(LD) $(LDFLAGS) -o $@ $< $(CPPUNITLL) $(REFLEXLL)
diff --git a/rfio/Module.mk b/rfio/Module.mk
index c449a8beaf3c86fea1b1cb65c9e4b345b25bc1d7..0f96d9cb603b66a7a8e0212c89176cbee63bfe35 100644
--- a/rfio/Module.mk
+++ b/rfio/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(RFIODEP)
 include/%.h:    $(RFIODIRI)/%.h
 		cp $< $@
 
-$(RFIOLIB):     $(RFIOO) $(RFIODO) $(MAINLIBS)
+$(RFIOLIB):     $(RFIOO) $(RFIODO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRFIO.$(SOEXT) $@ "$(RFIOO) $(RFIODO)" \
 		   "$(RFIOLIBEXTRA) $(SHIFTLIBDIR) $(SHIFTLIB)"
diff --git a/rint/Module.mk b/rint/Module.mk
index e2214173e5cb820049a41066047a3b1a4035d08c..56aac692435ae040e010051db3488622dc85d9fd 100644
--- a/rint/Module.mk
+++ b/rint/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(RINTDEP)
 include/%.h:    $(RINTDIRI)/%.h
 		cp $< $@
 
-$(RINTLIB):     $(RINTO) $(RINTDO) $(MAINLIBS)
+$(RINTLIB):     $(RINTO) $(RINTDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRint.$(SOEXT) $@ "$(RINTO) $(RINTDO)" \
 		   "$(RINTLIBEXTRA)"
diff --git a/roofit/Module.mk b/roofit/Module.mk
index ad6accc87861085d2f44cd7db3c3f0111ecb7adb..88d973111e99a66e7a3756009e350fce25f9a8c9 100644
--- a/roofit/Module.mk
+++ b/roofit/Module.mk
@@ -38,7 +38,7 @@ ROOFITH1     := Roo1DTable.h Roo2DKeysPdf.h RooAbsAnaConvPdf.h RooAbsArg.h RooAb
                 RooBreitWigner.h RooBrentRootFinder.h RooBukinPdf.h RooCategory.h RooCategoryProxy.h RooCategorySharedProperties.h \
                 RooCatType.h RooCBShape.h RooChebychev.h RooChi2Var.h RooClassFactory.h RooCmdArg.h RooCmdConfig.h RooComplex.h \
                 RooConstVar.h RooConvCoefVar.h RooConvGenContext.h RooConvIntegrandBinding.h RooCurve.h RooCustomizer.h \
-                 RooGlobalFunc.h
+                RooGlobalFunc.h
 ROOFITH2     := RooDataHist.h RooDataProjBinding.h RooDataSet.h RooDecay.h RooDirItem.h RooDouble.h RooDstD0BG.h RooEffGenContext.h \
                 RooEfficiency.h RooEffProd.h RooEllipse.h RooErrorHandler.h RooErrorVar.h RooExponential.h RooExtendPdf.h \
                 RooFitResult.h RooFormula.h RooFormulaVar.h RooGaussian.h RooGaussKronrodIntegrator1D.h RooGaussModel.h \
@@ -58,7 +58,7 @@ ROOFITH3     := RooNameSet.h RooNLLVar.h RooNonCPEigenDecay.h RooNormListManager
                 RooSimGenContext.h RooSimPdfBuilder.h RooSimultaneous.h RooStreamParser.h RooStringVar.h RooSuperCategory.h \
                 RooTable.h RooThreshEntry.h RooThresholdCategory.h RooTObjWrap.h RooTrace.h RooTreeData.h RooTruthModel.h \
                 RooUnblindCPAsymVar.h RooUnblindOffset.h RooUnblindPrecision.h RooUnblindUniform.h RooUniformBinning.h \
-                RooVoigtian.h 
+                RooVoigtian.h
 
 ROOFITH1     := $(patsubst %,$(MODDIRI)/%,$(ROOFITH1))
 ROOFITH2     := $(patsubst %,$(MODDIRI)/%,$(ROOFITH2))
@@ -101,7 +101,7 @@ $(ROOFITH):     $(ROOFITETAG)
 $(ROOFITINCH):  include/%.h: $(ROOFITDIRI)/%.h
 		cp $< $@
 
-$(ROOFITLIB):   $(ROOFITO) $(ROOFITDO) $(MAINLIBS) $(ROOFITLIBDEP)
+$(ROOFITLIB):   $(ROOFITO) $(ROOFITDO) $(ORDER_) $(MAINLIBS) $(ROOFITLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRooFit.$(SOEXT) $@ "$(ROOFITO) $(ROOFITDO)" \
 		   "$(ROOFITLIBEXTRA)"
diff --git a/rpdutils/Module.mk b/rpdutils/Module.mk
index 3da2b08737890792f9dd91b594b0423c38879d98..debd41137b39fe0f6113d8f37f16eddd2833fba5 100644
--- a/rpdutils/Module.mk
+++ b/rpdutils/Module.mk
@@ -79,7 +79,7 @@ INCLUDEFILES  += $(RPDUTILDEP)
 include/%.h:    $(RPDUTILDIRI)/%.h
 		cp $< $@
 
-$(SRVAUTHLIB):  $(SRVAUTHO) $(RSAO) $(DAEMONUTILSO) $(MAINLIBS) $(SRVAUTHLIBDEP)
+$(SRVAUTHLIB):  $(SRVAUTHO) $(RSAO) $(DAEMONUTILSO) $(ORDER_) $(MAINLIBS) $(SRVAUTHLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libSrvAuth.$(SOEXT) $@ "$(SRVAUTHO) $(RSAO)" \
 		   "$(DAEMONUTILSO) $(CRYPTLIBS) $(AUTHLIBS)"
diff --git a/ruby/Module.mk b/ruby/Module.mk
index 97f5ca01e30abefdfba3d4ffd38c89b770381fe0..9631952036bad0a87545c7e39ea5cc1bb035b1e3 100644
--- a/ruby/Module.mk
+++ b/ruby/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES   += $(RUBYROOTDEP)
 include/%.h:    $(RUBYROOTDIRI)/%.h
 		cp $< $@
 
-$(RUBYROOTLIB): $(RUBYROOTO) $(RUBYROOTDO) $(MAINLIBS) $(RUBYLIBDEP)
+$(RUBYROOTLIB): $(RUBYROOTO) $(RUBYROOTDO) $(ORDER_) $(MAINLIBS) $(RUBYLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libRuby.$(SOEXT) $@ \
 		   "$(RUBYROOTO) $(RUBYROOTDO)" \
diff --git a/sapdb/Module.mk b/sapdb/Module.mk
index 3db7431e6f2de3f13ad373b78c7e9a3940f239ad..5f321cf491e24a2c988bddbd577a61d8899b4fd9 100644
--- a/sapdb/Module.mk
+++ b/sapdb/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(SAPDBDEP)
 include/%.h:    $(SAPDBDIRI)/%.h
 		cp $< $@
 
-$(SAPDBLIB):    $(SAPDBO) $(SAPDBDO) $(MAINLIBS)
+$(SAPDBLIB):    $(SAPDBO) $(SAPDBDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libSapDB.$(SOEXT) $@ "$(SAPDBO) $(SAPDBDO)" \
 		   "$(SAPDBLIBEXTRA) $(SAPDBLIBDIR) $(SAPDBCLILIB)"
diff --git a/smatrix/Module.mk b/smatrix/Module.mk
index 700d751552675d7baa080d46bdc0f5f127b61b86..dc9e3c8f4f5ebf1a0b5b4366208c07c3b2aedf58 100644
--- a/smatrix/Module.mk
+++ b/smatrix/Module.mk
@@ -53,7 +53,7 @@ include/Math/%.icc: $(SMATRIXDIRI)/%.icc
 		fi)
 		cp $< $@
 
-$(SMATRIXLIB): $(SMATRIXO) $(SMATRIXDO) $(MAINLIBS)
+$(SMATRIXLIB): $(SMATRIXO) $(SMATRIXDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)"  \
 		   "$(SOFLAGS)" libSmatrix.$(SOEXT) $@     \
 		   "$(SMATRIXO) $(SMATRIXDO)"             \
diff --git a/splot/Module.mk b/splot/Module.mk
index 1432a1ced5f937e67a96f8060c6a8842c9f6e375..80d255134b2907a0e2edc4214f94a81f4674a10f 100644
--- a/splot/Module.mk
+++ b/splot/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(SPLOTDEP)
 include/%.h:    $(SPLOTDIRI)/%.h
 		cp $< $@
 
-$(SPLOTLIB):   $(SPLOTO) $(SPLOTDO) $(MAINLIBS) $(SPLOTLIBDEP)
+$(SPLOTLIB):   $(SPLOTO) $(SPLOTDO) $(ORDER_) $(MAINLIBS) $(SPLOTLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libSPlot.$(SOEXT) $@ "$(SPLOTO) $(SPLOTDO)" \
 		   "$(SPLOTLIBEXTRA)"
diff --git a/sql/Module.mk b/sql/Module.mk
index 66b071903bc7e77dd5fa8f3d04d8a94f71905fa4..d32e71da1bce8a949b1192ac80d8576e396e78e1 100644
--- a/sql/Module.mk
+++ b/sql/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(SQLDEP)
 include/%.h:    $(SQLDIRI)/%.h
 		cp $< $@
 
-$(SQLLIB):      $(SQLO) $(SQLDO) $(MAINLIBS) $(SQLLIBDEP)
+$(SQLLIB):      $(SQLO) $(SQLDO) $(ORDER_) $(MAINLIBS) $(SQLLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libSQL.$(SOEXT) $@ "$(SQLO) $(SQLDO)" \
 		   "$(SQLLIBEXTRA)"
diff --git a/srputils/Module.mk b/srputils/Module.mk
index 624dbe9a777e5215674e7b16dee9f3971f025e0b..e6730ae6e221dbe1233b999ac5e0ab6d774d355a 100644
--- a/srputils/Module.mk
+++ b/srputils/Module.mk
@@ -44,7 +44,7 @@ INCLUDEFILES += $(SRPUTILSDEP) $(RPASSWDDEP) $(RTCONFDEP)
 include/%.h:    $(SRPUTILSDIRI)/%.h
 		cp $< $@
 
-$(SRPUTILSLIB): $(SRPUTILSO) $(MAINLIBS)
+$(SRPUTILSLIB): $(SRPUTILSO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libSRPAuth.$(SOEXT) $@ "$(SRPUTILSO)" \
 		   "$(SRPUTILSLIBEXTRA) $(SRPLIBDIR) $(SRPLIB) \
diff --git a/table/Module.mk b/table/Module.mk
index 059fb75f14de0d676fe7c5a3a9e760c17331db26..a299591b2493904c38fdee784ce374596f4df257 100644
--- a/table/Module.mk
+++ b/table/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(TABLEDEP)
 include/%.h:    $(TABLEDIRI)/%.h
 		cp $< $@
 
-$(TABLELIB):    $(TABLEO) $(TABLEDO) $(MAINLIBS) $(TABLELIBDEP)
+$(TABLELIB):    $(TABLEO) $(TABLEDO) $(ORDER_) $(MAINLIBS) $(TABLELIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libTable.$(SOEXT) $@ "$(TABLEO) $(TABLEDO)" \
 		   "$(TABLELIBEXTRA)"
diff --git a/thread/Module.mk b/thread/Module.mk
index 0e9c08ca8808310c69b759aa991ca529e34c616f..37c9f657b2983de2bd644cf74bdc4035cfe25484 100644
--- a/thread/Module.mk
+++ b/thread/Module.mk
@@ -70,7 +70,7 @@ INCLUDEFILES += $(THREADDEP)
 include/%.h:    $(THREADDIRI)/%.h
 		cp $< $@
 
-$(THREADLIB):   $(THREADO) $(THREADDO) $(MAINLIBS) $(THREADLIBDEP)
+$(THREADLIB):   $(THREADO) $(THREADDO) $(ORDER_) $(MAINLIBS) $(THREADLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libThread.$(SOEXT) $@ "$(THREADO) $(THREADDO)" \
 		   "$(THREADLIBEXTRA) $(OSTHREADLIBDIR) $(OSTHREADLIB)"
diff --git a/tree/Module.mk b/tree/Module.mk
index ece76aaabe0505bd1277226a3e892bb2149dfedf..658d54d16175003a10962fe873c408d9e302fd69 100644
--- a/tree/Module.mk
+++ b/tree/Module.mk
@@ -43,7 +43,7 @@ INCLUDEFILES += $(TREEDEP)
 include/%.h:    $(TREEDIRI)/%.h
 		cp $< $@
 
-$(TREELIB):     $(TREEO) $(TREEDO) $(MAINLIBS)
+$(TREELIB):     $(TREEO) $(TREEDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libTree.$(SOEXT) $@ "$(TREEO) $(TREEDO)" \
 		   "$(TREELIBEXTRA)"
diff --git a/treeplayer/Module.mk b/treeplayer/Module.mk
index 94c8a0eb4938884edb86f01f75856968a32e5842..c3c00ef7ce5007a9a696c757493a8765f5324390 100644
--- a/treeplayer/Module.mk
+++ b/treeplayer/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(TREEPLAYERDEP)
 include/%.h:    $(TREEPLAYERDIRI)/%.h
 		cp $< $@
 
-$(TREEPLAYERLIB): $(TREEPLAYERO) $(TREEPLAYERDO) $(MAINLIBS) \
+$(TREEPLAYERLIB): $(TREEPLAYERO) $(TREEPLAYERDO) $(ORDER_) $(MAINLIBS) \
                   $(TREEPLAYERLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libTreePlayer.$(SOEXT) $@ \
diff --git a/treeviewer/Module.mk b/treeviewer/Module.mk
index 72733ae0cc10768db71ee886de558077f157e0de..f1b7e36ee0c0374149a817883aab49c8c0015b17 100644
--- a/treeviewer/Module.mk
+++ b/treeviewer/Module.mk
@@ -49,7 +49,7 @@ INCLUDEFILES += $(TREEVIEWERDEP)
 include/%.h:    $(TREEVIEWERDIRI)/%.h
 		cp $< $@
 
-$(TREEVIEWERLIB): $(TREEVIEWERO) $(TREEVIEWERDO) $(MAINLIBS) \
+$(TREEVIEWERLIB): $(TREEVIEWERO) $(TREEVIEWERDO) $(ORDER_) $(MAINLIBS) \
                   $(TREEVIEWERLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libTreeViewer.$(SOEXT) $@ \
diff --git a/venus/Module.mk b/venus/Module.mk
index fe1a3a72eb5f7d382a35b4e14a830ef9589fe5cb..e5e8179ccc238ed4fa0593a0389f91c4a0af3f5a 100644
--- a/venus/Module.mk
+++ b/venus/Module.mk
@@ -37,7 +37,7 @@ INCLUDEFILES += $(VENUSDEP)
 include/%.h:    $(VENUSDIRI)/%.h
 		cp $< $@
 
-$(VENUSLIB):    $(VENUSO) $(VENUSDO) $(MAINLIBS) $(VENUSLIBDEP)
+$(VENUSLIB):    $(VENUSO) $(VENUSDO) $(ORDER_) $(MAINLIBS) $(VENUSLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libEGVenus.$(SOEXT) $@ \
 		   "$(VENUSO) $(VENUSDO)" \
diff --git a/vmc/Module.mk b/vmc/Module.mk
index 994ecb30f48fe0c5554479ca9688558a89af2e29..52350685fb848ec4a98f5e2a25bcd2eee3391262 100644
--- a/vmc/Module.mk
+++ b/vmc/Module.mk
@@ -37,7 +37,7 @@ INCLUDEFILES += $(VMCDEP)
 include/%.h:    $(VMCDIRI)/%.h
 		cp $< $@
 
-$(VMCLIB):      $(VMCO) $(VMCDO) $(MAINLIBS) $(VMCLIBDEP)
+$(VMCLIB):      $(VMCO) $(VMCDO) $(ORDER_) $(MAINLIBS) $(VMCLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libVMC.$(SOEXT) $@ "$(VMCO) $(VMCDO)" \
 		   "$(VMCLIBEXTRA)"
diff --git a/win32gdk/Module.mk b/win32gdk/Module.mk
index e1b9a22cc4486a57ff0a591cddb3e04b4fa49655..e4b99ec69384c5b68fd4e79c65ccafc15826a88a 100644
--- a/win32gdk/Module.mk
+++ b/win32gdk/Module.mk
@@ -77,7 +77,7 @@ $(GDKLIBA):     $(GDKSRC)
 		  nmake -nologo -f makefile.msc)
 
 $(WIN32GDKLIB): $(WIN32GDKO) $(WIN32GDKDO) $(FREETYPEDEP) $(GDKLIB) $(GDKDLL) \
-                $(MAINLIBS) $(WIN32GDKLIBDEP)
+                $(ORDER_) $(MAINLIBS) $(WIN32GDKLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libWin32gdk.$(SOEXT) $@ \
 		   "$(WIN32GDKO) $(WIN32GDKDO)" \
diff --git a/x11/Module.mk b/x11/Module.mk
index d95681eb2056b68f4fff441bb6db31f89c6dbe1f..8c067ebaa03855895994e4ffd0d06e3d0dacaf43 100644
--- a/x11/Module.mk
+++ b/x11/Module.mk
@@ -38,7 +38,7 @@ INCLUDEFILES += $(X11DEP)
 include/%.h:    $(X11DIRI)/%.h
 		cp $< $@
 
-$(X11LIB):      $(X11O) $(X11DO) $(MAINLIBS)
+$(X11LIB):      $(X11O) $(X11DO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGX11.$(SOEXT) $@ "$(X11O) $(X11DO)" \
 		   "$(X11LIBEXTRA) $(XLIBS)"
diff --git a/x11ttf/Module.mk b/x11ttf/Module.mk
index 3c08a1818c7b732e73a3430855aec5235c0e868d..c0550f51d5e75538b0f40eb7f3b79dc441649f57 100644
--- a/x11ttf/Module.mk
+++ b/x11ttf/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(X11TTFDEP)
 include/%.h:    $(X11TTFDIRI)/%.h
 		cp $< $@
 
-$(X11TTFLIB):   $(X11TTFO) $(X11TTFDO) $(FREETYPEDEP) $(MAINLIBS) $(X11TTFLIBDEP)
+$(X11TTFLIB):   $(X11TTFO) $(X11TTFDO) $(FREETYPEDEP) $(ORDER_) $(MAINLIBS) $(X11TTFLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libGX11TTF.$(SOEXT) $@ \
 		   "$(X11TTFO) $(X11TTFDO)" \
diff --git a/x3d/Module.mk b/x3d/Module.mk
index 7234a15b5437f771b3967643aebc9a3ad2d78bd6..0c5111a8f5c184e5cbb0fd5a406c48b974c58822 100644
--- a/x3d/Module.mk
+++ b/x3d/Module.mk
@@ -39,7 +39,7 @@ INCLUDEFILES += $(X3DDEP)
 include/%.h:    $(X3DDIRI)/%.h
 		cp $< $@
 
-$(X3DLIB):      $(X3DO) $(X3DDO) $(MAINLIBS) $(X3DLIBDEP)
+$(X3DLIB):      $(X3DO) $(X3DDO) $(ORDER_) $(MAINLIBS) $(X3DLIBDEP)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libX3d.$(SOEXT) $@ "$(X3DO) $(X3DDO)" \
 		   "$(X3DLIBEXTRA) $(XLIBS)"
diff --git a/xml/Module.mk b/xml/Module.mk
index 3d78b7cfdefdbb26bca919cfb05eb744e61fc8d8..19b1cc0b793ccb2b17f6ed3a44c023acb54d2015 100644
--- a/xml/Module.mk
+++ b/xml/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(XMLDEP)
 include/%.h:    $(XMLDIRI)/%.h
 		cp $< $@
 
-$(XMLLIB):      $(XMLO) $(XMLDO) $(MAINLIBS)
+$(XMLLIB):      $(XMLO) $(XMLDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libXMLIO.$(SOEXT) $@ "$(XMLO) $(XMLDO)"
 
diff --git a/xmlparser/Module.mk b/xmlparser/Module.mk
index b5fc8d949f37b9835c0966461732fcf516667ade..89ad7b808745e3f6e10a88e56a2f19629d641ce6 100644
--- a/xmlparser/Module.mk
+++ b/xmlparser/Module.mk
@@ -36,7 +36,7 @@ INCLUDEFILES += $(XMLPARSERDEP)
 include/%.h:    $(XMLPARSERDIRI)/%.h
 		cp $< $@
 
-$(XMLPARSERLIB): $(XMLPARSERO) $(XMLPARSERDO) $(MAINLIBS)
+$(XMLPARSERLIB): $(XMLPARSERO) $(XMLPARSERDO) $(ORDER_) $(MAINLIBS)
 		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
 		   "$(SOFLAGS)" libXMLParser.$(SOEXT) $@ \
 		   "$(XMLPARSERO) $(XMLPARSERDO)" \