From 792606bfc2ca4e83fc7b93961f0f55feb9308944 Mon Sep 17 00:00:00 2001 From: Demyan Kimitsa Date: Mon, 15 Apr 2024 16:25:04 +0300 Subject: [PATCH] * fixed: broken VM compilation of old code with recent clang-1500.3.9.4 (#773) * * fixed: broken VM compilation of old code with recent clang-1500.3.9.4 * * fixed: LLVM library compilation - github doesn't support git:// scheme anymore --- compiler/llvm/CMakeLists.txt | 4 ++-- compiler/vm/CMakeLists.txt | 2 ++ compiler/vm/rt/robovm/CMakeLists.txt | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/compiler/llvm/CMakeLists.txt b/compiler/llvm/CMakeLists.txt index 918462c43..af6b5dd41 100755 --- a/compiler/llvm/CMakeLists.txt +++ b/compiler/llvm/CMakeLists.txt @@ -45,7 +45,7 @@ endif() set(C_CXX_FLAGS "${C_CXX_FLAGS} -fvisibility=hidden -fdata-sections -ffunction-sections") ExternalProject_Add(extclang - GIT_REPOSITORY git://github.com/mobivm/clang.git + GIT_REPOSITORY https://github.com/mobivm/clang.git GIT_TAG 7b389564897bc6c0431c42f8f1825f04624ff4e3 UPDATE_COMMAND "" CONFIGURE_COMMAND "" @@ -59,7 +59,7 @@ set(LLVM_C_FLAGS "${C_CXX_FLAGS} -fvisibility=hidden -fdata-sections -ffunction- set(LLVM_CXX_FLAGS "${C_CXX_FLAGS} -fvisibility=hidden -fdata-sections -ffunction-sections") ExternalProject_Add(extllvm DEPENDS extclang - GIT_REPOSITORY git://github.com/mobivm/llvm.git + GIT_REPOSITORY https://github.com/mobivm/llvm.git GIT_TAG aceb47b80838681fe65a1d01aac7aae7b863ac5a PATCH_COMMAND bash -c "rm -rf tools/clang && ln -s ../../../../extclang-prefix/src/extclang tools/clang && ${CMAKE_SOURCE_DIR}/patches/apply-patches" LIST_SEPARATOR ^^ diff --git a/compiler/vm/CMakeLists.txt b/compiler/vm/CMakeLists.txt index e4904b1e3..b980a18ea 100755 --- a/compiler/vm/CMakeLists.txt +++ b/compiler/vm/CMakeLists.txt @@ -260,6 +260,8 @@ else() endif() set(EXTGC_C_FLAGS "${C_CXX_FLAGS} -DGC_DISABLE_INCREMENTAL -DGC_DISCOVER_TASK_THREADS -DGC_FORCE_UNMAP_ON_GCOLLECT -DMARK_DESCR_OFFSET=${EXTGC_MARK_DESCR_OFFSET}") +# disable errors on clang clang-1500.3.9.4 +set(EXTGC_C_FLAGS "${EXTGC_C_FLAGS} -Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion") set(EXTGC_LD_FLAGS "${CMAKE_EXE_LINKER_FLAGS}") if(DARWIN) set(EXTGC_C_FLAGS "${EXTGC_C_FLAGS} -DNO_DYLD_BIND_FULLY_IMAGE --sysroot=${SYSROOT}") diff --git a/compiler/vm/rt/robovm/CMakeLists.txt b/compiler/vm/rt/robovm/CMakeLists.txt index ef939a03c..428dc29b1 100755 --- a/compiler/vm/rt/robovm/CMakeLists.txt +++ b/compiler/vm/rt/robovm/CMakeLists.txt @@ -37,6 +37,8 @@ if(DARWIN) if(IOS) set(OBJC_FLAGS "${OBJC_FLAGS} -fobjc-abi-version=2") endif() + # disable errors on clang clang-1500.3.9.4 + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion") # disable XCode14 objc-msgsend stubs to allow this lib to be linked with XCode13 and bellow set(OBJC_FLAGS "${OBJC_FLAGS} -fno-objc-msgsend-selector-stubs") set_property(SOURCE ${OBJC_SRC} PROPERTY LANGUAGE C)