@@ -310,193 +310,9 @@ jobs:
310310 name : tsschecker_${{ env.OS }}_${{ env.ARCH }}
311311 path : tsschecker/tsschecker${{ env.EXE_SUFFIX }}
312312
313- build-macos :
314- runs-on : macos-11
315- strategy :
316- matrix :
317- arch :
318- - x86_64
319- env :
320- ARCH : ${{ matrix.arch }}
321-
322- steps :
323- - uses : actions/checkout@v1
324- with :
325- submodules : recursive
326-
327- - uses : actions/cache@v2
328- with :
329- path : |
330- ~/Library/Caches/Mozilla.sccache
331- ~/dep_src
332- key : build-macos-${{ matrix.arch }}-${ { env.GITHUB_SHA } }
333- restore-keys : |
334- build-macos-${{ matrix.arch }}-
335-
336- - name : setup environment
337- run : |
338- export DOWNLOAD_PATH=${HOME}/dep_src
339- export DEP_PATH=${HOME}/build
340- export ROOT=${HOME}/root
341- mkdir -p ${DOWNLOAD_PATH} ${DEP_PATH} ${ROOT}
342- echo "DOWNLOAD_PATH=${DOWNLOAD_PATH}" >> $GITHUB_ENV
343- echo "DEP_PATH=${DEP_PATH}" >> $GITHUB_ENV
344- echo "ROOT=${ROOT}" >> $GITHUB_ENV
345- echo "CPU_COUNT=$(sysctl -n hw.ncpu)" >> $GITHUB_ENV
346- echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
347- echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
348-
349- if [ "${ARCH}" = "arm64" ]; then
350- echo "HOST_ARCH=aarch64" >> $GITHUB_ENV
351- else
352- echo "HOST_ARCH=${ARCH}" >> $GITHUB_ENV
353- fi
354-
355- - name : setup toolchain
356- run : |
357- brew install libtool autoconf automake
358-
359- # Download sccache
360- wget -nc -P ${DOWNLOAD_PATH} \
361- https://github.com/mozilla/sccache/releases/download/v${SCCACHE_VERSION}/sccache-v${SCCACHE_VERSION}-x86_64-apple-darwin.tar.gz
362- tar xf ${DOWNLOAD_PATH}/sccache-v${SCCACHE_VERSION}-x86_64-apple-darwin.tar.gz -C ${HOME}
363- chmod +x ${HOME}/sccache-v${SCCACHE_VERSION}-x86_64-apple-darwin/sccache
364- echo "${HOME}/sccache-v${SCCACHE_VERSION}-x86_64-apple-darwin" >> $GITHUB_PATH
365-
366- echo "CC=sccache clang -arch ${ARCH} -mmacosx-version-min=10.13" >> $GITHUB_ENV
367- echo "CXX=sccache clang++ -arch ${ARCH} -mmacosx-version-min=10.13" >> $GITHUB_ENV
368- echo "CFLAGS=-Os -I${ROOT}/usr/include" >> $GITHUB_ENV
369- echo "CPPFLAGS=-I${ROOT}/usr/include" >> $GITHUB_ENV
370- echo "LDFLAGS=-L${ROOT}/usr/lib" >> $GITHUB_ENV
371- echo "PKG_CONFIG_PATH=${ROOT}/usr/lib/pkgconfig" >> $GITHUB_ENV
372- echo "LD_LIBRARY_PATH=${ROOT}/usr/lib" >> $GITHUB_ENV
373-
374- - name : build libplist
375- run : |
376- wget -q -nc -P ${DOWNLOAD_PATH} https://github.com/libimobiledevice/libplist/releases/download/${LIBPLIST_VERSION}/libplist-${LIBPLIST_VERSION}.tar.bz2
377- tar xf ${DOWNLOAD_PATH}/libplist-${LIBPLIST_VERSION}.tar.bz2 -C ${DEP_PATH}
378- cd ${DEP_PATH}/libplist-${LIBPLIST_VERSION}
379- ./configure --host=${HOST_ARCH}-apple-darwin --prefix=/usr --without-cython --enable-static --disable-shared
380- make -j${CPU_COUNT}
381- make install DESTDIR="${ROOT}"
382-
383- - name : build libirecovery
384- run : |
385- wget -q -nc -P ${DOWNLOAD_PATH} https://github.com/libimobiledevice/libirecovery/releases/download/${LIBIRECOVERY_VERSION}/libirecovery-${LIBIRECOVERY_VERSION}.tar.bz2
386- tar xf ${DOWNLOAD_PATH}/libirecovery-${LIBIRECOVERY_VERSION}.tar.bz2 -C ${DEP_PATH}
387- cd ${DEP_PATH}/libirecovery-${LIBIRECOVERY_VERSION}
388- wget https://gist.github.com/1Conan/2d015aad17f87f171b32ebfd9f48fb96/raw/c12fca047f8b0bba1c8983470bf863d80d7e1c1d/libirecovery.patch
389- patch -p1 < libirecovery.patch
390- glibtoolize --force
391- aclocal -I m4
392- autoheader
393- automake --add-missing
394- autoconf
395- ./configure --host=${HOST_ARCH}-apple-darwin --prefix=/usr --enable-static --disable-shared --with-dummy
396- make -j${CPU_COUNT}
397- make install DESTDIR="${ROOT}"
398-
399- - name : build zlib
400- run : |
401- wget -q -nc -P ${DOWNLOAD_PATH} https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz
402- tar xf ${DOWNLOAD_PATH}/zlib-${ZLIB_VERSION}.tar.gz -C ${DEP_PATH}
403- cd ${DEP_PATH}/zlib-${ZLIB_VERSION}
404- ./configure --static --prefix=/usr
405- make -j${CPU_COUNT}
406- make install DESTDIR="${ROOT}"
407-
408- - name : build libcurl
409- run : |
410- wget -q -nc -P ${DOWNLOAD_PATH} https://curl.haxx.se/download/curl-${LIBCURL_VERSION}.tar.gz
411- tar xf ${DOWNLOAD_PATH}/curl-${LIBCURL_VERSION}.tar.gz -C ${DEP_PATH}
412- cd ${DEP_PATH}/curl-${LIBCURL_VERSION}
413- ./configure \
414- --host=${HOST_ARCH}-apple-darwin \
415- --prefix=/usr \
416- --enable-static \
417- --disable-shared \
418- --enable-ipv6 \
419- --disable-dependency-tracking \
420- --with-zlib=${ROOT}/usr \
421- --with-secure-transport \
422- --without-ca-bundle \
423- --without-ca-path \
424- --without-zstd \
425- --without-brotli \
426- --disable-ldap \
427- --disable-ldaps \
428- --without-libidn2 \
429- --without-nghttp2 \
430- --without-librtmp
431- make -j${CPU_COUNT}
432- make install DESTDIR="${ROOT}"
433-
434- - name : build libzip
435- run : |
436- wget -q -nc -P ${DOWNLOAD_PATH} https://libzip.org/download/libzip-${LIBZIP_VERSION}.tar.gz
437- tar xf ${DOWNLOAD_PATH}/libzip-${LIBZIP_VERSION}.tar.gz -C ${DEP_PATH}
438- cd ${DEP_PATH}/libzip-${LIBZIP_VERSION}
439- cmake \
440- -DCMAKE_BUILD_TYPE=Release \
441- -DCMAKE_CROSSCOMPILING=true \
442- -DCMAKE_SYSTEM_NAME=Darwin \
443- -DCMAKE_SYSTEM_PROCESSOR="${HOST_ARCH}" \
444- -DCMAKE_C_FLAGS="${CFLAGS}" \
445- -DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
446- -DCMAKE_OSX_ARCHITECTURES="${ARCH}" \
447- -DCMAKE_FIND_ROOT_PATH="${ROOT}" \
448- -DBUILD_SHARED_LIBS=OFF \
449- -DCMAKE_FIND_LIBRARY_SUFFIXES=".a" \
450- -DENABLE_BZIP2=FALSE \
451- -DENABLE_LZMA=FALSE \
452- -DCMAKE_INSTALL_PREFIX=/usr \
453- -DSKIP_BUILD_RPATH=TRUE
454-
455- make -j${CPU_COUNT}
456- make install DESTDIR="${ROOT}"
457-
458- - name : build libgeneral
459- run : |
460- rm -rf ${DEP_PATH}/libgeneral
461- git clone https://github.com/tihmstar/libgeneral ${DEP_PATH}/libgeneral
462- cd ${DEP_PATH}/libgeneral
463- git checkout ${LIBGENERAL_COMMIT}
464-
465- ./autogen.sh --host=${HOST_ARCH}-apple-darwin --enable-static --disable-shared --prefix=/usr
466- make -j${CPU_COUNT}
467- make install DESTDIR="${ROOT}"
468-
469- - name : build libfragmentzip
470- run : |
471- rm -rf ${DEP_PATH}/libfragmentzip
472- git clone https://github.com/tihmstar/libfragmentzip.git ${DEP_PATH}/libfragmentzip
473- cd ${DEP_PATH}/libfragmentzip
474- curl_LIBS="${ROOT}/usr/lib/libcurl.a" \
475- zlib_LIBS="${ROOT}/usr/lib/libz.a" \
476- libzip_LIBS="${ROOT}/usr/lib/libzip.a" \
477- ./autogen.sh \
478- --host=${HOST_ARCH}-apple-darwin \
479- --prefix=/usr \
480- --enable-static \
481- --disable-shared
482- make -j${CPU_COUNT}
483- make install DESTDIR="${ROOT}"
484-
485- - name : build tsschecker
486- run : |
487- ./autogen.sh --host=${HOST_ARCH}-apple-darwin --enable-static --disable-shared
488-
489- make -j${CPU_COUNT} LDFLAGS="-all-static ${LDFLAGS}"
490- strip tsschecker/tsschecker
491-
492- - uses : actions/upload-artifact@v1
493- with :
494- name : tsschecker_macos_${{ env.ARCH }}
495- path : tsschecker/tsschecker
496-
497313 release :
498314 runs-on : ubuntu-latest
499- needs : [build-win-lin, build-macos ]
315+ needs : [build-win-lin]
500316 steps :
501317 - uses : actions/checkout@v1
502318
0 commit comments