aboutsummaryrefslogtreecommitdiff
path: root/src/mock/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/mock/CMakeLists.txt')
-rw-r--r--src/mock/CMakeLists.txt35
1 files changed, 22 insertions, 13 deletions
diff --git a/src/mock/CMakeLists.txt b/src/mock/CMakeLists.txt
index 80f2eac..1b23c63 100644
--- a/src/mock/CMakeLists.txt
+++ b/src/mock/CMakeLists.txt
@@ -1,18 +1,23 @@
-add_subdirectory(wine)
-
+list(APPEND
+ MOCK_SOURCES
+ ${CMAKE_CURRENT_SOURCE_DIR}/libcurl.c
+)
-set(WINE_JSON_INFILE "${CMAKE_CURRENT_SOURCE_DIR}/runners/wine.json")
-set(WINE_JSON_OUTFILE "${CMAKE_CURRENT_BINARY_DIR}/wine_json")
+if (ENABLE_WINE)
+add_subdirectory(wine)
+include_directories(${WINE_MOCK_ARCHIVE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
+set(WINE_MOCK_JSON_INFILE "${CMAKE_CURRENT_SOURCE_DIR}/runners/wine.json")
+set(WINE_MOCK_JSON_OUTFILE "${CMAKE_CURRENT_BINARY_DIR}/wine_json")
add_custom_command(
- OUTPUT ${WINE_JSON_OUTFILE}.c ${WINE_JSON_OUTFILE}.h
+ OUTPUT ${WINE_MOCK_JSON_OUTFILE}.c ${WINE_MOCK_JSON_OUTFILE}.h
COMMAND ${CMAKE_COMMAND}
- "-Dbin_in=${WINE_JSON_INFILE}"
+ "-Dbin_in=${WINE_MOCK_JSON_INFILE}"
-P ${CMAKE_SOURCE_DIR}/cmake/FileEmbed.cmake
)
-add_custom_target(wine_json ALL DEPENDS ${WINE_JSON_OUTFILE}.c ${WINE_JSON_OUTFILE}.h)
+add_custom_target(wine_mock_json ALL DEPENDS ${WINE_MOCK_JSON_OUTFILE}.c ${WINE_MOCK_JSON_OUTFILE}.h)
set(WINE_MOCK
${WINE_MOCK_ARCHIVE_OUT}.c
@@ -21,18 +26,22 @@ set(WINE_MOCK
file(TOUCH ${WINE_MOCK})
-SET(MOCK_SOURCES
- ${CMAKE_CURRENT_SOURCE_DIR}/libcurl.c
+list(APPEND
+ MOCK_SOURCES
${WINE_MOCK}
- ${WINE_JSON_OUTFILE}.c
- ${WINE_JSON_OUTFILE}.h
+ ${WINE_MOCK_JSON_OUTFILE}.c
+ ${WINE_MOCK_JSON_OUTFILE}.h
)
+endif()
+
add_library(mock STATIC ${MOCK_SOURCES})
target_compile_options(mock PUBLIC ${CFLAGS})
target_include_directories(mock PUBLIC ${LIBCURL_INCLUDE_DIRS})
-add_dependencies(mock wine_mock_archive wine_json)
-target_include_directories(mock PRIVATE ${WINE_MOCK_ARCHIVE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
+
+if (ENABLE_WINE)
+add_dependencies(mock wine_mock_archive wine_mock_json)
+endif()
set(NAME ${CMAKE_PROJECT_NAME}_mock)
add_executable(${NAME} ${SOURCES})