aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYury Bura <yurybura@gmail.com>2021-04-14 01:17:17 +0300
committerGitHub <noreply@github.com>2021-04-13 15:17:17 -0700
commit40449ff1cb76570f93dd7b2892859f18e60289f0 (patch)
treef2eb98bfbf625df83215e16c3a43c32ab005beda
parente3fee6ed406125f0a1dd1ea4b58e43315cb0284f (diff)
downloadvcpkg-40449ff1cb76570f93dd7b2892859f18e60289f0.tar.gz
vcpkg-40449ff1cb76570f93dd7b2892859f18e60289f0.zip
[llvm] update to 11.1.0, add features and fix issues (#16232)
* fix issue #16215 * add more projects and fix issue #16222 * add version * exclude libc from default projects * remove libc, add fland to default projects * update to v11.1.0 * fix compiler-rt install path * fix SHA for version 11.1.0 * fix libc++ install * re-fix libc++ install * fix pstl install * fix flang's license file name * install tools in tools/llvm, fix file names * revert bin directory for libraries * don't create clang sub-directory in llvm/tools * overwrite version * copy tool dependencies * overwrite version * remove vcpkg_copy_tools call * overwrite version * restore default features * overwrite version * overwrite version * convert manifest to json * install usage files * overwrite version * remove feature `default-projects` * modernize CMake in usage files * overwrite version * update ordering * override version
-rw-r--r--ports/llvm/0002-fix-install-paths.patch46
-rw-r--r--ports/llvm/0007-fix-compiler-rt-install-path.patch44
-rw-r--r--ports/llvm/0008-fix-libcxx-install.patch18
-rw-r--r--ports/llvm/0009-fix-tools-install-path.patch172
-rw-r--r--ports/llvm/CONTROL137
-rw-r--r--ports/llvm/clang_usage5
-rw-r--r--ports/llvm/flang_usage5
-rw-r--r--ports/llvm/lld_usage5
-rw-r--r--ports/llvm/llvm_usage15
-rw-r--r--ports/llvm/mlir_usage5
-rw-r--r--ports/llvm/portfile.cmake105
-rw-r--r--ports/llvm/vcpkg.json321
-rw-r--r--versions/baseline.json4
-rw-r--r--versions/l-/llvm.json5
14 files changed, 698 insertions, 189 deletions
diff --git a/ports/llvm/0002-fix-install-paths.patch b/ports/llvm/0002-fix-install-paths.patch
index 70357a7ba..84d973f65 100644
--- a/ports/llvm/0002-fix-install-paths.patch
+++ b/ports/llvm/0002-fix-install-paths.patch
@@ -1,5 +1,15 @@
+ clang/cmake/modules/CMakeLists.txt | 4 ++--
+ flang/cmake/modules/CMakeLists.txt | 4 ++--
+ lld/cmake/modules/CMakeLists.txt | 4 ++--
+ llvm/cmake/modules/AddLLVM.cmake | 2 +-
+ llvm/cmake/modules/CMakeLists.txt | 2 +-
+ mlir/cmake/modules/CMakeLists.txt | 4 ++--
+ polly/cmake/CMakeLists.txt | 4 ++--
+ pstl/CMakeLists.txt | 4 ++--
+ 8 files changed, 14 insertions(+), 14 deletions(-)
+
diff --git a/clang/cmake/modules/CMakeLists.txt b/clang/cmake/modules/CMakeLists.txt
-index d233f552f01..26f502ad2d2 100644
+index d233f552f01f..26f502ad2d23 100644
--- a/clang/cmake/modules/CMakeLists.txt
+++ b/clang/cmake/modules/CMakeLists.txt
@@ -1,11 +1,11 @@
@@ -17,7 +27,7 @@ index d233f552f01..26f502ad2d2 100644
get_property(CLANG_EXPORTS GLOBAL PROPERTY CLANG_EXPORTS)
diff --git a/flang/cmake/modules/CMakeLists.txt b/flang/cmake/modules/CMakeLists.txt
-index d233f552f01..26f502ad2d2 100644
+index 4822124ca412..1ca3eff8f14e 100644
--- a/flang/cmake/modules/CMakeLists.txt
+++ b/flang/cmake/modules/CMakeLists.txt
@@ -1,11 +1,11 @@
@@ -35,7 +45,7 @@ index d233f552f01..26f502ad2d2 100644
get_property(FLANG_EXPORTS GLOBAL PROPERTY FLANG_EXPORTS)
diff --git a/lld/cmake/modules/CMakeLists.txt b/lld/cmake/modules/CMakeLists.txt
-index d233f552f01..26f502ad2d2 100644
+index fa505a533762..90413be34120 100644
--- a/lld/cmake/modules/CMakeLists.txt
+++ b/lld/cmake/modules/CMakeLists.txt
@@ -1,11 +1,11 @@
@@ -53,11 +63,10 @@ index d233f552f01..26f502ad2d2 100644
get_property(LLD_EXPORTS GLOBAL PROPERTY LLD_EXPORTS)
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
-index 211f9551271..2abe3803f91 100644
+index b74adc11ade9..0638aea2f8f6 100644
--- a/llvm/cmake/modules/AddLLVM.cmake
+++ b/llvm/cmake/modules/AddLLVM.cmake
-@@ -973,10 +973,10 @@
- if(ARG_GEN_CONFIG)
+@@ -974,7 +974,7 @@ function(process_llvm_pass_plugins)
## Part 1: Extension header to be included whenever we need extension
# processing.
@@ -66,10 +75,8 @@ index 211f9551271..2abe3803f91 100644
set(llvm_cmake_builddir "${LLVM_BINARY_DIR}/${LLVM_INSTALL_PACKAGE_DIR}")
file(WRITE
"${llvm_cmake_builddir}/LLVMConfigExtensions.cmake"
- "set(LLVM_STATIC_EXTENSIONS ${LLVM_STATIC_EXTENSIONS})")
- install(FILES
diff --git a/llvm/cmake/modules/CMakeLists.txt b/llvm/cmake/modules/CMakeLists.txt
-index 9cf22b436fa..8eeb27d1794 100644
+index 4b8879f65fe4..9e097ab223b5 100644
--- a/llvm/cmake/modules/CMakeLists.txt
+++ b/llvm/cmake/modules/CMakeLists.txt
@@ -1,4 +1,4 @@
@@ -79,7 +86,7 @@ index 9cf22b436fa..8eeb27d1794 100644
# First for users who use an installed LLVM, create the LLVMExports.cmake file.
diff --git a/mlir/cmake/modules/CMakeLists.txt b/mlir/cmake/modules/CMakeLists.txt
-index d233f552f01..26f502ad2d2 100644
+index b9fb9adce2ea..85a54f699f30 100644
--- a/mlir/cmake/modules/CMakeLists.txt
+++ b/mlir/cmake/modules/CMakeLists.txt
@@ -1,11 +1,11 @@
@@ -97,7 +104,7 @@ index d233f552f01..26f502ad2d2 100644
get_property(MLIR_EXPORTS GLOBAL PROPERTY MLIR_EXPORTS)
diff --git a/polly/cmake/CMakeLists.txt b/polly/cmake/CMakeLists.txt
-index 211f9551271..2abe3803f91 100644
+index 211f95512717..2abe3803f910 100644
--- a/polly/cmake/CMakeLists.txt
+++ b/polly/cmake/CMakeLists.txt
@@ -1,7 +1,7 @@
@@ -110,3 +117,20 @@ index 211f9551271..2abe3803f91 100644
if (CMAKE_CONFIGURATION_TYPES)
set(POLLY_EXPORTS_FILE_NAME "PollyExports-$<LOWER_CASE:$<CONFIG>>.cmake")
else()
+diff --git a/pstl/CMakeLists.txt b/pstl/CMakeLists.txt
+index 8e6e1354707b..2ae7f7090025 100644
+--- a/pstl/CMakeLists.txt
++++ b/pstl/CMakeLists.txt
+@@ -81,10 +81,10 @@ install(TARGETS ParallelSTL
+ install(EXPORT ParallelSTLTargets
+ FILE ParallelSTLTargets.cmake
+ NAMESPACE pstl::
+- DESTINATION lib/cmake/ParallelSTL)
++ DESTINATION share/ParallelSTL)
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ParallelSTLConfig.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/ParallelSTLConfigVersion.cmake"
+- DESTINATION lib/cmake/ParallelSTL)
++ DESTINATION share/ParallelSTL)
+ install(DIRECTORY include/
+ DESTINATION include
+ PATTERN "*.in" EXCLUDE)
diff --git a/ports/llvm/0007-fix-compiler-rt-install-path.patch b/ports/llvm/0007-fix-compiler-rt-install-path.patch
new file mode 100644
index 000000000..286604623
--- /dev/null
+++ b/ports/llvm/0007-fix-compiler-rt-install-path.patch
@@ -0,0 +1,44 @@
+ clang/lib/Headers/CMakeLists.txt | 2 +-
+ clang/runtime/CMakeLists.txt | 2 +-
+ compiler-rt/cmake/base-config-ix.cmake | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/clang/lib/Headers/CMakeLists.txt b/clang/lib/Headers/CMakeLists.txt
+index 0692fe75a441..65f72c2da7da 100644
+--- a/clang/lib/Headers/CMakeLists.txt
++++ b/clang/lib/Headers/CMakeLists.txt
+@@ -208,7 +208,7 @@ set_target_properties(clang-resource-headers PROPERTIES
+ FOLDER "Misc"
+ RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
+
+-set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
++set(header_install_dir tools/llvm/lib/clang/${CLANG_VERSION}/include)
+
+ install(
+ FILES ${files} ${generated_files}
+diff --git a/clang/runtime/CMakeLists.txt b/clang/runtime/CMakeLists.txt
+index 61bbbf8faedd..f6d0b73d9913 100644
+--- a/clang/runtime/CMakeLists.txt
++++ b/clang/runtime/CMakeLists.txt
+@@ -82,7 +82,7 @@ if(LLVM_BUILD_EXTERNAL_COMPILER_RT AND EXISTS ${COMPILER_RT_SRC_ROOT}/)
+ -DLLVM_LIT_ARGS=${LLVM_LIT_ARGS}
+ -DCOMPILER_RT_OUTPUT_DIR=${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION}
+ -DCOMPILER_RT_EXEC_OUTPUT_DIR=${LLVM_RUNTIME_OUTPUT_INTDIR}
+- -DCOMPILER_RT_INSTALL_PATH:STRING=lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}
++ -DCOMPILER_RT_INSTALL_PATH:STRING=tools/llvm/lib/clang/${CLANG_VERSION}
+ -DCOMPILER_RT_INCLUDE_TESTS=${LLVM_INCLUDE_TESTS}
+ -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
+ -DLLVM_LIBDIR_SUFFIX=${LLVM_LIBDIR_SUFFIX}
+diff --git a/compiler-rt/cmake/base-config-ix.cmake b/compiler-rt/cmake/base-config-ix.cmake
+index 964dd598f102..7379a1ba06d1 100644
+--- a/compiler-rt/cmake/base-config-ix.cmake
++++ b/compiler-rt/cmake/base-config-ix.cmake
+@@ -43,7 +43,7 @@ if (LLVM_TREE_AVAILABLE)
+ # Setup the paths where compiler-rt runtimes and headers should be stored.
+ set(COMPILER_RT_OUTPUT_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION})
+ set(COMPILER_RT_EXEC_OUTPUT_DIR ${LLVM_RUNTIME_OUTPUT_INTDIR})
+- set(COMPILER_RT_INSTALL_PATH lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION})
++ set(COMPILER_RT_INSTALL_PATH tools/llvm/lib/clang/${CLANG_VERSION})
+ option(COMPILER_RT_INCLUDE_TESTS "Generate and build compiler-rt unit tests."
+ ${LLVM_INCLUDE_TESTS})
+ option(COMPILER_RT_ENABLE_WERROR "Fail and stop if warning is triggered"
diff --git a/ports/llvm/0008-fix-libcxx-install.patch b/ports/llvm/0008-fix-libcxx-install.patch
new file mode 100644
index 000000000..3af957eaf
--- /dev/null
+++ b/ports/llvm/0008-fix-libcxx-install.patch
@@ -0,0 +1,18 @@
+ libcxx/src/CMakeLists.txt | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/libcxx/src/CMakeLists.txt b/libcxx/src/CMakeLists.txt
+index 2001c09761d9..e17de934534f 100644
+--- a/libcxx/src/CMakeLists.txt
++++ b/libcxx/src/CMakeLists.txt
+@@ -364,9 +364,7 @@ if (LIBCXX_INSTALL_LIBRARY)
+ # NOTE: This install command must go after the cxx install command otherwise
+ # it will not be executed after the library symlinks are installed.
+ if (LIBCXX_ENABLE_SHARED AND LIBCXX_ENABLE_ABI_LINKER_SCRIPT)
+- # Replace the libc++ filename with $<TARGET_LINKER_FILE:cxx>
+- # after we required CMake 3.0.
+- install(FILES "${LIBCXX_LIBRARY_DIR}/libc++${CMAKE_SHARED_LIBRARY_SUFFIX}"
++ install(FILES "$<TARGET_LINKER_FILE:cxx_shared>"
+ DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR}
+ COMPONENT libcxx)
+ endif()
diff --git a/ports/llvm/0009-fix-tools-install-path.patch b/ports/llvm/0009-fix-tools-install-path.patch
new file mode 100644
index 000000000..eb6c75bd6
--- /dev/null
+++ b/ports/llvm/0009-fix-tools-install-path.patch
@@ -0,0 +1,172 @@
+ clang-tools-extra/modularize/CMakeLists.txt | 2 +-
+ clang/cmake/modules/AddClang.cmake | 2 +-
+ clang/tools/c-index-test/CMakeLists.txt | 2 +-
+ clang/tools/clang-format/CMakeLists.txt | 2 +-
+ clang/tools/scan-build/CMakeLists.txt | 2 +-
+ clang/tools/scan-view/CMakeLists.txt | 2 +-
+ clang/utils/hmaptool/CMakeLists.txt | 2 +-
+ flang/cmake/modules/AddFlang.cmake | 2 +-
+ flang/tools/f18/CMakeLists.txt | 4 ++--
+ lld/cmake/modules/AddLLD.cmake | 2 +-
+ lld/tools/lld/CMakeLists.txt | 2 +-
+ lldb/cmake/modules/AddLLDB.cmake | 2 +-
+ 12 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/clang-tools-extra/modularize/CMakeLists.txt b/clang-tools-extra/modularize/CMakeLists.txt
+index 4caae81c49b6..8c459c51cc34 100644
+--- a/clang-tools-extra/modularize/CMakeLists.txt
++++ b/clang-tools-extra/modularize/CMakeLists.txt
+@@ -23,5 +23,5 @@ clang_target_link_libraries(modularize
+ )
+
+ install(TARGETS modularize
+- RUNTIME DESTINATION bin
++ RUNTIME DESTINATION tools/llvm
+ COMPONENT clang-extras)
+diff --git a/clang/cmake/modules/AddClang.cmake b/clang/cmake/modules/AddClang.cmake
+index 704278a0e93b..e8a87f574474 100644
+--- a/clang/cmake/modules/AddClang.cmake
++++ b/clang/cmake/modules/AddClang.cmake
+@@ -170,7 +170,7 @@ macro(add_clang_tool name)
+
+ install(TARGETS ${name}
+ ${export_to_clangtargets}
+- RUNTIME DESTINATION bin
++ RUNTIME DESTINATION tools/llvm
+ COMPONENT ${name})
+
+ if(NOT LLVM_ENABLE_IDE)
+diff --git a/clang/tools/c-index-test/CMakeLists.txt b/clang/tools/c-index-test/CMakeLists.txt
+index ceef4b08637c..ce6d7799475b 100644
+--- a/clang/tools/c-index-test/CMakeLists.txt
++++ b/clang/tools/c-index-test/CMakeLists.txt
+@@ -54,7 +54,7 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
+ set_property(TARGET c-index-test APPEND PROPERTY INSTALL_RPATH
+ "@executable_path/../../lib")
+ else()
+- set(INSTALL_DESTINATION bin)
++ set(INSTALL_DESTINATION tools/llvm)
+ endif()
+
+ install(TARGETS c-index-test
+diff --git a/clang/tools/clang-format/CMakeLists.txt b/clang/tools/clang-format/CMakeLists.txt
+index 35ecdb11253c..d1b800dfdadc 100644
+--- a/clang/tools/clang-format/CMakeLists.txt
++++ b/clang/tools/clang-format/CMakeLists.txt
+@@ -36,5 +36,5 @@ install(PROGRAMS clang-format.py
+ DESTINATION share/clang
+ COMPONENT clang-format)
+ install(PROGRAMS git-clang-format
+- DESTINATION bin
++ DESTINATION tools/llvm
+ COMPONENT clang-format)
+diff --git a/clang/tools/scan-build/CMakeLists.txt b/clang/tools/scan-build/CMakeLists.txt
+index ec0702d76f18..9a34a09921b1 100644
+--- a/clang/tools/scan-build/CMakeLists.txt
++++ b/clang/tools/scan-build/CMakeLists.txt
+@@ -47,7 +47,7 @@ if(CLANG_INSTALL_SCANBUILD)
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+ install(PROGRAMS bin/${BinFile}
+- DESTINATION bin
++ DESTINATION tools/llvm
+ COMPONENT scan-build)
+ endforeach()
+
+diff --git a/clang/tools/scan-view/CMakeLists.txt b/clang/tools/scan-view/CMakeLists.txt
+index 22edb974bac7..60f69d358fb9 100644
+--- a/clang/tools/scan-view/CMakeLists.txt
++++ b/clang/tools/scan-view/CMakeLists.txt
+@@ -22,7 +22,7 @@ if(CLANG_INSTALL_SCANVIEW)
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${BinFile})
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/bin/${BinFile})
+ install(PROGRAMS bin/${BinFile}
+- DESTINATION bin
++ DESTINATION tools/llvm
+ COMPONENT scan-view)
+ endforeach()
+
+diff --git a/clang/utils/hmaptool/CMakeLists.txt b/clang/utils/hmaptool/CMakeLists.txt
+index 62f2de0cb15c..38dc821c76de 100644
+--- a/clang/utils/hmaptool/CMakeLists.txt
++++ b/clang/utils/hmaptool/CMakeLists.txt
+@@ -10,7 +10,7 @@ add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HM
+
+ list(APPEND Depends ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin/${CLANG_HMAPTOOL})
+ install(PROGRAMS ${CLANG_HMAPTOOL}
+- DESTINATION bin
++ DESTINATION tools/llvm
+ COMPONENT hmaptool)
+
+ add_custom_target(hmaptool ALL DEPENDS ${Depends})
+diff --git a/flang/cmake/modules/AddFlang.cmake b/flang/cmake/modules/AddFlang.cmake
+index 7fe8b7e9f406..b338dddd0850 100644
+--- a/flang/cmake/modules/AddFlang.cmake
++++ b/flang/cmake/modules/AddFlang.cmake
+@@ -120,7 +120,7 @@ macro(add_flang_tool name)
+
+ install(TARGETS ${name}
+ ${export_to_flangtargets}
+- RUNTIME DESTINATION bin
++ RUNTIME DESTINATION tools/llvm
+ COMPONENT ${name})
+
+ if(NOT LLVM_ENABLE_IDE)
+diff --git a/flang/tools/f18/CMakeLists.txt b/flang/tools/f18/CMakeLists.txt
+index f3af6e8312fe..aa58108b332b 100644
+--- a/flang/tools/f18/CMakeLists.txt
++++ b/flang/tools/f18/CMakeLists.txt
+@@ -58,7 +58,7 @@ endforeach()
+
+ add_custom_target(module_files ALL DEPENDS ${MODULE_FILES})
+
+-install(TARGETS f18 DESTINATION bin)
++install(TARGETS f18 DESTINATION tools/llvm)
+
+ set(FLANG_INTRINSIC_MODULES_DIR ${FLANG_BINARY_DIR}/include/flang)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/flang.sh.in ${CMAKE_BINARY_DIR}/tools/flang/bin/flang @ONLY)
+@@ -68,4 +68,4 @@ set(FLANG_INTRINSIC_MODULES_DIR ${CMAKE_INSTALL_PREFIX}/include/flang)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/flang.sh.in ${FLANG_BINARY_DIR}/bin/flang-install.sh @ONLY)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/f18_version.h.in ${CMAKE_CURRENT_BINARY_DIR}/f18_version.h @ONLY)
+
+-install(PROGRAMS ${FLANG_BINARY_DIR}/bin/flang-install.sh DESTINATION bin RENAME flang PERMISSIONS OWNER_EXECUTE OWNER_READ OWNER_WRITE)
++install(PROGRAMS ${FLANG_BINARY_DIR}/bin/flang-install.sh DESTINATION tools/llvm RENAME flang PERMISSIONS OWNER_EXECUTE OWNER_READ OWNER_WRITE)
+diff --git a/lld/cmake/modules/AddLLD.cmake b/lld/cmake/modules/AddLLD.cmake
+index 23df41312403..86f4eafeed07 100644
+--- a/lld/cmake/modules/AddLLD.cmake
++++ b/lld/cmake/modules/AddLLD.cmake
+@@ -54,7 +54,7 @@ macro(add_lld_tool name)
+
+ install(TARGETS ${name}
+ ${export_to_lldtargets}
+- RUNTIME DESTINATION bin
++ RUNTIME DESTINATION tools/llvm
+ COMPONENT ${name})
+
+ if(NOT CMAKE_CONFIGURATION_TYPES)
+diff --git a/lld/tools/lld/CMakeLists.txt b/lld/tools/lld/CMakeLists.txt
+index e6f72fcd3488..0e5a2c81e825 100644
+--- a/lld/tools/lld/CMakeLists.txt
++++ b/lld/tools/lld/CMakeLists.txt
+@@ -21,7 +21,7 @@ target_link_libraries(lld
+ )
+
+ install(TARGETS lld
+- RUNTIME DESTINATION bin)
++ RUNTIME DESTINATION tools/llvm)
+
+ if(NOT LLD_SYMLINKS_TO_CREATE)
+ set(LLD_SYMLINKS_TO_CREATE lld-link ld.lld ld64.lld wasm-ld)
+diff --git a/lldb/cmake/modules/AddLLDB.cmake b/lldb/cmake/modules/AddLLDB.cmake
+index 4ed5c647c5d2..cb31901dddbb 100644
+--- a/lldb/cmake/modules/AddLLDB.cmake
++++ b/lldb/cmake/modules/AddLLDB.cmake
+@@ -187,7 +187,7 @@ function(add_lldb_executable name)
+ endif()
+
+ if(ARG_GENERATE_INSTALL)
+- set(install_dest bin)
++ set(install_dest tools/llvm)
+ if(ARG_INSTALL_PREFIX)
+ set(install_dest ${ARG_INSTALL_PREFIX})
+ endif()
diff --git a/ports/llvm/CONTROL b/ports/llvm/CONTROL
deleted file mode 100644
index 1cbfd8e98..000000000
--- a/ports/llvm/CONTROL
+++ /dev/null
@@ -1,137 +0,0 @@
-Source: llvm
-Version: 11.0.0
-Port-Version: 2
-Homepage: https://llvm.org/
-Description: The LLVM Compiler Infrastructure
-Supports: !uwp
-Default-Features: tools, enable-rtti, enable-threads, disable-assertions, disable-abi-breaking-checks, clang, disable-clang-static-analyzer, lld, default-targets, enable-terminfo, enable-bindings
-
-Feature: tools
-Description: Build LLVM tools.
-
-Feature: utils
-Description: Build LLVM utils.
-
-Feature: default-targets
-Description: Build with platform-specific default targets
-Build-Depends: llvm[core,target-x86] (x86|x64), llvm[core,target-arm] (arm&!arm64), llvm[core,target-aarch64] (arm64), llvm[core,target-all] (!x86&!x64&!arm&!arm64)
-
-Feature: target-all
-Description: Build with all backends.
-Build-Depends: llvm[core,target-aarch64,target-amdgpu,target-arm,target-avr,target-bpf,target-hexagon,target-lanai,target-mips,target-msp430,target-nvptx,target-powerpc,target-riscv,target-sparc,target-systemz,target-webassembly,target-x86,target-xcore]
-
-Feature: target-aarch64
-Description: Build with AArch64 backend.
-
-Feature: target-amdgpu
-Description: Build with AMDGPU backend.
-
-Feature: target-arm
-Description: Build with ARM backend.
-
-Feature: target-avr
-Description: Build with AVR backend.
-
-Feature: target-bpf
-Description: Build with BPF backend.
-
-Feature: target-hexagon
-Description: Build with Hexagon backend.
-
-Feature: target-lanai
-Description: Build with Lanai backend.
-
-Feature: target-mips
-Description: Build with Mips backend.
-
-Feature: target-msp430
-Description: Build with MSP430 backend.
-
-Feature: target-nvptx
-Description: Build with NVPTX backend.
-
-Feature: target-powerpc
-Description: Build with PowerPC backend.
-
-Feature: target-riscv
-Description: Build with RISCV backend.
-
-Feature: target-sparc
-Description: Build with Sparc backend.
-
-Feature: target-systemz
-Description: Build with SystemZ backend.
-
-Feature: target-webassembly
-Description: Build with WebAssembly backend.
-
-Feature: target-x86
-Description: Build with X86 backend.
-
-Feature: target-xcore
-Description: Build with XCore backend.
-
-Feature: enable-eh
-Description: Build LLVM with exception handler.
-Build-Depends: llvm[core,enable-rtti]
-
-Feature: enable-rtti
-Description: Build LLVM with run-time type information.
-
-Feature: enable-ffi
-Description: Build LLVM with FFI.
-Build-Depends: libffi
-
-Feature: enable-bindings
-Description: Build bindings.
-
-Feature: enable-assertions
-Description: Build LLVM with assertions.
-
-Feature: disable-assertions
-Description: Build LLVM without assertions.
-
-Feature: enable-terminfo
-Description: Build LLVM with terminfo.
-
-Feature: enable-threads
-Description: Enable multi-threaded LTO.
-
-Feature: enable-abi-breaking-checks
-Description: Build LLVM with LLVM_ABI_BREAKING_CHECKS=FORCE_ON.
-
-Feature: disable-abi-breaking-checks
-Description: Build LLVM with LLVM_ABI_BREAKING_CHECKS=FORCE_OFF.
-
-Feature: clang
-Description: Build C Language Family Front-end.
-
-Feature: disable-clang-static-analyzer
-Description: Build without static analyzer.
-
-Feature: clang-tools-extra
-Description: Build Clang tools.
-
-Feature: compiler-rt
-Description: Build compiler's runtime libraries.
-
-Feature: flang
-Description: Build Fortran front end.
-Build-Depends: llvm[core,mlir]
-
-Feature: lld
-Description: Build LLVM linker.
-
-Feature: lldb
-Description: Build LLDB debugger.
-
-Feature: mlir
-Description: Build Multi-Level IR Compiler Framework.
-
-Feature: openmp
-Description: Build LLVM OpenMP libraries.
-Build-Depends: llvm[core,utils]
-
-Feature: polly
-Description: Build polyhedral optimizations for LLVM.
-Build-Depends: llvm[core,utils]
diff --git a/ports/llvm/clang_usage b/ports/llvm/clang_usage
new file mode 100644
index 000000000..f239721f4
--- /dev/null
+++ b/ports/llvm/clang_usage
@@ -0,0 +1,5 @@
+The package clang provides CMake targets:
+
+ find_package(Clang CONFIG REQUIRED)
+ target_include_directories(main PRIVATE ${CLANG_INCLUDE_DIRS})
+ target_link_libraries(main PRIVATE clangBasic clangLex clangParse clangAST ...)
diff --git a/ports/llvm/flang_usage b/ports/llvm/flang_usage
new file mode 100644
index 000000000..b3cb08592
--- /dev/null
+++ b/ports/llvm/flang_usage
@@ -0,0 +1,5 @@
+The package flang provides CMake targets:
+
+ find_package(Flang CONFIG REQUIRED)
+ target_include_directories(main PRIVATE ${FLANG_INCLUDE_DIRS})
+ target_link_libraries(main PRIVATE flangFrontend flangFrontendTool ...)
diff --git a/ports/llvm/lld_usage b/ports/llvm/lld_usage
new file mode 100644
index 000000000..92c8d10a0
--- /dev/null
+++ b/ports/llvm/lld_usage
@@ -0,0 +1,5 @@
+The package lld provides CMake targets:
+
+ find_package(LLD CONFIG REQUIRED)
+ target_include_directories(main PRIVATE ${LLD_INCLUDE_DIRS})
+ target_link_libraries(main PRIVATE lldCommon lldCore lldDriver ...)
diff --git a/ports/llvm/llvm_usage b/ports/llvm/llvm_usage
new file mode 100644
index 000000000..72d57dbfa
--- /dev/null
+++ b/ports/llvm/llvm_usage
@@ -0,0 +1,15 @@
+The package llvm provides CMake targets:
+
+ find_package(LLVM CONFIG REQUIRED)
+
+ list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_DIR}")
+ include(HandleLLVMOptions)
+ add_definitions(${LLVM_DEFINITIONS})
+
+ target_include_directories(main PRIVATE ${LLVM_INCLUDE_DIRS})
+
+ # Find the libraries that correspond to the LLVM components that we wish to use
+ llvm_map_components_to_libnames(llvm_libs Support Core IRReader ...)
+
+ # Link against LLVM libraries
+ target_link_libraries(main PRIVATE ${llvm_libs})
diff --git a/ports/llvm/mlir_usage b/ports/llvm/mlir_usage
new file mode 100644
index 000000000..da45a1612
--- /dev/null
+++ b/ports/llvm/mlir_usage
@@ -0,0 +1,5 @@
+The package lld provides CMake targets:
+
+ find_package(MLIR CONFIG REQUIRED)
+ target_include_directories(main PRIVATE ${MLIR_INCLUDE_DIRS})
+ target_link_libraries(main PRIVATE MLIRIR MLIRParser MLIRPass MLIRSupport ...)
diff --git a/ports/llvm/portfile.cmake b/ports/llvm/portfile.cmake
index 99289b23e..356a25bf1 100644
--- a/ports/llvm/portfile.cmake
+++ b/ports/llvm/portfile.cmake
@@ -1,4 +1,4 @@
-set(LLVM_VERSION "11.0.0")
+set(LLVM_VERSION "11.1.0")
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
@@ -6,7 +6,7 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO llvm/llvm-project
REF llvmorg-${LLVM_VERSION}
- SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
+ SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
HEAD_REF master
PATCHES
0001-add-msvc-options.patch # Fixed in LLVM 12.0.0
@@ -15,20 +15,24 @@ vcpkg_from_github(
0004-fix-dr-1734.patch
0005-fix-tools-path.patch
0006-workaround-msvc-bug.patch # Fixed in LLVM 12.0.0
+ 0007-fix-compiler-rt-install-path.patch
+ 0008-fix-libcxx-install.patch
+ 0009-fix-tools-install-path.patch
)
-vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+vcpkg_check_features(
+ OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
- tools LLVM_BUILD_TOOLS
- tools LLVM_INCLUDE_TOOLS
- utils LLVM_BUILD_UTILS
- utils LLVM_INCLUDE_UTILS
- enable-rtti LLVM_ENABLE_RTTI
- enable-ffi LLVM_ENABLE_FFI
- enable-terminfo LLVM_ENABLE_TERMINFO
- enable-threads LLVM_ENABLE_THREADS
- enable-eh LLVM_ENABLE_EH
- enable-bindings LLVM_ENABLE_BINDINGS
+ tools LLVM_BUILD_TOOLS
+ tools LLVM_INCLUDE_TOOLS
+ utils LLVM_BUILD_UTILS
+ utils LLVM_INCLUDE_UTILS
+ enable-rtti LLVM_ENABLE_RTTI
+ enable-ffi LLVM_ENABLE_FFI
+ enable-terminfo LLVM_ENABLE_TERMINFO
+ enable-threads LLVM_ENABLE_THREADS
+ enable-eh LLVM_ENABLE_EH
+ enable-bindings LLVM_ENABLE_BINDINGS
)
# LLVM generates CMake error due to Visual Studio version 16.4 is known to miscompile part of LLVM.
@@ -77,6 +81,10 @@ if("clang" IN_LIST FEATURES OR "clang-tools-extra" IN_LIST FEATURES)
-DCLANG_ENABLE_STATIC_ANALYZER=OFF
)
endif()
+ # 1) LLVM/Clang tools are relocated from ./bin/ to ./tools/llvm/ (LLVM_TOOLS_INSTALL_DIR=tools/llvm)
+ # 2) Clang resource files are relocated from ./lib/clang/<version> to ./tools/llvm/lib/clang/<version> (see patch 0007-fix-compiler-rt-install-path.patch)
+ # So, the relative path should be changed from ../lib/clang/<version> to ./lib/clang/<version>
+ list(APPEND FEATURE_OPTIONS -DCLANG_RESOURCE_DIR=lib/clang/${LLVM_VERSION})
endif()
if("clang-tools-extra" IN_LIST FEATURES)
list(APPEND LLVM_ENABLE_PROJECTS "clang-tools-extra")
@@ -87,7 +95,7 @@ endif()
if("flang" IN_LIST FEATURES)
# Disable Flang on Windows (see http://lists.llvm.org/pipermail/flang-dev/2020-July/000448.html).
if(VCPKG_TARGET_IS_WINDOWS)
- message(FATAL_ERROR "Building Flang with MSVC is not supported.")
+ message(FATAL_ERROR "Building Flang with MSVC is not supported. Disable it until issues are fixed.")
endif()
list(APPEND LLVM_ENABLE_PROJECTS "flang")
list(APPEND FEATURE_OPTIONS
@@ -95,6 +103,27 @@ if("flang" IN_LIST FEATURES)
-DCMAKE_CXX_STANDARD=17
)
endif()
+if("libclc" IN_LIST FEATURES)
+ list(APPEND LLVM_ENABLE_PROJECTS "libclc")
+endif()
+if("libcxx" IN_LIST FEATURES)
+ if(VCPKG_TARGET_IS_WINDOWS)
+ message(FATAL_ERROR "Building libcxx with MSVC is not supported. Disable it until issues are fixed.")
+ endif()
+ list(APPEND LLVM_ENABLE_PROJECTS "libcxx")
+endif()
+if("libcxxabi" IN_LIST FEATURES)
+ if(VCPKG_TARGET_IS_WINDOWS)
+ message(FATAL_ERROR "Building libcxxabi with MSVC is not supported. Disable it until issues are fixed.")
+ endif()
+ list(APPEND LLVM_ENABLE_PROJECTS "libcxxabi")
+endif()
+if("libunwind" IN_LIST FEATURES)
+ if(VCPKG_TARGET_IS_WINDOWS)
+ message(FATAL_ERROR "Building libunwind with MSVC is not supported. Disable it until issues are fixed.")
+ endif()
+ list(APPEND LLVM_ENABLE_PROJECTS "libunwind")
+endif()
if("lld" IN_LIST FEATURES)
list(APPEND LLVM_ENABLE_PROJECTS "lld")
endif()
@@ -107,7 +136,7 @@ endif()
if("openmp" IN_LIST FEATURES)
# Disable OpenMP on Windows (see https://bugs.llvm.org/show_bug.cgi?id=45074).
if(VCPKG_TARGET_IS_WINDOWS)
- message(FATAL_ERROR "Building OpenMP with MSVC is not supported.")
+ message(FATAL_ERROR "Building OpenMP with MSVC is not supported. Disable it until issues are fixed.")
endif()
list(APPEND LLVM_ENABLE_PROJECTS "openmp")
# Perl is required for the OpenMP run-time
@@ -121,12 +150,17 @@ if("openmp" IN_LIST FEATURES)
)
endif()
endif()
+if("parallel-libs" IN_LIST FEATURES)
+ list(APPEND LLVM_ENABLE_PROJECTS "parallel-libs")
+endif()
if("polly" IN_LIST FEATURES)
list(APPEND LLVM_ENABLE_PROJECTS "polly")
endif()
-
-if("tools" IN_LIST FEATURES)
- list(APPEND FEATURE_OPTIONS -DCLANG_RESOURCE_DIR=../../lib/clang/11.0.0)
+if("pstl" IN_LIST FEATURES)
+ if(VCPKG_TARGET_IS_WINDOWS)
+ message(FATAL_ERROR "Building pstl with MSVC is not supported. Disable it until issues are fixed.")
+ endif()
+ list(APPEND LLVM_ENABLE_PROJECTS "pstl")
endif()
set(known_llvm_targets
@@ -190,9 +224,14 @@ vcpkg_configure_cmake(
vcpkg_install_cmake()
+vcpkg_fixup_cmake_targets(CONFIG_PATH "share/llvm" TARGET_PATH "share/llvm")
+file(INSTALL ${SOURCE_PATH}/llvm/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/llvm RENAME copyright)
+file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/llvm_usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/llvm RENAME usage)
+
if("clang" IN_LIST FEATURES)
vcpkg_fixup_cmake_targets(CONFIG_PATH "share/clang" TARGET_PATH "share/clang" DO_NOT_DELETE_PARENT_CONFIG_PATH)
file(INSTALL ${SOURCE_PATH}/clang/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/clang RENAME copyright)
+ file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/clang_usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/clang RENAME usage)
endif()
if("clang-tools-extra" IN_LIST FEATURES)
@@ -205,7 +244,8 @@ endif()
if("flang" IN_LIST FEATURES)
vcpkg_fixup_cmake_targets(CONFIG_PATH "share/flang" TARGET_PATH "share/flang" DO_NOT_DELETE_PARENT_CONFIG_PATH)
- file(INSTALL ${SOURCE_PATH}/flang/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/flang RENAME copyright)
+ file(INSTALL ${SOURCE_PATH}/flang/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/flang RENAME copyright)
+ file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/flang_usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/flang RENAME usage)
# Remove empty include directory /include/flang/Config
file(GLOB_RECURSE INCLUDE_FLANG_CONFIG_FILES "${CURRENT_PACKAGES_DIR}/include/flang/Config/*")
if(NOT INCLUDE_FLANG_CONFIG_FILES)
@@ -216,39 +256,26 @@ endif()
if("lld" IN_LIST FEATURES)
vcpkg_fixup_cmake_targets(CONFIG_PATH "share/lld" TARGET_PATH "share/lld" DO_NOT_DELETE_PARENT_CONFIG_PATH)
file(INSTALL ${SOURCE_PATH}/lld/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/lld RENAME copyright)
+ file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/lld_usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/lld RENAME usage)
endif()
if("mlir" IN_LIST FEATURES)
vcpkg_fixup_cmake_targets(CONFIG_PATH "share/mlir" TARGET_PATH "share/mlir" DO_NOT_DELETE_PARENT_CONFIG_PATH)
file(INSTALL ${SOURCE_PATH}/mlir/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/mlir RENAME copyright)
+ file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/mlir_usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/mlir RENAME usage)
endif()
if("polly" IN_LIST FEATURES)
vcpkg_fixup_cmake_targets(CONFIG_PATH "share/polly" TARGET_PATH "share/polly" DO_NOT_DELETE_PARENT_CONFIG_PATH)
- file(INSTALL ${SOURCE_PATH}/polly/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/polly RENAME copyright)
+ file(INSTALL ${SOURCE_PATH}/polly/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/polly RENAME copyright)
endif()
-vcpkg_fixup_cmake_targets(CONFIG_PATH "share/llvm" TARGET_PATH "share/llvm")
-file(INSTALL ${SOURCE_PATH}/llvm/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/llvm RENAME copyright)
-
-if(VCPKG_TARGET_IS_WINDOWS)
- set(LLVM_EXECUTABLE_REGEX [[^([^.]*|[^.]*\.lld)\.exe$]])
-else()
- set(LLVM_EXECUTABLE_REGEX [[^([^.]*|[^.]*\.lld)$]])
+if("pstl" IN_LIST FEATURES)
+ vcpkg_fixup_cmake_targets(CONFIG_PATH "share/ParallelSTL" TARGET_PATH "share/ParallelSTL" DO_NOT_DELETE_PARENT_CONFIG_PATH)
+ file(INSTALL ${SOURCE_PATH}/pstl/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/ParallelSTL RENAME copyright)
endif()
-file(GLOB LLVM_TOOL_FILES "${CURRENT_PACKAGES_DIR}/bin/*")
-set(LLVM_TOOLS)
-foreach(tool_file IN LISTS LLVM_TOOL_FILES)
- get_filename_component(tool_file "${tool_file}" NAME)
- if(tool_file MATCHES "${LLVM_EXECUTABLE_REGEX}")
- list(APPEND LLVM_TOOLS "${CMAKE_MATCH_1}")
- endif()
-endforeach()
-
-if(LLVM_TOOLS)
- vcpkg_copy_tools(TOOL_NAMES ${LLVM_TOOLS} AUTO_CLEAN)
-endif()
+vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT})
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
diff --git a/ports/llvm/vcpkg.json b/ports/llvm/vcpkg.json
new file mode 100644
index 000000000..4590e5111
--- /dev/null
+++ b/ports/llvm/vcpkg.json
@@ -0,0 +1,321 @@
+{
+ "name": "llvm",
+ "version-string": "11.1.0",
+ "description": "The LLVM Compiler Infrastructure.",
+ "homepage": "https://llvm.org",
+ "supports": "!uwp",
+ "default-features": [
+ "clang",
+ "default-options",
+ "default-targets",
+ "lld",
+ "tools"
+ ],
+ "features": {
+ "clang": {
+ "description": "Include C Language Family Front-end.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "compiler-rt",
+ "tools"
+ ]
+ }
+ ]
+ },
+ "clang-tools-extra": {
+ "description": "Include Clang tools."
+ },
+ "compiler-rt": {
+ "description": "Include compiler's runtime libraries."
+ },
+ "default-options": {
+ "description": "Build with default options.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "disable-abi-breaking-checks",
+ "disable-assertions",
+ "disable-clang-static-analyzer",
+ "enable-bindings",
+ "enable-rtti",
+ "enable-terminfo",
+ "enable-threads"
+ ]
+ }
+ ]
+ },
+ "default-targets": {
+ "description": "Build with platform-specific default targets.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "target-aarch64"
+ ],
+ "platform": "arm64"
+ },
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "target-x86"
+ ],
+ "platform": "x86 | x64"
+ },
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "target-arm"
+ ],
+ "platform": "arm & !arm64"
+ },
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "target-all"
+ ],
+ "platform": "!x86 & !x64 & !arm & !arm64"
+ }
+ ]
+ },
+ "disable-abi-breaking-checks": {
+ "description": "Build LLVM with LLVM_ABI_BREAKING_CHECKS=FORCE_OFF."
+ },
+ "disable-assertions": {
+ "description": "Build LLVM without assertions."
+ },
+ "disable-clang-static-analyzer": {
+ "description": "Build without static analyzer."
+ },
+ "enable-abi-breaking-checks": {
+ "description": "Build LLVM with LLVM_ABI_BREAKING_CHECKS=FORCE_ON."
+ },
+ "enable-assertions": {
+ "description": "Build LLVM with assertions."
+ },
+ "enable-bindings": {
+ "description": "Build bindings."
+ },
+ "enable-eh": {
+ "description": "Build LLVM with exception handler.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "enable-rtti"
+ ]
+ }
+ ]
+ },
+ "enable-ffi": {
+ "description": "Build LLVM with FFI.",
+ "dependencies": [
+ "libffi"
+ ]
+ },
+ "enable-rtti": {
+ "description": "Build LLVM with run-time type information."
+ },
+ "enable-terminfo": {
+ "description": "Use terminfo database if available."
+ },
+ "enable-threads": {
+ "description": "Use threads if available."
+ },
+ "flang": {
+ "description": "Include Fortran front end.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "mlir",
+ "tools"
+ ]
+ }
+ ]
+ },
+ "libclc": {
+ "description": "Include OpenCL library."
+ },
+ "libcxx": {
+ "description": "Include libcxx library.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "libcxxabi"
+ ]
+ }
+ ]
+ },
+ "libcxxabi": {
+ "description": "Include libcxxabi library."
+ },
+ "libunwind": {
+ "description": "Include libunwind library."
+ },
+ "lld": {
+ "description": "Include LLVM linker.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "tools"
+ ]
+ }
+ ]
+ },
+ "lldb": {
+ "description": "Include LLVM debugger.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "tools"
+ ]
+ }
+ ]
+ },
+ "mlir": {
+ "description": "Include MLIR (Multi-Level IR Compiler Framework) project.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "tools"
+ ]
+ }
+ ]
+ },
+ "openmp": {
+ "description": "Include LLVM OpenMP libraries.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "utils"
+ ]
+ }
+ ]
+ },
+ "parallel-libs": {
+ "description": "Include parallel-libs project."
+ },
+ "polly": {
+ "description": "Include Polly (Polyhedral optimizations for LLVM) project.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "tools",
+ "utils"
+ ]
+ }
+ ]
+ },
+ "pstl": {
+ "description": "Include pstl (Parallel STL) library."
+ },
+ "target-aarch64": {
+ "description": "Build with AArch64 backend."
+ },
+ "target-all": {
+ "description": "Build with all backends.",
+ "dependencies": [
+ {
+ "name": "llvm",
+ "default-features": false,
+ "features": [
+ "target-aarch64",
+ "target-amdgpu",
+ "target-arm",
+ "target-avr",
+ "target-bpf",
+ "target-hexagon",
+ "target-lanai",
+ "target-mips",
+ "target-msp430",
+ "target-nvptx",
+ "target-powerpc",
+ "target-riscv",
+ "target-sparc",
+ "target-systemz",
+ "target-webassembly",
+ "target-x86",
+ "target-xcore"
+ ]
+ }
+ ]
+ },
+ "target-amdgpu": {
+ "description": "Build with AMDGPU backend."
+ },
+ "target-arm": {
+ "description": "Build with ARM backend."
+ },
+ "target-avr": {
+ "description": "Build with AVR backend."
+ },
+ "target-bpf": {
+ "description": "Build with BPF backend."
+ },
+ "target-hexagon": {
+ "description": "Build with Hexagon backend."
+ },
+ "target-lanai": {
+ "description": "Build with Lanai backend."
+ },
+ "target-mips": {
+ "description": "Build with Mips backend."
+ },
+ "target-msp430": {
+ "description": "Build with MSP430 backend."
+ },
+ "target-nvptx": {
+ "description": "Build with NVPTX backend."
+ },
+ "target-powerpc": {
+ "description": "Build with PowerPC backend."
+ },
+ "target-riscv": {
+ "description": "Build with RISC-V backend."
+ },
+ "target-sparc": {
+ "description": "Build with Sparc backend."
+ },
+ "target-systemz": {
+ "description": "Build with SystemZ backend."
+ },
+ "target-webassembly": {
+ "description": "Build with WebAssembly backend."
+ },
+ "target-x86": {
+ "description": "Build with X86 backend."
+ },
+ "target-xcore": {
+ "description": "Build with XCore backend."
+ },
+ "tools": {
+ "description": "Build LLVM tools."
+ },
+ "utils": {
+ "description": "Build LLVM utils."
+ }
+ }
+}
diff --git a/versions/baseline.json b/versions/baseline.json
index d5ba93884..6de4dd162 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -3689,8 +3689,8 @@
"port-version": 1
},
"llvm": {
- "baseline": "11.0.0",
- "port-version": 2
+ "baseline": "11.1.0",
+ "port-version": 0
},
"lmdb": {
"baseline": "0.9.24",
diff --git a/versions/l-/llvm.json b/versions/l-/llvm.json
index 0e658ed3e..fb9e68ce9 100644
--- a/versions/l-/llvm.json
+++ b/versions/l-/llvm.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "7b30e5aa5227b4af185b967afbe34e84cf8c7638",
+ "version-string": "11.1.0",
+ "port-version": 0
+ },
+ {
"git-tree": "308632b643c39d4e6871c550156d218b4cf8d968",
"version-string": "11.0.0",
"port-version": 2