Merge branch 'dev' into ci-maint

This commit is contained in:
Beep6581
2023-08-28 23:18:04 +02:00
committed by GitHub
357 changed files with 22504 additions and 23678 deletions

View File

@@ -11,6 +11,9 @@ on:
- dev
workflow_dispatch:
env:
publish_pre_dev_labels: '[]'
jobs:
build:
runs-on: windows-latest
@@ -46,6 +49,7 @@ jobs:
mingw-w64-x86_64-fftw
mingw-w64-x86_64-lensfun
mingw-w64-x86_64-libiptcdata
mingw-w64-x86_64-exiv2
- name: Configure build
run: |
@@ -95,6 +99,12 @@ jobs:
- name: Bundle dependencies
run: |
echo "Listing shared library dependencies."
ldd "./build/${{matrix.build_type}}/rawtherapee.exe"
echo "Finding DLLs to include."
DLLS=($(ldd "./build/${{matrix.build_type}}/rawtherapee.exe" | grep '/mingw64/bin/' | awk '{print($1)'}))
echo "Required DLLs are: ${DLLS[*]}"
echo "Getting workspace path."
export BUILD_DIR="$(pwd)/build/${{matrix.build_type}}"
echo "Build directory is '$BUILD_DIR'."
@@ -107,81 +117,22 @@ jobs:
"gdbus.exe" \
"gspawn-win64-helper.exe" \
"gspawn-win64-helper-console.exe" \
"libatk-1.0-0.dll" \
"libatkmm-1.6-1.dll" \
"libbrotlicommon.dll" \
"libbrotlidec.dll" \
"libbz2-1.dll" \
"libcairo-2.dll" \
"libcairo-gobject-2.dll" \
"libcairomm-1.0-1.dll" \
"libdatrie-1.dll" \
"libdeflate.dll" \
"libepoxy-0.dll" \
"libexpat-1.dll" \
libffi-*.dll \
"libfftw3f-3.dll" \
"libfontconfig-1.dll" \
"libfreetype-6.dll" \
"libfribidi-0.dll" \
"libgcc_s_seh-1.dll" \
"libgdk_pixbuf-2.0-0.dll" \
"libgdk-3-0.dll" \
"libgdkmm-3.0-1.dll" \
"libgio-2.0-0.dll" \
"libgiomm-2.4-1.dll" \
"libglib-2.0-0.dll" \
"libglibmm-2.4-1.dll" \
"libgmodule-2.0-0.dll" \
"libgobject-2.0-0.dll" \
"libgomp-1.dll" \
"libgraphite2.dll" \
"libgtk-3-0.dll" \
"libgtkmm-3.0-1.dll" \
"libharfbuzz-0.dll" \
"libiconv-2.dll" \
"libintl-8.dll" \
"libjbig-0.dll" \
"libjpeg-8.dll" \
"liblcms2-2.dll" \
"liblensfun.dll" \
"libLerc.dll" \
"liblzma-5.dll" \
"libpango-1.0-0.dll" \
"libpangocairo-1.0-0.dll" \
"libpangoft2-1.0-0.dll" \
"libpangomm-1.4-1.dll" \
"libpangowin32-1.0-0.dll" \
"libpcre2-8-0.dll" \
"libpixman-1-0.dll" \
"libpng16-16.dll" \
"librsvg-2-2.dll" \
"libsigc-2.0-0.dll" \
"libstdc++-6.dll" \
"libsystre-0.dll" \
"libthai-0.dll" \
"libtiff-5.dll" \
"libtre-5.dll" \
"libwebp-7.dll" \
"libwinpthread-1.dll" \
"libxml2-2.dll" \
"libzstd.dll" \
"zlib1.dll" \
${DLLS[*]} \
"$BUILD_DIR"
cd -
echo "Copying Adwaita theme."
mkdir -p "$BUILD_DIR/share/icons/Adwaita"
cd 'share/icons/Adwaita/'
mkdir -p "$BUILD_DIR/share/icons/Adwaita/scalable"
mkdir -p "$BUILD_DIR/share/icons/Adwaita/symbolic"
cp -r \
"scalable/actions" \
"scalable/devices" \
"scalable/mimetypes" \
"scalable/places" \
"scalable/status" \
"scalable/ui" \
"$BUILD_DIR/share/icons/Adwaita/scalable"
"symbolic/actions" \
"symbolic/devices" \
"symbolic/mimetypes" \
"symbolic/places" \
"symbolic/status" \
"symbolic/ui" \
"$BUILD_DIR/share/icons/Adwaita/symbolic"
cp 'index.theme' "$BUILD_DIR/share/icons/Adwaita"
mkdir -p "$BUILD_DIR/share/icons/Adwaita/cursors"
cp -r \
@@ -203,7 +154,7 @@ jobs:
echo "Creating GTK settings.ini."
mkdir -p "$BUILD_DIR/share/gtk-3.0/"
echo '[Settings] gtk-button-images=1' > "$BUILD_DIR/share/gtk-3.0/settings.ini"
echo -e '[Settings]\ngtk-button-images=1' > "$BUILD_DIR/share/gtk-3.0/settings.ini"
- name: Create installer
if: ${{matrix.build_type == 'release' && (github.ref_type == 'tag' || github.ref_name == 'dev')}}
@@ -297,3 +248,44 @@ jobs:
with:
tag_name: nightly-github-actions
files: build/${{env.PUBLISH_NAME}}.exe
- name: Prepare for publishing pre-dev
id: prepare-publish-pre-dev
if: ${{github.event_name == 'pull_request' && contains(fromJSON(env.publish_pre_dev_labels), github.event.pull_request.head.label)}}
run: |
echo "Making ref name."
REF_NAME_FILTERED="$(echo '${{github.event.pull_request.head.label}}' | tr ':' '_' | sed 's/[^A-z0-9_.-]//g')"
echo "Ref name is '$REF_NAME_FILTERED'."
echo "Setting publish name."
PUBLISH_NAME="RawTherapee_${REF_NAME_FILTERED}_win64_${{matrix.build_type}}"
echo "Publish name is '$PUBLISH_NAME'."
if [ "$ARTIFACT_NAME" != "$PUBLISH_NAME" ]; then
echo "Renaming ZIP file."
cp "build/$ARTIFACT_NAME.zip" "build/$PUBLISH_NAME.zip"
if [ -e "./build/$ARTIFACT_NAME.exe" ]; then
echo "Renaming installer."
mv "./build/$ARTIFACT_NAME.exe" "./build/$PUBLISH_NAME.exe"
fi
fi
echo "Creating version file."
cp "build/$ARTIFACT_NAME/AboutThisBuild.txt" "build/$PUBLISH_NAME-AboutThisBuild.txt"
echo "Recording publish name."
echo "PUBLISH_NAME=$PUBLISH_NAME" >> "$(cygpath -u $GITHUB_ENV)"
- name: Publish pre-dev artifacts
uses: softprops/action-gh-release@v1
if: ${{steps.prepare-publish-pre-dev.outcome == 'success'}}
with:
tag_name: pre-dev-github-actions
files: |
build/${{env.PUBLISH_NAME}}.zip
build/${{env.PUBLISH_NAME}}-AboutThisBuild.txt
- name: Publish pre-dev installer
uses: softprops/action-gh-release@v1
if: ${{steps.prepare-publish-pre-dev.outcome == 'success' && matrix.build_type == 'release'}}
with:
tag_name: pre-dev-github-actions
files: build/${{env.PUBLISH_NAME}}.exe