evmc/test/unittests/CMakeLists.txt

49 lines
1.8 KiB
CMake
Raw Normal View History

2018-06-08 12:44:33 +02:00
# EVMC: Ethereum Client-VM Connector API.
2018-08-21 09:44:18 +02:00
# Copyright 2018 The EVMC Authors.
# Licensed under the Apache License, Version 2.0. See the LICENSE file.
2018-06-08 12:44:33 +02:00
add_library(vm-mock SHARED vm_mock.c)
2018-07-05 13:01:20 +02:00
target_link_libraries(vm-mock PRIVATE evmc)
2018-08-27 21:18:10 +02:00
add_library(vm-mock-default SHARED vm_mock_default.c)
target_link_libraries(vm-mock-default PRIVATE evmc)
if(UNIX)
set(cmd create_symlink)
else()
set(cmd copy)
endif()
add_custom_command(
TARGET vm-mock POST_BUILD
2018-08-27 21:18:10 +02:00
2018-07-05 13:01:20 +02:00
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> libaaa.so
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> double_prefix_aaa.evm
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> double-prefix-aaa.evm
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> eee-bbb.dll
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> libeee1.so
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> eee2.so
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> libeee3.x
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> eee4
2018-07-10 11:08:33 +02:00
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> _
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> lib_.so
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> ../aaa.evm
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> failure.vm
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock> abi42.vm
2018-08-27 21:18:10 +02:00
COMMAND ${CMAKE_COMMAND} -E ${cmd} $<TARGET_FILE:vm-mock-default> default.evmc
COMMAND ${CMAKE_COMMAND} -E touch empty.file
)
2018-06-08 12:44:33 +02:00
add_executable(
evmc-test
test_instructions.cpp
test_loader.cpp
2018-06-08 12:44:33 +02:00
)
target_link_libraries(evmc-test PRIVATE instructions loader GTest::gtest GTest::main)
2018-06-08 13:03:14 +02:00
set_target_properties(evmc-test PROPERTIES RUNTIME_OUTPUT_DIRECTORY ..)
add_dependencies(evmc-test vm-mock)