mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-14 02:03:12 +02:00
Cmake: avoid policy warning in newstorke upgrade target
This commit is contained in:
parent
8470229767
commit
8de99b8077
@ -23,19 +23,19 @@ endif()
|
|||||||
# KICAD_CLI_UPGRADE_SYMS(FILE TARGET [FORCE])
|
# KICAD_CLI_UPGRADE_SYMS(FILE TARGET [FORCE])
|
||||||
#
|
#
|
||||||
# Arguments:
|
# Arguments:
|
||||||
# FILE - The symbol library file to upgrade
|
# FILES - The symbol library file to upgrade
|
||||||
# TARGET - The CMake target to add the upgrade command to
|
# TARGET - The CMake target to add the upgrade command to
|
||||||
# FORCE - Optional argument to force the upgrade
|
# FORCE - Optional argument to force the upgrade
|
||||||
#
|
#
|
||||||
function(KICAD_CLI_UPGRADE_SYMS FILE TARGET)
|
function(KICAD_CLI_UPGRADE_SYMS)
|
||||||
if (NOT KICAD_CLI)
|
if (NOT KICAD_CLI)
|
||||||
message(FATAL_ERROR "Cannot run upgrade target (kicad-cli not found)")
|
message(FATAL_ERROR "Cannot run upgrade target (kicad-cli not found)")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Parse the optional FORCE argument
|
# Parse the optional FORCE argument
|
||||||
set(options FORCE)
|
set(options FORCE)
|
||||||
set(oneValueArgs)
|
set(oneValueArgs TARGET)
|
||||||
set(multiValueArgs)
|
set(multiValueArgs FILES)
|
||||||
cmake_parse_arguments(ARGS "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
cmake_parse_arguments(ARGS "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||||
|
|
||||||
# Check if FORCE was provided
|
# Check if FORCE was provided
|
||||||
@ -45,11 +45,19 @@ function(KICAD_CLI_UPGRADE_SYMS FILE TARGET)
|
|||||||
set(FORCE_ARG "")
|
set(FORCE_ARG "")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Validate required arguments
|
||||||
|
if(NOT ARGS_TARGET)
|
||||||
|
message(FATAL_ERROR "KICAD_CLI_UPGRADE_SYMS requires a TARGET argument")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
foreach(FILE ${ARGS_FILES})
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
TARGET ${TARGET}
|
TARGET ${ARGS_TARGET}
|
||||||
|
PRE_BUILD
|
||||||
COMMAND ${KICAD_CLI} sym upgrade ${FORCE_ARG} ${FILE}
|
COMMAND ${KICAD_CLI} sym upgrade ${FORCE_ARG} ${FILE}
|
||||||
DEPENDS ${FILE}
|
|
||||||
COMMENT
|
COMMENT
|
||||||
"Upgrading symbol lib format: ${FILE}"
|
"Upgrading symbol lib format: ${FILE}"
|
||||||
)
|
)
|
||||||
|
endforeach()
|
||||||
|
|
||||||
endfunction()
|
endfunction()
|
@ -23,6 +23,9 @@ set(NEWSTROKE_SOURCE_FILES
|
|||||||
katakana.kicad_sym
|
katakana.kicad_sym
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Make the files absolute (in-place)
|
||||||
|
list(TRANSFORM NEWSTROKE_SOURCE_FILES PREPEND ${CMAKE_CURRENT_SOURCE_DIR}/)
|
||||||
|
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT
|
OUTPUT
|
||||||
@ -53,11 +56,9 @@ else()
|
|||||||
COMMENT "Running format update on all newstroke .kicad_sym files"
|
COMMENT "Running format update on all newstroke .kicad_sym files"
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach(NEWSTROKE_SOURCE_FILE ${NEWSTROKE_SOURCE_FILES})
|
|
||||||
KICAD_CLI_UPGRADE_SYMS(
|
KICAD_CLI_UPGRADE_SYMS(
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/${NEWSTROKE_SOURCE_FILE}
|
TARGET newstroke_upgrade_syms
|
||||||
newstroke_upgrade_syms
|
FILES ${NEWSTROKE_SOURCE_FILES}
|
||||||
)
|
)
|
||||||
endforeach()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user