From 98f1f668ce058e3314f67048560ecd2b354619dd Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Tue, 19 Nov 2019 16:02:43 -0700 Subject: [PATCH] modifications for macOS clang/gfortran build --- CMakeLists.txt | 2 +- sorc/cnvgrib.fd/CMakeLists.txt | 5 ++++- sorc/copygb.fd/CMakeLists.txt | 7 +++++-- sorc/copygb2.fd/CMakeLists.txt | 16 +++++++++++++--- sorc/copygb2.fd/copygb2.f | 14 +++++++++++--- sorc/degrib2.fd/CMakeLists.txt | 5 ++++- sorc/grb2index.fd/CMakeLists.txt | 7 +++++-- sorc/grb2index.fd/grb2index.f | 14 ++++++++++++++ sorc/grbindex.fd/CMakeLists.txt | 7 +++++-- sorc/grbindex.fd/grbindex.f | 14 ++++++++++++++ sorc/grib2grib.fd/CMakeLists.txt | 7 +++++-- sorc/grib2grib.fd/grib2grib.f | 6 ++++++ sorc/tocgrib.fd/CMakeLists.txt | 5 ++++- sorc/tocgrib2.fd/CMakeLists.txt | 5 ++++- sorc/tocgrib2.fd/tocgrib2.f | 6 +++--- sorc/tocgrib2super.fd/CMakeLists.txt | 7 +++++-- sorc/tocgrib2super.fd/tocgrib2super.f | 6 +++--- sorc/wgrib.cd/CMakeLists.txt | 5 ++++- 18 files changed, 110 insertions(+), 28 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2e805c2c..023702ed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,7 +10,7 @@ endif() if(CMAKE_CXX_COMPILER_ID STREQUAL "Intel") message("setting intel true") set(IntelComp true ) -elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU*") +elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU*" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang*") set(GNUComp true ) elseif(CMAKE_CXX_COMPILER_ID MATCHES "pgc*") set(PGIComp true ) diff --git a/sorc/cnvgrib.fd/CMakeLists.txt b/sorc/cnvgrib.fd/CMakeLists.txt index d66e11cc..a5754b58 100644 --- a/sorc/cnvgrib.fd/CMakeLists.txt +++ b/sorc/cnvgrib.fd/CMakeLists.txt @@ -6,8 +6,11 @@ if( (BUILD_RELEASE) OR (BUILD_PRODUCTION) ) if(IntelComp) message("setting intel flags") set(CMAKE_Fortran_8_FLAGS "-O3 -g " CACHE INTERNAL "" ) + elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_8_FLAGS "-O3 -g " CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() endif() diff --git a/sorc/copygb.fd/CMakeLists.txt b/sorc/copygb.fd/CMakeLists.txt index 7b4d88b9..2ce3768e 100644 --- a/sorc/copygb.fd/CMakeLists.txt +++ b/sorc/copygb.fd/CMakeLists.txt @@ -4,9 +4,12 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. #file(GLOB EXE_C_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.c) if(IntelComp) message("setting intel flags") - set(CMAKE_Fortran_8_FLAGS "-g -O3 -r8 -auto -qopenmp " CACHE INTERNAL "" ) + set(CMAKE_Fortran_8_FLAGS "-g -O3 -r8 -auto ${OpenMP_Fortran_FLAGS} " CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_8_FLAGS "-g -O3 -fdefault-real-8 ${OpenMP_Fortran_FLAGS} " CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/copygb2.fd/CMakeLists.txt b/sorc/copygb2.fd/CMakeLists.txt index 4ad815c0..12b585df 100644 --- a/sorc/copygb2.fd/CMakeLists.txt +++ b/sorc/copygb2.fd/CMakeLists.txt @@ -4,9 +4,12 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. #file(GLOB EXE_C_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.c) if(IntelComp) message("setting intel flags") - set(CMAKE_Fortran_8_FLAGS "-g -O3 -r8 -convert big_endian -auto ${OpenMP_Fortran_FLAGS} " CACHE INTERNAL "" ) + set(CMAKE_Fortran_8_FLAGS "-g -O3 -r8 -convert big_endian -auto -fpp ${OpenMP_Fortran_FLAGS} " CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_8_FLAGS "-g -O3 -fdefault-real-8 -fconvert=big-endian -cpp ${OpenMP_Fortran_FLAGS} " CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() @@ -20,7 +23,14 @@ include_directories( ${G2_INCd} ${SP_INCd} ${IP_INCd} ) set(CMAKE_INCLUDE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/include_8") set_target_properties(${EXENAME} PROPERTIES Fortran_MODULE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/include_8") target_include_directories(${EXENAME} PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/include_8") -target_link_libraries(${EXENAME} ${G2_LIBd} ${PNG_LIBRARIES} ${JASPER_LIBRARIES} ${BACIO_LIB4} ${W3NCO_LIBd} ${IP_LIBd} ${SP_LIBd} ${OpenMP_Fortran_FLAGS} ${LAPACK_LINKER_FLAGS} -static-intel) +if(IntelComp) + target_link_libraries(${EXENAME} ${G2_LIBd} ${PNG_LIBRARIES} ${JASPER_LIBRARIES} ${BACIO_LIB4} ${W3NCO_LIBd} ${IP_LIBd} ${SP_LIBd} ${OpenMP_Fortran_FLAGS} ${LAPACK_LINKER_FLAGS} -static-intel) +elseif(GNUComp) + target_link_libraries(${EXENAME} ${G2_LIBd} ${PNG_LIBRARIES} ${JASPER_LIBRARIES} ${BACIO_LIB4} ${W3NCO_LIBd} ${IP_LIBd} ${SP_LIBd} ${OpenMP_Fortran_FLAGS} ${LAPACK_LINKER_FLAGS} -static-libgfortran) +else() + message("unknown compiler!") + exit() +endif() file(MAKE_DIRECTORY ${CMAKE_INCLUDE_OUTPUT_DIRECTORY}) diff --git a/sorc/copygb2.fd/copygb2.f b/sorc/copygb2.fd/copygb2.f index 5a856179..f19c84cf 100755 --- a/sorc/copygb2.fd/copygb2.f +++ b/sorc/copygb2.fd/copygb2.f @@ -553,7 +553,11 @@ PROGRAM COPYGB2 CALL W3TAGE('COPYGB2 ') ENDIF C - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +#ifdef __GFORTRAN__ + CONTAINS +#else END +#endif C----------------------------------------------------------------------- SUBROUTINE EUSAGE C$$$ SUBPROGRAM DOCUMENTATION BLOCK @@ -942,6 +946,7 @@ SUBROUTINE CPGB1(LG1,LX1,M1, REAL,ALLOCATABLE,TARGET :: G1I(:) REAL,POINTER :: FBI(:),GBI(:) TYPE( GRIBFIELD ) :: GFLD1,GFLDV,GFLDM,GFLDMV + INTEGER ISDUMMY,IADUMMY(200) C - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C GET FIELD FROM FILE 1 JDISC=-1 @@ -1069,9 +1074,9 @@ SUBROUTINE CPGB1(LG1,LX1,M1, C INTERPOLATE MAP FIELD IF(IRET.EQ.0) THEN IBB=MOD(KPDSB(4)/64,2) - CALL INTGRIB2(0,IP,IPOPT,d,nopt,opt,KGDSB, - & KB,IBB,LR,FR,GR,d,KGDTI,MI, - & IBBI,LBI,FBI,GBI,IRET) + CALL INTGRIB2(0,IP,IPOPT,ISDUMMY,IADUMMY,SIZE(KGDSB),KGDSB, + & KB,IBB,LR,FR,GR,ISDUMMY,KGDTI,MI, + & IBBI,LBI,FBI,GBI,IRET) IF(LXX.GT.0) THEN IF(IRET.EQ.0) THEN PRINT *,' interpolated to grid template 3.',IGDTN @@ -1681,3 +1686,6 @@ FUNCTION NUMPTS(IGDTN,KGDT) END SELECT C - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - END +#ifdef __GFORTRAN__ + END PROGRAM +#endif \ No newline at end of file diff --git a/sorc/degrib2.fd/CMakeLists.txt b/sorc/degrib2.fd/CMakeLists.txt index 51234e36..791db1b8 100644 --- a/sorc/degrib2.fd/CMakeLists.txt +++ b/sorc/degrib2.fd/CMakeLists.txt @@ -5,8 +5,11 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. if(IntelComp) message("setting intel flags") set(CMAKE_Fortran_4_FLAGS " -g -O3 -convert big_endian -axCORE-AVX2" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_4_FLAGS " -g -O3 -fconvert=big-endian" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/grb2index.fd/CMakeLists.txt b/sorc/grb2index.fd/CMakeLists.txt index 109c317c..5b15cc7f 100644 --- a/sorc/grb2index.fd/CMakeLists.txt +++ b/sorc/grb2index.fd/CMakeLists.txt @@ -4,9 +4,12 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. #file(GLOB EXE_C_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.c) if(IntelComp) message("setting intel flags") - set(CMAKE_Fortran_4_FLAGS " -g -O3 -convert big_endian -axCORE-AVX2" CACHE INTERNAL "" ) + set(CMAKE_Fortran_4_FLAGS " -g -O3 -convert big_endian -axCORE-AVX2 -fpp" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_4_FLAGS " -g -O3 -fconvert=big-endian -cpp" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/grb2index.fd/grb2index.f b/sorc/grb2index.fd/grb2index.f index 332571a7..b797fc43 100755 --- a/sorc/grb2index.fd/grb2index.f +++ b/sorc/grb2index.fd/grb2index.f @@ -180,7 +180,12 @@ SUBROUTINE WRGI1H(LUGI,NLEN,NNUM,CGB) C C$$$ CHARACTER CGB*(*) +#ifdef __GFORTRAN__ + CHARACTER CD8*8,CT10*10,HOSTNAME*15 + INTEGER ISTAT +#else CHARACTER CD8*8,CT10*10,HOSTNAM*15 +#endif CHARACTER CHEAD(2)*81 C - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C FILL FIRST 81-BYTE HEADER @@ -197,7 +202,16 @@ SUBROUTINE WRGI1H(LUGI,NLEN,NNUM,CGB) CHEAD(1)(42:47)='GB2IX1' !CHEAD(1)(49:54)=CGB(NCGB2:NCGB1-2) CHEAD(1)(49:54)=' ' +#ifdef __GFORTRAN__ + ISTAT=HOSTNM(HOSTNAME) + IF(ISTAT.eq.0) THEN + CHEAD(1)(56:70)='0000' + ELSE + CHEAD(1)(56:70)='0001' + ENDIF +#else CHEAD(1)(56:70)=HOSTNAM(HOSTNAME) +#endif CHEAD(1)(72:80)='grb2index' CHEAD(1)(81:81)=CHAR(10) C - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/sorc/grbindex.fd/CMakeLists.txt b/sorc/grbindex.fd/CMakeLists.txt index 70afc348..0fe0504d 100644 --- a/sorc/grbindex.fd/CMakeLists.txt +++ b/sorc/grbindex.fd/CMakeLists.txt @@ -4,9 +4,12 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. #file(GLOB EXE_C_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.c) if(IntelComp) message("setting intel flags") - set(CMAKE_Fortran_4_FLAGS " -g -O3 -assume noold_ldout_format -convert big_endian -axCORE-AVX2" CACHE INTERNAL "" ) + set(CMAKE_Fortran_4_FLAGS " -g -O3 -assume noold_ldout_format -convert big_endian -axCORE-AVX2 -fpp" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_4_FLAGS " -g -O3 -fconvert=big-endian -cpp" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/grbindex.fd/grbindex.f b/sorc/grbindex.fd/grbindex.f index be81b665..4d7f4a28 100755 --- a/sorc/grbindex.fd/grbindex.f +++ b/sorc/grbindex.fd/grbindex.f @@ -172,7 +172,12 @@ SUBROUTINE WRGI1H(LUGI,NLEN,NNUM,CGB) C C$$$ CHARACTER CGB*(*) +#ifdef __GFORTRAN__ + CHARACTER CD8*8,CT10*10,HOSTNAME*15 + INTEGER ISTAT +#else CHARACTER CD8*8,CT10*10,HOSTNAM*15 +#endif CHARACTER CHEAD(2)*81 C - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C FILL FIRST 81-BYTE HEADER @@ -188,7 +193,16 @@ SUBROUTINE WRGI1H(LUGI,NLEN,NNUM,CGB) CHEAD(1)(33:40)=CT10(1:2)//':'//CT10(3:4)//':'//CT10(5:6) CHEAD(1)(42:47)='GB1IX1' CHEAD(1)(49:54)=CGB(NCGB2:NCGB1-2) +#ifdef __GFORTRAN__ + ISTAT=HOSTNM(HOSTNAME) + IF(ISTAT.eq.0) THEN + CHEAD(1)(56:70)='0000' + ELSE + CHEAD(1)(56:70)='0001' + ENDIF +#else CHEAD(1)(56:70)=HOSTNAM(hostname) +#endif C print*,' CHEAD(1)(56:70) = ', CHEAD(1)(56:70) CHEAD(1)(72:80)='grbindex ' CHEAD(1)(81:81)=CHAR(10) diff --git a/sorc/grib2grib.fd/CMakeLists.txt b/sorc/grib2grib.fd/CMakeLists.txt index 0ddf9d31..f64e7d4a 100644 --- a/sorc/grib2grib.fd/CMakeLists.txt +++ b/sorc/grib2grib.fd/CMakeLists.txt @@ -4,9 +4,12 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. #file(GLOB EXE_C_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.c) if(IntelComp) message("setting intel flags") - set(CMAKE_Fortran_8_FLAGS " -g -O3 -r8 -i8 -assume noold_ldout_format -axCORE-AVX2 " CACHE INTERNAL "" ) + set(CMAKE_Fortran_8_FLAGS " -g -O3 -r8 -i8 -assume noold_ldout_format -axCORE-AVX2 -fpp" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_8_FLAGS " -g -O3 -fdefault-real-8 -fdefault-integer-8 -cpp" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/grib2grib.fd/grib2grib.f b/sorc/grib2grib.fd/grib2grib.f index 301a9868..6a46e4e6 100755 --- a/sorc/grib2grib.fd/grib2grib.f +++ b/sorc/grib2grib.fd/grib2grib.f @@ -114,7 +114,9 @@ PROGRAM GRIB2GRIB C C$$$ C +#ifdef __INTEL__ USE IFPORT +#endif PARAMETER (MXSIZE=300000) PARAMETER (MSIZE=MXSIZE*3) PARAMETER (IBUFSIZE=35000000) @@ -134,7 +136,11 @@ PROGRAM GRIB2GRIB INTEGER RCBYTE(900) INTEGER ISTART(900) INTEGER IUNPK(900) +#ifdef __GFORTRAN__ + INTEGER*8 JSTAT(13) +#else INTEGER*4 JSTAT(12) +#endif INTEGER TYPEGRID C LOGICAL IW3PDS diff --git a/sorc/tocgrib.fd/CMakeLists.txt b/sorc/tocgrib.fd/CMakeLists.txt index 40812096..446b9692 100644 --- a/sorc/tocgrib.fd/CMakeLists.txt +++ b/sorc/tocgrib.fd/CMakeLists.txt @@ -5,8 +5,11 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. if(IntelComp) message("setting intel flags") set(CMAKE_Fortran_4_FLAGS " -g -O2 -assume noold_ldout_format -axCORE-AVX2" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_4_FLAGS " -g -O2" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/tocgrib2.fd/CMakeLists.txt b/sorc/tocgrib2.fd/CMakeLists.txt index de3bf8af..70d2de15 100644 --- a/sorc/tocgrib2.fd/CMakeLists.txt +++ b/sorc/tocgrib2.fd/CMakeLists.txt @@ -5,8 +5,11 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. if(IntelComp) message("setting intel flags") set(CMAKE_Fortran_4_FLAGS " -g -O3 -axCORE-AVX2" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_4_FLAGS " -g -O3" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/tocgrib2.fd/tocgrib2.f b/sorc/tocgrib2.fd/tocgrib2.f index 96d7ede7..c0b36bac 100755 --- a/sorc/tocgrib2.fd/tocgrib2.f +++ b/sorc/tocgrib2.fd/tocgrib2.f @@ -168,14 +168,14 @@ END SUBROUTINE GETGB2P write(6,'(11A)') ' WMOHEAD=',WMOHEAD(1:11) write(6,'(A,I0)') ' GRIB2 DISCIPLINE= ',DSCPL write(6,'(A,20(1x,I0))')' Section 1=', - & (IDS(J),j=1,13) + & (IDS(j2),j2=1,13) if ( GDTN .ne. -1 ) then write(6,'(A,I0,A,100(1x,I0))') ' GDT 3. ',GDTN,' =', - & (GDT(j),j=1,getgdtlen(GDTN)) + & (GDT(j2),j2=1,getgdtlen(GDTN)) endif if ( PDTN .ne. -1 ) then write(6,'(A,I0,A,100(1x,I0))') ' PDT 4. ',PDTN,' =', - & (PDT(j),j=1,getpdtlen(PDTN)) + & (PDT(j2),j2=1,getpdtlen(PDTN)) endif C C Read and return packed GRIB field diff --git a/sorc/tocgrib2super.fd/CMakeLists.txt b/sorc/tocgrib2super.fd/CMakeLists.txt index cde9b07e..68dea948 100644 --- a/sorc/tocgrib2super.fd/CMakeLists.txt +++ b/sorc/tocgrib2super.fd/CMakeLists.txt @@ -4,9 +4,12 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.f ${CMAKE_CURRENT_SOURCE_DIR}/*. #file(GLOB EXE_C_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.c) if(IntelComp) message("setting intel flags") - set(CMAKE_Fortran_4_FLAGS " -g -O2 -assume noold_ldout_format -axCORE-AVX2" CACHE INTERNAL "" ) + set(CMAKE_Fortran_4_FLAGS " -g -O2 -assume noold_ldout_format -axCORE-AVX2" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_Fortran_4_FLAGS " -g -O2" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif() diff --git a/sorc/tocgrib2super.fd/tocgrib2super.f b/sorc/tocgrib2super.fd/tocgrib2super.f index de88dacc..6dbbb4b8 100755 --- a/sorc/tocgrib2super.fd/tocgrib2super.f +++ b/sorc/tocgrib2super.fd/tocgrib2super.f @@ -232,14 +232,14 @@ END SUBROUTINE GETGB2P write(6,'(11A)') ' WMOHEAD=',WMOHEAD(1:11) write(6,'(A,I0)') ' GRIB2 DISCIPLINE= ',DSCPL write(6,'(A,20(1x,I0))')' Section 1=', - & (IDS(J),j=1,13) + & (IDS(j2),j2=1,13) if ( GDTN .ne. -1 ) then write(6,'(A,I0,A,100(1x,I0))') ' GDT 3. ',GDTN,' =', - & (GDT(j),j=1,getgdtlen(GDTN)) + & (GDT(j2),j2=1,getgdtlen(GDTN)) endif if ( PDTN .ne. -1 ) then write(6,'(A,I0,A,100(1x,I0))') ' PDT 4. ',PDTN,' =', - & (PDT(j),j=1,getpdtlen(PDTN)) + & (PDT(j2),j2=1,getpdtlen(PDTN)) endif C C Read and return packed GRIB field diff --git a/sorc/wgrib.cd/CMakeLists.txt b/sorc/wgrib.cd/CMakeLists.txt index 70087137..c0f56f19 100644 --- a/sorc/wgrib.cd/CMakeLists.txt +++ b/sorc/wgrib.cd/CMakeLists.txt @@ -4,8 +4,11 @@ file(GLOB EXE_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.c) if(IntelComp) message("setting intel flags") set(CMAKE_C_FLAGS "-O3 -m64 -DDEF_T62_NCEP_TABLE=opn -DFAST_GRIBTAB -DP_TABLE_FIRST" CACHE INTERNAL "" ) +elseif(GNUComp) + message("setting gnu flags") + set(CMAKE_C_FLAGS "-O3 -m64 -DDEF_T62_NCEP_TABLE=opn -DFAST_GRIBTAB -DP_TABLE_FIRST" CACHE INTERNAL "" ) else() - message("unkown compiler!") + message("unknown compiler!") exit() endif()