Clean up *.cmake style
parent
8a07426643
commit
ab9ad6f93e
@ -1,71 +1,71 @@
|
||||
# Helper to download files as needed
|
||||
|
||||
function(file_md5_if_exists FILE VAR)
|
||||
if(EXISTS "${FILE}")
|
||||
file(MD5 "${FILE}" "${VAR}")
|
||||
set(${VAR} "${${VAR}}" PARENT_SCOPE)
|
||||
else()
|
||||
set(${VAR} "" PARENT_SCOPE)
|
||||
endif()
|
||||
if(EXISTS "${FILE}")
|
||||
file(MD5 "${FILE}" "${VAR}")
|
||||
set(${VAR} "${${VAR}}" PARENT_SCOPE)
|
||||
else()
|
||||
set(${VAR} "" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(search_downloads FILE_MD5 VAR)
|
||||
set(${VAR} "" PARENT_SCOPE)
|
||||
file(GLOB FILES ${CMAKE_SOURCE_DIR}/CMake/downloads/*)
|
||||
foreach(FILE ${FILES})
|
||||
file(MD5 "${FILE}" CUR_MD5)
|
||||
if("${CUR_MD5}" STREQUAL "${FILE_MD5}")
|
||||
set(${VAR} ${FILE} PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
endforeach()
|
||||
set(${VAR} "" PARENT_SCOPE)
|
||||
file(GLOB FILES ${CMAKE_SOURCE_DIR}/CMake/downloads/*)
|
||||
foreach(FILE ${FILES})
|
||||
file(MD5 "${FILE}" CUR_MD5)
|
||||
if("${CUR_MD5}" STREQUAL "${FILE_MD5}")
|
||||
set(${VAR} ${FILE} PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
endforeach()
|
||||
endfunction()
|
||||
|
||||
function(download_file URL DEST EXPECTED_MD5)
|
||||
get_filename_component(FILENAME "${URL}" NAME)
|
||||
file_md5_if_exists("${DEST}" CUR_MD5)
|
||||
get_filename_component(FILENAME "${URL}" NAME)
|
||||
file_md5_if_exists("${DEST}" CUR_MD5)
|
||||
|
||||
if(NOT "${EXPECTED_MD5}" STREQUAL "${CUR_MD5}")
|
||||
search_downloads(${EXPECTED_MD5} DLPATH)
|
||||
if(NOT("${DLPATH}" STREQUAL ""))
|
||||
message("* Copying ${FILENAME} from ${DLPATH}")
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E copy
|
||||
"${DLPATH}"
|
||||
"${DEST}")
|
||||
return()
|
||||
endif()
|
||||
if(NOT "${EXPECTED_MD5}" STREQUAL "${CUR_MD5}")
|
||||
search_downloads(${EXPECTED_MD5} DLPATH)
|
||||
if(NOT("${DLPATH}" STREQUAL ""))
|
||||
message("* Copying ${FILENAME} from ${DLPATH}")
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E copy
|
||||
"${DLPATH}"
|
||||
"${DEST}")
|
||||
return()
|
||||
endif()
|
||||
|
||||
message("* Downloading ${FILENAME}")
|
||||
file(DOWNLOAD "${URL}" "${DEST}" EXPECTED_MD5 "${EXPECTED_MD5}" SHOW_PROGRESS)
|
||||
endif()
|
||||
message("* Downloading ${FILENAME}")
|
||||
file(DOWNLOAD "${URL}" "${DEST}" EXPECTED_MD5 "${EXPECTED_MD5}" SHOW_PROGRESS)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Download a file and uncompress it
|
||||
function(download_file_unzip URL ZIP_TYPE ZIP_DEST ZIP_MD5 UNZIP_DEST UNZIP_MD5)
|
||||
get_filename_component(FILENAME "${URL}" NAME)
|
||||
file_md5_if_exists("${UNZIP_DEST}" CUR_UNZIP_MD5)
|
||||
get_filename_component(FILENAME "${URL}" NAME)
|
||||
file_md5_if_exists("${UNZIP_DEST}" CUR_UNZIP_MD5)
|
||||
|
||||
# Redownload if the MD5 of the uncompressed file doesn't match
|
||||
if(NOT "${UNZIP_MD5}" STREQUAL "${CUR_UNZIP_MD5}")
|
||||
download_file("${URL}" "${ZIP_DEST}" "${ZIP_MD5}")
|
||||
# Redownload if the MD5 of the uncompressed file doesn't match
|
||||
if(NOT "${UNZIP_MD5}" STREQUAL "${CUR_UNZIP_MD5}")
|
||||
download_file("${URL}" "${ZIP_DEST}" "${ZIP_MD5}")
|
||||
|
||||
if(EXISTS "${ZIP_DEST}")
|
||||
message("* Decompressing ${FILENAME}")
|
||||
if("${ZIP_TYPE}" STREQUAL "gz")
|
||||
execute_process(COMMAND
|
||||
"${PERL_EXECUTABLE}" "${CMAKE_SOURCE_DIR}/depends/gunzip.pl"
|
||||
"${ZIP_DEST}" --force)
|
||||
else()
|
||||
message(SEND_ERROR "Unknown ZIP_TYPE: ${ZIP_TYPE}")
|
||||
endif()
|
||||
if(NOT EXISTS "${UNZIP_DEST}")
|
||||
message(SEND_ERROR "File failed to unzip to ${UNZIP_DEST}")
|
||||
else()
|
||||
file(MD5 "${UNZIP_DEST}" CUR_UNZIP_MD5)
|
||||
if(NOT "${UNZIP_MD5}" STREQUAL "${CUR_UNZIP_MD5}")
|
||||
message(SEND_ERROR "MD5 mismatch: ${UNZIP_DEST}: expected ${UNZIP_MD5}, got ${CUR_UNZIP_MD5}")
|
||||
if(EXISTS "${ZIP_DEST}")
|
||||
message("* Decompressing ${FILENAME}")
|
||||
if("${ZIP_TYPE}" STREQUAL "gz")
|
||||
execute_process(COMMAND
|
||||
"${PERL_EXECUTABLE}" "${CMAKE_SOURCE_DIR}/depends/gunzip.pl"
|
||||
"${ZIP_DEST}" --force)
|
||||
else()
|
||||
message(SEND_ERROR "Unknown ZIP_TYPE: ${ZIP_TYPE}")
|
||||
endif()
|
||||
if(NOT EXISTS "${UNZIP_DEST}")
|
||||
message(SEND_ERROR "File failed to unzip to ${UNZIP_DEST}")
|
||||
else()
|
||||
file(MD5 "${UNZIP_DEST}" CUR_UNZIP_MD5)
|
||||
if(NOT "${UNZIP_MD5}" STREQUAL "${CUR_UNZIP_MD5}")
|
||||
message(SEND_ERROR "MD5 mismatch: ${UNZIP_DEST}: expected ${UNZIP_MD5}, got ${CUR_UNZIP_MD5}")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
|
@ -1,155 +1,155 @@
|
||||
IF(UNIX)
|
||||
IF(NOT APPLE)
|
||||
# Linux: Check for unresolved symbols at link time
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-z,defs")
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wl,-z,defs")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
if(UNIX)
|
||||
if(NOT APPLE)
|
||||
# Linux: Check for unresolved symbols at link time
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-z,defs")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wl,-z,defs")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
include_directories("${dfhack_SOURCE_DIR}/library/include")
|
||||
include_directories("${dfhack_SOURCE_DIR}/library/proto")
|
||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/proto")
|
||||
include_directories("${dfhack_SOURCE_DIR}/library/depends/xgetopt")
|
||||
|
||||
MACRO(CAR var)
|
||||
SET(${var} ${ARGV1})
|
||||
ENDMACRO()
|
||||
|
||||
MACRO(CDR var junk)
|
||||
SET(${var} ${ARGN})
|
||||
ENDMACRO()
|
||||
|
||||
MACRO(LIST_CONTAINS var value)
|
||||
SET(${var})
|
||||
FOREACH (value2 ${ARGN})
|
||||
IF (${value} STREQUAL ${value2})
|
||||
SET(${var} TRUE)
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
ENDMACRO()
|
||||
|
||||
MACRO(PARSE_ARGUMENTS prefix arg_names option_names)
|
||||
SET(DEFAULT_ARGS)
|
||||
FOREACH(arg_name ${arg_names})
|
||||
SET(${prefix}_${arg_name})
|
||||
ENDFOREACH()
|
||||
|
||||
FOREACH(option ${option_names})
|
||||
SET(${prefix}_${option} FALSE)
|
||||
ENDFOREACH()
|
||||
|
||||
SET(current_arg_name DEFAULT_ARGS)
|
||||
SET(current_arg_list)
|
||||
FOREACH(arg ${ARGN})
|
||||
LIST_CONTAINS(is_arg_name ${arg} ${arg_names})
|
||||
IF (is_arg_name)
|
||||
SET(${prefix}_${current_arg_name} ${current_arg_list})
|
||||
SET(current_arg_name ${arg})
|
||||
SET(current_arg_list)
|
||||
ELSE()
|
||||
LIST_CONTAINS(is_option ${arg} ${option_names})
|
||||
IF(is_option)
|
||||
SET(${prefix}_${arg} TRUE)
|
||||
ELSE()
|
||||
SET(current_arg_list ${current_arg_list} ${arg})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
SET(${prefix}_${current_arg_name} ${current_arg_list})
|
||||
ENDMACRO()
|
||||
|
||||
MACRO(DFHACK_PLUGIN)
|
||||
PARSE_ARGUMENTS(PLUGIN
|
||||
"LINK_LIBRARIES;DEPENDS;PROTOBUFS;COMPILE_FLAGS;COMPILE_FLAGS_GCC;COMPILE_FLAGS_MSVC"
|
||||
"SOME_OPT"
|
||||
${ARGN}
|
||||
macro(car var)
|
||||
set(${var} ${ARGV1})
|
||||
endmacro()
|
||||
|
||||
macro(cdr var junk)
|
||||
set(${var} ${ARGN})
|
||||
endmacro()
|
||||
|
||||
macro(list_contains var value)
|
||||
set(${var})
|
||||
foreach(value2 ${ARGN})
|
||||
if(${value} STREQUAL ${value2})
|
||||
set(${var} TRUE)
|
||||
endif()
|
||||
endforeach()
|
||||
endmacro()
|
||||
|
||||
macro(parse_arguments prefix arg_names option_names)
|
||||
set(DEFAULT_ARGS)
|
||||
foreach(arg_name ${arg_names})
|
||||
set(${prefix}_${arg_name})
|
||||
endforeach()
|
||||
|
||||
foreach(option ${option_names})
|
||||
set(${prefix}_${option} FALSE)
|
||||
endforeach()
|
||||
|
||||
set(current_arg_name DEFAULT_ARGS)
|
||||
set(current_arg_list)
|
||||
foreach(arg ${ARGN})
|
||||
list_contains(is_arg_name ${arg} ${arg_names})
|
||||
if(is_arg_name)
|
||||
set(${prefix}_${current_arg_name} ${current_arg_list})
|
||||
set(current_arg_name ${arg})
|
||||
set(current_arg_list)
|
||||
else()
|
||||
list_contains(is_option ${arg} ${option_names})
|
||||
if(is_option)
|
||||
set(${prefix}_${arg} TRUE)
|
||||
else()
|
||||
set(current_arg_list ${current_arg_list} ${arg})
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
set(${prefix}_${current_arg_name} ${current_arg_list})
|
||||
endmacro()
|
||||
|
||||
macro(dfhack_plugin)
|
||||
parse_arguments(PLUGIN
|
||||
"LINK_LIBRARIES;DEPENDS;PROTOBUFS;COMPILE_FLAGS;COMPILE_FLAGS_GCC;COMPILE_FLAGS_MSVC"
|
||||
"SOME_OPT"
|
||||
${ARGN}
|
||||
)
|
||||
CAR(PLUGIN_NAME ${PLUGIN_DEFAULT_ARGS})
|
||||
CDR(PLUGIN_SOURCES ${PLUGIN_DEFAULT_ARGS})
|
||||
|
||||
SET(PLUGIN_PROTOS)
|
||||
FOREACH(pbuf ${PLUGIN_PROTOBUFS})
|
||||
LIST(APPEND PLUGIN_PROTOS ${CMAKE_CURRENT_SOURCE_DIR}/proto/${pbuf}.proto)
|
||||
ENDFOREACH()
|
||||
|
||||
LIST(LENGTH PLUGIN_PROTOS NUM_PROTO)
|
||||
IF(NUM_PROTO)
|
||||
STRING(REPLACE ".proto" ".pb.cc" PLUGIN_PROTO_SRCS "${PLUGIN_PROTOS}")
|
||||
STRING(REPLACE ".proto" ".pb.h" PLUGIN_PROTO_HDRS "${PLUGIN_PROTOS}")
|
||||
STRING(REPLACE "/proto/" "/proto/tmp/" PLUGIN_PROTO_TMP_FILES "${PLUGIN_PROTO_SRCS};${PLUGIN_PROTO_HDRS}")
|
||||
SET_SOURCE_FILES_PROPERTIES(${PLUGIN_PROTO_SRCS} ${PLUGIN_PROTO_HDRS} PROPERTIES GENERATED TRUE)
|
||||
|
||||
# Force a re-gen if any *.pb.* files are missing
|
||||
# (only runs when cmake is run, but better than nothing)
|
||||
FOREACH(file IN LISTS PLUGIN_PROTO_SRCS PLUGIN_PROTO_HDRS)
|
||||
IF(NOT EXISTS ${file})
|
||||
# MESSAGE("Resetting generate_proto_${PLUGIN_NAME} because '${file}' is missing")
|
||||
FILE(REMOVE ${PLUGIN_PROTO_TMP_FILES})
|
||||
BREAK()
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
|
||||
ADD_CUSTOM_COMMAND(
|
||||
OUTPUT ${PLUGIN_PROTO_TMP_FILES}
|
||||
COMMAND protoc-bin -I=${CMAKE_CURRENT_SOURCE_DIR}/proto/
|
||||
car(PLUGIN_NAME ${PLUGIN_DEFAULT_ARGS})
|
||||
cdr(PLUGIN_SOURCES ${PLUGIN_DEFAULT_ARGS})
|
||||
|
||||
set(PLUGIN_PROTOS)
|
||||
foreach(pbuf ${PLUGIN_PROTOBUFS})
|
||||
list(APPEND PLUGIN_PROTOS ${CMAKE_CURRENT_SOURCE_DIR}/proto/${pbuf}.proto)
|
||||
endforeach()
|
||||
|
||||
list(LENGTH PLUGIN_PROTOS NUM_PROTO)
|
||||
if(NUM_PROTO)
|
||||
string(REPLACE ".proto" ".pb.cc" PLUGIN_PROTO_SRCS "${PLUGIN_PROTOS}")
|
||||
string(REPLACE ".proto" ".pb.h" PLUGIN_PROTO_HDRS "${PLUGIN_PROTOS}")
|
||||
string(REPLACE "/proto/" "/proto/tmp/" PLUGIN_PROTO_TMP_FILES "${PLUGIN_PROTO_SRCS};${PLUGIN_PROTO_HDRS}")
|
||||
set_source_files_properties(${PLUGIN_PROTO_SRCS} ${PLUGIN_PROTO_HDRS} PROPERTIES GENERATED TRUE)
|
||||
|
||||
# Force a re-gen if any *.pb.* files are missing
|
||||
# (only runs when cmake is run, but better than nothing)
|
||||
foreach(file IN LISTS PLUGIN_PROTO_SRCS PLUGIN_PROTO_HDRS)
|
||||
if(NOT EXISTS ${file})
|
||||
# MESSAGE("Resetting generate_proto_${PLUGIN_NAME} because '${file}' is missing")
|
||||
file(REMOVE ${PLUGIN_PROTO_TMP_FILES})
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${PLUGIN_PROTO_TMP_FILES}
|
||||
COMMAND protoc-bin -I=${CMAKE_CURRENT_SOURCE_DIR}/proto/
|
||||
--cpp_out=${CMAKE_CURRENT_SOURCE_DIR}/proto/tmp/
|
||||
${PLUGIN_PROTOS}
|
||||
COMMAND ${PERL_EXECUTABLE} ${CMAKE_SOURCE_DIR}/depends/copy-if-different.pl
|
||||
COMMAND ${PERL_EXECUTABLE} ${CMAKE_SOURCE_DIR}/depends/copy-if-different.pl
|
||||
${PLUGIN_PROTO_TMP_FILES}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/proto/
|
||||
COMMENT "Generating plugin ${PLUGIN_NAME} protobufs"
|
||||
DEPENDS protoc-bin ${PLUGIN_PROTOS}
|
||||
)
|
||||
|
||||
IF(UNIX)
|
||||
SET_SOURCE_FILES_PROPERTIES(${PLUGIN_PROTO_SRCS} PROPERTIES COMPILE_FLAGS "-Wno-misleading-indentation")
|
||||
ENDIF()
|
||||
|
||||
ADD_CUSTOM_TARGET(generate_proto_${PLUGIN_NAME} DEPENDS ${PLUGIN_PROTO_TMP_FILES})
|
||||
|
||||
# Merge headers into sources
|
||||
SET_SOURCE_FILES_PROPERTIES( ${PLUGIN_PROTO_HDRS} PROPERTIES HEADER_FILE_ONLY TRUE )
|
||||
LIST(APPEND PLUGIN_SOURCES ${PLUGIN_PROTO_HDRS})
|
||||
LIST(APPEND PLUGIN_SOURCES ${PLUGIN_PROTO_SRCS})
|
||||
|
||||
IF(UNIX)
|
||||
SET(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} -include Export.h")
|
||||
ELSE()
|
||||
SET(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} /FI\"Export.h\"")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
ADD_LIBRARY(${PLUGIN_NAME} MODULE ${PLUGIN_SOURCES})
|
||||
IDE_FOLDER(${PLUGIN_NAME} "Plugins")
|
||||
|
||||
IF(NUM_PROTO)
|
||||
ADD_DEPENDENCIES(${PLUGIN_NAME} generate_proto_${PLUGIN_NAME})
|
||||
TARGET_LINK_LIBRARIES(${PLUGIN_NAME} dfhack protobuf-lite dfhack-version ${PLUGIN_LINK_LIBRARIES})
|
||||
ELSE()
|
||||
TARGET_LINK_LIBRARIES(${PLUGIN_NAME} dfhack dfhack-version ${PLUGIN_LINK_LIBRARIES})
|
||||
ENDIF()
|
||||
|
||||
ADD_DEPENDENCIES(${PLUGIN_NAME} dfhack-version)
|
||||
|
||||
# Make sure the source is generated before the executable builds.
|
||||
ADD_DEPENDENCIES(${PLUGIN_NAME} generate_proto)
|
||||
|
||||
IF(UNIX)
|
||||
SET(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} ${PLUGIN_COMPILE_FLAGS_GCC}")
|
||||
ELSE()
|
||||
SET(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} ${PLUGIN_COMPILE_FLAGS_MSVC}")
|
||||
ENDIF()
|
||||
SET_TARGET_PROPERTIES(${PLUGIN_NAME} PROPERTIES COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS}")
|
||||
|
||||
IF(APPLE)
|
||||
SET_TARGET_PROPERTIES(${PLUGIN_NAME} PROPERTIES SUFFIX .plug.dylib PREFIX "")
|
||||
ELSEIF(UNIX)
|
||||
SET_TARGET_PROPERTIES(${PLUGIN_NAME} PROPERTIES SUFFIX .plug.so PREFIX "")
|
||||
ELSE()
|
||||
SET_TARGET_PROPERTIES(${PLUGIN_NAME} PROPERTIES SUFFIX .plug.dll)
|
||||
ENDIF()
|
||||
|
||||
install(TARGETS ${PLUGIN_NAME}
|
||||
LIBRARY DESTINATION ${DFHACK_PLUGIN_DESTINATION}
|
||||
RUNTIME DESTINATION ${DFHACK_PLUGIN_DESTINATION})
|
||||
ENDMACRO(DFHACK_PLUGIN)
|
||||
COMMENT "Generating plugin ${PLUGIN_NAME} protobufs"
|
||||
DEPENDS protoc-bin ${PLUGIN_PROTOS}
|
||||
)
|
||||
|
||||
if(UNIX)
|
||||
set_source_files_properties(${PLUGIN_PROTO_SRCS} PROPERTIES COMPILE_FLAGS "-Wno-misleading-indentation")
|
||||
endif()
|
||||
|
||||
add_custom_target(generate_proto_${PLUGIN_NAME} DEPENDS ${PLUGIN_PROTO_TMP_FILES})
|
||||
|
||||
# Merge headers into sources
|
||||
set_source_files_properties( ${PLUGIN_PROTO_HDRS} PROPERTIES HEADER_FILE_ONLY TRUE )
|
||||
list(APPEND PLUGIN_SOURCES ${PLUGIN_PROTO_HDRS})
|
||||
list(APPEND PLUGIN_SOURCES ${PLUGIN_PROTO_SRCS})
|
||||
|
||||
if(UNIX)
|
||||
set(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} -include Export.h")
|
||||
else()
|
||||
set(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} /FI\"Export.h\"")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
add_library(${PLUGIN_NAME} MODULE ${PLUGIN_SOURCES})
|
||||
ide_folder(${PLUGIN_NAME} "Plugins")
|
||||
|
||||
if(NUM_PROTO)
|
||||
add_dependencies(${PLUGIN_NAME} generate_proto_${PLUGIN_NAME})
|
||||
target_link_libraries(${PLUGIN_NAME} dfhack protobuf-lite dfhack-version ${PLUGIN_LINK_LIBRARIES})
|
||||
else()
|
||||
target_link_libraries(${PLUGIN_NAME} dfhack dfhack-version ${PLUGIN_LINK_LIBRARIES})
|
||||
endif()
|
||||
|
||||
add_dependencies(${PLUGIN_NAME} dfhack-version)
|
||||
|
||||
# Make sure the source is generated before the executable builds.
|
||||
add_dependencies(${PLUGIN_NAME} generate_proto)
|
||||
|
||||
if(UNIX)
|
||||
set(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} ${PLUGIN_COMPILE_FLAGS_GCC}")
|
||||
else()
|
||||
set(PLUGIN_COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS} ${PLUGIN_COMPILE_FLAGS_MSVC}")
|
||||
endif()
|
||||
set_target_properties(${PLUGIN_NAME} PROPERTIES COMPILE_FLAGS "${PLUGIN_COMPILE_FLAGS}")
|
||||
|
||||
if(APPLE)
|
||||
set_target_properties(${PLUGIN_NAME} PROPERTIES SUFFIX .plug.dylib PREFIX "")
|
||||
elseif(UNIX)
|
||||
set_target_properties(${PLUGIN_NAME} PROPERTIES SUFFIX .plug.so PREFIX "")
|
||||
else()
|
||||
set_target_properties(${PLUGIN_NAME} PROPERTIES SUFFIX .plug.dll)
|
||||
endif()
|
||||
|
||||
install(TARGETS ${PLUGIN_NAME}
|
||||
LIBRARY DESTINATION ${DFHACK_PLUGIN_DESTINATION}
|
||||
RUNTIME DESTINATION ${DFHACK_PLUGIN_DESTINATION})
|
||||
endmacro()
|
||||
|
Loading…
Reference in New Issue