[cmake-developers] [CMake 0016030]: CMAKE_ASM_NASM_COMPILE_OBJECT lacks <INCLUDES>

Gregor Jasny gjasny at googlemail.com
Fri Mar 25 13:46:53 EDT 2016


Hello,

On 22/03/16 17:10, Mantis Bug Tracker wrote:
> Starting with CMake 3.4 the ASM_NASM language does not pass forward
> include_directories(XYZ) to the nasm compiler line.
> 
> As far as I can see <INCLUDES> is missing for other assemblers as well.

When I grep for CMAKE_ASM * _COMPILE_OBJECT I get the (non-complete) list:

> Modules/CMakeASM-ATTInformation.cmake:set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> <FLAGS> -o <OBJECT> <SOURCE>")
> Modules/CMakeASMInformation.cmake:  set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c <SOURCE>")
> Modules/CMakeASM_MASMInformation.cmake:set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> /c  /Fo <OBJECT> <SOURCE>")
> Modules/CMakeASM_NASMInformation.cmake:set(CMAKE_ASM_NASM_COMPILE_OBJECT "<CMAKE_ASM_NASM_COMPILER> <FLAGS> -f ${CMAKE_ASM_NASM_OBJECT_FORMAT} -o <OBJECT> <SOURCE>")
> Modules/Compiler/ARMCC-ASM.cmake:set(CMAKE_ASM_COMPILE_OBJECT       "<CMAKE_ASM_COMPILER> <FLAGS> -o <OBJECT> <SOURCE>")
> Modules/Compiler/IAR-ASM.cmake:set(CMAKE_ASM_COMPILE_OBJECT  "<CMAKE_ASM_COMPILER> <SOURCE> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT>")
> Modules/Compiler/TI-ASM.cmake:set(CMAKE_ASM_COMPILE_OBJECT  "<CMAKE_ASM_COMPILER> --compile_only --asm_file=<SOURCE> <DEFINES> <INCLUDES> <FLAGS> --output_file=<OBJECT>")
> Modules/Platform/gas.cmake:set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> <FLAGS> -o <OBJECT> <SOURCE>")

Does anyone see a reason to *not* prepend all <FLAGS> with a <INCLUDES>?

Thanks,
Gregor


More information about the cmake-developers mailing list