Skip to content

Commit 965f619

Browse files
committed
[i686 Linux] Bootstrap the build
Prior to this, the swift build didn’t understand what i686 is, or what to do about building it. This unblocks building, but will still run into build breaks.
1 parent 64ef8ec commit 965f619

File tree

3 files changed

+9
-1
lines changed

3 files changed

+9
-1
lines changed

CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -592,7 +592,7 @@ else()
592592
set(SWIFT_HOST_VARIANT_ARCH_default "x86_64")
593593
elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "IA64")
594594
set(SWIFT_HOST_VARIANT_ARCH_default "itanium")
595-
elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86")
595+
elseif("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(x86|i686)")
596596
set(SWIFT_HOST_VARIANT_ARCH_default "i686")
597597
else()
598598
message(FATAL_ERROR "Unrecognized architecture on host system: ${CMAKE_SYSTEM_PROCESSOR}")
@@ -647,6 +647,8 @@ if("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "LINUX")
647647
if("${SWIFT_HOST_TRIPLE}" STREQUAL "")
648648
if("${SWIFT_HOST_VARIANT_ARCH}" STREQUAL "x86_64")
649649
set(SWIFT_HOST_TRIPLE "x86_64-unknown-linux-gnu")
650+
elseif("${SWIFT_HOST_VARIANT_ARCH}" STREQUAL "i686")
651+
set(SWIFT_HOST_TRIPLE "i686-unknown-linux-gnu")
650652
elseif("${SWIFT_HOST_VARIANT_ARCH}" STREQUAL "aarch64")
651653
set(SWIFT_HOST_TRIPLE "aarch64-unknown-linux-gnu")
652654
elseif("${SWIFT_HOST_VARIANT_ARCH}" MATCHES "(powerpc64|powerpc64le)")

utils/build-script-impl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -433,6 +433,9 @@ function set_build_options_for_host() {
433433
linux-x86_64)
434434
SWIFT_HOST_VARIANT_ARCH="x86_64"
435435
;;
436+
linux-i686)
437+
SWIFT_HOST_VARIANT_ARCH="i686"
438+
;;
436439
linux-armv6)
437440
SWIFT_HOST_VARIANT_ARCH="armv6"
438441
SWIFT_HOST_TRIPLE="armv6-unknown-linux-gnueabihf"

utils/swift_build_support/swift_build_support/targets.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ class StdlibDeploymentTarget(object):
113113

114114
Linux = Platform("linux", archs=[
115115
"x86_64",
116+
"i686",
116117
"armv6",
117118
"armv7",
118119
"aarch64",
@@ -160,6 +161,8 @@ def host_target():
160161
if system == 'Linux':
161162
if machine == 'x86_64':
162163
return StdlibDeploymentTarget.Linux.x86_64
164+
elif machine == 'i686':
165+
return StdlibDeploymentTarget.Linux.i686
163166
elif machine.startswith('armv7'):
164167
# linux-armv7* is canonicalized to 'linux-armv7'
165168
return StdlibDeploymentTarget.Linux.armv7

0 commit comments

Comments
 (0)