If you're not working on a Linux box then you can't auto-generate license files. A workaround is provided via CI.
Your build will fail one or more CI checks if your license files are not correct. Open the failing CI check. In the CI output you will find a patch diff that represents the changes that need to be made to your license files. Copy this patch to a temporary patch file wherever you'd like. Then apply the patch to your repo:
cd flutter/ci/licenses_golden
patch -p2 < my/patch/file
To update the golden license files, make sure you've rebased your branch to the latest upstream master and then run the following in this directory:
pub get
gclient sync
rm -rf ../../../out/licenses
dart lib/main.dart --src ../../.. --out ../../../out/licenses --golden ../../ci/licenses_golden
Then copy any affected files from ../../../out/licenses
to ../../ci/licenses_golden
and add them to your change.
The sky/packages/sky_engine/LICENSE
file is included in product releases and should be updated any time the golden file changes in a way that involves changes to anything other than the FILE lines. To update this file, run:
pub get
gclient sync
dart lib/main.dart --release --src ../../.. --out ../../../out/licenses > ../../sky/packages/sky_engine/LICENSE
In order for the license script to work, please remove all untracked files inside engine/src
(not just engine/src/flutter
)