You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
116 lines
2.7 KiB
CMake
116 lines
2.7 KiB
CMake
cmake_minimum_required(VERSION 3.5)
|
|
|
|
set(PROJECT_NAME
|
|
crowxmr)
|
|
|
|
project(${PROJECT_NAME})
|
|
|
|
set(CMAKE_CXX_FLAGS
|
|
"${CMAKE_CXX_FLAGS} -std=c++14")
|
|
|
|
|
|
# find boost
|
|
find_package(Boost COMPONENTS
|
|
system
|
|
filesystem
|
|
thread
|
|
date_time
|
|
chrono
|
|
regex
|
|
serialization
|
|
program_options
|
|
date_time
|
|
REQUIRED)
|
|
|
|
|
|
# set location of monero static libraries
|
|
set(MONERO_LIBS_DIR
|
|
/opt/bitmonero-dev/libs)
|
|
|
|
# set location of moneroheaders
|
|
set(MONERO_HEADERS_DIR
|
|
/opt/bitmonero-dev/headers)
|
|
|
|
# include monero headers
|
|
include_directories(
|
|
${MONERO_HEADERS_DIR}/src
|
|
${MONERO_HEADERS_DIR}/external
|
|
${MONERO_HEADERS_DIR}/contrib/epee/include
|
|
${MONERO_HEADERS_DIR}/external/db_drivers/liblmdb)
|
|
|
|
# get individual monero static libraries
|
|
# that are needed in this project
|
|
|
|
add_library(common STATIC IMPORTED)
|
|
set_property(TARGET common PROPERTY IMPORTED_LOCATION ${MONERO_LIBS_DIR}/libcommon.a)
|
|
|
|
|
|
add_library(blocks STATIC IMPORTED)
|
|
set_property(TARGET blocks PROPERTY IMPORTED_LOCATION ${MONERO_LIBS_DIR}/libblocks.a)
|
|
|
|
|
|
add_library(crypto STATIC IMPORTED)
|
|
set_property(TARGET crypto
|
|
PROPERTY IMPORTED_LOCATION ${MONERO_LIBS_DIR}/libcrypto.a)
|
|
|
|
|
|
add_library(cryptonote_core STATIC IMPORTED)
|
|
set_property(TARGET cryptonote_core
|
|
PROPERTY IMPORTED_LOCATION ${MONERO_LIBS_DIR}/libcryptonote_core.a)
|
|
|
|
|
|
add_library(blockchain_db STATIC IMPORTED)
|
|
set_property(TARGET blockchain_db
|
|
PROPERTY IMPORTED_LOCATION ${MONERO_LIBS_DIR}/libblockchain_db.a)
|
|
|
|
add_library(lmdb STATIC IMPORTED)
|
|
set_property(TARGET lmdb
|
|
PROPERTY IMPORTED_LOCATION ${MONERO_LIBS_DIR}/liblmdb.a)
|
|
|
|
|
|
# include boost headers
|
|
include_directories(${Boost_INCLUDE_DIRS})
|
|
include_directories("ext/mstch/include")
|
|
|
|
# add ext/ subfolder
|
|
add_subdirectory(ext/)
|
|
|
|
# add src/ subfolder
|
|
add_subdirectory(src/)
|
|
|
|
|
|
set(SOURCE_FILES
|
|
main.cpp)
|
|
|
|
ADD_CUSTOM_TARGET(driver DEPENDS src/templates/index.html)
|
|
|
|
add_executable(${PROJECT_NAME}
|
|
${SOURCE_FILES})
|
|
|
|
#add_custom_command(OUTPUT template_folder
|
|
# COMMAND ${CMAKE_COMMAND} -E
|
|
# copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/src/templates" "${CMAKE_CURRENT_BINARY_DIR}"
|
|
# DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/src/templates")
|
|
#
|
|
#add_custom_target(index_html
|
|
# ALL DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/templates")
|
|
#
|
|
#ADD_DEPENDENCIES(${PROJECT_NAME}
|
|
# index_html)
|
|
|
|
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/src/templates"
|
|
DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
|
|
|
target_link_libraries(${PROJECT_NAME}
|
|
myxrm
|
|
myext
|
|
mstch
|
|
cryptonote_core
|
|
blockchain_db
|
|
crypto
|
|
blocks
|
|
common
|
|
lmdb
|
|
${Boost_LIBRARIES}
|
|
pthread
|
|
unbound) |