stages: - "manifest" - "build" variables: GIT_STRATEGY: none manifest: image: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/alpine-manifest-build:10ffa6f1af6fed20a8857d2c7426d81cf162e3d1' stage: 'manifest' script: - cd /gst-ci - gitlab/build_manifest.py --self-update - gitlab/build_manifest.py ${CI_PROJECT_DIR}/manifest.xml - cat ${CI_PROJECT_DIR}/manifest.xml artifacts: expire_in: "2 days" paths: - "manifest.xml" .build: stage: "build" variables: CC: "ccache gcc" CXX: "ccache g++" CCACHE_BASEDIR: "${CI_PROJECT_DIR}" CCACHE_DIR: "${CI_PROJECT_DIR}/ccache" MAIN_DIR: "${CI_PROJECT_DIR}" MESON_ARGS: > -Dpython=enabled -Dlibav=enabled -Dugly=enabled -Dbad=enabled -Ddevtools=enabled -Dges=enabled -Drtsp_server=enabled -Dvaapi=enabled -Dsharp=disabled script: # Not sure why, but permission errors else # https://gitlab.freedesktop.org/alatiera/gstreamer/-/jobs/41441 - cp -r /gst-build/ . && cd gst-build - ./git-update --no-interaction --manifest="${CI_PROJECT_DIR}/manifest.xml" - meson build/ $MESON_ARGS - ninja -C build/ after_script: - cd gst-build/ # Clean the artifacts packages to avoid copying "useless" build products. - rm $(find build -name "*.o") $(find -name "*.a") # Clean the .git repos since we won't need them anymore - rm -rf subprojects/*/.git/ - rm -rf build/subprojects/*/.git/ cache: paths: - "${CCACHE_DIR}" artifacts: expire_in: 6hours when: always paths: - "manifest.xml" # - "gst-build/" build fedora x86_64: extends: '.build' image: 'registry.freedesktop.org/gstreamer/gst-ci/amd64/fedora-build:2414895a53408ed8a0410a52560f8090b3f74696' dependencies: - "manifest"