Skip to content

Commit 4643a5a

Browse files
committedDec 19, 2024
[Mac Build] Add stdlib build
* Add cache files for the stdlib build * Adapt stdlib job to build for both Windows and Mac.
1 parent 936db4e commit 4643a5a

File tree

4 files changed

+224
-169
lines changed

4 files changed

+224
-169
lines changed
 

‎.github/workflows/build-toolchain.yml

+80-8
Original file line numberDiff line numberDiff line change
@@ -451,73 +451,115 @@ jobs:
451451
"include": [
452452
{
453453
"arch": "amd64",
454+
"cpu": "x86_64",
454455
"os": "Windows",
456+
"platform": "Windows",
457+
"triple": "x86_64-unknown-windows-msvc",
458+
"triple_no_api_level": "x86_64-unknown-windows-msvc",
455459
"cc": "cl",
456460
"cflags": "${{ steps.context.outputs.WINDOWS_CMAKE_C_FLAGS }}",
457461
"cxx": "cl",
458462
"cxxflags": "${{ steps.context.outputs.WINDOWS_CMAKE_CXX_FLAGS }}",
459463
"swiftflags": "${{ steps.context.outputs.WINDOWS_CMAKE_Swift_FLAGS }}",
464+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\"",
465+
"llvm_flags": "",
460466
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=AMD64"
461467
},
462468
{
463469
"arch": "arm64",
470+
"cpu": "aarch64",
464471
"os": "Windows",
472+
"platform": "Windows",
473+
"triple": "aarch64-unknown-windows-msvc",
474+
"triple_no_api_level": "aarch64-unknown-windows-msvc",
465475
"cc": "cl",
466476
"cflags": "${{ steps.context.outputs.WINDOWS_CMAKE_C_FLAGS }}",
467477
"cxx": "cl",
468478
"cxxflags": "${{ steps.context.outputs.WINDOWS_CMAKE_CXX_FLAGS }}",
469479
"swiftflags": "${{ steps.context.outputs.WINDOWS_CMAKE_Swift_FLAGS }}",
480+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\"",
481+
"llvm_flags": "",
470482
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=ARM64"
471483
},
472484
{
473485
"arch": "x86",
486+
"cpu": "i686",
474487
"os": "Windows",
488+
"platform": "Windows",
489+
"triple": "i686-unknown-windows-msvc",
490+
"triple_no_api_level": "i686-unknown-windows-msvc",
475491
"cc": "cl",
476492
"cflags": "${{ steps.context.outputs.WINDOWS_CMAKE_C_FLAGS }}",
477493
"cxx": "cl",
478494
"cxxflags": "${{ steps.context.outputs.WINDOWS_CMAKE_CXX_FLAGS }}",
479495
"swiftflags": "",
496+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\"",
497+
"llvm_flags": "",
480498
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=X86"
481499
},
482500
{
483501
"arch": "arm64",
502+
"cpu": "aarch64",
484503
"os": "Android",
504+
"platform": "Android",
505+
"triple": "aarch64-unknown-linux-android${{ inputs.ANDROID_API_LEVEL }}",
506+
"triple_no_api_level": "aarch64-unknown-linux-android",
485507
"cc": "clang",
486508
"cflags": "${{ steps.context.outputs.ANDROID_CMAKE_C_FLAGS }}",
487509
"cxx": "clang++",
488510
"cxxflags": "${{ steps.context.outputs.ANDROID_CMAKE_CXX_FLAGS }}",
489-
"swiftflags": "",
490-
"extra_flags": "-DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a"
511+
"swiftflags": "-L ${{ github.workspace }}/BinaryCache/swift/lib/swift/android -g",
512+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_SHARED_LINKER_FLAGS }}\"",
513+
"llvm_flags": "-DCMAKE_SYSTEM_PROCESSOR=aarch64 -DLLVM_HOST_TRIPLE=aarch64-unknown-linux-android${{ inputs.ANDROID_API_LEVEL }}",
514+
"extra_flags": "-D CMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -D CMAKE_ANDROID_ARCH_ABI=arm64-v8a"
491515
},
492516
{
493517
"arch": "armv7",
518+
"cpu": "armv7-a",
494519
"os": "Android",
520+
"platform": "Android",
521+
"triple": "armv7-unknown-linux-androideabi${{ inputs.ANDROID_API_LEVEL }}",
522+
"triple_no_api_level": "armv7-unknown-linux-androideabi",
495523
"cc": "clang",
496524
"cflags": "${{ steps.context.outputs.ANDROID_CMAKE_C_FLAGS }}",
497525
"cxx": "clang++",
498526
"cxxflags": "${{ steps.context.outputs.ANDROID_CMAKE_CXX_FLAGS }}",
499-
"swiftflags": "",
500-
"extra_flags": "-DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a"
527+
"swiftflags": "-L ${{ github.workspace }}/BinaryCache/swift/lib/swift/android -g",
528+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_SHARED_LINKER_FLAGS }}\"",
529+
"llvm_flags": "-DCMAKE_SYSTEM_PROCESSOR=armv7-a -DLLVM_HOST_TRIPLE=armv7a-unknown-linux-androideabi${{ inputs.ANDROID_API_LEVEL }}",
530+
"extra_flags": "-D CMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -D CMAKE_ANDROID_ARCH_ABI=armeabi-v7a"
501531
},
502532
{
503533
"arch": "i686",
534+
"cpu": "i686",
504535
"os": "Android",
536+
"platform": "Android",
537+
"triple": "i686-unknown-linux-android${{ inputs.ANDROID_API_LEVEL }}",
538+
"triple_no_api_level": "i686-unknown-linux-android",
505539
"cc": "clang",
506540
"cflags": "${{ steps.context.outputs.ANDROID_CMAKE_C_FLAGS }}",
507541
"cxx": "clang++",
508542
"cxxflags": "${{ steps.context.outputs.ANDROID_CMAKE_CXX_FLAGS }}",
509-
"swiftflags": "",
510-
"extra_flags": "-DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=x86"
543+
"swiftflags": "-L ${{ github.workspace }}/BinaryCache/swift/lib/swift/android -g",
544+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_SHARED_LINKER_FLAGS }}\"",
545+
"llvm_flags": "-DCMAKE_SYSTEM_PROCESSOR=i686 -DLLVM_HOST_TRIPLE=i686-unknown-linux-android${{ inputs.ANDROID_API_LEVEL }}",
546+
"extra_flags": "-D CMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -D CMAKE_ANDROID_ARCH_ABI=x86"
511547
},
512548
{
513549
"arch": "x86_64",
550+
"cpu": "x86_64",
514551
"os": "Android",
552+
"platform": "Android",
553+
"triple": "x86_64-unknown-linux-android${{ inputs.ANDROID_API_LEVEL }}",
554+
"triple_no_api_level": "x86_64-unknown-linux-android",
515555
"cc": "clang",
516556
"cflags": "${{ steps.context.outputs.ANDROID_CMAKE_C_FLAGS }}",
517557
"cxx": "clang++",
518558
"cxxflags": "${{ steps.context.outputs.ANDROID_CMAKE_CXX_FLAGS }}",
519-
"swiftflags": "",
520-
"extra_flags": "-DCMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -DCMAKE_ANDROID_ARCH_ABI=x86_64"
559+
"swiftflags": "-L ${{ github.workspace }}/BinaryCache/swift/lib/swift/android -g",
560+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.ANDROID_CMAKE_SHARED_LINKER_FLAGS }}\"",
561+
"llvm_flags": "-DCMAKE_SYSTEM_PROCESSOR=x86_64 -DLLVM_HOST_TRIPLE=x86_64-unknown-linux-android${{ inputs.ANDROID_API_LEVEL }}",
562+
"extra_flags": "-D CMAKE_ANDROID_API=${{ inputs.ANDROID_API_LEVEL }} -D CMAKE_ANDROID_ARCH_ABI=x86_64"
521563
}
522564
]
523565
}
@@ -526,32 +568,50 @@ jobs:
526568
"include": [
527569
{
528570
"arch": "amd64",
571+
"cpu": "x86_64",
529572
"os": "Windows",
573+
"platform": "Windows",
574+
"triple": "x86_64-unknown-windows-msvc",
575+
"triple_no_api_level": "x86_64-unknown-windows-msvc",
530576
"cc": "cl",
531577
"cflags": "${{ steps.context.outputs.WINDOWS_CMAKE_C_FLAGS }}",
532578
"cxx": "cl",
533579
"cxxflags": "${{ steps.context.outputs.WINDOWS_CMAKE_CXX_FLAGS }}",
534580
"swiftflags": "${{ steps.context.outputs.WINDOWS_CMAKE_Swift_FLAGS }}",
581+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\"",
582+
"llvm_flags": "",
535583
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=AMD64"
536584
},
537585
{
538586
"arch": "arm64",
587+
"cpu": "aarch64",
539588
"os": "Windows",
589+
"platform": "Windows",
590+
"triple": "aarch64-unknown-windows-msvc",
591+
"triple_no_api_level": "aarch64-unknown-windows-msvc",
540592
"cc": "cl",
541593
"cflags": "${{ steps.context.outputs.WINDOWS_CMAKE_C_FLAGS }}",
542594
"cxx": "cl",
543595
"cxxflags": "${{ steps.context.outputs.WINDOWS_CMAKE_CXX_FLAGS }}",
544596
"swiftflags": "${{ steps.context.outputs.WINDOWS_CMAKE_Swift_FLAGS }}",
597+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\"",
598+
"llvm_flags": "",
545599
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=ARM64"
546600
},
547601
{
548602
"arch": "x86",
603+
"cpu": "i686",
549604
"os": "Windows",
605+
"platform": "Windows",
606+
"triple": "i686-unknown-windows-msvc",
607+
"triple_no_api_level": "i686-unknown-windows-msvc",
550608
"cc": "cl",
551609
"cflags": "${{ steps.context.outputs.WINDOWS_CMAKE_C_FLAGS }}",
552610
"cxx": "cl",
553611
"cxxflags": "${{ steps.context.outputs.WINDOWS_CMAKE_CXX_FLAGS }}",
554612
"swiftflags": "",
613+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.WINDOWS_CMAKE_EXE_LINKER_FLAGS }}\"",
614+
"llvm_flags": "",
555615
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=X86"
556616
}
557617
]
@@ -603,22 +663,34 @@ jobs:
603663
"include": [
604664
{
605665
"arch": "x86_64",
666+
"cpu": "x86_64",
606667
"os": "Darwin",
668+
"platform": "MacOSX",
669+
"triple": "x86_64-apple-macosx15.0",
670+
"triple_no_api_level": "x86_64-apple-macosx15.0",
607671
"cc": "clang",
608672
"cflags": "${{ steps.context.outputs.DARWIN_CMAKE_C_FLAGS }}",
609673
"cxx": "clang++",
610674
"cxxflags": "${{ steps.context.outputs.DARWIN_CMAKE_CXX_FLAGS }}",
611675
"swiftflags": "${{ steps.context.outputs.DARWIN_CMAKE_Swift_FLAGS }}",
676+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.DARWIN_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.DARWIN_CMAKE_SHARED_LINKER_FLAGS }}\"",
677+
"llvm_flags": "",
612678
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=x86_64 -D CMAKE_OSX_DEPLOYMENT_TARGET=15.0 -D CMAKE_OSX_ARCHITECTURES=x86_64"
613679
},
614680
{
615681
"arch": "arm64",
682+
"cpu": "aarch64",
616683
"os": "Darwin",
684+
"platform": "MacOSX",
685+
"triple": "arm64-apple-macosx15.0",
686+
"triple_no_api_level": "aarch64-apple-macosx15.0",
617687
"cc": "clang",
618688
"cflags": "${{ steps.context.outputs.DARWIN_CMAKE_C_FLAGS }}",
619689
"cxx": "clang++",
620690
"cxxflags": "${{ steps.context.outputs.DARWIN_CMAKE_CXX_FLAGS }}",
621691
"swiftflags": "${{ steps.context.outputs.DARWIN_CMAKE_Swift_FLAGS }}",
692+
"cmake_linker_flags": "-D CMAKE_EXE_LINKER_FLAGS=\"${{ steps.context.outputs.DARWIN_CMAKE_EXE_LINKER_FLAGS }}\" -D CMAKE_SHARED_LINKER_FLAGS=\"${{ steps.context.outputs.DARWIN_CMAKE_SHARED_LINKER_FLAGS }}\"",
693+
"llvm_flags": "",
622694
"extra_flags": "-D CMAKE_SYSTEM_PROCESSOR=arm64 -D CMAKE_OSX_DEPLOYMENT_TARGET=15.0 -D CMAKE_OSX_ARCHITECTURES=arm64"
623695
}
624696
]

0 commit comments

Comments
 (0)