portable: add arm64 artifact option#323
Conversation
| # ARM64 Windows handling | ||
| if test -n "$cross_compiling_arm64" | ||
| then | ||
| cp -ar /arm64 "$SCRIPT_PATH/root" |
There was a problem hiding this comment.
If we allow specifying an argument (like --output <directory>), we do not have to hard-code /arm64 here.
I think I like that idea.
And if we go that route, the option should probably be renamed to --include-arm64-artifacts=<directory> or some such.
There was a problem hiding this comment.
Changed in 6e5a2e7. Can now run ./release.sh --include-arm64-artifacts=/arm64 --output=./arm64 2.30.0 (the --output option was already there and I simply use it to easily find back the generated .7z.exe file 😊)
Output:
$ ./release.sh --include-arm64-artifacts=/arm64 --output=./arm64 2.30.0
Including ARM64 artifacts from /arm64
7za is /usr/bin/7za
Creating archive
7-Zip (a) [32] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=nl_NL.UTF-8,Utf16=on,HugeFiles=on,32 bits,8 CPUs Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz (906ED),ASM,AES-NI)
Scanning the drive:
92 folders, 6209 files, 708249591 bytes (676 MiB)
Creating archive: /tmp.7z
Items to compress: 6301
Files read from disk: 6203
Archive size: 48514387 bytes (47 MiB)
Everything is Ok
Success! You will find the new installer at "./arm64/PortableGit-2.30.0-arm64.7z.exe".
It is a self-extracting .7z archive.
f1a1a67 to
1db746a
Compare
|
Just updated Example invocation in https://github.com/dennisameling/git/runs/1799017569?check_suite_focus=true: ... which correctly results in a PortableGit executable that includes the |
Adds an --include-arm64-artifacts option to portable/release.sh. This can be used to inlcude ARM64 artifacts in, for example, an i686 build. This is necessary until MSYS2 packages can be built natively for ARM64. Signed-off-by: Dennis Ameling <[email protected]>
456b408 to
f85eb55
Compare
|
@dscho just applied your suggestion and squashed the commits 👍🏼 should be good to go now! |
Affects the make_installers_from_mingw_w64_git function. Adds a new
option --include-arm64-artifacts, which allows the user to include
ARM64 artifacts in the generated build. This is necessary until native
ARM64 packages can be built on MSYS2.
Can be invoked as follows, for example:
./please.sh make_installers_from_mingw_w64_git \
--include-arm64-artifacts=$PWD/arm64 --version=2.30.0 -o artifacts \
--portable
Signed-off-by: Dennis Ameling <[email protected]>
Signed-off-by: Johannes Schindelin <[email protected]>
f85eb55 to
50f9a18
Compare
|
I adjusted this only slightly before merging. Thank you! |

Builds further on #321. Very much a proof of concept, just sharing here for inspiration.
Example release based on this PR: https://github.com/dennisameling/git/releases/tag/2.30.0-beta2
Results in an actual working portable installer for ARM64 when taking the following steps:
sdk build mingw-w64-gitpacman -U mingw-w64-i686-git-2.30.0.2.f8cbc844b8-1-any.pkg.tar.xz(replace the filename with the actual filename that's generated)sdk build git-extra(so that/etc/profilegets overwritten to include ARM64)pacman -U git-extra-1.1.513.20ab9a5-1-i686.pkg.tar.xz(replace the filename with the actual filename that's generated)C:\git-sdk-32\arm64)/usr/src/build-extra/portableand runmkdir -p arm64 && ./release.sh --include-arm64-artifacts=/arm64 --output=./arm64 2.30.0It then looks like this on an ARM64 device: