• Home
  • Raw
  • Download

Lines Matching +full:mingw +full:- +full:no +full:- +full:asm

2 # Copyright (c) 2014-2023 The Khronos Group Inc.
3 # Copyright (c) 2014-2023 Valve Corporation
4 # Copyright (c) 2014-2023 LunarG, Inc.
6 # Copyright (c) 2023-2023 RasterGrid Kft.
12 # http://www.apache.org/licenses/LICENSE-2.0
29 …# Note: When linking your app or driver to OneCore.lib, be sure to remove any links to non-umbrell…
50 # Place it in the build directory - the GN build will use the checked in file
122 if(USE_MASM AND MINGW)
126 … execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpmachine OUTPUT_VARIABLE COMPILER_VERSION_OUTPUT)
129 set(JWASM_FLAGS -win64)
132 set(JWASM_FLAGS -3 -coff)
155 file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/masm_check.asm [=[
163 file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/masm_check.asm [=[
173 file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/masm_check.asm [=[
182 file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/masm_check.asm [=[
192 if(MINGW)
201 …${CMAKE_ASM_MARMASM_COMPILER} ${CMAKE_ASM_MARMASM_FLAGS} ${CMAKE_CURRENT_BINARY_DIR}/masm_check.asm
205 …ILER} ${CMAKE_ASM_MASM_FLAGS} -c -Fo ${CMAKE_CURRENT_BINARY_DIR}/masm_check.obj ${CMAKE_CURRENT_BI…
220 … emulator is provided (Like Wine), or running on native, run asm_offset to generate gen_defines.asm
222 …add_custom_command(OUTPUT gen_defines.asm DEPENDS asm_offset COMMAND asm_offset ${LOADER_ASM_DIALE…
224 …# Forces compiler to write the intermediate asm file, needed so that we can get sizeof/offset of i…
225 … target_compile_options(asm_offset PRIVATE "/Fa$<TARGET_FILE_DIR:asm_offset>/asm_offset.asm" /FA)
226 …# Force off optimization so that the output assembly includes all the necessary info - optimizer w…
230 …alues.py on asm_offset's assembly file to generate the gen_defines.asm, which the asm code depends…
232 …ter ${PROJECT_SOURCE_DIR}/scripts/parse_asm_values.py "${CMAKE_CURRENT_BINARY_DIR}/gen_defines.asm"
233 …"$<TARGET_FILE_DIR:asm_offset>/asm_offset.asm" "${LOADER_ASM_DIALECT}" "${CMAKE_C_COMPILER_ID}" "$…
234 BYPRODUCTS gen_defines.asm
237 add_custom_target(loader_asm_gen_files DEPENDS gen_defines.asm)
241 list(APPEND OPT_LOADER_SRCS unknown_ext_chain_marmasm.asm)
243 list(APPEND OPT_LOADER_SRCS unknown_ext_chain_masm.asm)
249 elseif(UNIX OR MINGW OR (WIN32 AND USE_GAS)) # i.e.: Linux & Apple & MinGW & Windows using Clang-CL
257 enable_language(ASM)
265 …execute_process(COMMAND ${CMAKE_ASM_COMPILER} ${CMAKE_ASM_FLAGS} -c -o ${CMAKE_CURRENT_BINARY_DIR}…
315 # If not cross compiling, run asm_offset to generage gen_defines.asm
317 add_custom_command(OUTPUT gen_defines.asm DEPENDS asm_offset COMMAND asm_offset GAS)
319 …# Forces compiler to write the intermediate asm file, needed so that we can get sizeof/offset of i…
320 … # If with lto, compiler will output IR instead of asm, so we need to explicitly disable lto here.
322 target_compile_options(asm_offset PRIVATE -save-temps=obj -fno-lto)
324 …get_compile_options(asm_offset PRIVATE -save-temps=obj -fno-lto -fno-whole-program-vtables -fno-vi…
326 target_compile_options(asm_offset PRIVATE -save-temps=obj)
329 set(ASM_OFFSET_EXECUTABLE_LOCATION "$<TARGET_FILE_DIR:asm_offset>/gen_defines.asm")
332 set(ASM_OFFSET_EXECUTABLE_LOCATION "$<TARGET_FILE_DIR:asm_offset>/gen_defines.asm")
336 set(ASM_OFFSET_EXECUTABLE_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/gen_defines.asm")
344 …alues.py on asm_offset's assembly file to generate the gen_defines.asm, which the asm code depends…
348 BYPRODUCTS gen_defines.asm
351 add_custom_target(loader_asm_gen_files DEPENDS gen_defines.asm)
380 ${CMAKE_CURRENT_SOURCE_DIR}/${API_TYPE}-1.def
386 # mingw: libvulkan-1.dll.a / vulkan-1.dll
387 # msvc: vulkan-1.lib / vulkan-1.dll
390 OUTPUT_NAME ${API_TYPE}-1)
391 if(MINGW)
392 # generate the same DLL with mingw
433 target_compile_options(vulkan PUBLIC -fsanitize=address)
434 target_link_options(vulkan PUBLIC -fsanitize=address)
437 target_compile_options(vulkan PUBLIC -fsanitize=thread)
438 target_link_options(vulkan PUBLIC -fsanitize=thread)
441 target_compile_options(vulkan PUBLIC -fsanitize=undefined)
442 target_link_options(vulkan PUBLIC -fsanitize=undefined)
447 target_link_libraries(vulkan PRIVATE "-framework CoreFoundation")
455 add_library(vulkan-framework SHARED)
456 target_sources(vulkan-framework PRIVATE ${NORMAL_LOADER_SRCS} ${FRAMEWORK_HEADERS})
459 add_dependencies(vulkan-framework loader_asm_gen_files)
462 …target_link_libraries(vulkan-framework ${CMAKE_DL_LIBS} Threads::Threads -lm "-framework CoreFound…
463 target_link_libraries(vulkan-framework loader_specific_options)
469 target_compile_definitions(vulkan-framework PRIVATE MODIFY_UNKNOWN_FUNCTION_DECLS)
472 …# The FRAMEWORK_VERSION needs to be "A" here so that Xcode code-signing works when a user adds the…
477 set_target_properties(vulkan-framework PROPERTIES
489 # Workaround linker warning: https://github.com/KhronosGroup/Vulkan-Loader/issues/1332
491 … # MACHO_CURRENT_VERSION specifically applies to the -current_version linker option which is the
495 …set_target_properties(vulkan-framework PROPERTIES MACHO_CURRENT_VERSION "${APPLE_VULKAN_LOADER_VER…
497 install(TARGETS vulkan-framework
525 …# TLDR: This feature only exists at the request of Google for Chromium. No other project should us…
544 # https://gitlab.kitware.com/cmake/cmake/-/issues/22621
548 if(MINGW)
549 set(VULKAN_LIB_SUFFIX "-1.dll")
551 set(VULKAN_LIB_SUFFIX "-1")
555 # BUG: The following code will NOT work well with `cmake --install ... --prefix <dir>`
558 # NOTE: vulkan.pc essentially cover both Vulkan-Loader and Vulkan-Headers for legacy reasons.