Я использую CMake 3.4.1 для генерации и сборки 64-битного решения C ++ для Visual Studio 2013. Один из проектов также содержит файлы .asm, которые мы компилируем в VisualStudio с помощью ассемблера yasm в качестве lib. Как настроить CMake для использования yasm для этих файлов? Я не нашел никакой документации с примером того, как это настроить.
Посмотрите на следующий пример:
cmake_minimum_required(VERSION 3.0)
project(YasmCmake)
find_program(YASM_EXE NAMES yasm)
add_custom_command(OUTPUT hello.o COMMAND ${YASM_EXE}
ARGS -f elf64 -o hello.o ${CMAKE_CURRENT_SOURCE_DIR}/hello.asm)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
add_library(Hello hello.o)
set_target_properties(Hello PROPERTIES LINKER_LANGUAGE CXX)
Конечно, вам нужно указать флаги для yasm в зависимости от вашей платформы.
Других решений пока нет …