CMakeLists.txt 2.68 KB
Newer Older
Andy Cedilnik's avatar
Andy Cedilnik committed
1
## Copyright 2003 Sandia Coporation
2 3 4 5
## Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
## the U.S. Government retains certain rights in this software.
##
## This source code is released under the New BSD License.
Andy Cedilnik's avatar
Andy Cedilnik committed
6 7
#

8 9 10 11 12 13 14 15 16 17 18
IF (ICET_USE_OPENGL)
  FIND_PACKAGE(GLUT)
  IF (GLUT_FOUND)
    SET(ICET_TESTS_USE_OPENGL 1)
  ENDIF (GLUT_FOUND)
ENDIF (ICET_USE_OPENGL)

IF (NOT ICET_TESTS_USE_OPENGL)
  MESSAGE(STATUS "Most tests require ICET_USE_OPENGL and Glut.  Those tests are disabled.")
ENDIF (NOT ICET_TESTS_USE_OPENGL)

Andy Cedilnik's avatar
Andy Cedilnik committed
19
SET(MyTests
20
  CompressionSize.c
21
  Interlace.c
22
  MaxImageSplit.c
23
  OddImageSizes.c
Kenneth Moreland's avatar
Kenneth Moreland committed
24
  OddProcessCounts.c
25
  RadixkUnitTests.c
26
  SimpleTiming.c
27
  SparseImageCopy.c
28
  )
Andy Cedilnik's avatar
Andy Cedilnik committed
29

30 31 32 33 34 35 36 37 38 39
IF (ICET_TESTS_USE_OPENGL)
  SET(MyTests ${MyTests}
    BlankTiles.c
    BoundsBehindViewer.c
    DisplayNoDraw.c
    RandomTransform.c
    SimpleExample.c
    )
ENDIF (ICET_TESTS_USE_OPENGL)

Andy Cedilnik's avatar
Andy Cedilnik committed
40 41
SET(UTIL_SRCS init.c ppm.c)

42 43 44 45 46 47 48 49 50
CONFIGURE_FILE(
  ${CMAKE_CURRENT_SOURCE_DIR}/test-config.h.in
  ${CMAKE_CURRENT_BINARY_DIR}/test-config.h
  )

INCLUDE_DIRECTORIES(
  ${CMAKE_CURRENT_SOURCE_DIR}
  ${CMAKE_CURRENT_BINARY_DIR}
  )
51

Andy Cedilnik's avatar
Andy Cedilnik committed
52
CREATE_TEST_SOURCELIST(Tests icetTests_mpi.c ${MyTests}
53 54
  EXTRA_INCLUDE mpi_comm.h
  FUNCTION init_mpi_comm)
Andy Cedilnik's avatar
Andy Cedilnik committed
55 56

ADD_EXECUTABLE(icetTests_mpi ${Tests} ${UTIL_SRCS})
57
TARGET_LINK_LIBRARIES(icetTests_mpi
58 59
  IceTCore
  IceTMPI
60
  )
61 62 63 64 65 66 67
IF (ICET_TESTS_USE_OPENGL)
  TARGET_LINK_LIBRARIES(icetTests_mpi
    IceTGL
    ${OPENGL_glu_LIBRARY}
    ${GLUT_LIBRARIES}
    )
ENDIF (ICET_TESTS_USE_OPENGL)
Andy Cedilnik's avatar
Andy Cedilnik committed
68 69

IF (ICET_MPIRUN_EXE)
70
  SET(PRE_TEST_FLAGS ${ICET_MPIRUN_EXE} ${ICET_MPI_NUMPROC_FLAG} ${ICET_MPI_MAX_NUMPROCS} ${ICET_MPI_PREFLAGS})
Andy Cedilnik's avatar
Andy Cedilnik committed
71 72 73
  SET(POST_TEST_FLAGS ${ICET_MPI_POSTFLAGS})
ENDIF (ICET_MPIRUN_EXE)

74
SET(ICET_TEST_FLAGS "" CACHE STRING "Arguments given to the test program.  These are given between the test executable and the name of the test.  Run the test executable with the -h flag to see what is available.")
Andy Cedilnik's avatar
Andy Cedilnik committed
75 76 77 78 79
MARK_AS_ADVANCED(ICET_TEST_FLAGS)
SEPARATE_ARGUMENTS(ICET_TEST_FLAGS)

FOREACH (test ${MyTests})
  GET_FILENAME_COMPONENT(TName ${test} NAME_WE)
80 81 82 83
  ADD_TEST(IceT${TName}
    ${PRE_TEST_FLAGS}
    ${C_TEST_PATH}/icetTests_mpi ${ICET_TEST_FLAGS} ${TName}
    ${POST_TEST_FLAGS})
84 85 86 87 88 89 90 91 92
  IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.1)
    SET_TESTS_PROPERTIES(IceT${TName}
      PROPERTIES FAIL_REGULAR_EXPRESSION
      ":ERROR:;TEST NOT RUN;TEST NOT PASSED;TEST FAILED"
      )
    SET_TESTS_PROPERTIES(IceT${TName}
      PROPERTIES PASS_REGULAR_EXPRESSION "Test Passed"
      )
  ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.1)
Andy Cedilnik's avatar
Andy Cedilnik committed
93 94 95
ENDFOREACH(test)

IF (WIN32)
Kenneth Moreland's avatar
Kenneth Moreland committed
96
  ADD_CUSTOM_TARGET(logclean erase log.???? *.ppm)
Andy Cedilnik's avatar
Andy Cedilnik committed
97
ELSE (WIN32)
98
  ADD_CUSTOM_TARGET(logclean rm -f log.???? *.ppm core.*)
Andy Cedilnik's avatar
Andy Cedilnik committed
99
ENDIF (WIN32)