`7z` and `zip` behave differently if adding files that are not in the
current directory. For files with relative paths, zip will add them
relative to the current directory which is not what we want and can
cause problems for the user. Therefore this change disallows files that
are not in the current directory and aborts the build.
If the `$EMSCRIPTEN_BASE` dir is missing (which usually points to
`emsdk/upstream/emscripten`), but we have the `emsdk` root directory
with `emsdk/emsdk`, we can have everything we need to install the
desired emscripten version.
Issue #13464 describes an error where the `upstream/emscripten` directory
was missing - probably because the build got interrupted while installing
emscripten. This change fixes this.
Fixes: #13464
Test-bot: skip
This change adds support for the `-xr!wildcard` parameter to the
`add_zip_files` function, e.g. `-xr!build.sh` will exclude all `build.sh`
files from the archive. This is an alternative to adding a file list.
We already run `build.sh publish` as part of the regular release
build in `macos_build_action`, so we don't have to call it again.
Build-bot: skip
Test-bot: skip
Mac had a separate `write-download_info.sh` script that duplicates what
is done in the `write_download_info` function. Also remove the unused
`dl_info_display_usage` function that is unused and seems to be related
to the script we're deleting.
Test-bot: skip
`keyman-developer-release.sh` calls the `write_download_info` function but neglected to source the `shellHelperFunctions.sh` file which defines that function. Thus this change fixes the release build.
The .download_info files use the platform `win` instead of `windows`. This PR changes this, and also renames the `_verify_project` function to `_verify_platform` to better match what it's checking. Fixes Windows release builds.
Follow-up-of: #14270
- add `builder_is_windows`, `builder_is_macos` and `builder_is_linux`
functions
- add/move `BUILDER_OS` env variable to `resources/builder.inc.sh`
- use the new functions and env variable
Fixes: #14109
Test-bot: skip
This is a small refactoring to use full, absolute paths when copying files and changing directories. This makes it clearer to see where those directories/files are located.
`keyman-developer-release.sh` calls the `write_download_info` function
but neglected to source the `shellHelperFunctions.sh` file which
defines that function. Thus this change fixes the release build.
Build-bot: skip
Test-bot: skip
The .download_info files use the platform `win` instead of `windows`.
This PR changes this, and also renames the `_verify_project` function
to `_verify_platform` to better match what it's checking. Fixes Windows
release builds.
Test-bot: skip
PR #14264 removed the `--ci` parameter from Android builds, but forgot to
remove it for release builds. This PR fixes this.
Follow-up-of: #14264
Build-bot: skip
Test-bot: skip
Previously we created the KMC_ZIP file twice, and one of them was
outdated. This change moves creating the zip file to
`developer/src/inst/build.sh` so that the TC build script only does the
upload.
Fixes: #14263
Test-bot: skip
This is a small refactoring to use full, absolute paths when copying files
and changing directories. This makes it clearer to see where those
directories/files are located.
Build-bot: skip
Build-bot: build android
Test-bot: skip
This will fix the Android release builds. Previously we did a debug
build but then tried to copy files from the release build folder.
The original build config passed `--release` when doing a release build,
which lost when moving to build scripts.
Fixes: #14302
Build-bot: skip
Build-bot: release android
Test-bot: skip
If the PR only contains files that we ignore, we previously failed to
finish the trigger build. This PR fixes the problem.
The problem can be observed in #14271 which only changed a file in
`resources/teamcity/common` which gets ignored in `find_platform_changes`.
Test-bot: skip