fix macos compliance
This commit is contained in:
106
.github/workflows/compat.yaml
vendored
106
.github/workflows/compat.yaml
vendored
@@ -2,6 +2,9 @@ name: compatibility check
|
||||
on: [push]
|
||||
jobs:
|
||||
mingw:
|
||||
strategy:
|
||||
matrix:
|
||||
coin: [monero, wownero]
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: debian:bookworm
|
||||
@@ -19,22 +22,17 @@ jobs:
|
||||
git config --global --add safe.directory '*'
|
||||
git config --global user.email "ci@mrcyjanek.net"
|
||||
git config --global user.name "CI mrcyjanek.net"
|
||||
./apply_patches.sh monero
|
||||
./apply_patches.sh wownero
|
||||
- name: monero/x86_64-w64-mingw32
|
||||
run: ./build_single.sh monero x86_64-w64-mingw32 -j$(nproc)
|
||||
- name: wownero/x86_64-w64-mingw32
|
||||
run: ./build_single.sh wownero x86_64-w64-mingw32 -j$(nproc)
|
||||
- name: monero/i686-w64-mingw32
|
||||
run: ./build_single.sh monero i686-w64-mingw32 -j$(nproc)
|
||||
- name: wownero/i686-w64-mingw32
|
||||
run: ./build_single.sh wownero i686-w64-mingw32 -j$(nproc)
|
||||
./apply_patches.sh ${{ matrix.coin }}
|
||||
- name: ${{ matrix.coin }}/x86_64-w64-mingw32
|
||||
run: ./build_single.sh ${{ matrix.coin }} x86_64-w64-mingw32 -j$(nproc)
|
||||
- name: ${{ matrix.coin }}/i686-w64-mingw32
|
||||
run: ./build_single.sh ${{ matrix.coin }} i686-w64-mingw32 -j$(nproc)
|
||||
- name: rename artifacts
|
||||
run: |
|
||||
mkdir release/gh/
|
||||
for i in release/monero/*
|
||||
for i in release/${{ matrix.coin }}/*
|
||||
do
|
||||
mv "$i" "release/gh/monero_$(basename $i)"
|
||||
mv "$i" "release/gh/${{ matrix.coin }}_$(basename $i)"
|
||||
done
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v2
|
||||
@@ -42,6 +40,9 @@ jobs:
|
||||
with:
|
||||
files: release/gh/*
|
||||
android:
|
||||
strategy:
|
||||
matrix:
|
||||
coin: [monero, wownero]
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: debian:bookworm
|
||||
@@ -59,26 +60,19 @@ jobs:
|
||||
git config --global --add safe.directory '*'
|
||||
git config --global user.email "ci@mrcyjanek.net"
|
||||
git config --global user.name "CI mrcyjanek.net"
|
||||
./apply_patches.sh monero
|
||||
./apply_patches.sh wownero
|
||||
- name: monero/x86_64-linux-android
|
||||
run: ./build_single.sh monero x86_64-linux-android -j$(nproc)
|
||||
- name: wownero/x86_64-linux-android
|
||||
run: ./build_single.sh wownero x86_64-linux-android -j$(nproc)
|
||||
- name: monero/aarch64-linux-android
|
||||
run: ./build_single.sh monero aarch64-linux-android -j$(nproc)
|
||||
- name: wownero/aarch64-linux-android
|
||||
run: ./build_single.sh wownero aarch64-linux-android -j$(nproc)
|
||||
- name: monero/arm-linux-androideabi
|
||||
run: ./build_single.sh monero arm-linux-androideabi -j$(nproc)
|
||||
- name: wownero/arm-linux-androideabi
|
||||
run: ./build_single.sh wownero arm-linux-androideabi -j$(nproc)
|
||||
./apply_patches.sh ${{ matrix.coin }}
|
||||
- name: ${{ matrix.coin }}/x86_64-linux-android
|
||||
run: ./build_single.sh ${{ matrix.coin }} x86_64-linux-android -j$(nproc)
|
||||
- name: ${{ matrix.coin }}/aarch64-linux-android
|
||||
run: ./build_single.sh ${{ matrix.coin }} aarch64-linux-android -j$(nproc)
|
||||
- name: ${{ matrix.coin }}/arm-linux-androideabi
|
||||
run: ./build_single.sh ${{ matrix.coin }} arm-linux-androideabi -j$(nproc)
|
||||
- name: rename artifacts
|
||||
run: |
|
||||
mkdir release/gh/
|
||||
for i in release/monero/*
|
||||
for i in release/${{ matrix.coin }}/*
|
||||
do
|
||||
mv "$i" "release/gh/monero_$(basename $i)"
|
||||
mv "$i" "release/gh/${{ matrix.coin }}_$(basename $i)"
|
||||
done
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v2
|
||||
@@ -86,6 +80,9 @@ jobs:
|
||||
with:
|
||||
files: release/gh/*
|
||||
linux:
|
||||
strategy:
|
||||
matrix:
|
||||
coin: [monero, wownero]
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: debian:bookworm
|
||||
@@ -103,26 +100,19 @@ jobs:
|
||||
git config --global --add safe.directory '*'
|
||||
git config --global user.email "ci@mrcyjanek.net"
|
||||
git config --global user.name "CI mrcyjanek.net"
|
||||
./apply_patches.sh monero
|
||||
./apply_patches.sh wownero
|
||||
- name: monero/x86_64-linux-gnu
|
||||
run: ./build_single.sh monero x86_64-linux-gnu -j$(nproc)
|
||||
- name: wownero/x86_64-linux-gnu
|
||||
run: ./build_single.sh wownero x86_64-linux-gnu -j$(nproc)
|
||||
- name: monero/aarch64-linux-gnu
|
||||
run: ./build_single.sh monero aarch64-linux-gnu -j$(nproc)
|
||||
- name: wownero/aarch64-linux-gnu
|
||||
run: ./build_single.sh wownero aarch64-linux-gnu -j$(nproc)
|
||||
- name: monero/i686-linux-gnu
|
||||
run: ./build_single.sh monero i686-linux-gnu -j$(nproc)
|
||||
- name: wownero/i686-linux-gnu
|
||||
run: ./build_single.sh wownero i686-linux-gnu -j$(nproc)
|
||||
./apply_patches.sh ${{ matrix.coin }}
|
||||
- name: ${{ matrix.coin }}/x86_64-linux-gnu
|
||||
run: ./build_single.sh ${{ matrix.coin }} x86_64-linux-gnu -j$(nproc)
|
||||
- name: ${{ matrix.coin }}/aarch64-linux-gnu
|
||||
run: ./build_single.sh ${{ matrix.coin }} aarch64-linux-gnu -j$(nproc)
|
||||
- name: ${{ matrix.coin }}/i686-linux-gnu
|
||||
run: ./build_single.sh ${{ matrix.coin }} i686-linux-gnu -j$(nproc)
|
||||
- name: rename artifacts
|
||||
run: |
|
||||
mkdir release/gh/
|
||||
for i in release/monero/*
|
||||
for i in release/${{ matrix.coin }}/*
|
||||
do
|
||||
mv "$i" "release/gh/monero_$(basename $i)"
|
||||
mv "$i" "release/gh/${{ matrix.coin }}_$(basename $i)"
|
||||
done
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v2
|
||||
@@ -130,6 +120,9 @@ jobs:
|
||||
with:
|
||||
files: release/gh/*
|
||||
darwin:
|
||||
strategy:
|
||||
matrix:
|
||||
coin: [monero, wownero]
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: debian:bookworm
|
||||
@@ -149,20 +142,16 @@ jobs:
|
||||
git config --global user.name "CI mrcyjanek.net"
|
||||
./apply_patches.sh monero
|
||||
./apply_patches.sh wownero
|
||||
- name: monero/x86_64-apple-darwin11
|
||||
run: ./build_single.sh monero x86_64-apple-darwin11 -j$(nproc)
|
||||
- name: wownero/x86_64-apple-darwin11
|
||||
run: ./build_single.sh wownero x86_64-apple-darwin11 -j$(nproc)
|
||||
- name: monero/aarch64-apple-darwin11
|
||||
run: ./build_single.sh monero aarch64-apple-darwin11 -j$(nproc)
|
||||
- name: wownero/aarch64-apple-darwin11
|
||||
run: ./build_single.sh wownero aarch64-apple-darwin11 -j$(nproc)
|
||||
- name: ${{ matrix.coin }}/x86_64-apple-darwin11
|
||||
run: ./build_single.sh ${{ matrix.coin }} x86_64-apple-darwin11 -j$(nproc)
|
||||
- name: ${{ matrix.coin }}/aarch64-apple-darwin11
|
||||
run: ./build_single.sh ${{ matrix.coin }} aarch64-apple-darwin11 -j$(nproc)
|
||||
- name: rename artifacts
|
||||
run: |
|
||||
mkdir release/gh/
|
||||
for i in release/monero/*
|
||||
for i in release/${{ matrix.coin }}/*
|
||||
do
|
||||
mv "$i" "release/gh/monero_$(basename $i)"
|
||||
mv "$i" "release/gh/${{ matrix.coin }}_$(basename $i)"
|
||||
done
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v2
|
||||
@@ -191,12 +180,7 @@ jobs:
|
||||
git config --global --add safe.directory '*'
|
||||
git config --global user.email "ci@mrcyjanek.net"
|
||||
git config --global user.name "CI mrcyjanek.net"
|
||||
./apply_patches.sh monero
|
||||
./apply_patches.sh wownero
|
||||
./apply_patches.sh ${{ matrix.coin }}
|
||||
- name: monero/host-apple-darwin
|
||||
run: |
|
||||
./build-single.sh monero host-apple-darwin -j$(sysctl -n hw.activecpu)
|
||||
- name: wownero/host-apple-darwin
|
||||
run: |
|
||||
./build-single.sh wownero host-apple-darwin -j$(sysctl -n hw.activecpu)
|
||||
|
||||
./build-single.sh ${{ matrix.coin }} host-apple-darwin -j$(sysctl -n hw.activecpu)
|
||||
@@ -169,6 +169,9 @@ pushd $repo/contrib/depends
|
||||
make $NPROC
|
||||
popd
|
||||
fi
|
||||
pushd ../../../external/macos
|
||||
./build_unbound.sh
|
||||
popd
|
||||
MACOS_LIBS_DIR="${PWD}/${HOST_ABI}"
|
||||
rm -rf ${MACOS_LIBS_DIR}
|
||||
mkdir -p ${MACOS_LIBS_DIR}/lib
|
||||
@@ -180,7 +183,9 @@ pushd $repo/contrib/depends
|
||||
export HOMEBREW_PREFIX=/usr/local
|
||||
fi
|
||||
fi
|
||||
verbose_copy "${HOMEBREW_PREFIX}/lib/libunbound.a" ${MACOS_LIBS_DIR}/lib/libunbound.a
|
||||
# NOTE: we can use unbound from brew but app store rejects the app
|
||||
# verbose_copy "${HOMEBREW_PREFIX}/lib/libunbound.a" ${MACOS_LIBS_DIR}/lib/libunbound.a
|
||||
verbose_copy "../../../external/macos/build/MACOS/lib/libunbound.a" ${MACOS_LIBS_DIR}/lib/libunbound.a
|
||||
verbose_copy "${HOMEBREW_PREFIX}/lib/libboost_chrono-mt.a" ${MACOS_LIBS_DIR}/lib/libboost_chrono-mt.a
|
||||
verbose_copy "${HOMEBREW_PREFIX}/lib/libboost_locale-mt.a" ${MACOS_LIBS_DIR}/lib/libboost_locale-mt.a
|
||||
verbose_copy "${HOMEBREW_PREFIX}/lib/libboost_date_time-mt.a" ${MACOS_LIBS_DIR}/lib/libboost_date_time-mt.a
|
||||
|
||||
48
external/macos/build_unbound.sh
vendored
Executable file
48
external/macos/build_unbound.sh
vendored
Executable file
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
set -x -e
|
||||
|
||||
. config.sh
|
||||
|
||||
#### add m4 to path
|
||||
# NOTE: this may not be needed.
|
||||
|
||||
HOMEBREW_PREFIX="$(brew config | grep HOMEBREW_PREFIX | awk '{ print $2 }')"
|
||||
M4_VERSION="$(brew info m4 | head -1 | awk '{ print $4 }')"
|
||||
export PATH="${HOMEBREW_PREFIX}/Cellar/m4/${M4_VERSION}/bin/:$PATH"
|
||||
|
||||
#### expat
|
||||
|
||||
EXPAT_VERSION=R_2_4_8
|
||||
EXPAT_HASH="3bab6c09bbe8bf42d84b81563ddbcf4cca4be838"
|
||||
EXPAT_SRC_DIR=${EXTERNAL_MACOS_SOURCE_DIR}/libexpat
|
||||
rm -rf $EXPAT_SRC_DIR
|
||||
git clone https://github.com/libexpat/libexpat.git -b ${EXPAT_VERSION} ${EXPAT_SRC_DIR}
|
||||
cd $EXPAT_SRC_DIR
|
||||
test `git rev-parse HEAD` = ${EXPAT_HASH} || exit 1
|
||||
cd $EXPAT_SRC_DIR/expat
|
||||
|
||||
./buildconf.sh
|
||||
./configure --enable-static --disable-shared --prefix=${EXTERNAL_MACOS_DIR}
|
||||
make
|
||||
make install
|
||||
|
||||
#### unbound
|
||||
|
||||
UNBOUND_VERSION=release-1.16.2
|
||||
UNBOUND_HASH="cbed768b8ff9bfcf11089a5f1699b7e5707f1ea5"
|
||||
UNBOUND_URL="https://www.nlnetlabs.nl/downloads/unbound/unbound-${UNBOUND_VERSION}.tar.gz"
|
||||
UNBOUND_DIR_PATH="${EXTERNAL_MACOS_SOURCE_DIR}/unbound-1.16.2"
|
||||
|
||||
echo "============================ Unbound ============================"
|
||||
rm -rf ${UNBOUND_DIR_PATH}
|
||||
git clone https://github.com/NLnetLabs/unbound.git -b ${UNBOUND_VERSION} ${UNBOUND_DIR_PATH}
|
||||
cd $UNBOUND_DIR_PATH
|
||||
test `git rev-parse HEAD` = ${UNBOUND_HASH} || exit 1
|
||||
|
||||
./configure --prefix="${EXTERNAL_MACOS_DIR}" \
|
||||
--with-libexpat="${EXTERNAL_MACOS_DIR}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-flto
|
||||
make
|
||||
make install
|
||||
12
external/macos/config.sh
vendored
Executable file
12
external/macos/config.sh
vendored
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
export MACOS_SCRIPTS_DIR="$(pwd)"
|
||||
export CW_ROOT="${MACOS_SCRIPTS_DIR}"
|
||||
export EXTERNAL_DIR="${CW_ROOT}/build"
|
||||
export EXTERNAL_MACOS_DIR="${EXTERNAL_DIR}/MACOS"
|
||||
export EXTERNAL_MACOS_SOURCE_DIR="${EXTERNAL_MACOS_DIR}/sources"
|
||||
export EXTERNAL_MACOS_LIB_DIR="${EXTERNAL_MACOS_DIR}/lib"
|
||||
export EXTERNAL_MACOS_INCLUDE_DIR="${EXTERNAL_MACOS_DIR}/include"
|
||||
|
||||
mkdir -p "$EXTERNAL_MACOS_LIB_DIR"
|
||||
mkdir -p "$EXTERNAL_MACOS_INCLUDE_DIR"
|
||||
Reference in New Issue
Block a user