On Sat, Apr 25, 2020 at 05:20:34PM -0000, Christian Weisgerber wrote: > On 2020-04-25, phess...@openbsd.org <phess...@openbsd.org> wrote: > > > started on Wed Apr 22 00:58:02 MDT 2020 > > finished at Fri Apr 24 19:24:46 MDT 2020 > > > http://build-failures.rhaalovely.net/aarch64/2020-04-22/editors/xwpe.log > > clang backend error > > > http://build-failures.rhaalovely.net/aarch64/2020-04-22/graphics/vulkan-loader.log > > configure requires as(1). Presumably that can be worked around, > but I'm not sure that will get us anywhere. Haven't looked.
Builds (with a warning about assembly path not being used on aarch64 but not amd64) after backporting a patch https://github.com/KhronosGroup/Vulkan-Loader/commit/85836796b3574fa8fa593a1da4d2a710f3467168.patch present upstream since sdk-1.1.121.0 tag, we are a few releases behind at this point. Though updating the vulkan ports would be something for after unlock at this point. sdk-1.1.108.0 20190612 vulkan ports are currently based on this sdk-1.1.114.0 20190723 sdk-1.1.121.0 20190912 sdk-1.1.126.0 20191029 sdk-1.1.130.0 20191213 sdk-1.2.131.1 20200125 sdk-1.2.131.2 20200206 sdk-1.2.135.0 20200403 Index: Makefile =================================================================== RCS file: /cvs/ports/graphics/vulkan-loader/Makefile,v retrieving revision 1.4 diff -u -p -r1.4 Makefile --- Makefile 27 Jul 2019 15:47:35 -0000 1.4 +++ Makefile 26 Apr 2020 03:18:46 -0000 @@ -38,5 +38,7 @@ NO_TEST = Yes pre-configure: ${SUBST_CMD} ${WRKSRC}/CMakeLists.txt + cp ${WRKSRC}/loader/unknown_ext_chain_gas.asm \ + ${WRKSRC}/loader/unknown_ext_chain_gas.S .include <bsd.port.mk> Index: patches/patch-loader_CMakeLists_txt =================================================================== RCS file: /cvs/ports/graphics/vulkan-loader/patches/patch-loader_CMakeLists_txt,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 patch-loader_CMakeLists_txt --- patches/patch-loader_CMakeLists_txt 22 Jun 2019 15:28:42 -0000 1.1.1.1 +++ patches/patch-loader_CMakeLists_txt 26 Apr 2020 03:18:46 -0000 @@ -2,6 +2,9 @@ $OpenBSD: patch-loader_CMakeLists_txt,v Avoid vulkan-validation-layers vk_loader_platform.h being used. +loader: move to using gcc for asm compiles on Linux. +85836796b3574fa8fa593a1da4d2a710f3467168 + Index: loader/CMakeLists.txt --- loader/CMakeLists.txt.orig +++ loader/CMakeLists.txt @@ -14,7 +17,37 @@ Index: loader/CMakeLists.txt # Check for the existance of the secure_getenv or __secure_getenv commands include(CheckFunctionExists) -@@ -247,7 +247,7 @@ else() +@@ -148,22 +148,16 @@ elseif(APPLE) + set_source_files_properties(${OPT_LOADER_SRCS} PROPERTIES COMPILE_FLAGS -O) + add_custom_target(loader_asm_gen_files) # This causes no assembly files to be generated. + else(UNIX AND NOT APPLE) # i.e.: Linux +- enable_language(ASM-ATT) +- set(CMAKE_ASM-ATT_COMPILE_FLAGS "${CMAKE_ASM-ATT_COMPILE_FLAGS} $ENV{ASFLAGS}") +- set(CMAKE_ASM-ATT_COMPILE_FLAGS "${CMAKE_ASM-ATT_COMPILE_FLAGS} -I\"${CMAKE_CURRENT_BINARY_DIR}\"") ++ enable_language(ASM) ++ set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS}") + +- file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/asm_test.asm ++ file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/asm_test.S + ".intel_syntax noprefix\n.text\n.global sample\nsample:\nmov ecx, [eax + 16]\n") +- # try_compile uses the C/C++ linker flags even for ASM, +- # while they're not valid for ASM and making linking fail. +- set(TMP_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS}) +- set(CMAKE_EXE_LINKER_FLAGS "") +- try_compile(ASSEMBLER_WORKS ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/asm_test.asm) +- set(CMAKE_EXE_LINKER_FLAGS ${TMP_EXE_LINKER_FLAGS}) +- file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/asm_test.asm) ++ set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY) ++ try_compile(ASSEMBLER_WORKS ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/asm_test.S) ++ file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/asm_test.S) + if(ASSEMBLER_WORKS) +- set(CMAKE_ASM-ATT_FLAGS "$ENV{ASFLAGS} -I\"${CMAKE_CURRENT_BINARY_DIR}\"") +- set(OPT_LOADER_SRCS ${OPT_LOADER_SRCS} unknown_ext_chain_gas.asm) ++ set(OPT_LOADER_SRCS ${OPT_LOADER_SRCS} unknown_ext_chain_gas.S) + add_executable(asm_offset asm_offset.c) + add_dependencies(asm_offset generate_helper_files loader_gen_files) + target_link_libraries(asm_offset Vulkan::Headers) +@@ -247,7 +241,7 @@ else() "1" VERSION "${VulkanHeaders_VERSION_MAJOR}.${VulkanHeaders_VERSION_MINOR}.${VulkanHeaders_VERSION_PATCH}")