diff --git a/.github/workflows/ci.nightly.yml b/.github/workflows/ci.nightly.yml index 6de72912..8ee865fd 100644 --- a/.github/workflows/ci.nightly.yml +++ b/.github/workflows/ci.nightly.yml @@ -17,7 +17,7 @@ concurrency: jobs: test-nightly: - timeout-minutes: 90 + timeout-minutes: 150 runs-on: ${{ matrix.github-runner }} strategy: max-parallel: 5 # leave space for other runs in the JuliaLang org, given these tests are long diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 59aa1794..08cff4ab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,7 +39,7 @@ jobs: steps: - run: exit 0 test: - timeout-minutes: 90 + timeout-minutes: 150 runs-on: ${{ matrix.github-runner }} strategy: max-parallel: 20 # leave space for other runs in the JuliaLang org, given these tests are long diff --git a/src/PackageCompiler.jl b/src/PackageCompiler.jl index 07d7395f..220763b5 100644 --- a/src/PackageCompiler.jl +++ b/src/PackageCompiler.jl @@ -232,8 +232,16 @@ function create_fresh_base_sysimage(stdlibs::Vector{String}; cpu_target::String, # PR: https://github.com/JuliaLang/PackageCompiler.jl/pull/930 tmp_sys_sl = joinpath(tmp, "sys." * Libdl.dlext) - compiler_source_path = joinpath(base_dir, "compiler", "compiler.jl") + @static if VERSION >= v"1.12.0-DEV.1617" + compiler_source_path = joinpath(base_dir, "Base_compiler.jl") + buildroot = "" + dataroot = relpath(joinpath(Sys.BINDIR, Base.DATAROOTDIR), base_dir) * "/" + compiler_args = `--buildroot $buildroot --dataroot $dataroot` # build path + else + compiler_source_path = joinpath(base_dir, "compiler", "compiler.jl") + compiler_args = `` + end # we can't strip the IR from the base sysimg, so we filter out this flag # also presumably `--compile=all` and maybe a few others we missed here... sysimage_build_args_strs = map(p -> "$(p...)", values(sysimage_build_args)) @@ -246,7 +254,7 @@ function create_fresh_base_sysimage(stdlibs::Vector{String}; cpu_target::String, # Create corecompiler.ji cmd = `$(get_julia_cmd()) --cpu-target $cpu_target --output-ji $tmp_corecompiler_ji $sysimage_build_args - $compiler_source_path` + $compiler_source_path $compiler_args` @debug "running $cmd" read(cmd) @@ -263,7 +271,7 @@ function create_fresh_base_sysimage(stdlibs::Vector{String}; cpu_target::String, cmd = addenv(`$(get_julia_cmd()) --cpu-target $cpu_target --sysimage=$tmp_corecompiler_ji $sysimage_build_args --output-o=$tmp_sys_o - $new_sysimage_source_path`, + $new_sysimage_source_path $compiler_args`, "JULIA_LOAD_PATH" => "@stdlib") @debug "running $cmd"