zephyr/cmake/cfb.cmake
Anas Nashif 3ae52624ff license: cleanup: add SPDX Apache-2.0 license identifier
Update the files which contain no license information with the
'Apache-2.0' SPDX license identifier.  Many source files in the tree are
missing licensing information, which makes it harder for compliance
tools to determine the correct license.

By default all files without license information are under the default
license of Zephyr, which is Apache version 2.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-07 08:45:22 -04:00

64 lines
2.5 KiB
CMake

# SPDX-License-Identifier: Apache-2.0
# These functions can be used to generate a CFB font include file from
# a TrueType/OpenType font file or an image file.
function(generate_cfb_font
input_file # The TrueType/OpenType font file or the image file
output_file # The generated header file
width # Width of the CFB font elements in pixels
height # Height of the CFB font elements in pixels
)
add_custom_command(
OUTPUT ${output_file}
COMMAND
${PYTHON_EXECUTABLE}
${ZEPHYR_BASE}/scripts/gen_cfb_font_header.py
--input ${input_file}
--output ${output_file}
--width ${width}
--height ${height}
${ARGN} # Extra arguments are passed to gen_cfb_font_header.py
DEPENDS ${source_file}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
endfunction()
function(generate_cfb_font_for_gen_target
target # The cmake target that depends on the generated file
input_file # The TrueType/OpenType font file or the image file
output_file # The generated header file
width # Width of the CFB font elements in pixels
height # Height of the CFB font elements in pixels
gen_target # The generated file target we depend on
# Any additional arguments are passed on to
# gen_cfb_font_header.py
)
generate_cfb_font(${input_file} ${output_file} ${width} ${height} ${ARGN})
# Ensure 'output_file' is generated before 'target' by creating a
# dependency between the two targets
add_dependencies(${target} ${gen_target})
endfunction()
function(generate_cfb_font_for_target
target # The cmake target that depends on the generated file
input_file # The TrueType/OpenType font file or image file
output_file # The generated header file
width # Width of the CFB font elements in pixels
height # Height of the CFB font elements in pixels
# Any additional arguments are passed on to
# gen_cfb_font_header.py
)
# Ensure 'output_file' is generated before 'target' by creating a
# 'custom_target' for it and setting up a dependency between the two
# targets
# But first create a unique name for the custom target
generate_unique_target_name_from_filename(${output_file} generated_target_name)
add_custom_target(${generated_target_name} DEPENDS ${output_file})
generate_cfb_font_for_gen_target(${target} ${input_file} ${output_file}
${width} ${height} ${generated_target_name} ${ARGN})
endfunction()