[CMAKE] Avoid use of the LOCATION property for asm16 files. CORE-14509

In particular, ntvdm needs to post-process command.com, so this adds
a BINARY_PATH property to such files instead.
This commit is contained in:
Thomas Faber 2018-03-30 13:03:40 +02:00
parent 07720ed9a8
commit f9e1e23dab
No known key found for this signature in database
GPG key ID: 076E7C3D44720826
3 changed files with 5 additions and 11 deletions

View file

@ -56,8 +56,7 @@ function(add_asm16_bin _target _binary_file _base_address)
add_custom_target(${_target} ALL DEPENDS ${_binary_file})
# set_target_properties(${_target} PROPERTIES OUTPUT_NAME ${_target} SUFFIX ".bin")
set_target_properties(${_target} PROPERTIES LOCATION_${CMAKE_BUILD_TYPE} ${_binary_file}) ## Support of $<TARGET_FILE:xxx> is limited to add_executable() or add_library()
set_target_properties(${_target} PROPERTIES LOCATION ${_binary_file}) ## Support of $<TARGET_FILE:xxx> is limited to add_executable() or add_library()
set_target_properties(${_target} PROPERTIES BINARY_PATH ${_binary_file})
add_clean_target(${_target})
endfunction()
@ -120,8 +119,7 @@ function(add_asm16_bin _target _binary_file _base_address)
add_custom_target(${_target} ALL DEPENDS ${_binary_file})
# set_target_properties(${_target} PROPERTIES OUTPUT_NAME ${_target} SUFFIX ".bin")
set_target_properties(${_target} PROPERTIES LOCATION_${CMAKE_BUILD_TYPE} ${_binary_file}) ## Support of $<TARGET_FILE:xxx> is limited to add_executable() or add_library()
set_target_properties(${_target} PROPERTIES LOCATION ${_binary_file}) ## Support of $<TARGET_FILE:xxx> is limited to add_executable() or add_library()
set_target_properties(${_target} PROPERTIES BINARY_PATH ${_binary_file})
add_clean_target(${_target})
endfunction()

View file

@ -1,4 +1,4 @@
include_directories(${REACTOS_SOURCE_DIR}/subsystems/mvdm/dos)
add_asm16_bin(command ${CMAKE_CURRENT_BINARY_DIR}/command.com 0x0100 command.S)
add_cd_file(TARGET command DESTINATION reactos/system32 FOR all)
add_cd_file(TARGET command FILE $<TARGET_PROPERTY:command,BINARY_PATH> DESTINATION reactos/system32 FOR all)

View file

@ -4,14 +4,10 @@ PROJECT(NTVDM)
#####################################
# Generate the integrated COMMAND.COM
#
# Retrieve the full path to the generated file of the 'command' target
get_target_property(_command_com_file command LOCATION)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/command_com.c ${CMAKE_CURRENT_BINARY_DIR}/command_com.h
COMMAND native-bin2c ${_command_com_file} ${CMAKE_CURRENT_BINARY_DIR}/command_com.c ${CMAKE_CURRENT_BINARY_DIR}/command_com.h BIN CommandCom
DEPENDS native-bin2c command ${_command_com_file})
COMMAND native-bin2c $<TARGET_PROPERTY:command,BINARY_PATH> ${CMAKE_CURRENT_BINARY_DIR}/command_com.c ${CMAKE_CURRENT_BINARY_DIR}/command_com.h BIN CommandCom
DEPENDS native-bin2c command)
#####################################
include_directories(${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/fast486)