Skip to content

Build against glibc 2.26 #95

Build against glibc 2.26

Build against glibc 2.26 #95

Workflow file for this run

# This file was generated by running ./generate-actions.py - it should not be manually modified
name: PR
'on':
pull_request: null
workflow_dispatch: null
jobs:
unknown-linux-gnu-x86_64-x86_64:
runs-on: ubuntu-latest
container: amazonlinux:2
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16
steps:
- name: Checkout repo
uses: actions/checkout@v3
- run: yum install -y bzip2 git make patch tar wget which
- run: yum group install -y "Development Tools"
- run: ln -s /usr/bin/tar /usr/bin/gnutar
- name: Build musl
run: ./build.sh x86_64
- name: Upload musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl.tar.gz
uses: actions/upload-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl.tar.gz
path: output/musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl.tar.gz
if-no-files-found: error
unknown-linux-gnu-x86_64-x86_64-test-build:
runs-on: ubuntu-latest
container: amazonlinux:2
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16
needs:
- unknown-linux-gnu-x86_64-x86_64
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Download musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl.tar.gz
uses: actions/download-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl.tar.gz
path: .
- name: Download bazelisk as bazel
run: curl --fail -L -o /usr/local/bin/bazel https://github.com/bazelbuild/bazelisk/releases/download/v1.18.0/bazelisk-linux-amd64
&& chmod 0755 /usr/local/bin/bazel
- name: Generate builder workspace file
run: "cat >test-workspaces/builder/WORKSPACE.bazel <<EOF\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\"\
, \"http_archive\")\n\nhttp_archive(\n name = \"musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl\"\
,\n sha256 = \"$(sha256sum musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl.tar.gz\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl.tar.gz\"\
,\n)\n\nEOF\n"
- name: Generate builder workspace config BUILD.bazel file
run: "mkdir -p test-workspaces/builder/config && cat >test-workspaces/builder/config/BUILD.bazel\
\ <<EOF\ntoolchain(\n name = \"musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:x86_64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n\
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n\
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:toolchain_type\",\n)\ntoolchain(\n\
\ name = \"musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl_test_toolchain\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:x86_64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n\
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n\
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl//:musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl_test_toolchain\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:test_runner_toolchain_type\"\
,\n)\n\nplatform(\n name = \"platform\",\n constraint_values = [\n \
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n \
\ ],\n)\n\nEOF\n"
- name: Test with musl
run: cd test-workspaces/builder && bazel test //:test
- name: Test with musl (static linking)
run: cd test-workspaces/builder && bazel test //:test --dynamic_mode=off
- name: Build with musl
run: cd test-workspaces/builder && bazel build //:binary
- name: Move test binary
run: mkdir output && cp test-workspaces/builder/bazel-bin/binary output/test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl
- name: Upload test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl
uses: actions/upload-artifact@v3
with:
name: test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl
path: output/test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl
if-no-files-found: error
apple-darwin-x86_64-x86_64:
runs-on: macos-12
steps:
- name: Checkout repo
uses: actions/checkout@v3
- run: brew install wget md5sha1sum gnu-tar
- name: Build musl
run: ./build.sh x86_64
- name: Upload musl-1.2.3-platform-x86_64-apple-darwin-target-x86_64-linux-musl.tar.gz
uses: actions/upload-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-apple-darwin-target-x86_64-linux-musl.tar.gz
path: output/musl-1.2.3-platform-x86_64-apple-darwin-target-x86_64-linux-musl.tar.gz
if-no-files-found: error
apple-darwin-x86_64-x86_64-test-build:
runs-on: macos-12
needs:
- apple-darwin-x86_64-x86_64
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Download musl-1.2.3-platform-x86_64-apple-darwin-target-x86_64-linux-musl.tar.gz
uses: actions/download-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-apple-darwin-target-x86_64-linux-musl.tar.gz
path: .
- name: Skipping downloading bazelisk - already installed
run: bazel --version
- name: Generate builder workspace file
run: "cat >test-workspaces/builder/WORKSPACE.bazel <<EOF\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\"\
, \"http_archive\")\n\nhttp_archive(\n name = \"musl-1_2_3-platform-x86_64-apple-darwin-target-x86_64-linux-musl\"\
,\n sha256 = \"$(shasum -a 256 musl-1.2.3-platform-x86_64-apple-darwin-target-x86_64-linux-musl.tar.gz\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/musl-1.2.3-platform-x86_64-apple-darwin-target-x86_64-linux-musl.tar.gz\"\
,\n)\n\nEOF\n"
- name: Generate builder workspace config BUILD.bazel file
run: "mkdir -p test-workspaces/builder/config && cat >test-workspaces/builder/config/BUILD.bazel\
\ <<EOF\ntoolchain(\n name = \"musl-1_2_3-platform-x86_64-apple-darwin-target-x86_64-linux-musl\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:x86_64\",\n \
\ \"@platforms//os:osx\",\n ],\n target_compatible_with = [\n \
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n \
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-apple-darwin-target-x86_64-linux-musl\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:toolchain_type\",\n)\ntoolchain(\n\
\ name = \"musl-1_2_3-platform-x86_64-apple-darwin-target-x86_64-linux-musl_test_toolchain\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:x86_64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n\
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n\
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-apple-darwin-target-x86_64-linux-musl//:musl-1_2_3-platform-x86_64-apple-darwin-target-x86_64-linux-musl_test_toolchain\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:test_runner_toolchain_type\"\
,\n)\n\nplatform(\n name = \"platform\",\n constraint_values = [\n \
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n \
\ ],\n)\n\nEOF\n"
- name: Build with musl
run: cd test-workspaces/builder && bazel build //:binary
- name: Move test binary
run: mkdir output && cp test-workspaces/builder/bazel-bin/binary output/test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl
- name: Upload test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl
uses: actions/upload-artifact@v3
with:
name: test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl
path: output/test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl
if-no-files-found: error
apple-darwin-aarch64-x86_64:
runs-on: macos-14
steps:
- name: Checkout repo
uses: actions/checkout@v3
- run: brew install wget md5sha1sum gnu-tar
- name: Build musl
run: ./build.sh x86_64
- name: Upload musl-1.2.3-platform-aarch64-apple-darwin-target-x86_64-linux-musl.tar.gz
uses: actions/upload-artifact@v3
with:
name: musl-1.2.3-platform-aarch64-apple-darwin-target-x86_64-linux-musl.tar.gz
path: output/musl-1.2.3-platform-aarch64-apple-darwin-target-x86_64-linux-musl.tar.gz
if-no-files-found: error
apple-darwin-aarch64-x86_64-test-build:
runs-on: macos-14
needs:
- apple-darwin-aarch64-x86_64
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Download musl-1.2.3-platform-aarch64-apple-darwin-target-x86_64-linux-musl.tar.gz
uses: actions/download-artifact@v3
with:
name: musl-1.2.3-platform-aarch64-apple-darwin-target-x86_64-linux-musl.tar.gz
path: .
- name: Skipping downloading bazelisk - already installed
run: bazel --version
- name: Generate builder workspace file
run: "cat >test-workspaces/builder/WORKSPACE.bazel <<EOF\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\"\
, \"http_archive\")\n\nhttp_archive(\n name = \"musl-1_2_3-platform-aarch64-apple-darwin-target-x86_64-linux-musl\"\
,\n sha256 = \"$(shasum -a 256 musl-1.2.3-platform-aarch64-apple-darwin-target-x86_64-linux-musl.tar.gz\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/musl-1.2.3-platform-aarch64-apple-darwin-target-x86_64-linux-musl.tar.gz\"\
,\n)\n\nEOF\n"
- name: Generate builder workspace config BUILD.bazel file
run: "mkdir -p test-workspaces/builder/config && cat >test-workspaces/builder/config/BUILD.bazel\
\ <<EOF\ntoolchain(\n name = \"musl-1_2_3-platform-aarch64-apple-darwin-target-x86_64-linux-musl\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:arm64\",\n \
\ \"@platforms//os:osx\",\n ],\n target_compatible_with = [\n \
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n \
\ ],\n toolchain = \"@musl-1_2_3-platform-aarch64-apple-darwin-target-x86_64-linux-musl\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:toolchain_type\",\n)\ntoolchain(\n\
\ name = \"musl-1_2_3-platform-aarch64-apple-darwin-target-x86_64-linux-musl_test_toolchain\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:x86_64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n\
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n\
\ ],\n toolchain = \"@musl-1_2_3-platform-aarch64-apple-darwin-target-x86_64-linux-musl//:musl-1_2_3-platform-aarch64-apple-darwin-target-x86_64-linux-musl_test_toolchain\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:test_runner_toolchain_type\"\
,\n)\n\nplatform(\n name = \"platform\",\n constraint_values = [\n \
\ \"@platforms//cpu:x86_64\",\n \"@platforms//os:linux\",\n \
\ ],\n)\n\nEOF\n"
- name: Build with musl
run: cd test-workspaces/builder && bazel build //:binary
- name: Move test binary
run: mkdir output && cp test-workspaces/builder/bazel-bin/binary output/test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl
- name: Upload test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl
uses: actions/upload-artifact@v3
with:
name: test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl
path: output/test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl
if-no-files-found: error
test-x86_64:
runs-on: ubuntu-latest
container: amazonlinux:2
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16
needs:
- unknown-linux-gnu-x86_64-x86_64-test-build
- apple-darwin-x86_64-x86_64-test-build
- apple-darwin-aarch64-x86_64-test-build
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Download test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl
uses: actions/download-artifact@v3
with:
name: test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl
path: .
- name: Download test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl
uses: actions/download-artifact@v3
with:
name: test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl
path: .
- name: Download test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl
uses: actions/download-artifact@v3
with:
name: test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl
path: .
- name: Download bazelisk as bazel
run: curl --fail -L -o /usr/local/bin/bazel https://github.com/bazelbuild/bazelisk/releases/download/v1.18.0/bazelisk-linux-amd64
&& chmod 0755 /usr/local/bin/bazel
- name: Generate tester workspace file
run: "cat >test-workspaces/tester/WORKSPACE.bazel <<EOF\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\"\
, \"http_file\")\n\nhttp_file(\n name = \"built_binary_x86_64-unknown-linux-gnu\"\
,\n executable = True,\n sha256 = \"$(sha256sum test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/test-binary-platform-x86_64-unknown-linux-gnu-target-x86_64-linux-musl\"\
,\n)\n\nhttp_file(\n name = \"built_binary_x86_64-apple-darwin\",\n \
\ executable = True,\n sha256 = \"$(sha256sum test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/test-binary-platform-x86_64-apple-darwin-target-x86_64-linux-musl\"\
,\n)\n\nhttp_file(\n name = \"built_binary_aarch64-apple-darwin\",\n \
\ executable = True,\n sha256 = \"$(sha256sum test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/test-binary-platform-aarch64-apple-darwin-target-x86_64-linux-musl\"\
,\n)\n\nEOF\n"
- run: cd test-workspaces/tester && CC=/bin/false bazel test ... --test_output=all
-- -//:run_built_binary_aarch64-unknown-linux-gnu_test
unknown-linux-gnu-x86_64-aarch64:
runs-on: ubuntu-latest
container: amazonlinux:2
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16
steps:
- name: Checkout repo
uses: actions/checkout@v3
- run: yum install -y bzip2 git make patch tar wget which
- run: yum group install -y "Development Tools"
- run: ln -s /usr/bin/tar /usr/bin/gnutar
- name: Build musl
run: ./build.sh aarch64
- name: Upload musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl.tar.gz
uses: actions/upload-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl.tar.gz
path: output/musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl.tar.gz
if-no-files-found: error
unknown-linux-gnu-x86_64-aarch64-test-build:
runs-on: ubuntu-latest
container: amazonlinux:2
env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16
needs:
- unknown-linux-gnu-x86_64-aarch64
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Download musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl.tar.gz
uses: actions/download-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl.tar.gz
path: .
- name: Download bazelisk as bazel
run: curl --fail -L -o /usr/local/bin/bazel https://github.com/bazelbuild/bazelisk/releases/download/v1.18.0/bazelisk-linux-amd64
&& chmod 0755 /usr/local/bin/bazel
- name: Generate builder workspace file
run: "cat >test-workspaces/builder/WORKSPACE.bazel <<EOF\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\"\
, \"http_archive\")\n\nhttp_archive(\n name = \"musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl\"\
,\n sha256 = \"$(sha256sum musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl.tar.gz\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/musl-1.2.3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl.tar.gz\"\
,\n)\n\nEOF\n"
- name: Generate builder workspace config BUILD.bazel file
run: "mkdir -p test-workspaces/builder/config && cat >test-workspaces/builder/config/BUILD.bazel\
\ <<EOF\ntoolchain(\n name = \"musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:x86_64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n\
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:toolchain_type\",\n)\ntoolchain(\n\
\ name = \"musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl_test_toolchain\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:arm64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl//:musl-1_2_3-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl_test_toolchain\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:test_runner_toolchain_type\"\
,\n)\n\nplatform(\n name = \"platform\",\n constraint_values = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n)\n\nEOF\n"
- name: Build with musl
run: cd test-workspaces/builder && bazel build //:binary
- name: Move test binary
run: mkdir output && cp test-workspaces/builder/bazel-bin/binary output/test-binary-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl
- name: Upload test-binary-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl
uses: actions/upload-artifact@v3
with:
name: test-binary-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl
path: output/test-binary-platform-x86_64-unknown-linux-gnu-target-aarch64-linux-musl
if-no-files-found: error
apple-darwin-x86_64-aarch64:
runs-on: macos-12
steps:
- name: Checkout repo
uses: actions/checkout@v3
- run: brew install wget md5sha1sum gnu-tar
- name: Build musl
run: ./build.sh aarch64
- name: Upload musl-1.2.3-platform-x86_64-apple-darwin-target-aarch64-linux-musl.tar.gz
uses: actions/upload-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-apple-darwin-target-aarch64-linux-musl.tar.gz
path: output/musl-1.2.3-platform-x86_64-apple-darwin-target-aarch64-linux-musl.tar.gz
if-no-files-found: error
apple-darwin-x86_64-aarch64-test-build:
runs-on: macos-12
needs:
- apple-darwin-x86_64-aarch64
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Download musl-1.2.3-platform-x86_64-apple-darwin-target-aarch64-linux-musl.tar.gz
uses: actions/download-artifact@v3
with:
name: musl-1.2.3-platform-x86_64-apple-darwin-target-aarch64-linux-musl.tar.gz
path: .
- name: Skipping downloading bazelisk - already installed
run: bazel --version
- name: Generate builder workspace file
run: "cat >test-workspaces/builder/WORKSPACE.bazel <<EOF\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\"\
, \"http_archive\")\n\nhttp_archive(\n name = \"musl-1_2_3-platform-x86_64-apple-darwin-target-aarch64-linux-musl\"\
,\n sha256 = \"$(shasum -a 256 musl-1.2.3-platform-x86_64-apple-darwin-target-aarch64-linux-musl.tar.gz\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/musl-1.2.3-platform-x86_64-apple-darwin-target-aarch64-linux-musl.tar.gz\"\
,\n)\n\nEOF\n"
- name: Generate builder workspace config BUILD.bazel file
run: "mkdir -p test-workspaces/builder/config && cat >test-workspaces/builder/config/BUILD.bazel\
\ <<EOF\ntoolchain(\n name = \"musl-1_2_3-platform-x86_64-apple-darwin-target-aarch64-linux-musl\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:x86_64\",\n \
\ \"@platforms//os:osx\",\n ],\n target_compatible_with = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-apple-darwin-target-aarch64-linux-musl\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:toolchain_type\",\n)\ntoolchain(\n\
\ name = \"musl-1_2_3-platform-x86_64-apple-darwin-target-aarch64-linux-musl_test_toolchain\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:arm64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n toolchain = \"@musl-1_2_3-platform-x86_64-apple-darwin-target-aarch64-linux-musl//:musl-1_2_3-platform-x86_64-apple-darwin-target-aarch64-linux-musl_test_toolchain\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:test_runner_toolchain_type\"\
,\n)\n\nplatform(\n name = \"platform\",\n constraint_values = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n)\n\nEOF\n"
- name: Build with musl
run: cd test-workspaces/builder && bazel build //:binary
- name: Move test binary
run: mkdir output && cp test-workspaces/builder/bazel-bin/binary output/test-binary-platform-x86_64-apple-darwin-target-aarch64-linux-musl
- name: Upload test-binary-platform-x86_64-apple-darwin-target-aarch64-linux-musl
uses: actions/upload-artifact@v3
with:
name: test-binary-platform-x86_64-apple-darwin-target-aarch64-linux-musl
path: output/test-binary-platform-x86_64-apple-darwin-target-aarch64-linux-musl
if-no-files-found: error
apple-darwin-aarch64-aarch64:
runs-on: macos-14
steps:
- name: Checkout repo
uses: actions/checkout@v3
- run: brew install wget md5sha1sum gnu-tar
- name: Build musl
run: ./build.sh aarch64
- name: Upload musl-1.2.3-platform-aarch64-apple-darwin-target-aarch64-linux-musl.tar.gz
uses: actions/upload-artifact@v3
with:
name: musl-1.2.3-platform-aarch64-apple-darwin-target-aarch64-linux-musl.tar.gz
path: output/musl-1.2.3-platform-aarch64-apple-darwin-target-aarch64-linux-musl.tar.gz
if-no-files-found: error
apple-darwin-aarch64-aarch64-test-build:
runs-on: macos-14
needs:
- apple-darwin-aarch64-aarch64
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Download musl-1.2.3-platform-aarch64-apple-darwin-target-aarch64-linux-musl.tar.gz
uses: actions/download-artifact@v3
with:
name: musl-1.2.3-platform-aarch64-apple-darwin-target-aarch64-linux-musl.tar.gz
path: .
- name: Skipping downloading bazelisk - already installed
run: bazel --version
- name: Generate builder workspace file
run: "cat >test-workspaces/builder/WORKSPACE.bazel <<EOF\nload(\"@bazel_tools//tools/build_defs/repo:http.bzl\"\
, \"http_archive\")\n\nhttp_archive(\n name = \"musl-1_2_3-platform-aarch64-apple-darwin-target-aarch64-linux-musl\"\
,\n sha256 = \"$(shasum -a 256 musl-1.2.3-platform-aarch64-apple-darwin-target-aarch64-linux-musl.tar.gz\
\ | awk '{print $1}')\",\n url = \"file://$(pwd)/musl-1.2.3-platform-aarch64-apple-darwin-target-aarch64-linux-musl.tar.gz\"\
,\n)\n\nEOF\n"
- name: Generate builder workspace config BUILD.bazel file
run: "mkdir -p test-workspaces/builder/config && cat >test-workspaces/builder/config/BUILD.bazel\
\ <<EOF\ntoolchain(\n name = \"musl-1_2_3-platform-aarch64-apple-darwin-target-aarch64-linux-musl\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:arm64\",\n \
\ \"@platforms//os:osx\",\n ],\n target_compatible_with = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n ],\n\
\ toolchain = \"@musl-1_2_3-platform-aarch64-apple-darwin-target-aarch64-linux-musl\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:toolchain_type\",\n)\ntoolchain(\n\
\ name = \"musl-1_2_3-platform-aarch64-apple-darwin-target-aarch64-linux-musl_test_toolchain\"\
,\n exec_compatible_with = [\n \"@platforms//cpu:arm64\",\n \
\ \"@platforms//os:linux\",\n ],\n target_compatible_with = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n toolchain = \"@musl-1_2_3-platform-aarch64-apple-darwin-target-aarch64-linux-musl//:musl-1_2_3-platform-aarch64-apple-darwin-target-aarch64-linux-musl_test_toolchain\"\
,\n toolchain_type = \"@bazel_tools//tools/cpp:test_runner_toolchain_type\"\
,\n)\n\nplatform(\n name = \"platform\",\n constraint_values = [\n \
\ \"@platforms//cpu:arm64\",\n \"@platforms//os:linux\",\n \
\ ],\n)\n\nEOF\n"
- name: Build with musl
run: cd test-workspaces/builder && bazel build //:binary
- name: Move test binary
run: mkdir output && cp test-workspaces/builder/bazel-bin/binary output/test-binary-platform-aarch64-apple-darwin-target-aarch64-linux-musl
- name: Upload test-binary-platform-aarch64-apple-darwin-target-aarch64-linux-musl
uses: actions/upload-artifact@v3
with:
name: test-binary-platform-aarch64-apple-darwin-target-aarch64-linux-musl
path: output/test-binary-platform-aarch64-apple-darwin-target-aarch64-linux-musl
if-no-files-found: error