##=========================================================================
## 
##   Copyright (c) Kitware, Inc.
##   All rights reserved.
##   See Copyright.txt or http://www.kitware.com/VolViewCopyright.htm for details.
## 
##      This software is distributed WITHOUT ANY WARRANTY; without even
##      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
##      PURPOSE.  See the above copyright notice for more information.
## 
##=========================================================================
CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
IF(COMMAND CMAKE_POLICY)
  CMAKE_POLICY(SET CMP0003 NEW)
ENDIF(COMMAND CMAKE_POLICY)

PROJECT(Kitware)

# Output paths

IF(NOT LIBRARY_OUTPUT_PATH)
  SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin CACHE INTERNAL
    "Single output directory for building all libraries.")
ENDIF(NOT LIBRARY_OUTPUT_PATH)
    
IF(NOT EXECUTABLE_OUTPUT_PATH)
  SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin CACHE INTERNAL
    "Single output directory for building all executables.")
ENDIF(NOT EXECUTABLE_OUTPUT_PATH)

# Install paths

IF(NOT ${PROJECT_NAME}_INSTALL_BIN_DIR)
  SET(${PROJECT_NAME}_INSTALL_BIN_DIR "/bin")
ENDIF(NOT ${PROJECT_NAME}_INSTALL_BIN_DIR)

IF(NOT ${PROJECT_NAME}_INSTALL_LIB_DIR)
  SET(${PROJECT_NAME}_INSTALL_LIB_DIR "/lib/${PROJECT_NAME}")
ENDIF(NOT ${PROJECT_NAME}_INSTALL_LIB_DIR)

IF(NOT ${PROJECT_NAME}_INSTALL_DATA_DIR)
  SET(${PROJECT_NAME}_INSTALL_DATA_DIR "/share/${PROJECT_NAME}")
ENDIF(NOT ${PROJECT_NAME}_INSTALL_DATA_DIR)

IF(NOT ${PROJECT_NAME}_INSTALL_INCLUDE_DIR)
  SET(${PROJECT_NAME}_INSTALL_INCLUDE_DIR "/include/${PROJECT_NAME}")
ENDIF(NOT ${PROJECT_NAME}_INSTALL_INCLUDE_DIR)

IF(NOT ${PROJECT_NAME}_INSTALL_PACKAGE_DIR)
  SET(${PROJECT_NAME}_INSTALL_PACKAGE_DIR ${${PROJECT_NAME}_INSTALL_LIB_DIR})
ENDIF(NOT ${PROJECT_NAME}_INSTALL_PACKAGE_DIR)

IF(NOT ${PROJECT_NAME}_INSTALL_NO_DEVELOPMENT)
  SET(${PROJECT_NAME}_INSTALL_NO_DEVELOPMENT 1)
ENDIF(NOT ${PROJECT_NAME}_INSTALL_NO_DEVELOPMENT)

IF(NOT ${PROJECT_NAME}_INSTALL_NO_DOCUMENTATION)
  SET(${PROJECT_NAME}_INSTALL_NO_DOCUMENTATION 1)
ENDIF(NOT ${PROJECT_NAME}_INSTALL_NO_DOCUMENTATION)

# Testing

IF(NOT DEFINED BUILD_TESTING)
  INCLUDE(CTest)
  MARK_AS_ADVANCED(BUILD_TESTING DART_ROOT TCL_TCLSH)
ENDIF(NOT DEFINED BUILD_TESTING)
IF(BUILD_TESTING)
  ENABLE_TESTING()
ENDIF(BUILD_TESTING)

# Sub-projects

OPTION(BUILD_${PROJECT_NAME}_APPLICATIONS
  "Build ${PROJECT_NAME} applications and support libraries." ON)
IF(BUILD_${PROJECT_NAME}_APPLICATIONS)
  FOREACH(package
      VolView
      )
    SET(${package}_INSTALL_BIN_DIR ${${PROJECT_NAME}_INSTALL_BIN_DIR})
    SET(${package}_INSTALL_LIB_DIR ${${PROJECT_NAME}_INSTALL_LIB_DIR})
    # Do not set the data dir, let's the sub-project set their own
    # SET(${package}_INSTALL_DATA_DIR ${${PROJECT_NAME}_INSTALL_DATA_DIR})
    SET(${package}_INSTALL_NO_DEVELOPMENT 
      ${${PROJECT_NAME}_INSTALL_NO_DEVELOPMENT})
    SET(${package}_INSTALL_NO_DOCUMENTATION 
      ${${PROJECT_NAME}_INSTALL_NO_DOCUMENTATION})
    SET(${package}_INSTALL_NO_RUNTIME 
      ${${PROJECT_NAME}_INSTALL_NO_RUNTIME})
    SUBDIRS(${package})
  ENDFOREACH(package)
ENDIF(BUILD_${PROJECT_NAME}_APPLICATIONS)
