aboutsummaryrefslogtreecommitdiff
path: root/ports
diff options
context:
space:
mode:
authorAlexandre Bique <bique.alexandre@gmail.com>2021-03-29 18:39:04 +0200
committerGitHub <noreply@github.com>2021-03-29 09:39:04 -0700
commit9b90e8afc7e481c1f566e71869791a56050ba03d (patch)
treeb37196ab63d61f81ae6306f35ad2bdba8328f7b3 /ports
parent2b903edac3d4cdd33902407a959209abb9f12021 (diff)
downloadvcpkg-9b90e8afc7e481c1f566e71869791a56050ba03d.tar.gz
vcpkg-9b90e8afc7e481c1f566e71869791a56050ba03d.zip
[llvm] add more features (#16877)
Diffstat (limited to 'ports')
-rw-r--r--ports/llvm/CONTROL21
-rw-r--r--ports/llvm/portfile.cmake10
2 files changed, 28 insertions, 3 deletions
diff --git a/ports/llvm/CONTROL b/ports/llvm/CONTROL
index 5782832bc..1cbfd8e98 100644
--- a/ports/llvm/CONTROL
+++ b/ports/llvm/CONTROL
@@ -1,10 +1,10 @@
Source: llvm
Version: 11.0.0
-Port-Version: 1
+Port-Version: 2
Homepage: https://llvm.org/
Description: The LLVM Compiler Infrastructure
Supports: !uwp
-Default-Features: tools, enable-rtti, disable-assertions, disable-abi-breaking-checks, clang, disable-clang-static-analyzer, lld, default-targets
+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.
@@ -71,15 +71,32 @@ 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.
diff --git a/ports/llvm/portfile.cmake b/ports/llvm/portfile.cmake
index 8d7d7b9fe..99289b23e 100644
--- a/ports/llvm/portfile.cmake
+++ b/ports/llvm/portfile.cmake
@@ -18,11 +18,17 @@ vcpkg_from_github(
)
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
)
# LLVM generates CMake error due to Visual Studio version 16.4 is known to miscompile part of LLVM.
@@ -240,7 +246,9 @@ foreach(tool_file IN LISTS LLVM_TOOL_FILES)
endif()
endforeach()
-vcpkg_copy_tools(TOOL_NAMES ${LLVM_TOOLS} AUTO_CLEAN)
+if(LLVM_TOOLS)
+ vcpkg_copy_tools(TOOL_NAMES ${LLVM_TOOLS} AUTO_CLEAN)
+endif()
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)