diff --git a/src/Makefile.MESONH.mk b/src/Makefile.MESONH.mk
index 8ba6fff0066a37cb7376512208b5869255c1f519..cffcb1548edabbe9071f0983725e3fabfeea6d02 100644
--- a/src/Makefile.MESONH.mk
+++ b/src/Makefile.MESONH.mk
@@ -71,7 +71,7 @@ endif
 #
 DIR_SURFEX += ARCH_SRC/surfex
 DIR_SURFEX += SURFEX
-CPPFLAGS_SURFEX += -DMNH_PARALLEL
+CPPFLAGS_SURFEX += -DMNH_PARALLEL -Din_surfex 
 #
 ifdef DIR_SURFEX
 DIR_MASTER += $(DIR_SURFEX)
diff --git a/src/Rules.AIX64.mk b/src/Rules.AIX64.mk
index 3b3f35dd9f310b98ec27b03a6025ee11f21f81a3..a0a165d0d8bf6bae892be48fc77e3dcd49fd6b28 100644
--- a/src/Rules.AIX64.mk
+++ b/src/Rules.AIX64.mk
@@ -87,7 +87,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DLINUX -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DAMAX1=MAX -DMNH
+CPPFLAGS_MNH       = -DAMAX1=MAX -DMNH -DMNH_SFX
 #
 # Gribex flags
 #
diff --git a/src/Rules.BG.mk b/src/Rules.BG.mk
index a8910824816d98a831912d6fc8b450552c3ef760..cbe80b5c99fcd521d0b3c167ad53f07fc861b8e4 100644
--- a/src/Rules.BG.mk
+++ b/src/Rules.BG.mk
@@ -98,7 +98,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_BSEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DLINUX  -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DAMAX1=MAX -DMNH
+CPPFLAGS_MNH       = -DAMAX1=MAX -DMNH -DMNH_SFX
 #
 # Gribex flags
 #
diff --git a/src/Rules.BGQ.mk b/src/Rules.BGQ.mk
index 27073eda648fb59523beed5645c2cc55ccc0d48d..053334f3b5b78d4e6b38fb08f819300d27d2302e 100644
--- a/src/Rules.BGQ.mk
+++ b/src/Rules.BGQ.mk
@@ -146,7 +146,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_BSEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DLINUX  -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DAMAX1=MAX -DMNH
+CPPFLAGS_MNH       = -DAMAX1=MAX -DMNH -DMNH_SFX
 #
 # Rules for GA = Global Array
 #
diff --git a/src/Rules.LXNAGf95.mk b/src/Rules.LXNAGf95.mk
index ce5e5a0e64a18b39571da7f217f6b1494ca791b5..abdb77739bcc7d50d665005a489a7462226b19fe 100644
--- a/src/Rules.LXNAGf95.mk
+++ b/src/Rules.LXNAGf95.mk
@@ -44,7 +44,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_MPI_BSEND -DNAGf95
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DSWAPIO -DLINUX
-CPPFLAGS_MNH       = -DMNH 
+CPPFLAGS_MNH       = -DMNH -DMNH_SFX
 
 #
 # Gribex flags
diff --git a/src/Rules.LXcray.mk b/src/Rules.LXcray.mk
index cb25144a82018d2c8dd30f6d15e7ed6950578b45..70ea08ec1c1befa4eeacf69a6e6f9e8409297ef0 100644
--- a/src/Rules.LXcray.mk
+++ b/src/Rules.LXcray.mk
@@ -87,7 +87,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) 
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DSWAPIO -DLINUX -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DMNH 
+CPPFLAGS_MNH       = -DMNH -DMNH_SFX 
 ifdef VER_GA
 CPPFLAGS_SURCOUCHE += -DMNH_GA
 INC                += -I${GA_ROOT}/include
diff --git a/src/Rules.LXg95.mk b/src/Rules.LXg95.mk
index fc00eceed0e014028e2e716496bde4a5af72e9c5..212197e7183244865cab7af0825a87736289698b 100644
--- a/src/Rules.LXg95.mk
+++ b/src/Rules.LXg95.mk
@@ -69,7 +69,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_MPI_BSEND -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DSWAPIO -DLINUX  -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DAINT=INT -DAMOD=MOD -DMNH
+CPPFLAGS_MNH       = -DAINT=INT -DAMOD=MOD -DMNH -DMNH_SFX
 #
 # Gribex flags
 #
diff --git a/src/Rules.LXgfortran.mk b/src/Rules.LXgfortran.mk
index 7cb87b2baa9bdab1c88c43110c8e7e22d4bf015e..1ccd27c70e9221e74f81688a4651288c4c8a5cff 100644
--- a/src/Rules.LXgfortran.mk
+++ b/src/Rules.LXgfortran.mk
@@ -76,7 +76,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DDEV_NULL  -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DSWAPIO -DLINUX -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DMNH -DAINT=INT -DAMOD=MOD
+CPPFLAGS_MNH       = -DMNH -DSFX_MNH -DAINT=INT -DAMOD=MOD
 ifdef VER_GA
 CPPFLAGS_SURCOUCHE += -DMNH_GA
 INC                += -I${GA_ROOT}/include
diff --git a/src/Rules.LXifort.mk b/src/Rules.LXifort.mk
index 20156c3de55149531cdbea7bbb5570ccd172ee61..c76000e5350bec31755bc8db61f14303424ed5bc 100644
--- a/src/Rules.LXifort.mk
+++ b/src/Rules.LXifort.mk
@@ -115,7 +115,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DSWAPIO -DLINUX -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DMNH 
+CPPFLAGS_MNH       = -DMNH -DSFX_MNH 
 ifdef VER_GA
 CPPFLAGS_SURCOUCHE += -DMNH_GA
 INC                += -I${GA_ROOT}/include
diff --git a/src/Rules.LXpathf95.mk b/src/Rules.LXpathf95.mk
index dc27a1248dffa4aa0f814ed57aa64416fa68c56e..2cfdf73433ba2773f0813bba40aad6c63a88a3fa 100644
--- a/src/Rules.LXpathf95.mk
+++ b/src/Rules.LXpathf95.mk
@@ -45,7 +45,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_MPI_BSEND -DDEV_NULL
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DSWAPIO -DLINUX
-CPPFLAGS_MNH       = -DAINT=INT -DAMOD=MOD -DMNH
+CPPFLAGS_MNH       = -DAINT=INT -DAMOD=MOD -DMNH -DMNH_SFX
 #
 # Gribex flags
 #
diff --git a/src/Rules.LXpgi.mk b/src/Rules.LXpgi.mk
index e1ab3e7e7976e73382ffd9f88eb3d6afd65fef34..d4dd380d01293124e5907ce8310e5a69be922c95 100644
--- a/src/Rules.LXpgi.mk
+++ b/src/Rules.LXpgi.mk
@@ -102,7 +102,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DSWAPIO -DLINUX -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DMNH -DMNH_PGI
+CPPFLAGS_MNH       = -DMNH -DMNH_PGI -DMNH_SFX
 
 #
 # Gribex flags
diff --git a/src/Rules.SX8.mk b/src/Rules.SX8.mk
index 48fd2ab69ebab12d171f59d764e2e3c3f88eab3c..ce3e587cb65fcfb29e1da62740163fbf1406bbb3 100644
--- a/src/Rules.SX8.mk
+++ b/src/Rules.SX8.mk
@@ -90,7 +90,7 @@ CPPFLAGS_SURFEX    =
 CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_SX5 -DMNH_MPI_BSEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND)
 CPPFLAGS_RAD       =
 CPPFLAGS_NEWLFI    = -DMNH_SX5 -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL}
-CPPFLAGS_MNH       = -DMNH
+CPPFLAGS_MNH       = -DMNH -DMNH_SFX
 #
 # Gribex flags
 #