\r
-MACRO(_PCH_GET_COMPILE_FLAGS _target_name _out_compile_flags _header_filename)\r
-\r
- # Add the precompiled header to the build\r
- get_filename_component(FILE ${_header_filename} NAME)\r
- set(_gch_filename "${_target_name}_${FILE}.gch")\r
- list(APPEND ${_out_compile_flags} -c ${_header_filename} -o ${_gch_filename})\r
-\r
- # This gets us our includes\r
- get_directory_property(DIRINC INCLUDE_DIRECTORIES)\r
- foreach(item ${DIRINC})\r
- list(APPEND ${_out_compile_flags} -I${item})\r
- endforeach(item) \r
-\r
- # This is a particular bit of undocumented/hacky magic I'm quite proud of\r
- get_directory_property(_compiler_flags DEFINITIONS)\r
- string(REPLACE "\ " "\t" _compiler_flags ${_compiler_flags})\r
- list(APPEND ${_out_compile_flags} ${_compiler_flags})\r
-\r
- # This gets any specific definitions that were added with set-target-property\r
- get_target_property(_target_defs ${_target_name} COMPILE_DEFINITIONS)\r
- if (_target_defs)\r
- foreach(item ${_target_defs})\r
- list(APPEND ${_out_compile_flags} -D${item})\r
- endforeach(item)\r
- endif()\r
-\r
-ENDMACRO(_PCH_GET_COMPILE_FLAGS) \r
-\r
-MACRO(add_pch _target_name _header_filename _src_list)\r
- \r
- get_filename_component(FILE ${_header_filename} NAME)\r
- set(_gch_filename "${_target_name}_${FILE}.gch")\r
- list(APPEND ${_src_list} ${_gch_filename})\r
- _PCH_GET_COMPILE_FLAGS(${_target_name} _args ${_header_filename})\r
- file(REMOVE ${_gch_filename})\r
- add_custom_command(\r
- OUTPUT ${_gch_filename}\r
- COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_COMPILER_ARG1} ${_args}\r
- DEPENDS ${_header_filename})\r
-\r
-ENDMACRO(add_pch _target_name _header_filename _src_list)\r
\r
if (NOT MSVC)\r
MACRO(CreateBootSectorTarget _target_name _asm_file _object_file)\r
add_custom_command(\r
OUTPUT ${_object_file}\r
COMMAND nasm -o ${_object_file} ${result_incs} ${result_defs} -f bin ${_asm_file}\r
- DEPENDS native-winebuild)\r
+ DEPENDS ${_asm_file})\r
set_source_files_properties(${_object_file} PROPERTIES GENERATED TRUE)\r
add_custom_target(${_target_name} ALL DEPENDS ${_object_file})\r
add_minicd(${_object_file} loader ${OBJECT_NAME})\r