From 2572634a6d50fdd1aafbd4f98c3553a08ec3f011 Mon Sep 17 00:00:00 2001 From: Tristan Ross Date: Tue, 25 Jun 2024 21:51:13 -0700 Subject: [PATCH] flutter.engine: fix swiftshader size --- .../compilers/flutter/engine/default.nix | 1 + .../compilers/flutter/engine/package.nix | 17 +++++++++++++---- .../update/get-engine-swiftshader.nix.in | 5 +++++ .../compilers/flutter/versions/3_13/data.json | 2 +- .../compilers/flutter/versions/3_16/data.json | 2 +- .../compilers/flutter/versions/3_19/data.json | 2 +- .../compilers/flutter/versions/3_22/data.json | 2 +- .../compilers/flutter/versions/3_23/data.json | 2 +- 8 files changed, 24 insertions(+), 9 deletions(-) diff --git a/pkgs/development/compilers/flutter/engine/default.nix b/pkgs/development/compilers/flutter/engine/default.nix index 4aac2301f866..7bf59dc85719 100644 --- a/pkgs/development/compilers/flutter/engine/default.nix +++ b/pkgs/development/compilers/flutter/engine/default.nix @@ -51,6 +51,7 @@ stdenv.mkDerivation ( runtimeMode outName dart + swiftshader ; inherit altRuntimeMode; diff --git a/pkgs/development/compilers/flutter/engine/package.nix b/pkgs/development/compilers/flutter/engine/package.nix index 7c2cd5cec220..09133fea5fa9 100644 --- a/pkgs/development/compilers/flutter/engine/package.nix +++ b/pkgs/development/compilers/flutter/engine/package.nix @@ -15,6 +15,7 @@ fetchgit, runCommand, llvmPackages, + llvmPackages_15, patchelf, openbox, xorg, @@ -67,6 +68,10 @@ let url = "https://swiftshader.googlesource.com/SwiftShader.git"; hash = swiftshaderHash; rev = swiftshaderRev; + + postFetch = '' + rm -rf $out/third_party/llvm-project + ''; }; llvm = symlinkJoin { @@ -178,7 +183,14 @@ stdenv.mkDerivation (finalAttrs: { postUnpack = '' pushd ${src.name} - ln -s $swiftshader src/flutter/third_party/swiftshader + cp -pr --reflink=auto $swiftshader src/flutter/third_party/swiftshader + chmod -R u+w -- src/flutter/third_party/swiftshader + + ln -s ${llvmPackages_15.llvm.monorepoSrc} src/flutter/third_party/swiftshader/third_party/llvm-project + + mkdir -p src/flutter/buildtools/${constants.alt-platform} + ln -s ${llvm} src/flutter/buildtools/${constants.alt-platform}/clang + ln -s ${dart} src/third_party/dart/tools/sdks/dart-sdk ${lib.optionalString (stdenv.isLinux) '' for patchtool in ''${patchtools[@]}; do @@ -198,9 +210,6 @@ stdenv.mkDerivation (finalAttrs: { popd done - mkdir -p src/flutter/buildtools/${constants.alt-platform} - ln -s ${llvm} src/flutter/buildtools/${constants.alt-platform}/clang - dart src/third_party/dart/tools/generate_package_config.dart cp ${./pkg-config.py} src/build/config/linux/pkg-config.py echo "${dartSdkVersion}" >src/third_party/dart/sdk/version diff --git a/pkgs/development/compilers/flutter/update/get-engine-swiftshader.nix.in b/pkgs/development/compilers/flutter/update/get-engine-swiftshader.nix.in index 2dffbe950b86..aa71f8ae2ad3 100644 --- a/pkgs/development/compilers/flutter/update/get-engine-swiftshader.nix.in +++ b/pkgs/development/compilers/flutter/update/get-engine-swiftshader.nix.in @@ -2,4 +2,9 @@ fetchgit { url = "https://swiftshader.googlesource.com/SwiftShader.git"; rev = "@engine_swiftshader_rev@"; + + # Keep with in sync of pkgs/development/compilers/flutter/engine/package.nix + postFetch = '' + rm -rf $out/third_party/llvm-project + ''; } diff --git a/pkgs/development/compilers/flutter/versions/3_13/data.json b/pkgs/development/compilers/flutter/versions/3_13/data.json index 9bd8b818bf46..1b61347b30f1 100644 --- a/pkgs/development/compilers/flutter/versions/3_13/data.json +++ b/pkgs/development/compilers/flutter/versions/3_13/data.json @@ -1,7 +1,7 @@ { "version": "3.13.8", "engineVersion": "767d8c75e898091b925519803830fc2721658d07", - "engineSwiftShaderHash": "sha256-N6f5aeDroqEwZlUBZi7nhDW8leE/7DqmOtRYOY4wzf4=", + "engineSwiftShaderHash": "sha256-qKf5gXIpI4+05bs7d3W6JlMNTn3vHFQL+i3JpFdyPao=", "engineSwiftShaderRev": "5f9ed9b16931c7155171d31f75004f73f0a3abc8", "channel": "stable", "engineHashes": { diff --git a/pkgs/development/compilers/flutter/versions/3_16/data.json b/pkgs/development/compilers/flutter/versions/3_16/data.json index 08cbdff5bc77..4c9142a149e9 100644 --- a/pkgs/development/compilers/flutter/versions/3_16/data.json +++ b/pkgs/development/compilers/flutter/versions/3_16/data.json @@ -1,7 +1,7 @@ { "version": "3.16.7", "engineVersion": "4a585b79294e830fa89c24924d58a27cc8fbf406", - "engineSwiftShaderHash": "sha256-N6f5aeDroqEwZlUBZi7nhDW8leE/7DqmOtRYOY4wzf4=", + "engineSwiftShaderHash": "sha256-qKf5gXIpI4+05bs7d3W6JlMNTn3vHFQL+i3JpFdyPao=", "engineSwiftShaderRev": "5f9ed9b16931c7155171d31f75004f73f0a3abc8", "channel": "stable", "engineHashes": { diff --git a/pkgs/development/compilers/flutter/versions/3_19/data.json b/pkgs/development/compilers/flutter/versions/3_19/data.json index 491447493db9..a05e0172ca44 100644 --- a/pkgs/development/compilers/flutter/versions/3_19/data.json +++ b/pkgs/development/compilers/flutter/versions/3_19/data.json @@ -1,7 +1,7 @@ { "version": "3.19.4", "engineVersion": "a5c24f538d05aaf66f7972fb23959d8cafb9f95a", - "engineSwiftShaderHash": "sha256-J8TKwbIQ7hdWCGIu1T//MJlRzT7OTVL0MG/dmMyutPQ=", + "engineSwiftShaderHash": "sha256-mRLCvhNkmHz7Rv6GzXkY7OB1opBSq+ATWZ466qZdgto=", "engineSwiftShaderRev": "2fa7e9b99ae4e70ea5ae2cc9c8d3afb43391384f", "channel": "stable", "engineHashes": { diff --git a/pkgs/development/compilers/flutter/versions/3_22/data.json b/pkgs/development/compilers/flutter/versions/3_22/data.json index 140b22bbcb1c..2abe37d9dac0 100644 --- a/pkgs/development/compilers/flutter/versions/3_22/data.json +++ b/pkgs/development/compilers/flutter/versions/3_22/data.json @@ -1,7 +1,7 @@ { "version": "3.22.2", "engineVersion": "edd8546116457bdf1c5bdfb13ecb9463d2bb5ed4", - "engineSwiftShaderHash": "sha256-J8TKwbIQ7hdWCGIu1T//MJlRzT7OTVL0MG/dmMyutPQ=", + "engineSwiftShaderHash": "sha256-mRLCvhNkmHz7Rv6GzXkY7OB1opBSq+ATWZ466qZdgto=", "engineSwiftShaderRev": "2fa7e9b99ae4e70ea5ae2cc9c8d3afb43391384f", "channel": "stable", "engineHashes": { diff --git a/pkgs/development/compilers/flutter/versions/3_23/data.json b/pkgs/development/compilers/flutter/versions/3_23/data.json index a4087fea903e..82233ea5112c 100644 --- a/pkgs/development/compilers/flutter/versions/3_23/data.json +++ b/pkgs/development/compilers/flutter/versions/3_23/data.json @@ -1,7 +1,7 @@ { "version": "3.23.0-0.1.pre", "engineVersion": "bb10c5466638e963479ba5e64e601e42d1a43447", - "engineSwiftShaderHash": "sha256-J8TKwbIQ7hdWCGIu1T//MJlRzT7OTVL0MG/dmMyutPQ=", + "engineSwiftShaderHash": "sha256-mRLCvhNkmHz7Rv6GzXkY7OB1opBSq+ATWZ466qZdgto=", "engineSwiftShaderRev": "2fa7e9b99ae4e70ea5ae2cc9c8d3afb43391384f", "channel": "beta", "engineHashes": {