/*\r
* COPYRIGHT: See COPYING in the top level directory\r
* PROJECT: ReactOS Kernel\r
- * FILE: ntoskrnl/include/amd64/asmmacro.S\r
+ * FILE: include/asm/asm.inc\r
* PURPOSE: ASM macros for GAS and MASM/ML64\r
* PROGRAMMERS: Timo Kreuzer (timo.kreuzer@reactos.org)\r
*/\r
\r
.macro absolute address\r
__absolute__address__ = \address\r
-ENDM\r
+.endm\r
\r
.macro resb name, size\r
\name = __absolute__address__\r
__absolute__address__ = __absolute__address__ + \size\r
-ENDM\r
+.endm\r
\r
.macro UNIMPLEMENTED2 file, line, func\r
-\r
jmp 3f\r
1: .asciz "\func"\r
2: .asciz \file\r
# many ASM files is by concatenating them into a single one and
# compile the resulting file.
concatenate_files(${_concatenated_asm_file} ${_source_file_list})
+ set_source_files_properties(${_concatenated_asm_file} PROPERTIES GENERATED TRUE)
##
## All this part is the same as CreateBootSectorTarget
# COMMAND objcopy --output-target binary --image-base 0x${_base_address} ${_object_file} ${_binary_file}
DEPENDS ${_object_file} native-obj2bin)
- set_source_files_properties(${_object_file} ${_binary_file} PROPERTIES GENERATED TRUE)
-
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()
+ add_clean_target(${_target})
endfunction()
else()
# many ASM files is by concatenating them into a single one and
# compile the resulting file.
concatenate_files(${_concatenated_asm_file} ${_source_file_list})
+ set_source_files_properties(${_concatenated_asm_file} PROPERTIES GENERATED TRUE)
##
## All this part is the same as CreateBootSectorTarget
COMMAND native-obj2bin ${_object_file} ${_binary_file} ${_base_address}
DEPENDS ${_object_file} native-obj2bin)
- set_source_files_properties(${_object_file} ${_preprocessed_asm_file} ${_binary_file} PROPERTIES GENERATED TRUE)
-
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()
+ add_clean_target(${_target})
endfunction()
endif()
#####################################
# 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 ${CMAKE_CURRENT_BINARY_DIR}/../dos/command.com ${CMAKE_CURRENT_BINARY_DIR}/command_com.c ${CMAKE_CURRENT_BINARY_DIR}/command_com.h BIN CommandCom
- DEPENDS native-bin2c command)
+ 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})
#####################################
include_directories(${REACTOS_SOURCE_DIR}/include/reactos/libs/fast486)