benchs: make it compile on Linux
This commit is contained in:
parent
3cfc095237
commit
9f1b0456d4
@ -34,18 +34,41 @@ set(COMMONS_FILES ${COMMONS_FILES})
|
||||
add_definitions(-DGMIO_HAVE_STDINT_H)
|
||||
|
||||
include_directories(${GMIO_DIR}/include)
|
||||
link_libraries(${GMIO_DIR}/lib/gmio.lib)
|
||||
link_directories(${GMIO_DIR}/lib)
|
||||
link_libraries(gmio)
|
||||
if(CMAKE_COMPILER_IS_GNUCC)
|
||||
link_libraries(m) # -lm
|
||||
endif()
|
||||
|
||||
add_executable(bench_gmio bench_gmio/main.c ${COMMONS_FILES})
|
||||
|
||||
function(get_msvc_vernum outVerNum)
|
||||
if(MSVC60)
|
||||
set(${outVerNum} 6 PARENT_SCOPE)
|
||||
elseif(MSVC70)
|
||||
set(${outVerNum} 7 PARENT_SCOPE)
|
||||
elseif(MSVC80)
|
||||
set(${outVerNum} 8 PARENT_SCOPE)
|
||||
elseif(MSVC90)
|
||||
set(${outVerNum} 9 PARENT_SCOPE)
|
||||
elseif(MSVC10)
|
||||
set(${outVerNum} 10 PARENT_SCOPE)
|
||||
elseif(MSVC11)
|
||||
set(${outVerNum} 11 PARENT_SCOPE)
|
||||
elseif(MSVC12)
|
||||
set(${outVerNum} 12 PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
if(BENCHMARK_ASSIMP)
|
||||
add_executable(bench_assimp bench_assimp/main.cpp ${COMMONS_FILES})
|
||||
target_include_directories(
|
||||
bench_assimp
|
||||
PUBLIC ${ASSIMP_DIR}/include)
|
||||
target_link_libraries(
|
||||
bench_assimp
|
||||
${ASSIMP_DIR}/lib64/assimp.lib)
|
||||
# Note: we could use target_include_directories() but it's available in cmake > v2.8.10
|
||||
set_property(
|
||||
TARGET bench_assimp
|
||||
APPEND PROPERTY INCLUDE_DIRECTORIES ${ASSIMP_DIR}/include)
|
||||
# Libs
|
||||
find_library(LIBPATH_ASSIMP assimp ${ASSIMP_DIR}/lib64)
|
||||
target_link_libraries(bench_assimp ${LIBPATH_ASSIMP})
|
||||
endif()
|
||||
|
||||
if(BENCHMARK_OPENCASCADE)
|
||||
@ -53,18 +76,47 @@ if(BENCHMARK_OPENCASCADE)
|
||||
bench_occ/main.cpp
|
||||
${GMIO_DIR}/src/gmio_support/stl_occ.cpp
|
||||
${COMMONS_FILES})
|
||||
target_compile_definitions(
|
||||
bench_occ
|
||||
PUBLIC _OCC64 # TODO: define only if target arch is 64b
|
||||
PUBLIC WNT) # TODO: define only if target OS is Windows
|
||||
target_include_directories(
|
||||
bench_occ
|
||||
PUBLIC ${OPENCASCADE_DIR}/inc)
|
||||
|
||||
# TODO: define only if target arch is 64b
|
||||
# Noe: we could use target_compile_definitions() but it's available in cmake > v2.8.10
|
||||
set_property(
|
||||
TARGET bench_occ
|
||||
APPEND PROPERTY COMPILE_DEFINITIONS _OCC64)
|
||||
|
||||
if(WIN32)
|
||||
set_property(
|
||||
TARGET bench_occ
|
||||
APPEND PROPERTY COMPILE_DEFINITIONS WNT)
|
||||
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
set_property(
|
||||
TARGET bench_occ
|
||||
APPEND PROPERTY COMPILE_DEFINITIONS
|
||||
HAVE_CONFIG_H HAVE_FSTREAM HAVE_IOSTREAM HAVE_IOMANIP HAVE_LIMITS_H)
|
||||
endif()
|
||||
|
||||
# Note: we could use target_include_directories() but it's available in cmake > v2.8.10
|
||||
set_property(
|
||||
TARGET bench_occ
|
||||
APPEND PROPERTY INCLUDE_DIRECTORIES ${OPENCASCADE_DIR}/inc)
|
||||
|
||||
# Libs
|
||||
if(MSVC)
|
||||
set(_MSVC_VERNUM_ 0) # Init
|
||||
get_msvc_vernum(_MSVC_VERNUM_)
|
||||
set(OPENCASCADE_LIBDIR ${OPENCASCADE_DIR}/win64/vc${_MSVC_VERNUM_}/lib)
|
||||
elseif((${CMAKE_SYSTEM_NAME} MATCHES "Linux") AND CMAKE_COMPILER_IS_GNUCXX)
|
||||
set(OPENCASCADE_LIBDIR ${OPENCASCADE_DIR}/lin64/gcc/lib)
|
||||
endif()
|
||||
message(STATUS ${OPENCASCADE_LIBDIR})
|
||||
|
||||
find_library(LIBPATH_OPENCASCADE_TKERNEL TKernel ${OPENCASCADE_LIBDIR})
|
||||
find_library(LIBPATH_OPENCASCADE_TKMATH TKMath ${OPENCASCADE_LIBDIR})
|
||||
find_library(LIBPATH_OPENCASCADE_TKSTL TKSTL ${OPENCASCADE_LIBDIR})
|
||||
target_link_libraries(
|
||||
bench_occ
|
||||
${OPENCASCADE_DIR}/win64/vc11/lib/TKernel.lib
|
||||
${OPENCASCADE_DIR}/win64/vc11/lib/TKMath.lib
|
||||
${OPENCASCADE_DIR}/win64/vc11/lib/TKSTL.lib)
|
||||
${LIBPATH_OPENCASCADE_TKERNEL}
|
||||
${LIBPATH_OPENCASCADE_TKMATH}
|
||||
${LIBPATH_OPENCASCADE_TKSTL})
|
||||
endif()
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user