Skip to content

Commit

Permalink
Turn gtest into a pinned submodule
Browse files Browse the repository at this point in the history
  • Loading branch information
layus committed Sep 20, 2016
1 parent 1f38744 commit 36576c0
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 44 deletions.
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "stdlib"]
path = stdlib
url = git://github.com/mozart/mozart2-stdlib.git
[submodule "gtest"]
path = vm/vm/test/gtest
url = http://github.com/google/googletest
4 changes: 0 additions & 4 deletions vm/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,6 @@ set(DEFAULT_LLVM_SRC_DIR "${ep_base}/Source/llvm")
set(DEFAULT_LLVM_BUILD_DIR "${ep_base}/Build/llvm")
set(LLVM_SRC_DIR ${DEFAULT_LLVM_SRC_DIR} CACHE PATH "Path to LLVM sources (with Clang)")
set(LLVM_BUILD_DIR ${DEFAULT_LLVM_BUILD_DIR} CACHE PATH "Path to LLVM build (with Clang)")
set(DEFAULT_GTEST_SRC_DIR "${ep_base}/Source/gtest")
set(DEFAULT_GTEST_BUILD_DIR "${ep_base}/Build/gtest")
set(GTEST_SRC_DIR ${DEFAULT_GTEST_SRC_DIR} CACHE PATH "Path to GTest sources")
set(GTEST_BUILD_DIR ${DEFAULT_GTEST_BUILD_DIR} CACHE PATH "Path to GTest build")

set(MOZART_GENERATOR_FLAGS "${DEFAULT_MOZART_GENERATOR_FLAGS}" CACHE STRING
"Additional flags for the generator parser (clang)")
Expand Down
18 changes: 0 additions & 18 deletions vm/vm/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,2 @@
if("${GTEST_SRC_DIR}" STREQUAL "${DEFAULT_GTEST_SRC_DIR}" AND
NOT EXISTS "${GTEST_BUILD_DIR}/libgtest.a")

separate_arguments(GTEST_CMAKE_ARGS UNIX_COMMAND
"-DCMAKE_BUILD_TYPE=Debug
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_CXX_FLAGS=\"${CMAKE_CXX_FLAGS}\""
)

ExternalProject_Add(gtest
SVN_REPOSITORY http://googletest.googlecode.com/svn/trunk
CMAKE_ARGS ${GTEST_CMAKE_ARGS}
INSTALL_COMMAND ""
TEST_COMMAND ""
)
endif()
add_subdirectory(main)
add_subdirectory(test)
27 changes: 5 additions & 22 deletions vm/vm/test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,15 @@ include_directories(
"${CMAKE_CURRENT_SOURCE_DIR}/../main"
"${GENERATED_SOURCES_DIR}")

if(MINGW)
# GTest seems to use some non-standard things :-s
string(REGEX REPLACE "(^| )-std=c\\+\\+0x($| )" " -std=gnu++0x "
CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
endif()

# GTest libraries
# Allow to use shared libraries, but prefer static ones when possible
# to avoid missing libraries at execution time.
find_library(GTEST_LIBRARY NAME gtest.a gtest.lib gtest PATHS "${GTEST_BUILD_DIR}")
find_library(GTEST_MAIN_LIBRARY NAME gtest_main.a gtest_main.lib gtest_main PATHS "${GTEST_BUILD_DIR}")
if("${GTEST_LIBRARY}" MATCHES "GTEST_LIBRARY-NOTFOUND")
message(FATAL_ERROR "Could not find gtest library in ${GTEST_BUILD_DIR}")
endif()
if("${GTEST_MAIN_LIBRARY}" MATCHES "GTEST_MAIN_LIBRARY-NOTFOUND")
message(FATAL_ERROR "Could not find gtest_main library in ${GTEST_BUILD_DIR}")
endif()

include_directories("${GTEST_SRC_DIR}" "${GTEST_SRC_DIR}/include")

# The testing executable
option(BUILD_GMOCK "" OFF)
option(BUILD_GTEST "" ON)
add_subdirectory(gtest)
include_directories(${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR})

add_executable(vmtest testutils.cc sanitytest.cc smallinttest.cc floattest.cc
atomtest.cc gctest.cc coderstest.cc utftest.cc stringtest.cc
virtualstringtest.cc bytestringtest.cc)
target_link_libraries(vmtest mozartvm "${GTEST_LIBRARY}" "${GTEST_MAIN_LIBRARY}")
target_link_libraries(vmtest mozartvm gtest gtest_main)

if(NOT MINGW)
target_link_libraries(vmtest pthread)
Expand Down
1 change: 1 addition & 0 deletions vm/vm/test/gtest
Submodule gtest added at ec44c6

0 comments on commit 36576c0

Please sign in to comment.