From 1ed38a682ec6cabcd72472b6988b27b10714216a Mon Sep 17 00:00:00 2001 From: emekoi Date: Sat, 9 Mar 2019 17:54:34 -0600 Subject: [PATCH] added z3 and fixed dynamic linker on mingw --- CMakeLists.txt | 10 ++++++++++ src/target.cpp | 16 +--------------- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9d6cd5796..1f5d7e825 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,6 +50,10 @@ option(ZIG_FORCE_EXTERNAL_LLD "If your system has the LLD patches use it instead find_package(llvm) find_package(clang) +if(MINGW) + find_package(z3) +endif() + if(APPLE AND ZIG_STATIC) list(REMOVE_ITEM LLVM_LIBRARIES "-lz") list(REMOVE_ITEM LLVM_LIBRARIES "-lcurses") @@ -6716,9 +6720,15 @@ target_link_libraries(zig LINK_PUBLIC ${LLVM_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ) + if(NOT MSVC) target_link_libraries(zig LINK_PUBLIC ${LIBXML2}) endif() + +if(MINGW) + target_link_libraries(zig LINK_PUBLIC ${Z3_LIBRARIES}) +endif() + if(ZIG_DIA_GUIDS_LIB) target_link_libraries(zig LINK_PUBLIC ${ZIG_DIA_GUIDS_LIB}) endif() diff --git a/src/target.cpp b/src/target.cpp index 86db4290a..440f0babe 100644 --- a/src/target.cpp +++ b/src/target.cpp @@ -1093,22 +1093,8 @@ const char *target_dynamic_linker(const ZigTarget *target) { case OsWatchOS: case OsMacOSX: case OsUefi: - return nullptr; - case OsWindows: - switch (target->abi) { - case ZigLLVM_GNU: - case ZigLLVM_GNUABIN32: - case ZigLLVM_GNUABI64: - case ZigLLVM_GNUEABI: - case ZigLLVM_GNUEABIHF: - case ZigLLVM_GNUX32: - case ZigLLVM_Cygnus: - zig_panic("TODO implement target_dynamic_linker for mingw/cygwin"); - default: - return nullptr; - } - zig_unreachable(); + return nullptr; case OsAnanas: case OsCloudABI: