mirror of
https://github.com/ntop/n2n.git
synced 2024-09-19 16:41:11 +02:00
Fix build system errors (#878)
* Attempt cross compiling for apple silicon * Try the apple expected compiler * Make config.log viewable to figure out the compiler error * Attempt to install the missing architecture * Leave this branch in a working and documented what is missing state * Try cross-compiling on macos with a specific SDK version * Every now and again the runner pacakge db gets out of sync with reality - avoid this ever stopping a build, at the expense of making the builds take longer to run * Add needed macos cross compile linker flag * Fix package db sync for binaries build as well * Add a fat binary build * Add missing dep on the new binaries_macos_universal build * Copy the macos cross compile artifacts into the right shared binaries bucket * Use the correct arch-based subdir name for macos binaries
This commit is contained in:
parent
29632e9589
commit
b9eac35c00
61
.github/workflows/tests.yml
vendored
61
.github/workflows/tests.yml
vendored
|
@ -253,6 +253,7 @@ jobs:
|
|||
|
||||
- name: Install packages needed for build
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install debhelper build-essential \
|
||||
crossbuild-essential-${{ matrix.arch }}
|
||||
|
||||
|
@ -345,7 +346,56 @@ jobs:
|
|||
path: binaries
|
||||
|
||||
binaries_macos:
|
||||
name: Binaries for MacOS (x86_64-apple-darwin)
|
||||
name: Binaries for MacOS
|
||||
needs:
|
||||
- test_macos
|
||||
runs-on: macos-latest
|
||||
strategy:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
arch:
|
||||
- x86_64-apple-macos
|
||||
- arm64-apple-macos
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install packages needed for build
|
||||
run: |
|
||||
brew install automake
|
||||
|
||||
- name: Configure and Build
|
||||
shell: bash
|
||||
run: |
|
||||
# this is a hack! it assumes the default SDK is the 'right' one
|
||||
export SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
|
||||
./autogen.sh
|
||||
export CC=clang
|
||||
export CFLAGS="-target ${{ matrix.arch }}"
|
||||
export LDFLAGS="-target ${{ matrix.arch }}"
|
||||
./configure --host=${{ matrix.arch }}
|
||||
make
|
||||
|
||||
- if: ${{ failure() }}
|
||||
name: Upload config.log output
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: config-log-${{ matrix.arch }}
|
||||
path: config.log
|
||||
|
||||
- name: Create binary dir
|
||||
shell: bash
|
||||
run: |
|
||||
make install DESTDIR=binaries/${{ matrix.arch }}
|
||||
|
||||
- name: Upload binary artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: binaries
|
||||
path: binaries
|
||||
|
||||
binaries_macos_universal:
|
||||
name: Binaries for MacOS (universal arch)
|
||||
needs:
|
||||
- test_macos
|
||||
runs-on: macos-latest
|
||||
|
@ -360,14 +410,19 @@ jobs:
|
|||
- name: Configure and Build
|
||||
shell: bash
|
||||
run: |
|
||||
# this is a hack! it assumes the default SDK is the 'right' one
|
||||
export SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
|
||||
./autogen.sh
|
||||
export CC=clang
|
||||
export CFLAGS="-arch x86_64 -arch arm64"
|
||||
export LDFLAGS="-arch x86_64 -arch arm64"
|
||||
./configure
|
||||
make
|
||||
|
||||
- name: Create binary dir
|
||||
shell: bash
|
||||
run: |
|
||||
make install DESTDIR=binaries/x86_64-apple-darwin
|
||||
make install DESTDIR=binaries/universal-apple-darwin
|
||||
|
||||
- name: Upload binary artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
|
@ -399,6 +454,7 @@ jobs:
|
|||
|
||||
- name: Install cross compiler
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install \
|
||||
binutils-${{ matrix.arch }} \
|
||||
gcc-${{ matrix.arch }}
|
||||
|
@ -431,6 +487,7 @@ jobs:
|
|||
- package_rpm
|
||||
- binaries_windows
|
||||
- binaries_macos
|
||||
- binaries_macos_universal
|
||||
- binaries_linux_crosscompile
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user