2017-08-16 11:30:09 +00:00
|
|
|
set(
|
|
|
|
sources
|
|
|
|
CommandLineInterface.cpp CommandLineInterface.h
|
|
|
|
main.cpp
|
|
|
|
)
|
2014-10-10 14:37:54 +00:00
|
|
|
|
2017-08-16 11:30:09 +00:00
|
|
|
add_executable(solc ${sources})
|
|
|
|
target_link_libraries(solc PRIVATE solidity ${Boost_PROGRAM_OPTIONS_LIBRARIES})
|
2014-10-10 14:37:54 +00:00
|
|
|
|
2017-08-16 11:30:09 +00:00
|
|
|
include(GNUInstallDirs)
|
|
|
|
install(TARGETS solc DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
2014-10-10 14:37:54 +00:00
|
|
|
|
2015-09-14 16:36:39 +00:00
|
|
|
if (EMSCRIPTEN)
|
2017-07-18 13:31:12 +00:00
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s EXPORTED_FUNCTIONS='[\"_compileJSON\",\"_license\",\"_version\",\"_compileJSONMulti\",\"_compileJSONCallback\",\"_compileStandard\"]' -s RESERVED_FUNCTION_POINTERS=20")
|
2017-08-16 11:30:09 +00:00
|
|
|
add_executable(soljson jsonCompiler.cpp)
|
2015-09-14 16:36:39 +00:00
|
|
|
else()
|
2017-08-16 11:30:09 +00:00
|
|
|
add_library(soljson jsonCompiler.cpp)
|
2015-09-14 16:36:39 +00:00
|
|
|
endif()
|
2017-08-22 20:50:03 +00:00
|
|
|
target_link_libraries(soljson PRIVATE solidity)
|
|
|
|
|
|
|
|
if(SOLC_LINK_STATIC AND UNIX AND NOT APPLE)
|
|
|
|
# Produce solc as statically linked binary (includes C/C++ standard libraries)
|
|
|
|
# This is not supported on macOS, see
|
|
|
|
# https://developer.apple.com/library/content/qa/qa1118/_index.html.
|
|
|
|
set_target_properties(
|
|
|
|
solc PROPERTIES
|
|
|
|
LINK_FLAGS -static
|
|
|
|
LINK_SEARCH_START_STATIC ON
|
|
|
|
LINK_SEARCH_END_STATIC ON
|
|
|
|
)
|
|
|
|
endif()
|