SET(CTEST_CUSTOM_MEMCHECK_IGNORE
  ${CTEST_CUSTOM_MEMCHECK_IGNORE}
  TestSetGet
  otherPrint-ParaView
  Example-vtkLocal
  Example-vtkMy

  # These tests do not actually run any VTK code
  HeaderTesting-Common
  HeaderTesting-Filtering
  HeaderTesting-Graphics
  HeaderTesting-GenericFiltering
  HeaderTesting-Imaging
  HeaderTesting-IO
  HeaderTesting-Rendering
  HeaderTesting-VolumeRendering
  HeaderTesting-Hybrid
  HeaderTesting-Parallel
  HeaderTesting-Widgets
  HeaderTesting-Infovis
  HeaderTesting-Geovis
  HeaderTesting-Views

  HeaderTesting-PVServer-Common
  HeaderTesting-PVServer-Filters
  HeaderTesting-PVServer-ServerManager
  HeaderTesting-KWCommon
  HeaderTesting-KWWidgets
  HeaderTesting-PVGUI-Client
  
  PrintSelf-KWWidgets	
  PrintSelf-PVGUI-Client
  PrintSelf-PVServer-Common
  PrintSelf-PVServer-Filters
  PrintSelf-PVServer-ServerManager
  PrintSelf-ParaView
  TestSetGet-ParaView
  TestSetObjectMacro-KWWidgets
  TestSetObjectMacro-PVGUI-Client
  TestSetObjectMacro-PVServer-Common
  TestSetObjectMacro-PVServer-Filters
  TestSetObjectMacro-PVServer-ServerManager
  TestSetObjectMacro-ParaView
  
  # this one runs python which then runs two program so no memory checking there
  Sockets-image
  )

SET(CTEST_CUSTOM_WARNING_MATCH
  ${CTEST_CUSTOM_WARNING_MATCH}
  "{standard input}:[0-9][0-9]*: Warning: "
  )

IF("@CMAKE_SYSTEM@" MATCHES "OSF")
  SET(CTEST_CUSTOM_WARNING_EXCEPTION
    ${CTEST_CUSTOM_WARNING_EXCEPTION}
    "XdmfDOM"
    "XdmfExpr"
    "vtkKWApplication"
    "vtkKWObject"
    )
ENDIF("@CMAKE_SYSTEM@" MATCHES "OSF")

SET(CTEST_CUSTOM_WARNING_EXCEPTION
  ${CTEST_CUSTOM_WARNING_EXCEPTION}
  "tcl8.4.5/[^/]+/../[^/]+/[^.]+.c[:\"]"
  "tcl8.4.5/[^/]+/[^/]+/[^.]+.c[:\"]"
  "tcl8.4.5/[^/]+/[^/]+.c[:\"]"
  "tk8.4.5/[^/]+/../[^/]+/[^.]+.c[:\"]"
  "tk8.4.5/[^/]+/[^/]+/[^.]+.c[:\"]"
  "tk8.4.5/[^/]+/[^/]+.c[:\"]"
  "VTK/Utilities/vtktiff/"      
  "VTK/Utilities/vtkmpeg2encode/"      
  "xtree.[0-9]+. : warning C4702: unreachable code"
  "warning LNK4221"
  "variable .var_args[2]*. is used before its value is set"
  "jobserver unavailable"
  "warning: \\(Long double usage is reported only once for each file"
  "warning: To disable this warning use"
  "ranlib: file: .+ has no symbols"
  "could not be inlined"
  "qt3/include/q"
  ".include.QtCore"
  "include/features.h"
  "Qt/Python/pqPythonStream"
  "python.+/pyconfig.h"
  "vtkfreetype.src"
  "vtkfreetype.include"
  "OSServices.framework"
  "QD.framework/Headers/Quickdraw.h"
  "warning: argument .+ might be clobbered by .longjmp. or .vfork."
  "Microsoft Visual Studio/VC98/include"
  ".include.qtcore"
  "[Xx]dmf.libsrc"
  "[Xx]dmf2.libsrc"
  ".include.openmpi"
  "warning LNK4098"
  "include/mpicxx.h"
  "mpi4py"
  "ClientServer.cxx"
  "vtkexodus2.*conversion from 'size_t' to 'int', possible loss of data"
  
  # Supress warning from Utilities, these are 3rd party code
  # so many a times there's not much we can fix.
  "Utilities.mpi4py"
  "Utilities.Xdmf2.libsrc"
  "Utilities.Xdmf2.Ice"
  "Utilities.IceT"
  "vtk.*tab.c"
  "Utilities.vtksqlite"
  "Utilities.vtkexodus2"
  "Utilities.VPIC"
  "Utilities.vtkpng"

  # suppress warning from H5Part library.
  ".H5Part.src"

  # ignore all size_t to int conversion warnings.
  "conversion from 'size_t' to"
  )

SET(CTEST_CUSTOM_WARNING_EXCEPTION
  ${CTEST_CUSTOM_WARNING_EXCEPTION}
  # Some VTK dashboards include building bits of Qt which produce lots of
  # the following warnings when built with the MS compilers. Qt guys should
  # fix their code. Until they do, keep the Qt chatter off the VTK dashboard
  # results:
  "include.[Qq]t([Cc]ore|[Gg]ui).*warning C4127: conditional expression is constant"
  "[Qq]t.*h.*warning.*declaration of .* shadows a member of .this"
  "[Qq]t.*h.*warning.*(copy constructor|assignment operator) could not be generated"

  # disable any warning coming from Qt headers.
  "[Qq]t.*/include/qt.*"

  # Suppress warning caused when QT 'foreach' loops are combined
  ".*warning: declaration of '_container_' shadows a previous local.*warning: shadowed declaration is here"

  # disable warnings from UI files.
  "ui_.*"
  )

IF(APPLE)
SET(CTEST_CUSTOM_WARNING_EXCEPTION
  ${CTEST_CUSTOM_WARNING_EXCEPTION}
  "warning -.: directory name .* does not exist"
  "OpenTransport.*warning.*is deprecated"

  # Somebody will have to get rid of these calls eventually (bug 4001) to
  # eliminate these warnings. For now, mask them out of dashboard results:
  "vtkCarbonRenderWindow.cxx.*warning: .(New|Diff|Equal|Dispose)Rgn. is deprecated"
  )
ENDIF(APPLE)

SET(CTEST_CUSTOM_COVERAGE_EXCLUDE
  ${CTEST_CUSTOM_COVERAGE_EXCLUDE}
  "Common.KWCommon.*"
  "vtk.*CSInit.cxx"
  "vtkKWParaViewInit.cxx"
  "vtk[^\\.]+ClientServer.cxx"
  "vtk[^\\.]+Python.cxx"
  "vtkSNL"
  "GUI/Widgets"
  "moc_[^\\.]+.cxx"
  "ui_[^\\.]+.h"
  "qrc_[^\\.]+.cxx"
  "Utilities.Xdmf2.libsrc.*"
  "Utilities.VisItBridge.avt"
  "Utilities.VisItBridge.CMake"
  "Utilities.VisItBridge.common"
  "Utilities.VisItBridge.databases"
  "Utilities.VisItBridge.include"
  "Utilities.VisItBridge.visit_vtk"
  )

