diff options
Diffstat (limited to 'Tests/Assembler/CMakeLists.txt')
-rw-r--r-- | Tests/Assembler/CMakeLists.txt | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/Tests/Assembler/CMakeLists.txt b/Tests/Assembler/CMakeLists.txt new file mode 100644 index 0000000..e68393e --- /dev/null +++ b/Tests/Assembler/CMakeLists.txt @@ -0,0 +1,22 @@ +project(Assembler) + +set(SRCS) + +# if no file has been set as source and we are on linux with an x86 processor try to use the gas/as assembler +if(NOT SRCS AND CMAKE_SYSTEM_NAME MATCHES Linux AND CMAKE_SYSTEM_PROCESSOR MATCHES "[ix].?86$") + message(STATUS "Trying to enable ASM-ATT for Linux/x86") + enable_language(ASM-ATT) + if(CMAKE_ASM-ATT_COMPILER_WORKS) + message(STATUS "Trying to enable ASM-ATT for Linux/x86 - succeeded") + # this assembler file was created using gcc -S main.c + set(SRCS main-linux-x86-gas.s) + endif(CMAKE_ASM-ATT_COMPILER_WORKS) +endif(NOT SRCS AND CMAKE_SYSTEM_NAME MATCHES Linux AND CMAKE_SYSTEM_PROCESSOR MATCHES "[ix].?86$") + +if(NOT SRCS) + message(STATUS "No assembler enabled, using C") + set(SRCS main.c) +endif(NOT SRCS) + +add_executable(HelloAsm ${SRCS}) +set_target_properties(HelloAsm PROPERTIES LINKER_LANGUAGE C) |