authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-07-03 04:43:21+00:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-07-03 04:43:21+00:00
log72cd11dd609380ec6c724b2b03a75214bed71511
tree0727ace8050d9851c741177609386096de776e39
parent70cc1751ca69dd77625c703445713d067215b5d9
parent14e07e9a72ca9e1d01e64998d40705979fa0c456

Merge branch 'timotheecour-pr_fix_4799'

closes #5092

2 files changed, 11 insertions(+), 2 deletions(-)

CMakeLists.txt+7
......@@ -53,6 +53,7 @@ set(ZIG_STATIC off CACHE BOOL "Attempt to build a static zig executable (not com
5353set(ZIG_STATIC_LLVM off CACHE BOOL "Prefer linking against static LLVM libraries")
5454set(ZIG_ENABLE_MEM_PROFILE off CACHE BOOL "Activate memory usage instrumentation")
5555set(ZIG_PREFER_CLANG_CPP_DYLIB off CACHE BOOL "Try to link against -lclang-cpp")
56set(ZIG_WORKAROUND_4799 off CACHE BOOL "workaround for https://github.com/ziglang/zig/issues/4799")
5657set(ZIG_USE_CCACHE off CACHE BOOL "Use ccache if available")
5758
5859if(CCACHE_PROGRAM AND ZIG_USE_CCACHE)
......@@ -88,6 +89,11 @@ if(APPLE AND ZIG_STATIC)
8889 list(APPEND LLVM_LIBRARIES "${ZLIB}")
8990endif()
9091
92if(APPLE AND ZIG_WORKAROUND_4799)
93 # eg: ${CMAKE_PREFIX_PATH} could be /usr/local/opt/llvm/
94 list(APPEND LLVM_LIBRARIES "-Wl,${CMAKE_PREFIX_PATH}/lib/libPolly.a" "-Wl,${CMAKE_PREFIX_PATH}/lib/libPollyPPCG.a" "-Wl,${CMAKE_PREFIX_PATH}/lib/libPollyISL.a")
95endif()
96
9197set(ZIG_CPP_LIB_DIR "${CMAKE_BINARY_DIR}/zig_cpp")
9298
9399# Handle multi-config builds and place each into a common lib. The VS generator
......@@ -397,6 +403,7 @@ add_library(zig_cpp STATIC ${ZIG_CPP_SOURCES})
397403set_target_properties(zig_cpp PROPERTIES
398404 COMPILE_FLAGS ${EXE_CFLAGS}
399405)
406
400407target_link_libraries(zig_cpp LINK_PUBLIC
401408 ${CLANG_LIBRARIES}
402409 ${LLD_LIBRARIES}
README.md+4-2
......@@ -66,9 +66,11 @@ make install
6666
6767You will now run into this issue:
6868[homebrew and llvm 10 packages in apt.llvm.org are broken with undefined reference to getPollyPluginInfo](https://github.com/ziglang/zig/issues/4799)
69or
70[error: unable to create target: 'Unable to find target for this triple (no targets are registered)'](https://github.com/ziglang/zig/issues/5055),
71in which case try `-DZIG_WORKAROUND_4799=ON`
6972
70Please help upstream LLVM and Homebrew solve this issue, there is nothing Zig
71can do about it. See that issue for a workaround you can do in the meantime.
73Hopefully this will be fixed upstream with LLVM 10.0.1.
7274
7375##### Windows
7476