diff --git a/src/Rules.LXgfortran.mk b/src/Rules.LXgfortran.mk
index fdb1257865b00cf7563e691d92c8014b8ffec455..4e3af2c943bc5b92690ee01c2820f32fb8630506 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 
 #