diff options
author | Allen Byrne <byrn@hdfgroup.org> | 2010-08-31 20:20:12 (GMT) |
---|---|---|
committer | Allen Byrne <byrn@hdfgroup.org> | 2010-08-31 20:20:12 (GMT) |
commit | c9cf76d5f9abff08e2488b79825551e99adecf42 (patch) | |
tree | 378c8c9f261dd362fe07aac3329eefab3122be72 /fortran/examples | |
parent | 0792a4dd4c5dc399ed4a99c799e999d9e944b5ba (diff) | |
download | hdf5-c9cf76d5f9abff08e2488b79825551e99adecf42.zip hdf5-c9cf76d5f9abff08e2488b79825551e99adecf42.tar.gz hdf5-c9cf76d5f9abff08e2488b79825551e99adecf42.tar.bz2 |
[svn-r19326] Added parallel build commands.
Corrected use/name of source folder aliases.
Duplicated FindMPI.cmake so that non-c++ compiler is found first (recommemded commands did not work).
Bring r19325 from trunk
Tested: local linux with mpich
Diffstat (limited to 'fortran/examples')
-rw-r--r-- | fortran/examples/CMakeLists.txt | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/fortran/examples/CMakeLists.txt b/fortran/examples/CMakeLists.txt index f8a453e..f1ed52f 100644 --- a/fortran/examples/CMakeLists.txt +++ b/fortran/examples/CMakeLists.txt @@ -1,14 +1,14 @@ cmake_minimum_required (VERSION 2.8) +PROJECT (HDF5_F90_EXAMPLES C CXX Fortran) # -------------------------------------------------------------------- # Notes: When creating examples they should be prefixed # with "f90_ex_". This allows for easier filtering of the examples. # -------------------------------------------------------------------- -PROJECT (HDF5_F90_EXAMPLES C CXX Fortran) #----------------------------------------------------------------------------- # Setup include Directories #----------------------------------------------------------------------------- -INCLUDE_DIRECTORIES (${CMAKE_Fortran_MODULE_DIRECTORY} ${HDF5_F90_BINARY_DIR} ${HDF5_F90_SOURCE_DIR}/src) +INCLUDE_DIRECTORIES (${CMAKE_Fortran_MODULE_DIRECTORY} ${HDF5_F90_BINARY_DIR} ${HDF5_F90_SRC_DIR}/src) LINK_DIRECTORIES ( ${CMAKE_Fortran_MODULE_DIRECTORY} ${HDF5_F90_BINARY_DIR} @@ -66,3 +66,35 @@ FOREACH (example ${examples}) ${HDF5_LIB_TARGET} ) ENDFOREACH (example ${examples}) + +IF (H5_HAVE_PARALLEL) + ADD_EXECUTABLE (f90_ex_ph5example ${HDF5_F90_EXAMPLES_SOURCE_DIR}/ph5example.f90) + H5_NAMING (f90_ex_ph5example) + IF (WIN32) + IF (BUILD_SHARED_LIBS) + IF (MSVC) + SET_TARGET_PROPERTIES (f90_ex_ph5example + PROPERTIES + COMPILE_FLAGS "/dll" + LINK_FLAGS "/SUBSYSTEM:CONSOLE" + ) + ENDIF (MSVC) + ELSE (BUILD_SHARED_LIBS) + IF (MSVC) + SET_TARGET_PROPERTIES (f90_ex_ph5example + PROPERTIES + LINK_FLAGS "/NODEFAULTLIB:MSVCRT" + ) + ENDIF (MSVC) + ENDIF (BUILD_SHARED_LIBS) + SET_PROPERTY (TARGET f90_ex_ph5example + APPEND PROPERTY COMPILE_DEFINITIONS + HDF5F90_WINDOWS + ) + SET_TARGET_PROPERTIES (f90_ex_ph5example PROPERTIES LINKER_LANGUAGE Fortran) + ENDIF (WIN32) + TARGET_LINK_LIBRARIES (f90_ex_ph5example + ${HDF5_F90_LIB_TARGET} + ${HDF5_LIB_TARGET} + ) +ENDIF (H5_HAVE_PARALLEL) |