yuzu/externals/vcpkg/ports/jsonnet/002-fix-dependency-and-inst...

57 lines
2.0 KiB
Diff
Executable File

diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt
--- a/core/CMakeLists.txt
+++ b/core/CMakeLists.txt
@@ -28,6 +28,7 @@ set(LIBJSONNET_SOURCE
string_utils.cpp
vm.cpp)
+if (BUILD_SHARED_BINARIES)
add_library(libjsonnet ${LIBJSONNET_HEADERS} ${LIBJSONNET_SOURCE})
add_dependencies(libjsonnet md5 stdlib)
target_link_libraries(libjsonnet md5 nlohmann_json::nlohmann_json)
@@ -48,6 +49,7 @@ install(TARGETS libjsonnet
PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
target_include_directories(libjsonnet INTERFACE
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>)
+endif()
if (BUILD_STATIC_LIBS)
# Static library for jsonnet command-line tool.
@@ -102,3 +104,5 @@ if (BUILD_TESTS)
add_test(jsonnet_test_snippet
${GLOBAL_OUTPUT_PATH}/jsonnet -e ${TEST_SNIPPET})
endif()
+
+install(FILES ${LIB_HEADER} DESTINATION include)
diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
--- a/cpp/CMakeLists.txt
+++ b/cpp/CMakeLists.txt
@@ -8,9 +8,9 @@ set(LIBJSONNETPP_SOURCE
libjsonnet++.cpp
)
+if (BUILD_SHARED_BINARIES)
add_library(libjsonnet++ SHARED ${LIBJSONNETPP_HEADERS} ${LIBJSONNETPP_SOURCE})
-add_dependencies(libjsonnet++ jsonnet)
-# target_link_libraries(libjsonnet libjsonnet)
+target_link_libraries(libjsonnet libjsonnet)
# CMake prepends CMAKE_SHARED_LIBRARY_PREFIX to shared libraries, so without
# this step the output would be |liblibjsonnet|.
@@ -24,6 +24,7 @@ install(TARGETS libjsonnet++
PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
target_include_directories(libjsonnet++ INTERFACE
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>)
+endif()
if (BUILD_STATIC_LIBS)
# Static library for jsonnet command-line tool.
@@ -38,6 +39,7 @@ else()
add_library(libjsonnet++_for_binaries ALIAS libjsonnet++_static)
endif()
+install(FILES ${LIBJSONNETPP_HEADERS} DESTINATION include)
# Tests
function(add_test_executablepp test_name)
if (EXISTS ${CMAKE_CURRENT_LIST_DIR}/${test_name}.cpp)