From 8b7e4e09174a407fb4e9f6e8f2e105c9d272b214 Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Tue, 13 Mar 2007 16:00:08 +0000 Subject: [PATCH 1/1] cache the values of ghc_ge_XXX at configure-time This avoids recomputing them via $(shell) each time make expands one of these variables, which is very expensive (0.3s or so) on Windows. --- configure.ac | 10 ++++++++++ mk/config.mk.in | 10 +++++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/configure.ac b/configure.ac index 39856a2..d433522 100644 --- a/configure.ac +++ b/configure.ac @@ -715,6 +715,16 @@ if test "$WithGhc" != ""; then AC_SUBST(GhcMajVersion)dnl AC_SUBST(GhcMinVersion)dnl AC_SUBST(GhcPatchLevel)dnl + ghc_ge_504=`if test $(GhcCanonVersion) -ge 504; then echo YES; else echo NO; fi` + AC_SUBST(ghc_ge_504)dnl + ghc_ge_601=`if test $(GhcCanonVersion) -ge 601; then echo YES; else echo NO; fi` + AC_SUBST(ghc_ge_601)dnl + ghc_ge_602=`if test $(GhcCanonVersion) -ge 602; then echo YES; else echo NO; fi` + AC_SUBST(ghc_ge_602)dnl + ghc_ge_603=`if test $(GhcCanonVersion) -ge 603; then echo YES; else echo NO; fi` + AC_SUBST(ghc_ge_603)dnl + ghc_ge_605=`if test $(GhcCanonVersion) -ge 605; then echo YES; else echo NO; fi` + AC_SUBST(ghc_ge_605)dnl fi # Check whether this GHC has readline installed diff --git a/mk/config.mk.in b/mk/config.mk.in index c928dbf..d1605d1 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -833,11 +833,11 @@ GhcMajVersion = @GhcMajVersion@ GhcMinVersion = @GhcMinVersion@ # Some useful GHC version predicates: -ghc_ge_504 = $(shell if (test $(GhcCanonVersion) -ge 504); then echo YES; else echo NO; fi) -ghc_ge_601 = $(shell if (test $(GhcCanonVersion) -ge 601); then echo YES; else echo NO; fi) -ghc_ge_602 = $(shell if (test $(GhcCanonVersion) -ge 602); then echo YES; else echo NO; fi) -ghc_ge_603 = $(shell if (test $(GhcCanonVersion) -ge 603); then echo YES; else echo NO; fi) -ghc_ge_605 = $(shell if (test $(GhcCanonVersion) -ge 605); then echo YES; else echo NO; fi) +ghc_ge_504 = @ghc_ge_504@ +ghc_ge_601 = @ghc_ge_601@ +ghc_ge_602 = @ghc_ge_602@ +ghc_ge_603 = @ghc_ge_603@ +ghc_ge_605 = @ghc_ge_605@ endif # Canonicalised ghc version number, used for easy (integer) version -- 1.7.10.4