Смешивание C и сборочных исходников и сборка с помощью cmake

m использует eclipse для создания проекта avr-gcc, который смешивает код сборки и исходные файлы на языке C. Я хочу избавиться от автоматической генерации затмений в make-файлах, потому что мне нужно автоматизировать некоторые процессы в make-файлах и по другим причинам.

Я использовал cmake несколько раз назад, и я был счастлив с ним, поэтому я хочу попробовать скомпилировать мои исходные файлы, используя его. Все работает, как и ожидалось, с C-источниками. Проблема в том, что в конце мне нужно скомпилировать некоторые файлы сборки (на самом деле 2) и добавить их к цели.

Я гуглил вокруг, но я неЯ нашел способ сделать это. у кого-то есть идеи как это сделать?

Проблема в том, что в затмении у меня есть -x ассемблер-с-Cpp

добавлено в список аргументов gcc. Мне нужно найти способ выборочного добавления этого параметра в стандартный список аргументов gcc только для файлов asm. Я не'Не могу найти никакого способа сделать это.

заранее спасибо

РЕШЕНИЕ: установите в CMakeLists.txt каждый файл для компиляции в том же списке

enable_language(C ASM)

set ( SOURCES 
    foo.c
    bar.c
    foobar.s
)

add_executable(program  ${SOURCES} ) 

в файле Toolchain вы должны разместить:

SET(ASM_OPTIONS "-x assembler-with-cpp")
SET(CMAKE_ASM_FLAGS "${CFLAGS} ${ASM_OPTIONS}" )

вторая строка - просто если вам нужно передать дополнительные параметры при компиляции asm-файлов. Я хотел передать все CFLAGS плюс некоторые ASM_OPTIONS

Ответы на вопрос(2)

Ваш ответ на вопрос