project(face)

cmake_minimum_required(VERSION 2.6)


if(WIN32)
	message("WINDOWS")
	
	set(LIBXML2_INCLUDES "C:/libxml2-2.7.6.win32/include")
	set(LIBXML2_LIBRARIES "C:/libxml2-2.7.6.win32/lib")
	set(LIBXML2_LIBS "libxml2")
	
	if (MSVC)
		set(OPENCV_INCLUDES  "c:/OpenCV2.0/include")
		set(OPENCV_LIBRARIES "c:/OpenCV2.0/lib/Debug")
		set(OPENCV_LIBS 	 cv200d cxcore200d cvaux200d ml200d highgui200d)

		add_definitions(
			-DMSVC
		)
	elseif(MINGW)
		set(OPENCV_INCLUDES  "c:/OpenCV2.0/include")
		set(OPENCV_LIBRARIES "c:/OpenCV2.0/lib")
		set(OPENCV_LIBS 	 cv200 cxcore200 cvaux200 ml200 highgui200)

		find_package(threads REQUIRED)
		set(PTHREADS_LIBS "pthread")


	endif()

	add_definitions(
		-DOPENCV_CASCADES="c:/OpenCV2.0/data/haarcascades"
	)
	
elseif(UNIX)
	message("UNIX")
	
	find_package(LibXml2 REQUIRED)
	set(LIBXML2_LIBS "xml2")
	set(LIBXML2_INCLUDES ${LIBXML2_INCLUDE_DIR})

	set(OPENCV_INCLUDES  "/usr/local/include")
	set(OPENCV_LIBRARIES "/usr/local/lib")
	set(OPENCV_LIBS 	 cv cxcore cvaux ml highgui)
	
	add_definitions(
		-DOPENCV_CASCADES="~/work/OpenCV2.0/OpenCV-2.0.0/data/haarcascades"
	)

endif()

set (PROJECT_DIR ${CMAKE_SOURCE_DIR})
set( EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/.bin)
set( LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH})

message("PROJECT_DIR: " ${PROJECT_DIR})
message("BINARY_OUTPUT_PATH: " ${LIBRARY_OUTPUT_PATH})
message("CMAKE_INSTALL_PREFIX: " ${CMAKE_INSTALL_PREFIX})

add_definitions(
  -DPROJECT_DIR="${PROJECT_DIR}"
)

message("CMAKE_BUILD_TYPE: " ${CMAKE_BUILD_TYPE})

add_subdirectory (utils)
add_subdirectory (FaceColor)
