mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-22 04:36:42 +00:00
Refactor cmake files
This commit is contained in:
parent
8287c6040a
commit
232f9fee52
4 changed files with 29 additions and 88 deletions
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 2.8.12)
|
cmake_minimum_required(VERSION 2.8.12)
|
||||||
|
|
||||||
project(evmjit)
|
project(evmjit)
|
||||||
|
|
@ -10,6 +9,9 @@ find_package(LLVM REQUIRED CONFIG)
|
||||||
message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
|
message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
|
||||||
message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}")
|
message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}")
|
||||||
|
|
||||||
|
# Boost
|
||||||
|
find_package(Boost REQUIRED)
|
||||||
|
|
||||||
add_subdirectory(libevmjit)
|
add_subdirectory(libevmjit)
|
||||||
add_subdirectory(libevmjit-cpp)
|
add_subdirectory(libevmjit-cpp)
|
||||||
add_subdirectory(evmcc)
|
add_subdirectory(evmcc)
|
||||||
|
|
@ -1,48 +1,20 @@
|
||||||
cmake_policy(SET CMP0015 NEW)
|
set(TARGET_NAME evmcc)
|
||||||
|
|
||||||
project(evmjit CXX)
|
set(SOURCES
|
||||||
|
evmcc.cpp
|
||||||
|
)
|
||||||
|
source_group("" FILES ${SOURCES})
|
||||||
|
|
||||||
file(GLOB SOURCES "*.cpp")
|
add_executable(${TARGET_NAME} ${SOURCES})
|
||||||
file(GLOB HEADERS "*.h")
|
set_property(TARGET ${TARGET_NAME} PROPERTY FOLDER "tools")
|
||||||
set_property(TARGET ${PROJECT_NAME} PROPERTY FOLDER "tools")
|
|
||||||
|
|
||||||
set(EXECUTABLE evmcc)
|
|
||||||
add_executable(${EXECUTABLE} ${HEADERS} ${SOURCES})
|
|
||||||
|
|
||||||
include_directories(../..)
|
include_directories(../..)
|
||||||
|
|
||||||
target_link_libraries(${EXECUTABLE} boost_program_options)
|
|
||||||
target_link_libraries(${EXECUTABLE} devcore)
|
|
||||||
target_link_libraries(${EXECUTABLE} ethcore)
|
|
||||||
target_link_libraries(${EXECUTABLE} evmjit)
|
|
||||||
target_link_libraries(${EXECUTABLE} evm)
|
|
||||||
target_link_libraries(${EXECUTABLE} ethereum)
|
|
||||||
|
|
||||||
if ("${TARGET_PLATFORM}" STREQUAL "w64")
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libgcc -static-libstdc++")
|
|
||||||
target_link_libraries(${EXECUTABLE} gcc)
|
|
||||||
target_link_libraries(${EXECUTABLE} gdi32)
|
|
||||||
target_link_libraries(${EXECUTABLE} ws2_32)
|
|
||||||
target_link_libraries(${EXECUTABLE} mswsock)
|
|
||||||
target_link_libraries(${EXECUTABLE} shlwapi)
|
|
||||||
target_link_libraries(${EXECUTABLE} iphlpapi)
|
|
||||||
target_link_libraries(${EXECUTABLE} boost_thread_win32-mt-s)
|
|
||||||
set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS)
|
|
||||||
else ()
|
|
||||||
find_package(Threads REQUIRED)
|
|
||||||
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
# LLVM specific commands
|
|
||||||
find_package(LLVM REQUIRED CONFIG)
|
|
||||||
include_directories(${LLVM_INCLUDE_DIRS})
|
include_directories(${LLVM_INCLUDE_DIRS})
|
||||||
add_definitions(${LLVM_DEFINITIONS})
|
include_directories(${Boost_INCLUDE_DIRS})
|
||||||
|
|
||||||
llvm_map_components_to_libnames(llvm_libs bitwriter)
|
target_link_libraries(${TARGET_NAME} ethereum)
|
||||||
target_link_libraries(evmcc ${llvm_libs})
|
target_link_libraries(${TARGET_NAME} ${Boost_PROGRAM_OPTIONS_LIBRARIES})
|
||||||
# end of LLVM specific commands
|
llvm_map_components_to_libnames(LLVM_LIBS bitwriter)
|
||||||
|
target_link_libraries(${TARGET_NAME} ${LLVM_LIBS})
|
||||||
|
|
||||||
|
install(TARGETS ${TARGET_NAME} DESTINATION bin )
|
||||||
install( TARGETS ${EXECUTABLE} DESTINATION bin )
|
|
||||||
|
|
||||||
cmake_policy(SET CMP0015 NEW)
|
|
||||||
|
|
@ -1,17 +1,16 @@
|
||||||
project(evmjit-cpp CXX)
|
set(TARGET_NAME evmjit-cpp)
|
||||||
|
|
||||||
set(SOURCES
|
set(SOURCES
|
||||||
Env.cpp
|
Env.cpp
|
||||||
JitVM.cpp JitVM.h
|
JitVM.cpp JitVM.h
|
||||||
)
|
)
|
||||||
|
source_group("" FILES ${SOURCES})
|
||||||
|
|
||||||
add_library(${PROJECT_NAME} ${SOURCES})
|
add_library(${TARGET_NAME} ${SOURCES})
|
||||||
|
set_property(TARGET ${TARGET_NAME} PROPERTY FOLDER "libs")
|
||||||
|
|
||||||
include_directories(../..)
|
include_directories(../..)
|
||||||
|
|
||||||
find_package(LLVM REQUIRED CONFIG)
|
|
||||||
include_directories(${LLVM_INCLUDE_DIRS})
|
include_directories(${LLVM_INCLUDE_DIRS})
|
||||||
add_definitions(${LLVM_DEFINITIONS})
|
include_directories(${Boost_INCLUDE_DIRS})
|
||||||
|
|
||||||
source_group("" FILES ${SOURCES})
|
target_link_libraries(${TARGET_NAME} evmjit)
|
||||||
set_property(TARGET ${PROJECT_NAME} PROPERTY FOLDER "libs")
|
|
||||||
|
|
|
||||||
|
|
@ -1,51 +1,19 @@
|
||||||
project(evmjit CXX)
|
set(TARGET_NAME evmjit)
|
||||||
|
|
||||||
file(GLOB SOURCES "*.cpp")
|
file(GLOB SOURCES "*.cpp")
|
||||||
file(GLOB HEADERS "*.h")
|
file(GLOB HEADERS "*.h")
|
||||||
|
source_group("" FILES ${HEADERS})
|
||||||
|
source_group("" FILES ${SOURCES})
|
||||||
|
|
||||||
add_library(${PROJECT_NAME} ${SOURCES} ${HEADERS})
|
add_library(${TARGET_NAME} ${SOURCES} ${HEADERS})
|
||||||
|
set_property(TARGET ${TARGET_NAME} PROPERTY FOLDER "libs")
|
||||||
|
|
||||||
#include_directories(..)
|
|
||||||
|
|
||||||
#target_link_libraries(${EXECUTABLE} devcore)
|
|
||||||
#target_link_libraries(${EXECUTABLE} ethcore)
|
|
||||||
#target_link_libraries(${EXECUTABLE} evmcore)
|
|
||||||
|
|
||||||
|
|
||||||
# if ("${TARGET_PLATFORM}" STREQUAL "w64")
|
|
||||||
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libgcc -static-libstdc++")
|
|
||||||
# target_link_libraries(${EXECUTABLE} gcc)
|
|
||||||
# target_link_libraries(${EXECUTABLE} gdi32)
|
|
||||||
# target_link_libraries(${EXECUTABLE} ws2_32)
|
|
||||||
# target_link_libraries(${EXECUTABLE} mswsock)
|
|
||||||
# target_link_libraries(${EXECUTABLE} shlwapi)
|
|
||||||
# target_link_libraries(${EXECUTABLE} iphlpapi)
|
|
||||||
# target_link_libraries(${EXECUTABLE} boost_thread_win32-mt-s)
|
|
||||||
# set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS)
|
|
||||||
# else ()
|
|
||||||
# find_package(Threads REQUIRED)
|
|
||||||
# target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
|
|
||||||
# endif ()
|
|
||||||
|
|
||||||
# LLVM specific commands
|
|
||||||
find_package(LLVM REQUIRED CONFIG)
|
|
||||||
include_directories(${LLVM_INCLUDE_DIRS})
|
include_directories(${LLVM_INCLUDE_DIRS})
|
||||||
|
include_directories(${Boost_INCLUDE_DIRS})
|
||||||
add_definitions(${LLVM_DEFINITIONS})
|
add_definitions(${LLVM_DEFINITIONS})
|
||||||
|
|
||||||
llvm_map_components_to_libnames(LLVM_LIBS core support mcjit x86asmparser x86codegen)
|
llvm_map_components_to_libnames(LLVM_LIBS core support mcjit x86asmparser x86codegen)
|
||||||
target_link_libraries(${PROJECT_NAME} ${LLVM_LIBS})
|
target_link_libraries(${TARGET_NAME} ${LLVM_LIBS})
|
||||||
# end of LLVM specific commands
|
|
||||||
|
|
||||||
|
|
||||||
# Boost
|
|
||||||
find_package(Boost REQUIRED)
|
|
||||||
include_directories(${Boost_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
|
|
||||||
#install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
|
#install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
|
||||||
#install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )
|
#install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )
|
||||||
|
|
||||||
|
|
||||||
source_group("" FILES ${HEADERS})
|
|
||||||
source_group("" FILES ${SOURCES})
|
|
||||||
set_property(TARGET ${PROJECT_NAME} PROPERTY FOLDER "libs")
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue