From 5ebe791125d5f5e6ac9cef413d6d3db11d5f1334 Mon Sep 17 00:00:00 2001
From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr>
Date: Thu, 21 Nov 2019 13:34:18 +0100
Subject: [PATCH] Philippe 21/11/2019: OpenACC: add compilation rules for
 gfortran

---
 src/Rules.LXgfortran.mk | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/src/Rules.LXgfortran.mk b/src/Rules.LXgfortran.mk
index fdb125786..4e3af2c94 100644
--- a/src/Rules.LXgfortran.mk
+++ b/src/Rules.LXgfortran.mk
@@ -20,6 +20,7 @@ OPT_PERF2 = -O2
 OPT_CHECK = -fbounds-check -finit-real=nan
 OPT_I8    = -fdefault-integer-8 
 OPT_R8    = -fdefault-real-8 -fdefault-double-8
+OPT_OPENACC = -fopenacc
 #
 #
 # Real/Integer 4/8 option
@@ -52,7 +53,17 @@ OPT_NOCB  = $(OPT_BASE) $(OPT_PERF0)
 CFLAGS    += -g -O0
 endif
 #
-#  
+ifeq "$(OPTLEVEL)" "OPENACC"
+CPPFLAGS    += -DMNH_OPENACC -fopenacc
+#OPT_BASE += -foffload=-lm
+OPT       = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF2)
+OPT0      = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF0)
+OPT_NOCB  = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF2)
+CXXFLAGS = $(OPT_OPENACC)
+#OBJS_REPROD= spll_mode_sum_ll.o
+#$(OBJS_REPROD) : OPT = $(OPT_BASE) $(OPT_OPENACC) $(OPT_PERF2) -Mvect=nosimd -Minfo=all -g
+endif
+#
 CC = gcc
 CXX = g++
 FC = gfortran 
@@ -70,6 +81,7 @@ FX90 = $(F90)
 FX90FLAGS     =  $(OPT) 
 #
 #LDFLAGS   =   -Wl,-warn-once
+LDFLAGS = $(OPT)
 #
 # preprocessing flags 
 #
-- 
GitLab