diff --git a/.github/workflows/build-libs.yml b/.github/workflows/build-libs.yml index 1f9873c..faca590 100644 --- a/.github/workflows/build-libs.yml +++ b/.github/workflows/build-libs.yml @@ -10,14 +10,14 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: ["macos-13"] + os: ["macos-15"] fail-fast: true steps: - uses: actions/checkout@v3 - name: Compile library - run: ./mac_build.sh - - uses: actions/upload-artifact@v3 + run: ./mac_build.sh x86_64 + - uses: actions/upload-artifact@v4 with: name: lib-macos-intel path: "libsndfile.dylib" @@ -28,14 +28,14 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: ["macos-14"] + os: ["macos-15"] fail-fast: true steps: - uses: actions/checkout@v3 - name: Compile library run: ./mac_build.sh arm64 - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: lib-macos-arm64 path: "libsndfile_arm64.dylib" @@ -46,14 +46,14 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: ["ubuntu-20.04"] + os: ["ubuntu-22.04"] fail-fast: true steps: - uses: actions/checkout@v3 - name: Compile library run: ./linux_build.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: lib-linux-x86_64 path: "libsndfile.so" @@ -68,17 +68,17 @@ jobs: - uses: actions/checkout@v3 - name: Compile library run: ./linux_build.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: lib-linux-x86_64-glibc2_28 path: "libsndfile.so" build-libs-linux-arm64: runs-on: ${{ matrix.os }} - container: debian:10 + container: debian:12 strategy: matrix: - os: ["ubuntu-20.04"] + os: ["ubuntu-22.04"] fail-fast: true steps: @@ -95,7 +95,7 @@ jobs: run: | export CONFIGURE_FLAGS="--host=aarch64-linux-gnu --build=x86_64-linux-gnu" ./linux_build.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: lib-linux-arm64 path: "libsndfile.so" @@ -105,7 +105,7 @@ jobs: container: debian:12 strategy: matrix: - os: ["ubuntu-20.04"] + os: ["ubuntu-22.04"] fail-fast: true steps: @@ -122,7 +122,7 @@ jobs: run: | export CONFIGURE_FLAGS="--host=riscv64-linux-gnu --build=x86_64-linux-gnu" ./linux_build.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: lib-linux-riscv64 path: "libsndfile.so" @@ -148,9 +148,9 @@ jobs: run: "vcpkg install libsndfile:${{ matrix.triplet }} --overlay-triplets=triplets" - name: Copy library run: "Copy-Item c:/vcpkg/installed/${{ matrix.triplet }}/bin/sndfile.dll -Destination ${{ matrix.libname }}" - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: - name: lib-windows + name: lib-${{ matrix.triplet }} path: ${{ matrix.libname }} retention-days: 7 if-no-files-found: error diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..699aed7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +*.tar* +flac-*/ +lame-*/ +libogg-*/ +libsndfile-*/ +libvorbis-*/ +mpg123-*/ +opus-*/ diff --git a/libsndfile_arm64.dll b/libsndfile_arm64.dll index 674f76f..75f0680 100644 Binary files a/libsndfile_arm64.dll and b/libsndfile_arm64.dll differ diff --git a/libsndfile_arm64.dylib b/libsndfile_arm64.dylib index 6312ba7..47db1ae 100644 Binary files a/libsndfile_arm64.dylib and b/libsndfile_arm64.dylib differ diff --git a/libsndfile_arm64.so b/libsndfile_arm64.so index 36ee3b1..39a1ccc 100644 Binary files a/libsndfile_arm64.so and b/libsndfile_arm64.so differ diff --git a/libsndfile_riscv64.so b/libsndfile_riscv64.so new file mode 100644 index 0000000..d8b18f8 Binary files /dev/null and b/libsndfile_riscv64.so differ diff --git a/libsndfile_x64.dll b/libsndfile_x64.dll index 698263f..ff61ba3 100644 Binary files a/libsndfile_x64.dll and b/libsndfile_x64.dll differ diff --git a/libsndfile_x86.dll b/libsndfile_x86.dll index 134bb2a..421815f 100644 Binary files a/libsndfile_x86.dll and b/libsndfile_x86.dll differ diff --git a/libsndfile_x86_64.dylib b/libsndfile_x86_64.dylib index 1d270e2..a7f9d82 100644 Binary files a/libsndfile_x86_64.dylib and b/libsndfile_x86_64.dylib differ diff --git a/libsndfile_x86_64.so b/libsndfile_x86_64.so index 911c72a..7b72e91 100644 Binary files a/libsndfile_x86_64.so and b/libsndfile_x86_64.so differ diff --git a/linux_build.sh b/linux_build.sh index bb53b7c..b2cd1ca 100755 --- a/linux_build.sh +++ b/linux_build.sh @@ -1,10 +1,10 @@ #!/bin/sh -OGGVERSION=1.3.5 +OGGVERSION=1.3.6 VORBISVERSION=1.3.7 -FLACVERSION=1.4.3 -OPUSVERSION=1.4 -MPG123VERSION=1.32.3 +FLACVERSION=1.5.0 +OPUSVERSION=1.5.2 +MPG123VERSION=1.33.4 LAMEVERSION=3.100 SNDFILE_VERSION=1.2.2 @@ -91,7 +91,7 @@ export OPUS_CFLAGS="-I$(pwd)/opus-$OPUSVERSION/include/" export OPUS_LIBS="-L$(pwd)/opus-$OPUSVERSION/.libs/ -lopus" export LAME_CFLAGS="-I$(pwd)/lame-$LAMEVERSION/include/" export LAME_LIBS="-L$(pwd)/lame-$LAMEVERSION/libmp3lame/.libs/" -export MPG123_CFLAGS="-I$(pwd)/mpg123-$MPG123VERSION/src/libmpg123/ $LAME_CFLAGS" +export MPG123_CFLAGS="-I$(pwd)/mpg123-$MPG123VERSION/src/include/ $LAME_CFLAGS" export MPG123_LIBS="-L$(pwd)/mpg123-$MPG123VERSION/src/libmpg123/.libs/ -lmpg123 -lmp3lame $LAME_LIBS" # add some global flags that libsndfile's compile script doesn't pick up diff --git a/mac_build.sh b/mac_build.sh index 46412ba..66dc5aa 100755 --- a/mac_build.sh +++ b/mac_build.sh @@ -1,10 +1,10 @@ #!/bin/sh -OGGVERSION=1.3.5 +OGGVERSION=1.3.6 VORBISVERSION=1.3.7 -FLACVERSION=1.4.3 -OPUSVERSION=1.4 -MPG123VERSION=1.32.3 +FLACVERSION=1.5.0 +OPUSVERSION=1.5.2 +MPG123VERSION=1.33.4 LAMEVERSION=3.100 SNDFILE_VERSION=1.2.2 @@ -16,12 +16,17 @@ OGG_LIBDIR="$(pwd)/libogg-$OGGVERSION/src/.libs" set -e if [ "$1" = "arm64" ]; then - echo "Cross compiling for Darwin arm64.." + echo "compiling for Darwin arm64.." export MACOSX_DEPLOYMENT_TARGET=11.0 BUILD_HOST="--host=aarch64-apple-darwin --target=arm64-apple-macos11" EXTRA_CFLAGS="-arch arm64 -target arm64-apple-macos11" +elif [ "$1" = "x86_64" ]; then + echo "compiling for Darwin x86_64.." + export MACOSX_DEPLOYMENT_TARGET=11.0 + BUILD_HOST="--host=x86_64-apple-darwin --target=x86_64-apple-macos11" + EXTRA_CFLAGS="-arch x86_64 -target x86_64-apple-macos11" else - echo "Building for Darwin $(uname -m).." + echo "compiling for Darwin $(uname -m).." export MACOSX_DEPLOYMENT_TARGET=10.9 BUILD_HOST="" EXTRA_CFLAGS="" @@ -102,16 +107,16 @@ export OPUS_INCLUDE="$(pwd)/opus-$OPUSVERSION" export OPUS_LIBS="$(pwd)/opus-$OPUSVERSION/.libs/libopus.a" export MP3LAME_INCLUDE="$(pwd)/lame-$LAMEVERSION" export MP3LAME_LIBS="$(pwd)/lame-$LAMEVERSION/libmp3lame/.libs/libmp3lame.a" -export MPG123_INCLUDE="$(pwd)/mpg123-$MPG123VERSION/src/libmpg123" +export MPG123_INCLUDE="$(pwd)/mpg123-$MPG123VERSION/src/include" export MPG123_LIBS="$(pwd)/mpg123-$MPG123VERSION/src/libmpg123/.libs/libmpg123.a" curl -LO https://github.com/libsndfile/libsndfile/releases/download/$SNDFILE_VERSION/libsndfile-$SNDFILE_VERSION.tar.xz tar jxvf libsndfile-$SNDFILE_VERSION.tar.xz cd $SNDFILENAME if [ "$1" = "arm64" ]; then -cmake -DCMAKE_OSX_ARCHITECTURES=arm64 -DBUILD_SHARED_LIBS=ON -DENABLE_EXTERNAL_LIBS=ON -DENABLE_MPEG=ON -DBUILD_PROGRAMS=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_PROJECT_INCLUDE=../darwin.cmake . +cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_OSX_ARCHITECTURES=arm64 -DBUILD_SHARED_LIBS=ON -DENABLE_EXTERNAL_LIBS=ON -DENABLE_MPEG=ON -DBUILD_PROGRAMS=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_PROJECT_INCLUDE=../darwin.cmake . else -cmake -DCMAKE_OSX_ARCHITECTURES=x86_64 -DBUILD_SHARED_LIBS=ON -DENABLE_EXTERNAL_LIBS=ON -DENABLE_MPEG=ON -DBUILD_PROGRAMS=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_PROJECT_INCLUDE=../darwin.cmake . +cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -DCMAKE_OSX_ARCHITECTURES=x86_64 -DBUILD_SHARED_LIBS=ON -DENABLE_EXTERNAL_LIBS=ON -DENABLE_MPEG=ON -DBUILD_PROGRAMS=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_PROJECT_INCLUDE=../darwin.cmake . fi cmake --build . --parallel $JOBS cd ..