created IPHREEQC_ENABLE_MODULE option

git-svn-id: svn://136.177.114.72/svn_GW/IPhreeqc/trunk@9638 1feff8c3-07ed-0310-ac33-dd36852eb9cd
This commit is contained in:
Scott R Charlton 2015-05-12 04:48:46 +00:00
parent c6e2d523b6
commit eabcb897b1
2 changed files with 40 additions and 18 deletions

View File

@ -21,6 +21,7 @@ include(GNUInstallDirs)
# Fortran
option (IPHREEQC_ENABLE_MODULE "Enable Fortran module" ON)
if (STANDALONE_BUILD EQUAL 1)
if (NOT IPHREEQC_FORTRAN_TESTING)
if (NOT CMAKE_Fortran_COMPILER OR CMAKE_Fortran_COMPILER STREQUAL "CMAKE_Fortran_COMPILER-NOTFOUND")
@ -201,20 +202,23 @@ src/phreeqcpp/Utils.h
# compile Var.c as c++
SET_SOURCE_FILES_PROPERTIES(src/Var.c PROPERTIES LANGUAGE CXX)
# always include fwrap files
SET(IPhreeqc_SOURCES
${IPhreeqc_SOURCES}
src/fimpl.h
src/fwrap.cpp
src/fwrap1.cpp
src/fwrap2.cpp
src/fwrap3.cpp
src/fwrap4.cpp
src/fwrap5.cpp
src/fwrap6.cpp
src/fwrap7.cpp
src/fwrap8.cpp
)
# fwrap files
if (NOT IPHREEQC_ENABLE_MODULE)
add_definitions(-DIPHREEQC_NO_FORTRAN_MODULE)
SET(IPhreeqc_SOURCES
${IPhreeqc_SOURCES}
src/fimpl.h
src/fwrap.cpp
src/fwrap1.cpp
src/fwrap2.cpp
src/fwrap3.cpp
src/fwrap4.cpp
src/fwrap5.cpp
src/fwrap6.cpp
src/fwrap7.cpp
src/fwrap8.cpp
)
endif()
# setup include directories
include_directories("${PROJECT_SOURCE_DIR}")
@ -240,14 +244,20 @@ add_library(IPhreeqc ${LIB_TYPE} ${IPhreeqc_SOURCES})
set_target_properties(IPhreeqc PROPERTIES DEBUG_POSTFIX "d")
SET(IPhreeqc_Headers
${PROJECT_SOURCE_DIR}/src/IPhreeqc.f.inc
${PROJECT_SOURCE_DIR}/src/IPhreeqc.f90.inc
${PROJECT_SOURCE_DIR}/src/IPhreeqc.h
${PROJECT_SOURCE_DIR}/src/IPhreeqc.hpp
${PROJECT_SOURCE_DIR}/src/IPhreeqcCallbacks.h
${PROJECT_SOURCE_DIR}/src/Var.h
)
if (NOT IPHREEQC_ENABLE_MODULE)
SET(IPhreeqc_Headers
${IPhreeqc_Headers}
${PROJECT_SOURCE_DIR}/src/IPhreeqc.f.inc
${PROJECT_SOURCE_DIR}/src/IPhreeqc.f90.inc
)
endif()
# Setup references for /CLR
if (MSVC AND BUILD_SHARED_LIBS AND BUILD_CLR_LIBS)

View File

@ -85,11 +85,23 @@ if (IPHREEQC_FORTRAN_TESTING)
# source
SET(test_f90_SOURCES
../src/IPhreeqc_interface.F90
main.f90
test_f90.f90
test_f90.F90
)
if (IPHREEQC_ENABLE_MODULE)
SET(test_f90_SOURCES
${test_f90_SOURCES}
../src/IPhreeqc_interface.F90
)
endif()
# place [*.F[90]] files into "Source Files"
source_group("Source Files" FILES "test_f90.F90")
if (IPHREEQC_ENABLE_MODULE)
source_group("Source Files" FILES "../src/IPhreeqc_interface.F90")
endif()
# test executable
add_executable(test_f90 ${test_f90_SOURCES})