diff options
| author | Alexandre Bique <bique.alexandre@gmail.com> | 2021-07-23 00:50:52 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-07-22 15:50:52 -0700 |
| commit | 8886d85ad0215a7f30459f5a3c495a0f7c4d6a88 (patch) | |
| tree | 41194e8bc998af5ef427ae52ed9746bfa63d8185 | |
| parent | 16aeda9c214e7eaac314e5977f4204c1ba5a645f (diff) | |
| download | vcpkg-8886d85ad0215a7f30459f5a3c495a0f7c4d6a88.tar.gz vcpkg-8886d85ad0215a7f30459f5a3c495a0f7c4d6a88.zip | |
[llvm] improve cross compilation (#18770)
| -rw-r--r-- | ports/llvm/portfile.cmake | 30 | ||||
| -rw-r--r-- | ports/llvm/vcpkg.json | 1 | ||||
| -rw-r--r-- | versions/baseline.json | 2 | ||||
| -rw-r--r-- | versions/l-/llvm.json | 5 |
4 files changed, 35 insertions, 3 deletions
diff --git a/ports/llvm/portfile.cmake b/ports/llvm/portfile.cmake index c242f99e4..37c1c5f19 100644 --- a/ports/llvm/portfile.cmake +++ b/ports/llvm/portfile.cmake @@ -187,13 +187,13 @@ set(known_llvm_targets BPF Hexagon Lanai - Mips + Mips MSP430 NVPTX PowerPC RISCV Sparc - SystemZ + SystemZ WebAssembly X86 XCore @@ -211,11 +211,37 @@ vcpkg_find_acquire_program(PYTHON3) get_filename_component(PYTHON3_DIR ${PYTHON3} DIRECTORY) vcpkg_add_to_path(${PYTHON3_DIR}) +if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "${VCPKG_DETECTED_CMAKE_SYSTEM_PROCESSOR}") + # TODO: support more targets and OS + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") + if(VCPKG_TARGET_IS_OSX) + list(APPEND CROSS_OPTIONS -DLLVM_HOST_TRIPLE=arm64-apple-darwin20.3.0) + list(APPEND CROSS_OPTIONS -DLLVM_DEFAULT_TARGET_TRIPLE=arm64-apple-darwin20.3.0) + elseif(VCPKG_TARGET_IS_WINDOWS) + list(APPEND CROSS_OPTIONS -DLLVM_HOST_TRIPLE=arm64-pc-win32) + list(APPEND CROSS_OPTIONS -DLLVM_DEFAULT_TARGET_TRIPLE=arm64-pc-win32) + + # Remove if PR #16111 is merged + list(APPEND CROSS_OPTIONS -DCMAKE_CROSSCOMPILING=ON) + list(APPEND CROSS_OPTIONS -DCMAKE_SYSTEM_PROCESSOR:STRING=ARM64) + list(APPEND CROSS_OPTIONS -DCMAKE_SYSTEM_NAME:STRING=Windows) + endif() + list(APPEND CROSS_OPTIONS -DLLVM_TARGET_ARCH=AArch64) + elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + if(VCPKG_TARGET_IS_OSX) + list(APPEND CROSS_OPTIONS -DLLVM_HOST_TRIPLE=x86_64-apple-darwin20.3.0) + list(APPEND CROSS_OPTIONS -DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-apple-darwin20.3.0) + endif() + list(APPEND CROSS_OPTIONS -DLLVM_TARGET_ARCH=X86) + endif() +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/llvm PREFER_NINJA OPTIONS ${FEATURE_OPTIONS} + ${CROSS_OPTIONS} -DLLVM_INCLUDE_EXAMPLES=OFF -DLLVM_BUILD_EXAMPLES=OFF -DLLVM_INCLUDE_TESTS=OFF diff --git a/ports/llvm/vcpkg.json b/ports/llvm/vcpkg.json index 06ef3712b..2c5061af6 100644 --- a/ports/llvm/vcpkg.json +++ b/ports/llvm/vcpkg.json @@ -1,6 +1,7 @@ { "name": "llvm", "version-string": "12.0.0", + "port-version": 1, "description": "The LLVM Compiler Infrastructure.", "homepage": "https://llvm.org", "supports": "!uwp", diff --git a/versions/baseline.json b/versions/baseline.json index e66f7f6e2..45bda6dc7 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -3818,7 +3818,7 @@ }, "llvm": { "baseline": "12.0.0", - "port-version": 0 + "port-version": 1 }, "lmdb": { "baseline": "0.9.24", diff --git a/versions/l-/llvm.json b/versions/l-/llvm.json index 843314d7c..7cb28d85e 100644 --- a/versions/l-/llvm.json +++ b/versions/l-/llvm.json @@ -1,6 +1,11 @@ { "versions": [ { + "git-tree": "3d801bd12386ff6ab31ec0a27c3f45e23242a470", + "version-string": "12.0.0", + "port-version": 1 + }, + { "git-tree": "6597ffba14111050d8e68af4852ea5766c81a78c", "version-string": "12.0.0", "port-version": 0 |
