From 1bdeab403c577e60f1e383b0ff40a71c1713223e Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Thu, 31 Jan 2019 16:15:30 +0100 Subject: [PATCH] Philippe 31/01/2019: remove MNH_LINUX, MNH_SGI and MNH_VPP keys --- src/LIB/SURCOUCHE/src/mode_fm.f90 | 24 +------ src/LIB/SURCOUCHE/src/mode_io.f90 | 98 ---------------------------- src/LIB/SURCOUCHE/src/system_mnh.f90 | 10 +-- src/Makefile.MESONH.mk | 2 +- src/Rules.AIX64.mk | 2 +- src/Rules.BG.mk | 4 +- src/Rules.BGQ.mk | 4 +- src/Rules.LXNAGfor.mk | 2 +- src/Rules.LXarm.mk | 2 +- src/Rules.LXcray.mk | 2 +- src/Rules.LXg95.mk | 2 +- src/Rules.LXgfortran.mk | 2 +- src/Rules.LXifort.mk | 2 +- src/Rules.LXpathf95.mk | 2 +- src/Rules.LXpgi.mk | 2 +- 15 files changed, 20 insertions(+), 140 deletions(-) diff --git a/src/LIB/SURCOUCHE/src/mode_fm.f90 b/src/LIB/SURCOUCHE/src/mode_fm.f90 index 02265538c..aad356646 100644 --- a/src/LIB/SURCOUCHE/src/mode_fm.f90 +++ b/src/LIB/SURCOUCHE/src/mode_fm.f90 @@ -452,9 +452,7 @@ SUBROUTINE FMCLOS_ll(TPFILE,KRESP,OPARALLELIO,HPROGRAM_ORIG) USE MODD_CONF, ONLY : CPROGRAM USE MODD_IO_ll, ONLY : TFILEDATA USE MODE_IO_ll, ONLY : CLOSE_ll,UPCASE -#if !defined(MNH_SGI) USE MODI_SYSTEM_MNH -#endif use mode_io_file_lfi, only: io_close_file_lfi #if defined(MNH_IOCDF4) use mode_io_file_nc4, only: io_close_file_nc4 @@ -509,15 +507,13 @@ IF (TPFILE%LMASTER) THEN #endif IF (IRESP == 0 .AND. CPROGRAM/='LFICDF') THEN !! Write in pipe -#if defined(MNH_LINUX) || defined(MNH_SP4) - YTRANS='xtransfer.x' -#elif defined(MNH_SX5) +#if defined(MNH_SX5) YTRANS='nectransfer.x' #else - YTRANS='fujitransfer.x' + YTRANS='xtransfer.x' #endif IFITYP = TPFILE%NLFITYPE - + SELECT CASE (IFITYP) CASE(:-1) IRESP=-66 @@ -534,19 +530,10 @@ IF (TPFILE%LMASTER) THEN GOTO 500 END SELECT ! WRITE (YCOMMAND,*) YTRANS,' ',YCPIO,' ',YFILEM -#if defined(MNH_LINUX) || defined(MNH_VPP) || defined(MNH_SX5) || defined(MNH_SP4) ICPT=ICPT+1 WRITE (YCOMMAND,'(A," ",A," ",A," >> OUTPUT_TRANSFER",I3.3," 2>&1 &")') TRIM(YTRANS),TRIM(YCPIO),TRIM(YFILEM),ICPT -!JUAN jusqu'a MASDEV4_4 WRITE (YCOMMAND,'(A," ",A," ",A," ")') TRIM(YTRANS),TRIM(YCPIO),TRIM(YFILEM) -#endif -#if defined(MNH_SGI) - WRITE (YCOMMAND,'(A," ",A," ",A," &")') TRIM(YTRANS),TRIM(YCPIO),TRIM(YFILEM) -#endif - PRINT *,'YCOMMAND =',YCOMMAND -#if !defined(MNH_SGI) CALL SYSTEM_MNH(YCOMMAND) -#endif END IF END IF @@ -564,11 +551,6 @@ END IF IF (PRESENT(KRESP)) KRESP=IRESP -! format: 14c for fujitransfer.x and mesonh/nil -! 32c for file name -! if you have to change this format one day, don't forget the blank after 1H -! 20 FORMAT(A14,1H ,A10,1H ,A32,1H ,A1) -! END SUBROUTINE FMCLOS_ll END MODULE MODE_FM diff --git a/src/LIB/SURCOUCHE/src/mode_io.f90 b/src/LIB/SURCOUCHE/src/mode_io.f90 index 0434b5ea1..8c6f81e38 100644 --- a/src/LIB/SURCOUCHE/src/mode_io.f90 +++ b/src/LIB/SURCOUCHE/src/mode_io.f90 @@ -186,8 +186,6 @@ CONTAINS ! CHARACTER(len=5) :: CFILE INTEGER :: IFILE, IRANK_PROCIO - -#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX) CHARACTER(len=20) :: YSTATUS CHARACTER(len=20) :: YACCESS CHARACTER(len=20) :: YFORM @@ -197,8 +195,6 @@ CONTAINS CHARACTER(len=20) :: YPOSITION CHARACTER(len=20) :: YDELIM CHARACTER(len=20) :: YPAD - !JUAN -#endif CHARACTER(len=20) :: YACTION CHARACTER(len=20) :: YMODE CHARACTER(LEN=256) :: YIOERRMSG @@ -217,16 +213,6 @@ CONTAINS GPARALLELIO = .TRUE. ENDIF -#ifdef MNH_VPP - !! BUG Fuji avec RECL non fourni en argument de MYOPEN - INTEGER :: IRECSIZE - IF (PRESENT(RECL)) THEN - IRECSIZE = RECL - ELSE - IRECSIZE = 2147483647 ! Default value for FUJI RECL - END IF -#endif - IOS = 0 IF (PRESENT(COMM)) THEN ICOMM = COMM @@ -257,8 +243,6 @@ CONTAINS RETURN END IF -#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX) - !JUAN IF (PRESENT(STATUS)) THEN YSTATUS=STATUS ELSE @@ -299,7 +283,6 @@ CONTAINS ELSE YPAD='YES' ENDIF -#endif IF (ALLOCATED(TPFILE%CDIRNAME)) THEN IF(LEN_TRIM(TPFILE%CDIRNAME)>0) THEN @@ -339,23 +322,6 @@ CONTAINS IF (TPFILE%LMASTER) THEN !! I/O processor case -#ifdef MNH_VPP - OPEN(NEWUNIT=TPFILE%NLU, & - FILE=TRIM(YPREFILENAME),& - STATUS=STATUS, & - ACCESS=ACCESS, & - IOSTAT=IOS, & - IOMSG=YIOERRMSG, & - FORM=FORM, & - RECL=IRECSIZE, & - BLANK=BLANK, & - POSITION=POSITION, & - ACTION=YACTION, & - DELIM=DELIM, & - PAD=PAD) - -#else -#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX) !JUAN : 31/03/2000 modif pour acces direct IF (YACCESS=='STREAM') THEN OPEN(NEWUNIT=TPFILE%NLU, & @@ -421,37 +387,6 @@ CONTAINS ENDIF ENDIF - - !print*,' OPEN_ll' - !print*,' OPEN(NEWUNIT=',TPFILE%NLU - !print*,' FILE=',TRIM(YPREFILENAME) - !print*,' STATUS=',YSTATUS - !print*,' ACCESS=',YACCESS - !print*,' IOSTAT=',IOS - !print*,' FORM=',YFORM - !print*,' RECL=',YRECL - !print*,' BLANK=',YBLANK - !print*,' POSITION=',YPOSITION - !print*,' ACTION=',YACTION - !print*,' DELIM=',YDELIM - !print*,' PAD=',YPAD -#else - OPEN(NEWUNIT=TPFILE%NLU, & - FILE=TRIM(YPREFILENAME),& - STATUS=STATUS, & - ACCESS=ACCESS, & - IOSTAT=IOS, & - IOMSG=YIOERRMSG, & - FORM=FORM, & - RECL=RECL, & - BLANK=BLANK, & - POSITION=POSITION, & - ACTION=YACTION, & - DELIM=DELIM, & - PAD=PAD) -#endif - -#endif IF (IOS/=0) CALL PRINT_MSG(NVERB_FATAL,'IO','OPEN_ll','Problem when opening '//TRIM(YPREFILENAME)//': '//TRIM(YIOERRMSG)) ELSE !! NON I/O processors case @@ -466,23 +401,6 @@ CONTAINS TPFILE%LMULTIMASTERS = .TRUE. TPFILE%NSUBFILES_IOZ = 0 -#ifdef MNH_VPP - OPEN(NEWUNIT=TPFILE%NLU, & - FILE=TRIM(YPREFILENAME)//SUFFIX(".P"), & - STATUS=STATUS, & - ACCESS=ACCESS, & - IOSTAT=IOS, & - IOMSG=YIOERRMSG, & - FORM=FORM, & - RECL=IRECSIZE, & - BLANK=BLANK, & - POSITION=POSITION, & - ACTION=YACTION, & - DELIM=DELIM, & - PAD=PAD) - -#else -#if defined(MNH_SX5) || defined(MNH_SP4) || defined(MNH_LINUX) IF (ACCESS=='DIRECT') THEN OPEN(NEWUNIT=TPFILE%NLU, & FILE=TRIM(YPREFILENAME)//SUFFIX(".P"), & @@ -524,23 +442,7 @@ CONTAINS PAD=YPAD) ENDIF ENDIF -#else - OPEN(NEWUNIT=TPFILE%NLU, & - FILE=TRIM(YPREFILENAME)//SUFFIX(".P"), & - STATUS=STATUS, & - ACCESS=ACCESS, & - IOSTAT=IOS, & - IOMSG=YIOERRMSG, & - FORM=FORM, & - RECL=RECL, & - BLANK=BLANK, & - POSITION=POSITION, & - ACTION=YACTION, & - DELIM=DELIM, & - PAD=PAD) -#endif -#endif IF (IOS/=0) CALL PRINT_MSG(NVERB_FATAL,'IO','OPEN_ll','Problem when opening '//TRIM(YPREFILENAME)//': '//TRIM(YIOERRMSG)) diff --git a/src/LIB/SURCOUCHE/src/system_mnh.f90 b/src/LIB/SURCOUCHE/src/system_mnh.f90 index ef39625e4..ccdcc751d 100644 --- a/src/LIB/SURCOUCHE/src/system_mnh.f90 +++ b/src/LIB/SURCOUCHE/src/system_mnh.f90 @@ -26,14 +26,10 @@ SUBROUTINE SYSTEM_MNH(HCOMMAND) ! !* 0.2 Declaration of local variables ! ------------------------------ -#if defined(MNH_LINUX) || defined(MNH_SP4) - CHARACTER(LEN=*),PARAMETER :: CFILE="file_for_xtransfer" -#else -#if !defined(MNH_SX5) - CHARACTER(LEN=*),PARAMETER :: CFILE="file_for_fujitransfer" -#else +#ifdef MNH_SX5 CHARACTER(LEN=*),PARAMETER :: CFILE="file_for_nectransfer" -#endif +#else + CHARACTER(LEN=*),PARAMETER :: CFILE="file_for_xtransfer" #endif INTEGER :: IUNIT ! diff --git a/src/Makefile.MESONH.mk b/src/Makefile.MESONH.mk index bda290237..dec8ef951 100644 --- a/src/Makefile.MESONH.mk +++ b/src/Makefile.MESONH.mk @@ -106,7 +106,7 @@ endif # PRE_BUG TEST !!! # DIR_SURCOUCHE += LIB/SURCOUCHE/src -#CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_MPI_BSEND -DNAGf95 +#CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_MPI_BSEND -DNAGf95 # ifdef DIR_SURCOUCHE DIR_MASTER += $(DIR_SURCOUCHE) diff --git a/src/Rules.AIX64.mk b/src/Rules.AIX64.mk index b4de87fcf..c4ef4492e 100644 --- a/src/Rules.AIX64.mk +++ b/src/Rules.AIX64.mk @@ -84,7 +84,7 @@ endif CPP = /usr/lib/cpp -C -P -qlanglvl=classic # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -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 -DSFX_MNH diff --git a/src/Rules.BG.mk b/src/Rules.BG.mk index d3d34f3f6..27714a08a 100644 --- a/src/Rules.BG.mk +++ b/src/Rules.BG.mk @@ -94,8 +94,8 @@ CPP = cpp -P -traditional -Wcomment CC = mpixlc_r # CPPFLAGS_SURFEX = -#CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_ISEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) -CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_BSEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +#CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_SP4 -DMNH_MPI_ISEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -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 -DSFX_MNH diff --git a/src/Rules.BGQ.mk b/src/Rules.BGQ.mk index e1e735144..ae3daf277 100644 --- a/src/Rules.BGQ.mk +++ b/src/Rules.BGQ.mk @@ -143,8 +143,8 @@ CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -#CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_ISEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) -CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_SP4 -DMNH_MPI_BSEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) -DSNGL=REAL +#CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_SP4 -DMNH_MPI_ISEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_SP4 -DMNH_MPI_BSEND -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) -DSNGL=REAL CPPFLAGS_RAD = CPPFLAGS_NEWLFI = -DLINUX -DLFI_INT=${LFI_INT} -DLFI_RECL=${LFI_RECL} CPPFLAGS_MNH = -DAMAX1=MAX -DMNH -DSFX_MNH diff --git a/src/Rules.LXNAGfor.mk b/src/Rules.LXNAGfor.mk index d7a8adf96..9a4061046 100644 --- a/src/Rules.LXNAGfor.mk +++ b/src/Rules.LXNAGfor.mk @@ -72,7 +72,7 @@ FX90FLAGS = $(OPT) -fixed CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE += -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 -DSFX_MNH diff --git a/src/Rules.LXarm.mk b/src/Rules.LXarm.mk index 7622b6807..9e9599942 100644 --- a/src/Rules.LXarm.mk +++ b/src/Rules.LXarm.mk @@ -88,7 +88,7 @@ FX90FLAGS = $(OPT) CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE += -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 -DSFX_MNH diff --git a/src/Rules.LXcray.mk b/src/Rules.LXcray.mk index 1fbd6578c..5898140d2 100644 --- a/src/Rules.LXcray.mk +++ b/src/Rules.LXcray.mk @@ -84,7 +84,7 @@ LDFLAGS = -Wl,-warn-once $(PAR) $(OPT_BASE) CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -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 -DSFX_MNH diff --git a/src/Rules.LXg95.mk b/src/Rules.LXg95.mk index fa86c4daf..f326e14f5 100644 --- a/src/Rules.LXg95.mk +++ b/src/Rules.LXg95.mk @@ -66,7 +66,7 @@ CPP = cpp -P -traditional -Wcomment LFI_INT ?=4 LFI_RECL ?=512 CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_MPI_BSEND -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -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 -DSFX_MNH diff --git a/src/Rules.LXgfortran.mk b/src/Rules.LXgfortran.mk index 26ff8eee5..e182448b3 100644 --- a/src/Rules.LXgfortran.mk +++ b/src/Rules.LXgfortran.mk @@ -79,7 +79,7 @@ FX90FLAGS = $(OPT) CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE += -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 -DSFX_MNH diff --git a/src/Rules.LXifort.mk b/src/Rules.LXifort.mk index 48b9c5c99..8321534b0 100644 --- a/src/Rules.LXifort.mk +++ b/src/Rules.LXifort.mk @@ -176,7 +176,7 @@ LDFLAGS = -Wl,-warn-once $(PAR) -Wl,-rpath=$(LD_LIBRARY_PATH) $(OPT_BASE) CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DDEV_NULL -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE += -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 -DSFX_MNH diff --git a/src/Rules.LXpathf95.mk b/src/Rules.LXpathf95.mk index 014fcbaf4..79a8e1c75 100644 --- a/src/Rules.LXpathf95.mk +++ b/src/Rules.LXpathf95.mk @@ -42,7 +42,7 @@ LDFLAGS = -Wl,-noinhibit-exec -Wl,-warn-once CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_LINUX -DMNH_MPI_BSEND -DDEV_NULL +CPPFLAGS_SURCOUCHE = -DMNH_MPI_DOUBLE_PRECISION -DMNH_MPI_BSEND -DDEV_NULL CPPFLAGS_RAD = CPPFLAGS_NEWLFI = -DSWAPIO -DLINUX CPPFLAGS_MNH = -DAINT=INT -DAMOD=MOD -DMNH -DSFX_MNH diff --git a/src/Rules.LXpgi.mk b/src/Rules.LXpgi.mk index 9b53a87c3..4bb43023e 100644 --- a/src/Rules.LXpgi.mk +++ b/src/Rules.LXpgi.mk @@ -100,7 +100,7 @@ CPP = cpp -P -traditional -Wcomment # CPPFLAGS_SURFEX = -CPPFLAGS_SURCOUCHE += -DMNH_LINUX -DMNH_MPI_RANK_KIND=$(MNH_MPI_RANK_KIND) +CPPFLAGS_SURCOUCHE += -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 -DSFX_MNH -- GitLab