cmake_minimum_required(VERSION 2.8) set(gtest_force_shared_crt ON CACHE INTERNAL "don't link the CRT statically into gtest as we later link the test executable dynamically") add_subdirectory(gtest-1.6.0) include_directories(${gtest_SOURCE_DIR}/include) include_directories(../Sources/Plasma/CoreLib) include_directories(../Sources/Plasma/FeatureLib) include_directories(../Sources/Plasma/FeatureLib/inc) include_directories(../Sources/Plasma/NucleusLib) include_directories(../Sources/Plasma/NucleusLib/inc) include_directories(../Sources/Plasma/PubUtilLib) include_directories(../Sources/Plasma/PubUtilLib/inc) include_directories(${PYTHON_INCLUDE_DIR}) set(test_SOURCES testCyMisc.cpp testPlUnifiedTime.cpp ) set(test_plClient_SOURCES ../Sources/Plasma/Apps/plClient/pfAllCreatables.cpp ../Sources/Plasma/Apps/plClient/plAllCreatables.cpp ../Sources/Plasma/Apps/plClient/pnAllCreatables.cpp ) add_executable(runUnitTests ${test_SOURCES} ${test_plClient_SOURCES}) target_link_libraries(runUnitTests gtest gtest_main) target_link_libraries(runUnitTests CoreLib) target_link_libraries(runUnitTests pfAnimation) target_link_libraries(runUnitTests pfAudio) target_link_libraries(runUnitTests pfCamera) target_link_libraries(runUnitTests pfCharacter) target_link_libraries(runUnitTests pfConditional) target_link_libraries(runUnitTests pfConsole) target_link_libraries(runUnitTests pfConsoleCore) target_link_libraries(runUnitTests pfGameGUIMgr) target_link_libraries(runUnitTests pfGameMgr) target_link_libraries(runUnitTests pfGameScoreMgr) target_link_libraries(runUnitTests pfJournalBook) target_link_libraries(runUnitTests pfLocalizationMgr) target_link_libraries(runUnitTests pfMessage) target_link_libraries(runUnitTests pfPython) target_link_libraries(runUnitTests pfSurface) target_link_libraries(runUnitTests plAgeDescription) target_link_libraries(runUnitTests plAgeLoader) target_link_libraries(runUnitTests plAudible) target_link_libraries(runUnitTests plAudio) target_link_libraries(runUnitTests plAudioCore) target_link_libraries(runUnitTests plAvatar) target_link_libraries(runUnitTests plClientResMgr) target_link_libraries(runUnitTests plClipboard) target_link_libraries(runUnitTests plCompression) target_link_libraries(runUnitTests plContainer) target_link_libraries(runUnitTests plDrawable) target_link_libraries(runUnitTests plGImage) target_link_libraries(runUnitTests plGLight) target_link_libraries(runUnitTests plInputCore) target_link_libraries(runUnitTests plInterp) target_link_libraries(runUnitTests plIntersect) target_link_libraries(runUnitTests plMath) target_link_libraries(runUnitTests plMessage) target_link_libraries(runUnitTests plModifier) target_link_libraries(runUnitTests plNetClient) target_link_libraries(runUnitTests plNetClientComm) target_link_libraries(runUnitTests plNetClientRecorder) target_link_libraries(runUnitTests plNetCommon) target_link_libraries(runUnitTests plNetGameLib) target_link_libraries(runUnitTests plNetMessage) target_link_libraries(runUnitTests plNetTransport) target_link_libraries(runUnitTests plParticleSystem) target_link_libraries(runUnitTests plPhysical) target_link_libraries(runUnitTests plPhysX) target_link_libraries(runUnitTests plPipeline) target_link_libraries(runUnitTests plProgressMgr) target_link_libraries(runUnitTests plResMgr) target_link_libraries(runUnitTests plScene) target_link_libraries(runUnitTests plSDL) target_link_libraries(runUnitTests plSurface) target_link_libraries(runUnitTests plTransform) target_link_libraries(runUnitTests plUnifiedTime) target_link_libraries(runUnitTests plVault) target_link_libraries(runUnitTests pnAsyncCore) target_link_libraries(runUnitTests pnAsyncCoreExe) target_link_libraries(runUnitTests pnEncryption) target_link_libraries(runUnitTests pnInputCore) target_link_libraries(runUnitTests pnModifier) target_link_libraries(runUnitTests pnNetBase) target_link_libraries(runUnitTests pnNetCli) target_link_libraries(runUnitTests pnNetProtocol) target_link_libraries(runUnitTests pnSceneObject) if(PYTHON_DEBUG_LIBRARY) target_link_libraries(runUnitTests debug ${PYTHON_DEBUG_LIBRARY}) target_link_libraries(runUnitTests optimized ${PYTHON_LIBRARY}) else() target_link_libraries(runUnitTests ${PYTHON_LIBRARY}) endif() target_link_libraries(runUnitTests ${OPENAL_LIBRARY}) target_link_libraries(runUnitTests ${EXPAT_LIBRARY}) target_link_libraries(runUnitTests ${JPEG_LIBRARY}) target_link_libraries(runUnitTests ${PNG_LIBRARY}) target_link_libraries(runUnitTests ${Speex_LIBRARY}) target_link_libraries(runUnitTests ${PHYSX_LIBRARIES}) target_link_libraries(runUnitTests ${DirectX_LIBRARIES}) if (WIN32) target_link_libraries(runUnitTests Vfw32) target_link_libraries(runUnitTests winmm) endif(WIN32) source_group("Test Sources" FILES ${test_SOURCES}) source_group("plClient Sources" FILES ${test_plClient_SOURCES}) enable_testing() add_test( NAME runUnitTests COMMAND runUnitTests )