Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
M
Méso-NH code
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Méso-NH
Méso-NH code
Commits
524481b1
Commit
524481b1
authored
6 years ago
by
WAUTELET Philippe
Browse files
Options
Downloads
Patches
Plain Diff
Philippe 22/01/2019: add rules to compile with NAG compiler + removed old NAGf95 rules
parent
b7ee659d
No related branches found
No related tags found
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
src/LIB/SURCOUCHE/src/mode_io.f90
+4
-4
4 additions, 4 deletions
src/LIB/SURCOUCHE/src/mode_io.f90
src/Makefile
+4
-2
4 additions, 2 deletions
src/Makefile
src/Rules.LXNAGfor.mk
+63
-42
63 additions, 42 deletions
src/Rules.LXNAGfor.mk
with
71 additions
and
48 deletions
src/LIB/SURCOUCHE/src/mode_io.f90
+
4
−
4
View file @
524481b1
...
@@ -187,7 +187,7 @@ CONTAINS
...
@@ -187,7 +187,7 @@ CONTAINS
CHARACTER
(
len
=
5
)
::
CFILE
CHARACTER
(
len
=
5
)
::
CFILE
INTEGER
::
IFILE
,
IRANK_PROCIO
INTEGER
::
IFILE
,
IRANK_PROCIO
#if defined(MNH_SX5) || defined(MNH_SP4) ||
defined(NAGf95) ||
defined(MNH_LINUX)
#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX)
CHARACTER
(
len
=
20
)
::
YSTATUS
CHARACTER
(
len
=
20
)
::
YSTATUS
CHARACTER
(
len
=
20
)
::
YACCESS
CHARACTER
(
len
=
20
)
::
YACCESS
CHARACTER
(
len
=
20
)
::
YFORM
CHARACTER
(
len
=
20
)
::
YFORM
...
@@ -257,7 +257,7 @@ CONTAINS
...
@@ -257,7 +257,7 @@ CONTAINS
RETURN
RETURN
END
IF
END
IF
#if defined(MNH_SX5) || defined(MNH_SP4) ||
defined(NAGf95) ||
defined(MNH_LINUX)
#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX)
!JUAN
!JUAN
IF
(
PRESENT
(
STATUS
))
THEN
IF
(
PRESENT
(
STATUS
))
THEN
YSTATUS
=
STATUS
YSTATUS
=
STATUS
...
@@ -355,7 +355,7 @@ CONTAINS
...
@@ -355,7 +355,7 @@ CONTAINS
PAD
=
PAD
)
PAD
=
PAD
)
#else
#else
#if defined(MNH_SX5) || defined(MNH_SP4) ||
defined(NAGf95) ||
defined(MNH_LINUX)
#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX)
!JUAN : 31/03/2000 modif pour acces direct
!JUAN : 31/03/2000 modif pour acces direct
IF
(
YACCESS
==
'STREAM'
)
THEN
IF
(
YACCESS
==
'STREAM'
)
THEN
OPEN
(
NEWUNIT
=
TPFILE
%
NLU
,
&
OPEN
(
NEWUNIT
=
TPFILE
%
NLU
,
&
...
@@ -482,7 +482,7 @@ CONTAINS
...
@@ -482,7 +482,7 @@ CONTAINS
PAD
=
PAD
)
PAD
=
PAD
)
#else
#else
#if defined(MNH_SX5) || defined(MNH_SP4) ||
defined(NAGf95) ||
defined(MNH_LINUX)
#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX)
IF
(
ACCESS
==
'DIRECT'
)
THEN
IF
(
ACCESS
==
'DIRECT'
)
THEN
OPEN
(
NEWUNIT
=
TPFILE
%
NLU
,
&
OPEN
(
NEWUNIT
=
TPFILE
%
NLU
,
&
FILE
=
TRIM
(
YPREFILENAME
)//
SUFFIX
(
".P"
),
&
FILE
=
TRIM
(
YPREFILENAME
)//
SUFFIX
(
".P"
),
&
...
...
This diff is collapsed.
Click to expand it.
src/Makefile
+
4
−
2
View file @
524481b1
...
@@ -326,7 +326,9 @@ A64=A64
...
@@ -326,7 +326,9 @@ A64=A64
endif
endif
gribapi
:
$(GRIBAPI_INC)
gribapi
:
$(GRIBAPI_INC)
$(GRIBAPI_INC)
:
$(GRIBAPI_INC)
:
cd
${
DIR_GRIBAPI
}
&&
./configure
--disable-shared
--disable-jpeg
--prefix
=
${
GRIBAPI_PATH
}
CC
=
"
$(
CC
)
"
FC
=
"
$(
FC
)
"
${
GRIBAPI_CONF
}
&&
$(
MAKE
)
-j
1 clean
&&
$(
MAKE
)
-j
1
&&
$(
MAKE
)
-j
1
install
&&
$(
MAKE
)
-j
1 clean
cd
${
DIR_GRIBAPI
}
&&
./configure
--disable-shared
--disable-jpeg
--prefix
=
${
GRIBAPI_PATH
}
CC
=
"
$(
CC
)
"
\
FC
=
"
$(
FC
)
"
FCFLAGS
=
"
$(
GRIB_FLAGS
)
"
${
GRIBAPI_CONF
}
&&
$(
MAKE
)
-j
1 clean
&&
\
$(
MAKE
)
-j
1
&&
$(
MAKE
)
-j
1
install
&&
$(
MAKE
)
-j
1 clean
gribapi_clean
:
gribapi_clean
:
-
[
-d
${
GRIBAPI_PATH
}
]
&&
rm
-fr
${
GRIBAPI_PATH
}
-
[
-d
${
GRIBAPI_PATH
}
]
&&
rm
-fr
${
GRIBAPI_PATH
}
...
@@ -351,7 +353,7 @@ $(CDF_MOD) :
...
@@ -351,7 +353,7 @@ $(CDF_MOD) :
CC
=
"
$(
CC
)
"
CFLAGS
=
"
$(
NETCDF_OPT
)
"
CPPFLAGS
=
"
${
INC_NETCDF
}
"
${
CDF_CONF
}
LDFLAGS
=
"-L
${
CDF_PATH
}
/lib64"
LIBS
=
"-lhdf5_hl -lhdf5 -lsz -laec -lz"
&&
\
CC
=
"
$(
CC
)
"
CFLAGS
=
"
$(
NETCDF_OPT
)
"
CPPFLAGS
=
"
${
INC_NETCDF
}
"
${
CDF_CONF
}
LDFLAGS
=
"-L
${
CDF_PATH
}
/lib64"
LIBS
=
"-lhdf5_hl -lhdf5 -lsz -laec -lz"
&&
\
$(
MAKE
)
&&
$(
MAKE
)
install
&&
$(
MAKE
)
clean
$(
MAKE
)
&&
$(
MAKE
)
install
&&
$(
MAKE
)
clean
cd
${
DIR_CDFF
}
&&
./configure
--disable-shared
--prefix
=
${
CDF_PATH
}
--libdir
=
${
CDF_PATH
}
/lib64
\
cd
${
DIR_CDFF
}
&&
./configure
--disable-shared
--prefix
=
${
CDF_PATH
}
--libdir
=
${
CDF_PATH
}
/lib64
\
CC
=
"
$(
CC
)
"
CFLAGS
=
"
$(
NETCDF_OPT
)
"
FC
=
"
$(
FC
)
"
FCFLAGS
=
"
$(
NETCDF_OPT
)
"
FFLAGS
=
"
$(
NETCDF_OPT
)
"
\
CC
=
"
$(
CC
)
"
CFLAGS
=
"
$(
NETCDF_OPT
)
"
FC
=
"
$(
FC
)
"
FCFLAGS
=
"
$(
NETCDF_OPT
)
$(
NETCDF_SUPPFLAGS
)
"
FFLAGS
=
"
$(
NETCDF_OPT
)
"
\
CPPFLAGS
=
"
${
INC_NETCDF
}
"
${
CDF_CONF
}
LDFLAGS
=
"-L
${
CDF_PATH
}
/lib64"
LIBS
=
"-lnetcdf -lhdf5_hl -lhdf5 -lsz -laec -lz"
&&
\
CPPFLAGS
=
"
${
INC_NETCDF
}
"
${
CDF_CONF
}
LDFLAGS
=
"-L
${
CDF_PATH
}
/lib64"
LIBS
=
"-lnetcdf -lhdf5_hl -lhdf5 -lsz -laec -lz"
&&
\
$(
MAKE
)
&&
$(
MAKE
)
install
&&
$(
MAKE
)
clean
$(
MAKE
)
&&
$(
MAKE
)
install
&&
$(
MAKE
)
clean
...
...
This diff is collapsed.
Click to expand it.
src/Rules.LXNAGf
95
.mk
→
src/Rules.LXNAGf
or
.mk
+
63
−
42
View file @
524481b1
#MNH_LIC Copyright 1994-201
4
CNRS, Meteo-France and Universite Paul Sabatier
#MNH_LIC Copyright 1994-201
9
CNRS, Meteo-France and Universite Paul Sabatier
#MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
#MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
#MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
#MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
#MNH_LIC for details. version 1.
#MNH_LIC for details. version 1.
##########################################################
##########################################################
# #
# #
# Compiler Options #
# Compiler Options #
# #
# #
##########################################################
##########################################################
#OBJDIR_PATH=/home/escj/azertyuiopqsdfghjklm/wxcvbn/azertyuiopqsdfghjklmwxcvbn
#
#
OPT_BASE
=
-r8
-mdir
$(
OBJDIR
)
-g
-gline
-kind
=
byte
-
w
-maxcontin
=
200
-PIC
OPT_BASE
=
-g
-gline
-kind
=
byte
-
PIC
-wmismatch
=
$(
LIST_MISMATCH
)
OPT_PERF0
=
-O0
OPT_PERF0
=
-O0
OPT_PERF2
=
-O2
OPT_PERF2
=
-O2
OPT_CHECK
=
-C
-nan
OPT_CHECK
=
-C
-nan
OPT_I8
=
-i8
OPT_R8
=
-r8
#
# Real/Integer 4/8 option
#
MNH_REAL
?=
8
MNH_INT
?=
4
LFI_RECL
?=
512
#
#
ifneq
"$(MNH_REAL)" "4"
OPT_BASE
+=
$(
OPT_R8
)
CPPFLAGS_SURCOUCHE
+=
-DMNH_MPI_DOUBLE_PRECISION
endif
#
OPT_BASE_I4
:=
$(
OPT_BASE
)
ifeq
"$(MNH_INT)" "8"
OPT_BASE
+=
$(
OPT_I8
)
LFI_INT
?=
8
MNH_MPI_RANK_KIND
?=
8
else
MNH_MPI_RANK_KIND
?=
4
LFI_INT
?=
4
endif
#
#
#
OPT
=
$(
OPT_BASE
)
$(
OPT_PERF2
)
OPT
=
$(
OPT_BASE
)
$(
OPT_PERF2
)
OPT0
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
OPT0
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
...
@@ -22,37 +46,50 @@ ifeq "$(OPTLEVEL)" "DEBUG"
...
@@ -22,37 +46,50 @@ ifeq "$(OPTLEVEL)" "DEBUG"
OPT
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
$(
OPT_CHECK
)
OPT
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
$(
OPT_CHECK
)
OPT0
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
$(
OPT_CHECK
)
OPT0
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
$(
OPT_CHECK
)
OPT_NOCB
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
OPT_NOCB
=
$(
OPT_BASE
)
$(
OPT_PERF0
)
CFLAGS
+=
-g
-O0
endif
#
#
CC
=
gcc
FC
=
nagfor
ifeq
"$(VER_MPI)" "MPIAUTO"
F90
=
mpifort
CPPFLAGS_SURCOUCHE
+=
-DMNH_USE_MPI_STATUSES_IGNORE
else
F90
=
nagfor
endif
endif
#
#
#
F90
=
f95
F90FLAGS
=
$(
OPT
)
F90FLAGS
=
$(
OPT
)
F77
=
$(
F90
)
F77
=
$(
F90
)
#F77FLAGS = $(OPT) -132 -fixed
F77FLAGS
=
$(
OPT
)
-dusty
F77FLAGS
=
$(
OPT
)
-fixed
FX90
=
$(
F90
)
FX90
=
$(
F90
)
#FX90FLAGS = $(OPT) -132 -fixed
FX90FLAGS
=
$(
OPT
)
-fixed
FX90FLAGS
=
$(
OPT
)
-fixed
#
#
LDFLAGS
=
-Wl
,-Xlinker,-noinhibit-exec
-Wl
,-Xlinker,-warn-once
#
LDFLAGS = -Wl,-Xlinker,-noinhibit-exec -Wl,-Xlinker,-warn-once
#
#
# preprocessing flags
# preprocessing flags
#
#
CPP
=
cpp
-P
-traditional
-Wcomment
CPP
=
cpp
-P
-traditional
-Wcomment
#
#
CPPFLAGS_SURFEX
=
CPPFLAGS_SURFEX
=
CPPFLAGS_SURCOUCHE
=
-DMNH_
MPI_DOUBLE_PRECISION
-DMNH_LINUX
-DMNH_MPI_BSEND
-DNAGf95
CPPFLAGS_SURCOUCHE
+
=
-DMNH_
LINUX
-DDEV_NULL
-DMNH_MPI_RANK_KIND
=
$(
MNH_MPI_RANK_KIND
)
CPPFLAGS_RAD
=
CPPFLAGS_RAD
=
CPPFLAGS_NEWLFI
=
-DSWAPIO
-DLINUX
CPPFLAGS_NEWLFI
=
-DSWAPIO
-DLINUX
-DLFI_INT
=
${
LFI_INT
}
-DLFI_RECL
=
${
LFI_RECL
}
CPPFLAGS_MNH
=
-DMNH
-DSFX_MNH
CPPFLAGS_MNH
=
-DMNH
-DSFX_MNH
#
#
# Gribex flags
# Gribex flags
#
#
TARGET_GRIBEX
=
linux
TARGET_GRIBEX
=
linux
CNAME_GRIBEX
=
f95
CNAME_GRIBEX
=
_nagfor
GRIB_FLAGS
=
-dusty
-kind
=
byte
#
#
# LIBTOOLS flags
# Netcdf/HDF5 flags
#
HDF_CONF
=
CFLAGS
=
-std
=
c99
NETCDF_SUPPFLAGS
=
-dusty
-kind
=
byte
#
## LIBTOOLS flags
#
#
#if MNH_TOOLS exists => compile the tools
#if MNH_TOOLS exists => compile the tools
MNH_TOOLS
=
yes
MNH_TOOLS
=
yes
...
@@ -62,7 +99,6 @@ MNH_TOOLS = yes
...
@@ -62,7 +99,6 @@ MNH_TOOLS = yes
# Source of MESONH PACKAGE Distribution #
# Source of MESONH PACKAGE Distribution #
# #
# #
##########################################################
##########################################################
#DIR_SURFEX += ARCH_SRC/surfex
#
#
include
Makefile.MESONH.mk
include
Makefile.MESONH.mk
#
#
...
@@ -74,31 +110,16 @@ include Makefile.MESONH.mk
...
@@ -74,31 +110,16 @@ include Makefile.MESONH.mk
# etc ... #
# etc ... #
# #
# #
##########################################################
##########################################################
#
# Where to find precompiled system module for "NAGf95"
# like "f90_unix.mod" , etc ...
#MODULE_SYSTEM = /opt/F95_42/lib/bytes
MODULE_SYSTEM
=
/usr/local/lib/NAGWare/bytes
all
:
$(MODULE_SYSTEM)
$(MODULE_SYSTEM)
:
@
test
-d
$@
||
\
(
echo
ATTENTION :: Rules.LXNAGF95
;
\
echo
MODULE_SYSTEM
=
$@
n existe pas
;
exit
1
)
VPATH
+=
$(
MODULE_SYSTEM
)
INC
+=
-I
$(
MODULE_SYSTEM
)
#
ifneq
"$(findstring 8,$(LFI_INT))" ""
# non conformance des argument/routine dans les appels MPI
OBJS_I8
=
spll_NEWLFI_ALL.o
#
$(OBJS_I8)
:
OPT = $(OPT_BASE) $(OPT_PERF2) $(OPT_I8)
OBJS1
=
spll_mode_exchange2_ll.o spll_mode_exchange_ll.o spll_mode_fm.o
\
endif
spll_mode_fmread.o spll_mode_fmwrit.o spll_mode_gather_ll.o
\
spll_mode_init_ll.o spll_mode_io_ll.o spll_mode_scatter_ll.o
\
ifeq
"$(MNH_INT)" "8"
spll_mode_sum2_ll.o spll_mode_sum_ll.o spll_mode_tools_ll.o
\
OBJS_I4
=
spll_modd_netcdf.o
spll_zdiffusetup.o spll_lapack.o spll_fm_writ_ll.o
\
$(OBJS_I4)
:
OPT = $(OPT_BASE_I4)
spll_NEWLFI_ALL.o spll_fm_read_ll.o
\
endif
mode_tools_ll.mod mode_gather_ll.mod
\
#
mode_fmwrit.mod mode_scatter_ll.mod
\
LIST_MISMATCH
=
MPI_Allgatherv,MPI_Allreduce,MPI_Bcast,MPI_Bsend,MPI_Gather,MPI_Gatherv,MPI_Recv,LEPOLY
mode_fmread.mod mode_sum_ll.mod
\
mode_exchange_ll.mod
#
$(OBJS1)
:
OPT = $(OPT_BASE) $(OPT_PERF0) -dusty
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment