Skip to content

Commit

Permalink
build mac arm64 binary in github action
Browse files Browse the repository at this point in the history
  • Loading branch information
skaji committed Mar 9, 2024
1 parent 085ed90 commit 2159489
Show file tree
Hide file tree
Showing 7 changed files with 41 additions and 68 deletions.
18 changes: 15 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- uses: actions/checkout@v4
- run: docker build --build-arg IMAGE=centos:centos6 -t skaji/relocatable-perl -f build/Dockerfile .
- run: bash build/github-actions.sh linux_amd64_create_artifacts
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: linux-amd64
path: linux-amd64
Expand All @@ -27,7 +27,7 @@ jobs:
- uses: docker/setup-buildx-action@v3
- run: docker buildx build --platform linux/arm64 --build-arg IMAGE=centos:centos7 -t skaji/relocatable-perl -f build/Dockerfile --load .
- run: bash build/github-actions.sh linux_arm64_create_artifacts
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: linux-arm64
path: linux-arm64
Expand All @@ -39,7 +39,19 @@ jobs:
- run: bash build/github-actions.sh mac_prepare_tools
- run: bash build/github-actions.sh mac_build_perl
- run: bash build/github-actions.sh mac_create_artifacts
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: darwin-amd64
path: darwin-amd64
darwin-arm64:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- run: sw_vers
- run: bash build/github-actions.sh mac_prepare_tools
- run: bash build/github-actions.sh mac_build_perl
- run: bash build/github-actions.sh mac_create_artifacts
- uses: actions/upload-artifact@v4
with:
name: darwin-arm64
path: darwin-arm64
29 changes: 23 additions & 6 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
- uses: actions/checkout@v4
- run: docker build --build-arg IMAGE=centos:centos6 -t skaji/relocatable-perl -f build/Dockerfile .
- run: bash build/github-actions.sh linux_amd64_create_artifacts
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: linux-amd64
path: linux-amd64
Expand All @@ -24,7 +24,7 @@ jobs:
- uses: docker/setup-buildx-action@v3
- run: docker buildx build --platform linux/arm64 --build-arg IMAGE=centos:centos7 -t skaji/relocatable-perl -f build/Dockerfile --load .
- run: bash build/github-actions.sh linux_arm64_create_artifacts
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: linux-arm64
path: linux-arm64
Expand All @@ -36,29 +36,46 @@ jobs:
- run: bash build/github-actions.sh mac_prepare_tools
- run: bash build/github-actions.sh mac_build_perl
- run: bash build/github-actions.sh mac_create_artifacts
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: darwin-amd64
path: darwin-amd64
darwin-arm64:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- run: sw_vers
- run: bash build/github-actions.sh mac_prepare_tools
- run: bash build/github-actions.sh mac_build_perl
- run: bash build/github-actions.sh mac_create_artifacts
- uses: actions/upload-artifact@v4
with:
name: darwin-arm64
path: darwin-arm64
release:
runs-on: ubuntu-latest
needs:
- linux-amd64
- linux-arm64
- darwin-amd64
- darwin-arm64
steps:
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: linux-amd64
path: linux-amd64
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: linux-arm64
path: linux-arm64
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: darwin-amd64
path: darwin-amd64
- uses: actions/download-artifact@v4
with:
name: darwin-arm64
path: darwin-arm64
- name: create release and upload release assets
run: gh release create ${{ github.ref }} linux-*/*.gz linux-*/*.xz darwin-*/*.gz darwin-*/*.xz
env:
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# relocatable perl [![build](https://github.com/skaji/relocatable-perl/workflows/build/badge.svg)](https://github.com/skaji/relocatable-perl/actions) [![Build Status](https://app.bitrise.io/app/ee64bd72-9bc8-4faa-9da5-65d2de4eee0f/status.svg?token=ehqx3S7rVWDjQQlx0B9A_w)](https://app.bitrise.io/app/ee64bd72-9bc8-4faa-9da5-65d2de4eee0f)
# relocatable perl [![build](https://github.com/skaji/relocatable-perl/workflows/build/badge.svg)](https://github.com/skaji/relocatable-perl/actions)

Self-contained, portable perl binaries for Linux and macOS.
You can download them from [release page](https://github.com/skaji/relocatable-perl/releases).
Expand Down
22 changes: 0 additions & 22 deletions bitrise.yml

This file was deleted.

3 changes: 1 addition & 2 deletions build/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,7 @@ RUN mkdir -p \
/usr/lib64 \
/usr/local/lib \
/usr/local/lib64
RUN mkdir /perl
RUN curl -fsSL https://github.com/skaji/relocatable-perl/releases/download/5.36.0.0/perl-$(uname -m)-linux.tar.xz | tar xJf - --strip-components 1 -C /perl
RUN curl -fsSL https://raw.githubusercontent.com/skaji/relocatable-perl/main/perl-install | bash -s /perl
RUN curl -fsSL --compressed -o /cpm https://raw.githubusercontent.com/skaji/cpm/main/cpm
COPY build/relocatable-perl-build build/cpm.yml BUILD_VERSION /
RUN /perl/bin/perl /cpm install -g
Expand Down
32 changes: 0 additions & 32 deletions build/bitrise.sh

This file was deleted.

3 changes: 1 addition & 2 deletions build/github-actions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,7 @@ mac_prepare_tools() {
mac_build_perl() {
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
rm -rf ~/perl ~/cpm
mkdir ~/perl
curl -fsSL https://github.com/skaji/relocatable-perl/releases/download/5.36.0.0/perl-darwin-2level.tar.xz | gtar xJf - --strip-components 1 -C ~/perl
curl -fsSL https://raw.githubusercontent.com/skaji/relocatable-perl/main/perl-install | bash -s ~/perl
curl -fsSL --compressed -o ~/cpm https://raw.githubusercontent.com/skaji/cpm/main/cpm
~/perl/bin/perl ~/cpm install -g --cpmfile build/cpm.yml
sudo rm -rf /opt/perl
Expand Down

0 comments on commit 2159489

Please sign in to comment.