Skip to content

Merge pull request #2140 from JeromeMartinez/MXF_Refactoring #1654

Merge pull request #2140 from JeromeMartinez/MXF_Refactoring

Merge pull request #2140 from JeromeMartinez/MXF_Refactoring #1654

name: Checks
on: [push, pull_request]
jobs:
Unix:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
environement: [normal, minified, minimal, minimal-with-xml]
include:
- environement: normal
CXXFLAGS: ""
RUN_TESTS: "all"
- environement: minified
CXXFLAGS: "-DMEDIAINFO_ADVANCED_NO -DMEDIAINFO_ARCHIVE_NO -DMEDIAINFO_DEMUX_NO -DMEDIAINFO_DVDIF_ANALYZE_NO -DMEDIAINFO_EVENTS_NO -DMEDIAINFO_LIBCURL_NO -DMEDIAINFO_LIBMMS_NO -DMEDIAINFO_MD5_NO -DMEDIAINFO_MINIMAL_YES -DMEDIAINFO_MPEGTS_DUPLICATE_NO -DMEDIAINFO_N19_NO -DMEDIAINFO_OTHERTEXT_NO -DMEDIAINFO_TRACE_NO -DMEDIAINFO_READTHREAD_NO -DMEDIAINFO_EXPORT_NO -DMEDIAINFO_TEXT_YES"
RUN_TESTS: "no"
- environement: minimal
CXXFLAGS: "-DMEDIAINFO_ADVANCED_NO -DMEDIAINFO_CONFORMANCE_NO -DMEDIAINFO_REFERENCES_NO -DMEDIAINFO_FILTER_NO -DMEDIAINFO_DUPLICATE_NO -DMEDIAINFO_MACROBLOCKS_NO -DMEDIAINFO_TRACE_NO -DMEDIAINFO_TRACE_FFV1CONTENT_NO -DMEDIAINFO_IBI_NO -DMEDIAINFO_DIRECTORY_NO -DMEDIAINFO_LIBCURL_NO -DMEDIAINFO_LIBMMS_NO -DMEDIAINFO_DVDIF_ANALYZE_NO -DMEDIAINFO_MPEGTS_DUPLICATE_NO -DMEDIAINFO_READTHREAD_NO -DMEDIAINFO_MD5_NO -DMEDIAINFO_SHA1_NO -DMEDIAINFO_SHA2_NO -DMEDIAINFO_EVENTS_NO -DMEDIAINFO_DEMUX_NO -DMEDIAINFO_AES_NO -DMEDIAINFO_FIXITY_NO -DMEDIAINFO_READER_NO -DMEDIAINFO_NEXTPACKET_NO"
RUN_TESTS: "no"
- environement: minimal-with-xml
CXXFLAGS: "-DMEDIAINFO_ADVANCED_NO -DMEDIAINFO_CONFORMANCE_NO -DMEDIAINFO_REFERENCES_NO -DMEDIAINFO_FILTER_NO -DMEDIAINFO_DUPLICATE_NO -DMEDIAINFO_MACROBLOCKS_NO -DMEDIAINFO_TRACE_NO -DMEDIAINFO_TRACE_FFV1CONTENT_NO -DMEDIAINFO_IBI_NO -DMEDIAINFO_DIRECTORY_NO -DMEDIAINFO_LIBCURL_NO -DMEDIAINFO_LIBMMS_NO -DMEDIAINFO_DVDIF_ANALYZE_NO -DMEDIAINFO_MPEGTS_DUPLICATE_NO -DMEDIAINFO_READTHREAD_NO -DMEDIAINFO_MD5_NO -DMEDIAINFO_SHA1_NO -DMEDIAINFO_SHA2_NO -DMEDIAINFO_EVENTS_NO -DMEDIAINFO_DEMUX_NO -DMEDIAINFO_AES_NO -DMEDIAINFO_FIXITY_NO -DMEDIAINFO_NEXTPACKET_NO -DMEDIAINFO_ALL_NO -DMEDIAINFO_MIXML_YES"
RUN_TESTS: "mixml"
fail-fast: false
runs-on: ${{ matrix.os }}
env:
S3_KEY: ${{ secrets.S3_KEY }}
S3_PASS: ${{ secrets.S3_PASS }}
CXXFLAGS: ${{ matrix.CXXFLAGS }}
RUN_TESTS: ${{ matrix.RUN_TESTS }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 1
- name: Dependencies
run: |
if [ "$RUNNER_OS" == "Linux" ]; then
sudo apt-get update -y
sudo apt-get install -y libxml2-utils zlib1g-dev libcurl4-gnutls-dev libmms-dev
fi
if [ "$RUNNER_OS" == "macOS" ]; then
brew install libtool automake pkg-config
fi
sudo npm install -g jsonlint
- name: ZenLib
run: |
git -C .. clone --depth=1 https://github.com/MediaArea/ZenLib.git
pushd ../ZenLib/Project/GNU/Library
autoreconf -if
./configure --enable-static
make
popd
- name: Configure
run: |
cd Project/GNU/Library
autoreconf -if
./configure --with-libcurl=runtime
- name: Build
run: |
cd Project/GNU/Library
make
- name: Check files
run: |
cd Project/GNU/Library
make clone_regression_files
- name: Check
run: |
cd Project/GNU/Library
make check
- name: CMake Build
if: ${{ matrix.environement == 'normal' }}
run: |
mkdir Project/CMake/Build
cd Project/CMake/Build
cmake -DBUILD_ZENLIB=1 ..
make