Integrated google test into the cmake build

This commit is contained in:
BostonVaulter 2011-01-28 19:00:01 +00:00
parent 29c48d1a5c
commit 1ec2a7a80c
3 changed files with 96 additions and 0 deletions

View File

@ -54,6 +54,9 @@ INCLUDE(${cmake_dir}/CMakeLists_lib.txt)
INCLUDE(${cmake_dir}/CMakeLists_synergyc.txt) INCLUDE(${cmake_dir}/CMakeLists_synergyc.txt)
INCLUDE(${cmake_dir}/CMakeLists_synergys.txt) INCLUDE(${cmake_dir}/CMakeLists_synergys.txt)
INCLUDE(${cmake_dir}/CMakeLists_launcher.txt) INCLUDE(${cmake_dir}/CMakeLists_launcher.txt)
INCLUDE(${cmake_dir}/CMakeLists_test.txt)
add_subdirectory(third_party/gtest)
if (CONF_CPACK) if (CONF_CPACK)
# Setup the CPack config. # Setup the CPack config.

View File

@ -300,6 +300,7 @@ SET(src_lib_synergy
${root_lib}/synergy/CPacketStreamFilter.cpp ${root_lib}/synergy/CPacketStreamFilter.cpp
${root_lib}/synergy/CPlatformScreen.cpp ${root_lib}/synergy/CPlatformScreen.cpp
${root_lib}/synergy/CProtocolUtil.cpp ${root_lib}/synergy/CProtocolUtil.cpp
${root_lib}/synergy/CProtocolUtilTest.cpp
${root_lib}/synergy/CScreen.cpp ${root_lib}/synergy/CScreen.cpp
${root_lib}/synergy/IClipboard.cpp ${root_lib}/synergy/IClipboard.cpp
${root_lib}/synergy/IKeyState.cpp ${root_lib}/synergy/IKeyState.cpp
@ -309,6 +310,7 @@ SET(src_lib_synergy
${root_lib}/synergy/ProtocolTypes.cpp ${root_lib}/synergy/ProtocolTypes.cpp
${root_lib}/synergy/XScreen.cpp ${root_lib}/synergy/XScreen.cpp
${root_lib}/synergy/XSynergy.cpp ${root_lib}/synergy/XSynergy.cpp
${root_dir}/third_party/gtest/src/gtest-all.cc
) )
SET(inc_lib_synergy SET(inc_lib_synergy

91
cmake/CMakeLists_test.txt Normal file
View File

@ -0,0 +1,91 @@
# synergy -- mouse and keyboard sharing utility
# Copyright (C) 2009 Chris Schoeneman, Nick Bolton, Sorin Sbarnea
#
# This package is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# found in the file COPYING that should have accompanied this file.
#
# This package is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
SET(root_cmd_synergyc ${root_dir}/cmd/synergyc)
SET(src_cmd_synergyc_common
${root_dir}/lib/synergy/CProtocolUtilTest.cpp
${root_dir}/third_party/gtest/src/gtest-all.cc
#${root_cmd_synergyc}/synergyc.cpp
)
SET(src_cmd_synergyc_xwindows
${root_cmd_synergyc}/CXWindowsClientTaskBarReceiver.cpp
)
SET(src_cmd_synergyc_mswindows
${root_cmd_synergyc}/CMSWindowsClientTaskBarReceiver.cpp
)
SET(inc_cmd_synergyc_mswindows
${root_cmd_synergyc}/CMSWindowsClientTaskBarReceiver.h
${root_cmd_synergyc}/resource.h
)
SET(res_cmd_synergyc_mswindows
${root_cmd_synergyc}/synergyc.ico
${root_cmd_synergyc}/synergyc.rc
${root_cmd_synergyc}/tb_error.ico
${root_cmd_synergyc}/tb_idle.ico
${root_cmd_synergyc}/tb_run.ico
${root_cmd_synergyc}/tb_wait.ico
)
SET(src_cmd_synergyc_carbon
${root_cmd_synergyc}/COSXClientTaskBarReceiver.cpp
)
SET(src_cmd_synergyc ${src_cmd_synergyc_common})
IF(UNIX)
IF(APPLE)
LIST(APPEND src_cmd_synergyc ${src_cmd_synergyc_carbon})
ELSE(APPLE)
LIST(APPEND src_cmd_synergyc ${src_cmd_synergyc_xwindows})
ENDIF(APPLE)
ELSE(UNIX)
LIST(APPEND src_cmd_synergyc
${inc_cmd_synergyc_mswindows}
${res_cmd_synergyc_mswindows}
${src_cmd_synergyc_mswindows}
)
ENDIF(UNIX)
SET(inc_dirs_test
${root_dir}
${root_dir}/lib
${root_dir}/lib/arch
${root_dir}/lib/base
${root_dir}/lib/client
${root_dir}/lib/common
${root_dir}/lib/io
${root_dir}/lib/mt
${root_dir}/lib/net
${root_dir}/lib/platform
${root_dir}/lib/synergy
${root_dir}/third_party/gtest
${root_dir}/third_party/gtest/include
)
INCLUDE_DIRECTORIES(${inc_dirs_test})
#ADD_EXECUTABLE(tests ${root_dir}/third_party/gtest/src/gtest-all.cc)
#ADD_EXECUTABLE(tests ${root_dir}/lib/synergy/CProtocolUtilTest.cpp)
ADD_LIBRARY(prototest STATIC ${src_cmd_synergyc_common})
ADD_EXECUTABLE(tests ${root_dir}/third_party/gtest/src/gtest_main.cc)
TARGET_LINK_LIBRARIES(tests synergy prototest ${libs})