mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Build jsoncpp from source using jsoncpp.cmake script
This commit is contained in:
committed by
Alex Beregszaszi
parent
5875890576
commit
4bde0a2d36
@@ -1,50 +0,0 @@
|
||||
# Find jsoncpp
|
||||
#
|
||||
# Find the jsoncpp includes and library
|
||||
#
|
||||
# if you nee to add a custom library search path, do it via via CMAKE_PREFIX_PATH
|
||||
#
|
||||
# This module defines
|
||||
# JSONCPP_INCLUDE_DIRS, where to find header, etc.
|
||||
# JSONCPP_LIBRARIES, the libraries needed to use jsoncpp.
|
||||
# JSONCPP_FOUND, If false, do not try to use jsoncpp.
|
||||
|
||||
# only look in default directories
|
||||
find_path(
|
||||
JSONCPP_INCLUDE_DIR
|
||||
NAMES json/json.h
|
||||
PATH_SUFFIXES jsoncpp
|
||||
DOC "jsoncpp include dir"
|
||||
)
|
||||
|
||||
find_library(
|
||||
JSONCPP_LIBRARY
|
||||
NAMES jsoncpp
|
||||
DOC "jsoncpp library"
|
||||
)
|
||||
|
||||
set(JSONCPP_INCLUDE_DIRS ${JSONCPP_INCLUDE_DIR})
|
||||
set(JSONCPP_LIBRARIES ${JSONCPP_LIBRARY})
|
||||
|
||||
# debug library on windows
|
||||
# same naming convention as in qt (appending debug library with d)
|
||||
# boost is using the same "hack" as us with "optimized" and "debug"
|
||||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
|
||||
|
||||
find_library(
|
||||
JSONCPP_LIBRARY_DEBUG
|
||||
NAMES jsoncppd
|
||||
DOC "jsoncpp debug library"
|
||||
)
|
||||
|
||||
set(JSONCPP_LIBRARIES optimized ${JSONCPP_LIBRARIES} debug ${JSONCPP_LIBRARY_DEBUG})
|
||||
|
||||
endif()
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set JSONCPP_FOUND to TRUE
|
||||
# if all listed variables are TRUE, hide their existence from configuration view
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(jsoncpp DEFAULT_MSG
|
||||
JSONCPP_LIBRARY JSONCPP_INCLUDE_DIR)
|
||||
mark_as_advanced (JSONCPP_INCLUDE_DIR JSONCPP_LIBRARY)
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
function(eth_apply TARGET REQUIRED)
|
||||
find_package (Jsoncpp 0.60)
|
||||
eth_show_dependency(JSONCPP JsonCpp)
|
||||
if (JSONCPP_FOUND)
|
||||
target_include_directories(${TARGET} SYSTEM BEFORE PUBLIC ${JSONCPP_INCLUDE_DIRS})
|
||||
target_link_libraries(${TARGET} ${JSONCPP_LIBRARIES})
|
||||
elseif (NOT ${REQUIRED} STREQUAL "OPTIONAL")
|
||||
message(FATAL_ERROR "Jsoncpp library not found")
|
||||
endif()
|
||||
endfunction()
|
||||
@@ -15,8 +15,7 @@ function(eth_apply TARGET REQUIRED SUBMODULE)
|
||||
target_include_directories(${TARGET} PUBLIC ${Solidity_INCLUDE_DIRS})
|
||||
|
||||
if (${SUBMODULE} STREQUAL "solevmasm")
|
||||
eth_use(${TARGET} ${REQUIRED} Jsoncpp)
|
||||
target_link_libraries(${TARGET} ${Solidity_SOLEVMASM_LIBRARIES})
|
||||
target_link_libraries(${TARGET} ${Solidity_SOLEVMASM_LIBRARIES} jsoncpp)
|
||||
endif()
|
||||
|
||||
if (${SUBMODULE} STREQUAL "lll")
|
||||
|
||||
Reference in New Issue
Block a user