diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2022-12-03 05:04:09 +0300 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2022-12-03 08:07:56 +0300 |
commit | 4b501f288309e8d201a758ba23ddccfa9dffed81 (patch) | |
tree | 10b9eea60c976fedeb4b1c6cf65c3ff1e03aa338 /.github/workflows | |
parent | db40b99e38149d644808ec22b44a89fe758b739b (diff) | |
download | sciteco-4b501f288309e8d201a758ba23ddccfa9dffed81.tar.gz |
simplified win32 packaging using mingw-bundedlls
* mingw-bundledlls finds and copies transitive DLL dependencies.
* Like all external one-file sources, mingw-bundledlls has been copied into contrib/
instead of adding a submodule.
It's taken from here: https://github.com/mpreisler/mingw-bundledlls
* Packaging is more robust now if dependant DLLs are upgraded or if we
decide to link in more statically.
With the old scheme, we might also miss some DLL and break builds
without even noticing it.
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/nightly.yml | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 40254a6..428825a 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -201,6 +201,8 @@ jobs: make -C build-wincon check TESTSUITEFLAGS="--verbose" - name: Prepare Distribution Directory + env: + MINGW_BUNDLEDLLS_SEARCH_PATH: /mingw32/bin run: | mkdir temp-bin/ cd temp-bin/ @@ -210,9 +212,8 @@ jobs: cp -r /mingw32/share/doc/sciteco/* ./ cp ../COPYING ../ChangeLog ./ cp /mingw32/bin/gspawn-win32-helper*.exe ./ - # FIXME: See above. We currently link dynamically. - cp /mingw32/bin/{libglib-2.0-0,libpcre2-8-0,libintl-8,libiconv-2,libwinpthread-1,libgcc_s_dw2-1}.dll ./ - cp /mingw32/bin/libstdc++-6.dll ./ + # Collect DLLs for all included binaries + for f in *.exe; do ../contrib/mingw-bundledlls --copy $f; done zip -9 -r ../sciteco-pdcurses_nightly_win32.zip . - name: Archive Windows Distribution (PDCurses) uses: pyTooling/Actions/releaser/composite@v0.4.5 @@ -272,6 +273,8 @@ jobs: run: make check TESTSUITEFLAGS="--verbose" - name: Prepare Distribution Directory + env: + MINGW_BUNDLEDLLS_SEARCH_PATH: /mingw32/bin run: | mkdir temp-bin cd temp-bin @@ -284,15 +287,8 @@ jobs: cp -r /mingw32/share/doc/sciteco/* ./ cp ../COPYING ../ChangeLog ./ cp /mingw32/bin/gspawn-win32-helper*.exe ./ - cp /mingw32/bin/{libglib-2.0-0,libpcre2-8-0,libintl-8,libiconv-2,libwinpthread-1,libgcc_s_dw2-1}.dll ./ - cp /mingw32/bin/{libgtk-3-0,libgdk-3-0,libgdk_pixbuf-2.0-0,libatk-1.0-0}.dll ./ - cp /mingw32/bin/{libgobject-2.0-0,libgmodule-2.0-0,libgio-2.0-0,libffi-8}.dll ./ - cp /mingw32/bin/{libpango-1.0-0,libpangocairo-1.0-0,libpangowin32-1.0-0,libpangoft2-1.0-0}.dll ./ - cp /mingw32/bin/{libthai-0,libdatrie-1,libharfbuzz-0,libgraphite2,libfribidi-0,libepoxy-0}.dll ./ - cp /mingw32/bin/{libfontconfig-1,libexpat-1}.dll ./ - cp /mingw32/bin/{libfreetype-6,libbrotlidec,libbrotlicommon,libbz2-1,zlib1}.dll ./ - cp /mingw32/bin/{libcairo-2,libcairo-gobject-2,libpixman-1-0,libstdc++-6}.dll ./ - cp /mingw32/bin/{libpng16-16,librsvg-2-2,libxml2-2}.dll ./ + # Collect DLLs for all included binaries + for f in *.exe; do ../contrib/mingw-bundledlls --copy $f; done #mkdir share #cp /mingw32/share/loader.cache share/ #glib-compile-schemas /mingw32/share/glib-2.0/schemas @@ -312,6 +308,10 @@ jobs: cp /mingw32/lib/gdk-pixbuf-2.0/2.10.0/loaders/{libpixbufloader-svg.dll,libpixbufloader-png.dll} \ lib/gdk-pixbuf-2.0/2.10.0/loaders/ cp ../win32/loaders.cache lib/gdk-pixbuf-2.0/2.10.0/ + # Collect DLLs for all pixbuf loaders + for f in lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll; do + ../contrib/mingw-bundledlls --copy $f + done zip -9 -r ../sciteco-gtk3_nightly_win32.zip . - name: Archive Windows Distribution (GTK+ 3) uses: pyTooling/Actions/releaser/composite@v0.4.5 |