Commit b6c2b375 authored by Andy Cedilnik's avatar Andy Cedilnik
Browse files

Create Xdmf branch for ParaView

A new ParaView CVS repository was created on 2004-03-12 to re-organize
the source tree layout.  The repository used server-side symbolic
links under Utilities/Xdmf within ParaView:

  Utilities/Xdmf/vtk    -> .../Xdmf/vtk
  Utilities/Xdmf/CMake  -> .../Xdmf/CMake
  Utilities/Xdmf/libsrc -> .../Xdmf/libsrc

to share the directories with the Xdmf repository.  The repository
also made a copy of some files

  Utilities/Xdmf/Ice/*  <= .../Xdmf/Ice/libsrc/*

The approach essentially created a fork of Xdmf with only a subset of
its tree.  This commit was manufactured during conversion from CVS to
represent the fork as a branch.
parent ca3fe699
CMAKE_MINIMUM_REQUIRED(VERSION 1.6)
PROJECT(Xdmf)
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${Xdmf_SOURCE_DIR}/CMake)
OPTION(BUILD_SHARED_LIBS "Build Shared XDMF Library" ON)
# We need ansi c-flags, especially on HP
SET(CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS}")
SET(CMAKE_REQUIRED_FLAGS ${CMAKE_ANSI_CFLAGS})
INCLUDE_DIRECTORIES(${Xdmf_SOURCE_DIR}/Ice/libsrc)
INCLUDE_DIRECTORIES(${Xdmf_SOURCE_DIR}/libsrc
${Xdmf_BINARY_DIR}/libsrc
${Xdmf_BINARY_DIR}/Ice/libsrc)
SET (LIBRARY_OUTPUT_PATH ${Xdmf_BINARY_DIR}/bin/ CACHE PATH "Single output directory for building all libraries.")
SET (EXECUTABLE_OUTPUT_PATH ${Xdmf_BINARY_DIR}/bin/ CACHE PATH "Single output directory for building all executables.")
INCLUDE (${CMAKE_ROOT}/Modules/CheckLibraryExists.cmake)
INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)
# Build IceConfig.h
MESSAGE(STATUS "Configure IceConfig.h")
SUBDIRS(Ice/libsrc)
SET(CMAKE_MODULE_PATH ${Xdmf_SOURCE_DIR}/CMake)
OPTION(XDMF_HAS_NDGM "XDMF has Network Distributed Global Memory (NDGM)" OFF)
MARK_AS_ADVANCED(XDMF_HAS_NDGM)
IF(XDMF_HAS_NDGM)
OPTION(XDMF_HAS_NDGM_SOURCE "XDMF has Network Distributed Global Memory (NDGM) Source" OFF)
IF(XDMF_HAS_NDGM_SOURCE)
FIND_PATH(NDGM_DIR BuildNDGM.cmake ${Xdmf_SOURCE_DIR}/../Ndgm "Root of Source for NDGM")
IF(NDGM_DIR)
MESSAGE(STATUS "......Process NDGM Source")
# INCLUDE(${NDGM_DIR}/BuildNDGM.cmake)
SUBDIRS(NDGM)
INCLUDE_DIRECTORIES(${NDGM_DIR}/libsrc)
SET(NDGM_LIBRARY ndgm)
ENDIF(NDGM_DIR)
ELSE(XDMF_HAS_NDGM_SOURCE)
MESSAGE(STATUS "......Looking for NDGM_INCLUDE_DIR")
FIND_PATH(NDGM_INCLUDE_DIR Ndgm ${Xdmf_SOURCE_DIR}/../Ndgm/libsrc "Include Directory for NDGM; Resolves #include <Ndgm/ndgm.h>")
MESSAGE(STATUS "......Looking for NDGM_LIBRARY")
FIND_LIBRARY(NDGM_LIBRARY ndgm ${LIBRARY_OUTPUT_PATH})
INCLUDE_DIRECTORIES(${NDGM_INCLUDE_DIR})
SET(NDGM_LIBRARY ${NDGM_LIBRARY})
ENDIF(XDMF_HAS_NDGM_SOURCE)
SET(HAVE_NDGM 1)
ENDIF(XDMF_HAS_NDGM)
OPTION(XDMF_BUILD_VTK "Build VTK reader" OFF)
IF(XDMF_BUILD_VTK)
# include module to find vtk
FIND_PACKAGE(VTK)
IF(VTK_FOUND)
INCLUDE(${VTK_USE_FILE})
ENDIF(VTK_FOUND)
SET(XDMF_ZLIB_LIBRARIES ${VTK_ZLIB_LIBRARIES})
SET(XDMF_ZLIB_INCLUDE_DIRS)
SET(XDMF_EXPAT_LIBRARIES ${VTK_EXPAT_LIBRARIES})
SET(XDMF_EXPAT_INCLUDE_DIRS)
IF (NOT ParaViewComplete_BINARY_DIR)
SET(vtkexpat_CMAKE_PATH "" CACHE INTERNAL "" FORCE)
SET(vtkzlib_CMAKE_PATH "" CACHE INTERNAL "" FORCE)
ENDIF (NOT ParaViewComplete_BINARY_DIR)
LINK_DIRECTORIES(${VTK_LIBRARY_DIRS})
ELSE(XDMF_BUILD_VTK)
SET(VTK_DIR)
OPTION(XDMF_USE_SYSTEM_ZLIB "Use system Zlib" OFF)
IF(XDMF_USE_SYSTEM_ZLIB)
FIND_PACKAGE(ZLIB)
SET(XDMF_ZLIB_LIBRARIES ${ZLIB_LIBRARY})
SET(XDMF_ZLIB_INCLUDE_DIRS ${ZLIB_INCLUDE_DIR})
ELSE(XDMF_USE_SYSTEM_ZLIB)
SUBDIRS(Utilities/zlib)
SET(XDMF_ZLIB_LIBRARIES vtkzlib)
SET(XDMF_ZLIB_INCLUDE_DIRS "${Xdmf_SOURCE_DIR}/Utilities/zlib;${Xdmf_BINARY_DIR}/Utilities/zlib")
ENDIF(XDMF_USE_SYSTEM_ZLIB)
OPTION(XDMF_USE_SYSTEM_EXPAT "Use system Expat" OFF)
IF(XDMF_USE_SYSTEM_EXPAT)
FIND_PACKAGE(EXPAT)
SET(XDMF_EXPAT_LIBRARIES ${EXPAT_LIBRARY})
SET(XDMF_EXPAT_INCLUDE_DIRS ${EXPAT_INCLUDE_DIR})
ELSE(XDMF_USE_SYSTEM_EXPAT)
SUBDIRS(Utilities/expat)
SET(XDMF_EXPAT_LIBRARIES vtkexpat)
SET(XDMF_EXPAT_INCLUDE_DIRS "${Xdmf_SOURCE_DIR}/Utilities/expat;${Xdmf_BINARY_DIR}/Utilities/expat")
ENDIF(XDMF_USE_SYSTEM_EXPAT)
ENDIF(XDMF_BUILD_VTK)
IF(WIN32)
OPTION(XDMF_SYSTEM_HDF5 "Use sytstem HDF5" OFF)
ELSE(WIN32)
OPTION(XDMF_SYSTEM_HDF5 "Use sytstem HDF5" OFF)
ENDIF(WIN32)
SET(XDMF_MPI_LIBRARIES "")
IF(XDMF_SYSTEM_HDF5)
OPTION(XDMF_SYSTEM_HDF5_IS_PARALLEL "HDF5 Built for MPI" OFF)
IF (XDMF_SYSTEM_HDF5_IS_PARALLEL)
INCLUDE (${CMAKE_ROOT}/Modules/FindMPI.cmake)
IF (MPI_INCLUDE_PATH)
INCLUDE_DIRECTORIES(${MPI_INCLUDE_PATH})
ENDIF(MPI_INCLUDE_PATH)
IF (MPI_LIBRARY)
SET(XDMF_MPI_LIBRARIES ${XDMF_MPI_LIBRARIES} ${MPI_LIBRARY})
ELSE (MPI_LIBRARY)
MESSAGE("Could not find the required MPI libraries")
ENDIF (MPI_LIBRARY)
IF (MPI_EXTRA_LIBRARY)
SET(XDMF_MPI_LIBRARIES ${XDMF_MPI_LIBRARIES} ${MPI_EXTRA_LIBRARY})
ENDIF (MPI_EXTRA_LIBRARY)
ENDIF (XDMF_SYSTEM_HDF5_IS_PARALLEL)
FIND_LIBRARY(HDF5_LIBRARY
hdf5
/usr/lib
/opt/lib
/usr/local/lib)
FIND_PATH(HDF5_INCLUDE_PATH
H5Ipublic.h
/usr/include
/opt/include
/usr/local/include)
MESSAGE(STATUS "Using system HDF5")
INCLUDE_DIRECTORIES(${HDF5_INCLUDE_PATH})
SET(HDF5_LIBRARY ${HDF5_LIBRARY})
ELSE(XDMF_SYSTEM_HDF5)
INCLUDE_DIRECTORIES(${Xdmf_SOURCE_DIR}/Utilities/hdf5
${Xdmf_BINARY_DIR}/Utilities/hdf5)
SUBDIRS(Utilities)
SET(HDF5_LIBRARY vtkhdf5)
ENDIF(XDMF_SYSTEM_HDF5)
INCLUDE_DIRECTORIES(${XDMF_EXPAT_INCLUDE_DIRS})
IF(XDMF_BUILD_VTK)
SET(XDMF_USE_ANSI_STDLIB "${XDMF_USE_ANSI_STDLIB}" CACHE INTERNAL "store")
SET(XDMF_USE_ANSI_STDLIB ${VTK_USE_ANSI_STDLIB})
ELSE(XDMF_BUILD_VTK)
SET(XDMF_USE_ANSI_STDLIB "${XDMF_USE_ANSI_STDLIB}" CACHE BOOL "Ansi" FORCE)
IF(CMAKE_COMPILER_IS_GNUCXX)
OPTION(XDMF_USE_ANSI_STDLIB "Use the ANSI standard iostream library" ON)
ELSE(CMAKE_COMPILER_IS_GNUCXX)
IF(CMAKE_BUILD_TOOL MATCHES "devenv")
OPTION(XDMF_USE_ANSI_STDLIB "Use the ANSI standard iostream library" ON)
ELSE(CMAKE_BUILD_TOOL MATCHES "devenv")
OPTION(XDMF_USE_ANSI_STDLIB "Use the ANSI standard iostream library" OFF)
ENDIF(CMAKE_BUILD_TOOL MATCHES "devenv")
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
ENDIF(XDMF_BUILD_VTK)
INCLUDE(${CMAKE_ROOT}/Modules/TestForSTDNamespace.cmake)
# Enforce 0/1 as only possible values. Needed for the means by which
# Configure.hxx is implemented.
IF(CMAKE_NO_STD_NAMESPACE)
SET(XDMF_NO_STD_NAMESPACE 1)
ELSE(CMAKE_NO_STD_NAMESPACE)
SET(XDMF_NO_STD_NAMESPACE 0)
ENDIF(CMAKE_NO_STD_NAMESPACE)
SUBDIRS(libsrc binsrc)
IF(XDMF_BUILD_VTK)
SUBDIRS(vtk)
INCLUDE_DIRECTORIES(${Xdmf_SOURCE_DIR}/vtk
${Xdmf_BINARY_DIR}/vtk)
ENDIF(XDMF_BUILD_VTK)
# Add the testing directories
OPTION(XDMF_BUILD_TESTING "Test the project" OFF)
IF(XDMF_BUILD_TESTING)
ENABLE_TESTING()
INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)
OPTION(VTK_USE_DISPLAY "Turn this option off and tests will not popup windows" ON)
MARK_AS_ADVANCED(VTK_USE_DISPLAY)
ENDIF(XDMF_BUILD_TESTING)
# This code has to be duplicated for install tree
SET(XDMF_INCLUDE_DIRS_CONFIG
${Xdmf_SOURCE_DIR}/libsrc
${Xdmf_BINARY_DIR}/libsrc
${Xdmf_SOURCE_DIR}/Ice/libsrc
${Xdmf_BINARY_DIR}/Ice/libsrc
)
SET(XDMF_LIBRARY_DIRS_CONFIG
${LIBRARY_OUTPUT_PATH})
IF(XDMF_BUILD_VTK)
SET(XDMF_INCLUDE_DIRS_CONFIG ${XDMF_INCLUDE_DIRS_CONFIG}
${Xdmf_SOURCE_DIR}/vtk
${Xdmf_BINARY_DIR}/vtk
)
ENDIF(XDMF_BUILD_VTK)
IF(XDMF_SYSTEM_HDF5)
SET(XDMF_INCLUDE_DIRS_CONFIG ${XDMF_INCLUDE_DIRS_CONFIG}
${XDMF_ZLIB_INCLUDE_DIRS})
ELSE(XDMF_SYSTEM_HDF5)
SET(XDMF_INCLUDE_DIRS_CONFIG ${XDMF_INCLUDE_DIRS_CONFIG}
${Xdmf_SOURCE_DIR}/Utilities/hdf5
${Xdmf_BINARY_DIR}/Utilities/hdf5)
ENDIF(XDMF_SYSTEM_HDF5)
# Save the compiler settings so another project can import them.
INCLUDE(${CMAKE_ROOT}/Modules/CMakeExportBuildSettings.cmake)
CMAKE_EXPORT_BUILD_SETTINGS(${Xdmf_BINARY_DIR}/XDMFBuildSettings.cmake)
SET(XDMF_BUILD_SETTINGS_FILE ${Xdmf_BINARY_DIR}/XDMFBuildSettings.cmake)
SET(XDMF_USE_FILE "${Xdmf_SOURCE_DIR}/UseXDMF.cmake")
SET(XDMF_KITS_DIR "${Xdmf_BINARY_DIR}/vtk/Utilities")
SET(XDMF_HDF5_LIBRARIES ${HDF5_LIBRARY})
# Save library dependencies.
EXPORT_LIBRARY_DEPENDENCIES(${Xdmf_BINARY_DIR}/XDMFLibraryDepends.cmake)
SET(XDMF_LIBRARY_DEPENDS_FILE ${Xdmf_BINARY_DIR}/XDMFLibraryDepends.cmake)
CONFIGURE_FILE(${Xdmf_SOURCE_DIR}/XDMFConfig.cmake.in
${Xdmf_BINARY_DIR}/XDMFConfig.cmake @ONLY IMMEDIATE)
# Dashboard is opened for submissions for a 24 hour period starting at
# the specified NIGHLY_START_TIME. Time is specified in 24 hour format.
SET (NIGHTLY_START_TIME "0:30:00 EDT")
# Dart server to submit results (used by client)
IF(DROP_METHOD MATCHES http)
SET (DROP_SITE "public.kitware.com")
SET (DROP_LOCATION "/cgi-bin/HTTPUploadDartFile.cgi")
ELSE(DROP_METHOD MATCHES http)
SET (DROP_SITE "public.kitware.com")
SET (DROP_LOCATION "/incoming")
SET (DROP_SITE_USER "ftpuser")
SET (DROP_SITE_PASSWORD "public")
ENDIF(DROP_METHOD MATCHES http)
SET (TRIGGER_SITE
"http://${DROP_SITE}/cgi-bin/Submit-Xdmf-TestingResults.pl")
# Project Home Page
SET (PROJECT_URL "http://www.arl.hpc.mil/ice/")
# Dart server configuration
SET (ROLLUP_URL "http://${DROP_SITE}/cgi-bin/xdmf-rollup-dashboard.sh")
SET (CVS_WEB_URL "http://${DROP_SITE}/cgi-bin/cvsweb.cgi/Xdmf/")
SET (CVS_WEB_CVSROOT "Xdmf")
SET (USE_DOXYGEN "On")
SET (DOXYGEN_URL "http://www.arl.hpc.mil/ice/Manuals/Xdmf/index.html" )
SET (GNATS_WEB_URL "http://public.kitware.com/Bug/index.php")
SET (USE_GNATS "On")
# copy over the testing logo
CONFIGURE_FILE(${Xdmf_SOURCE_DIR}/DiceLogo.gif ${Xdmf_BINARY_DIR}/Testing/HTML/TestingResults/Icons/Logo.gif COPYONLY)
<?xml version="1.0" ?>
<!DOCTYPE Xdmf SYSTEM "Xdmf.dtd" [
<!ENTITY HeavyData "Iron Protein.h5">
]>
<Xdmf>
<Domain Name="IronProtein">
<Grid Name="Iron00">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
0 0 0
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="Float"
Precision="8"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron00/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron00/scalars
</DataStructure>
</Attribute>
</Grid>
<Grid Name="Iron01">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
0 0 32
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron01/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron01/scalars
</DataStructure>
</Attribute>
</Grid>
<Grid Name="Iron02">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
0 32 0
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron02/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron02/scalars
</DataStructure>
</Attribute>
</Grid>
<Grid Name="Iron03">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
0 32 32
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron03/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron03/scalars
</DataStructure>
</Attribute>
</Grid>
<Grid Name="Iron04">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
32 0 0
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron04/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron04/scalars
</DataStructure>
</Attribute>
</Grid>
<Grid Name="Iron05">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
32 0 32
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron05/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron05/scalars
</DataStructure>
</Attribute>
</Grid>
<Grid Name="Iron06">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
32 32 0
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron06/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron06/scalars
</DataStructure>
</Attribute>
</Grid>
<Grid Name="Iron07">
<Topology
Type="3DCORECTMESH" Dimensions="36 36 36">
</Topology>
<Geometry Type="ORIGIN_DXDYDZ">
<DataStructure
Name="Origin"
DataType="Float"
Dimensions="3"
Format="XML">
32 32 32
</DataStructure>
<DataStructure
Name="Spacing"
DataType="Float"
Dimensions="3"
Format="XML">
1 1 1
</DataStructure>
</Geometry>
<Attribute
Center="Node"
Name="UnnamedNodeArray0">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron07/UnnamedNodeArray0
</DataStructure>
</Attribute>
<Attribute
Center="Node"
Name="scalars">
<DataStructure
DataType="UChar"
Dimensions="36 36 36"
Format="HDF">
&HeavyData;:/Iron07/scalars
</DataStructure>
</Attribute>
</Grid>
</Domain>
</Xdmf>