111111 required : true
112112 type : string
113113
114+ swift_docc_render_artifact_revision :
115+ required : true
116+ type : string
117+
118+ swift_docc_revision :
119+ required : true
120+ type : string
121+
122+ swift_docc_symbolkit_revision :
123+ required : true
124+ type : string
125+
114126 swift_driver_revision :
115127 required : true
116128 type : string
282294env :
283295 PINNED_BOOTSTRAP_TOOLCHAIN_VERSION : 6.1.2
284296
285- # Workaround to build the early swift-driver without the workaround for the MSVC version.
286- WORKAROUND_WINDOWS_EARLY_SWIFT_DRIVER_TOOLCHAIN_REPO : thebrowsercompany/swift-build
287- WORKAROUND_WINDOWS_EARLY_SWIFT_DRIVER_TOOLCHAIN_VERSION : 6.2.0-20250630.0
297+ WORKAROUND_EARLY_SWIFT_DRIVER_TOOLCHAIN_VERSION : development
298+ WORKAROUND_EARLY_SWIFT_DRIVER_TOOLCHAIN_BUILD : DEVELOPMENT-SNAPSHOT-2025-08-26
288299
289300defaults :
290301 run :
@@ -835,12 +846,13 @@ jobs:
835846 with :
836847 path : ${{ github.workspace }}/SourceCache/ci-build
837848 show-progress : false
838- - uses : ./SourceCache/ci-build/.github/actions/ setup-build
849+ - uses : compnerd/gha- setup-swift@461d60212848717aec9734fc8364128b960a2983
839850 id : setup-build
851+ if : ${{ matrix.os == 'Windows' }}
840852 with :
841- host-arch : ${{ matrix.arch }}
842- swift-version : ${{ inputs.build_os == 'Windows' && env.WORKAROUND_WINDOWS_EARLY_SWIFT_DRIVER_TOOLCHAIN_VERSION || env.PINNED_BOOTSTRAP_TOOLCHAIN_VERSION }}
843- swift-repo : ${{ inputs.build_os == 'Windows' && env.WORKAROUND_WINDOWS_EARLY_SWIFT_DRIVER_TOOLCHAIN_REPO || '' }}
853+ swift-version : ${{ env.WORKAROUND_EARLY_SWIFT_DRIVER_TOOLCHAIN_VERSION }}
854+ swift-build : ${{ env.WORKAROUND_EARLY_SWIFT_DRIVER_TOOLCHAIN_BUILD }}
855+ build_arch : ${{ matrix.arch }}
844856
845857846858 with :
@@ -3293,6 +3305,24 @@ jobs:
32933305 ref : ${{ inputs.swift_crypto_revision }}
32943306 path : ${{ github.workspace }}/SourceCache/swift-crypto
32953307 show-progress : false
3308+ 3309+ with :
3310+ repository : swiftlang/swift-docc-render-artifact
3311+ ref : ${{ inputs.swift_docc_render_artifact_revision }}
3312+ path : ${{ github.workspace }}/SourceCache/swift-docc-render-artifact
3313+ show-progress : false
3314+ 3315+ with :
3316+ repository : swiftlang/swift-docc
3317+ ref : ${{ inputs.swift_docc_revision }}
3318+ path : ${{ github.workspace }}/SourceCache/swift-docc
3319+ show-progress : false
3320+ 3321+ with :
3322+ repository : swiftlang/swift-docc-symbolkit
3323+ ref : ${{ inputs.swift_docc_symbolkit_revision }}
3324+ path : ${{ github.workspace }}/SourceCache/swift-docc-symbolkit
3325+ show-progress : false
3296332632973327 with :
32983328 repository : swiftlang/swift-driver
@@ -3897,6 +3927,62 @@ jobs:
38973927 - name : Build sourcekit-lsp
38983928 run : cmake --build ${{ github.workspace }}/BinaryCache/sourcekit-lsp
38993929
3930+ - name : Configure swift-docc-symbolkit
3931+ uses : ./SourceCache/ci-build/.github/actions/configure-cmake-project
3932+ with :
3933+ project-name : swift-docc-symbolkit
3934+ swift-version : ${{ inputs.swift_version }}
3935+ enable-caching : true
3936+ debug-info : ${{ inputs.debug_info }}
3937+ build-os : ${{ inputs.build_os }}
3938+ build-arch : ${{ inputs.build_arch }}
3939+ os : ${{ matrix.os }}
3940+ arch : ${{ matrix.arch }}
3941+ src-dir : ${{ github.workspace }}/SourceCache/swift-docc-symbolkit
3942+ bin-dir : ${{ github.workspace }}/BinaryCache/swift-docc-symbolkit
3943+ install-dir : ${{ github.workspace }}/BuildRoot/Library/Developer/Toolchains/${{ inputs.swift_version }}+Asserts/usr
3944+ swift-sdk-path : ${{ github.workspace }}/BinaryCache/Library/Developer/Platforms/${{ matrix.os }}.platform/Developer/SDKs/${{ matrix.os }}.sdk
3945+ built-compilers : ' @("C", "Swift")'
3946+ cmake-defines : |
3947+ @{
3948+ 'BUILD_SHARED_LIBS' = "NO";
3949+ 'CMAKE_STATIC_LIBRARY_PREFIX_Swift' = "lib";
3950+ }
3951+ - name : Build swift-docc-symbolkit
3952+ run : cmake --build ${{ github.workspace }}/BinaryCache/swift-docc-symbolkit
3953+
3954+ - name : Configure swift-docc
3955+ uses : ./SourceCache/ci-build/.github/actions/configure-cmake-project
3956+ with :
3957+ project-name : swift-docc
3958+ swift-version : ${{ inputs.swift_version }}
3959+ enable-caching : true
3960+ debug-info : ${{ inputs.debug_info }}
3961+ build-os : ${{ inputs.build_os }}
3962+ build-arch : ${{ inputs.build_arch }}
3963+ os : ${{ matrix.os }}
3964+ arch : ${{ matrix.arch }}
3965+ src-dir : ${{ github.workspace }}/SourceCache/swift-docc
3966+ bin-dir : ${{ github.workspace }}/BinaryCache/swift-docc
3967+ install-dir : ${{ github.workspace }}/BuildRoot/Library/Developer/Toolchains/${{ inputs.swift_version }}+Asserts/usr
3968+ swift-sdk-path : ${{ github.workspace }}/BinaryCache/Library/Developer/Platforms/${{ matrix.os }}.platform/Developer/SDKs/${{ matrix.os }}.sdk
3969+ built-compilers : ' @("C", "Swift")'
3970+ cmake-defines : |
3971+ @{
3972+ 'BUILD_SHARED_LIBS' = "YES";
3973+ 'CMAKE_STATIC_LIBRARY_PREFIX_Swift' = "lib";
3974+ 'ArgumentParser_DIR' = "${{ github.workspace }}/BinaryCache/swift-argument-parser/cmake/modules";
3975+ 'SwiftASN1_DIR' = "${{ github.workspace }}/BinaryCache/swift-asn1/cmake/modules";
3976+ 'SwiftCrypto_DIR' = "${{ github.workspace }}/BinaryCache/swift-crypto/cmake/modules";
3977+ 'SwiftMarkdown_DIR' = "${{ github.workspace }}/BinaryCache/swift-markdown/cmake/modules";
3978+ 'LMDB_DIR' = "${{ github.workspace }}/BinaryCache/swift-lmdb/cmake/modules";
3979+ 'IndexStoreDB_DIR' = "${{ github.workspace }}/BinaryCache/indexstore-db/cmake/modules";
3980+ 'SymbolKit_DIR' = "${{ github.workspace }}/BinaryCache/swift-docc-symbolkit/cmake/modules";
3981+ 'cmark-gfm_DIR' = "${{ github.workspace }}/BinaryCache/Library/cmark-gfm-${{ inputs.swift_cmark_version }}/usr/lib/cmake";
3982+ }
3983+ - name : Build swift-docc
3984+ run : cmake --build ${{ github.workspace }}/BinaryCache/swift-docc
3985+
39003986 - name : Install swift-argument-parser
39013987 run : cmake --build ${{ github.workspace }}/BinaryCache/swift-argument-parser --target install
39023988 - name : Install swift-collections
@@ -3921,6 +4007,8 @@ jobs:
39214007 run : cmake --build ${{ github.workspace }}/BinaryCache/sourcekit-lsp --target install
39224008 - name : Install swift-format
39234009 run : cmake --build ${{ github.workspace }}/BinaryCache/swift-format --target install
4010+ - name : Install swift-docc
4011+ run : cmake --build ${{ github.workspace }}/BinaryCache/swift-docc --target install
39244012
39254013 - uses : actions/upload-artifact@v4
39264014 with :
@@ -5412,6 +5500,13 @@ jobs:
54125500 with :
54135501 path : ${{ github.workspace }}/SourceCache/ci-build
54145502 show-progress : false
5503+ 5504+ with :
5505+ repository : swiftlang/swift-docc-render-artifact
5506+ ref : ${{ inputs.swift_docc_render_artifact_revision }}
5507+ path : ${{ github.workspace }}/SourceCache/swift-docc-render-artifact
5508+ show-progress : false
5509+
54155510 - uses : ./SourceCache/ci-build/.github/actions/setup-build
54165511 with :
54175512 setup-vs-dev-env : true
@@ -5617,6 +5712,7 @@ jobs:
56175712 -p:SignOutput=${{ inputs.signed }} `
56185713 -p:CERTIFICATE=${env:CERTIFICATE} `
56195714 -p:PASSPHRASE=${{ secrets.PASSPHRASE }} `
5715+ -p:SWIFT_DOCC_RENDER_ARTIFACT_ROOT = "${{ github.workspace }}\SourceCache\swift-docc-render-artifact" `
56205716 -p:SignToolPath=${env:SIGNTOOL_PATH} `
56215717 -p:AzureSignMetadata=${env:TRUSTED_SIGNING_METADATA_PATH} `
56225718 -p:AzureSignDlib=${env:TRUSTED_SIGNING_DLL_PATH} `
0 commit comments