gio: Add GMemoryMonitor to monitor for low-memory

Add a memory monitor object, with D-Bus and Portal based
implementations. The D-Bus implementation uses the Linux-only
low-memory-monitor Freedesktop project.

The API is simple, similarly to equivalent functionality on iOS and
Android platforms.

Prior art:
https://developer.android.com/reference/android/content/ComponentCallbacks2.html#onTrimMemory(int)
https://developer.apple.com/documentation/uikit/app_and_environment/managing_your_app_s_life_cycle/responding_to_memory_warnings

TODO:
- Implement portal functionality
- Verify and test non-sandboxed functionality
- Do we want to implement "oom killability" into the API, eg. returning
  something from the signal handler to say "yes, you can kill this
  process if needed". Or it could be a separate API:
  https://github.com/endlessm/chromium-browser/blob/45f610422da26b6bc60204b0eef2360ca52684cf/base/process/memory_linux.cc#L90
12 jobs for wip/hadess/add-memory-monitor in 10 minutes and 29 seconds (queued for 2 seconds)
Status Job ID Name Coverage
  Build
passed #371887
cross-android_api21_arm64

00:01:24

passed #371888
cross-android_api28_arm64

00:02:59

failed #371889
cross-mingw64

00:01:58

failed #371885
debian-stable-x86_64

00:01:59

failed #371884
fedora-x86_64

00:07:06

failed #371892
freebsd-11
freebsd-11-x86_64

00:05:55

failed #371893
freebsd-12
freebsd-12-x86_64

00:05:55

failed #371886
G_DISABLE_ASSERT

00:05:23

failed #371890
win32
msys2-mingw32

00:07:14

failed #371891
win32
vs2017-x64

00:03:15

 
  Coverage
skipped #371894
coverage
 
  Analysis
skipped #371895
scan-build
 
Name Stage Failure
failed
vs2017-x64 Build
_build/meson-logs: found 2 matching files          
WARNING: _build/vs2017-x64-report.xml: no matching files
WARNING: Failed to load system CertPool:crypto/x509: system root pool is not available on Windows
Uploading artifacts to coordinator... ok
id=371891 responseStatus=201 Created token=fzfx1M4E
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=2108 revision=de08a4bb version=11.9.1
WARNING: _build/vs2017-x64-report.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
msys2-mingw32 Build
WARNING: _build/msys2-mingw32-report.xml: no matching files 
_coverage/: found 1 matching files

WARNING: Failed to load system CertPool:crypto/x509: system root pool is not available on Windows
Uploading artifacts to coordinator... ok
id=371890 responseStatus=201 Created token=DUQ18eRT
Uploading artifacts...
Runtime platform
arch=amd64 os=windows pid=1612 revision=de08a4bb version=11.9.1
WARNING: _build/msys2-mingw32-report.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1
failed
fedora-x86_64 Build
_build/glib/glibconfig.h: found 1 matching files   
_build/meson-logs: found 4 matching files

_build/fedora-x86_64-report.xml: found 1 matching files

_coverage: found 2 matching files

Uploading artifacts to coordinator... ok
id=371884 responseStatus=201 Created token=1rA9Pke3
Uploading artifacts...
_build/fedora-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371884 responseStatus=201 Created token=1rA9Pke3
ERROR: Job failed: exit code 1
failed
freebsd-11-x86_64 Build
Uploading artifacts...
Runtime platform arch=amd64 os=freebsd pid=30461 revision=5a147c92 version=11.11.1
_build/config.h: found 1 matching files

_build/glib/glibconfig.h: found 1 matching files

_build/meson-logs: found 4 matching files

_build/freebsd-11-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371892 responseStatus=201 Created token=7nJJn9NK
Uploading artifacts...
Runtime platform
arch=amd64 os=freebsd pid=30463 revision=5a147c92 version=11.11.1
_build/freebsd-11-x86_64-report.xml: found 1 matching files

failed
freebsd-12-x86_64 Build
_build/glib/glibconfig.h: found 1 matching files   
_build/meson-logs: found 4 matching files

_build/freebsd-12-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371893 responseStatus=201 Created token=26x5scFx
Uploading artifacts...
Runtime platform
arch=amd64 os=freebsd pid=30451 revision=5a147c92 version=11.11.1
_build/freebsd-12-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371893 responseStatus=201 Created token=26x5scFx
ERROR: Job failed: exit status 1
failed
G_DISABLE_ASSERT Build
_build/config.h: found 1 matching files            
_build/glib/glibconfig.h: found 1 matching files

_build/meson-logs: found 4 matching files

_build/G_DISABLE_ASSERT-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371886 responseStatus=201 Created token=vBaZt2Yw
Uploading artifacts...
_build/G_DISABLE_ASSERT-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371886 responseStatus=201 Created token=vBaZt2Yw
ERROR: Job failed: exit code 1
failed
debian-stable-x86_64 Build
_build/config.h: found 1 matching files            
_build/glib/glibconfig.h: found 1 matching files

_build/meson-logs: found 4 matching files

_build/debian-stable-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371885 responseStatus=201 Created token=GPpzdqtG
Uploading artifacts...
_build/debian-stable-x86_64-report.xml: found 1 matching files

Uploading artifacts to coordinator... ok
id=371885 responseStatus=201 Created token=GPpzdqtG
ERROR: Job failed: exit code 1
failed
cross-mingw64 Build
x86_64-w64-mingw32-gcc  -o gio/libgio-2.0-0.dll gio/gio_gio.rc_gio.o 'gio/6ae6c9e@@gio-2.0@sha/meson-generated_.._gioenumtypes.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/meson-generated_.._gdbus-daemon-generated.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gappinfo.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gasynchelper.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gasyncinitable.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gasyncresult.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gbufferedinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gbufferedoutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gbytesicon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gcancellable.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gcharsetconverter.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gcontextspecificgroup.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gconverter.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gconverterinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gconverteroutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gcredentials.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdatagrambased.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdatainputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdataoutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdrive.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdummyfile.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdummyproxyresolver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdummytlsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gemblem.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gemblemedicon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfile.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfileattribute.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfileenumerator.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfileicon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfileinfo.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfileinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfilemonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfilenamecompleter.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfileoutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfileiostream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfilterinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gfilteroutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gicon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/ginetaddress.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/ginetaddressmask.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/ginetsocketaddress.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/ginitable.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/ginputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gioerror.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/giomodule.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/giomodule-priv.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gioscheduler.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/giostream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gloadableicon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmarshal-internal.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmount.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmemorymonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmemoryinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmemoryoutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmountoperation.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnativevolumemonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnativesocketaddress.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnetworkaddress.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnetworking.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnetworkmonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnetworkmonitorbase.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnetworkservice.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/goutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gpermission.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gpollableinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gpollableoutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gpollableutils.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gpollfilemonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gproxy.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gproxyaddress.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gproxyaddressenumerator.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gproxyresolver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gresolver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gresource.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gresourcefile.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gseekable.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsimpleasyncresult.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsimpleiostream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsimplepermission.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocket.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketaddress.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketaddressenumerator.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketclient.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketconnectable.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketcontrolmessage.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketlistener.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketoutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsubprocesslauncher.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsubprocess.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocketservice.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsrvtarget.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsimpleproxyresolver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtask.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtcpconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtcpwrapperconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gthreadedsocketservice.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gthemedicon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gthreadedresolver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlscertificate.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlsclientconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlsconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlsdatabase.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlsfiledatabase.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlsinteraction.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlspassword.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtlsserverconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdtlsconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdtlsclientconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdtlsserverconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gunionvolumemonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gvfs.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gvolume.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gvolumemonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gzlibcompressor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gzlibdecompressor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glistmodel.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gliststore.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32appinfo.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gcontenttype-win32.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusdaemon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32registrykey.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32mount.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32volumemonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32inputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32outputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32networkmonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gwin32notificationbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gapplication.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gapplicationcommandline.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gapplicationimpl-dbus.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gactiongroup.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gactionmap.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsimpleactiongroup.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gremoteactiongroup.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gactiongroupexporter.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusactiongroup.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gaction.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gpropertyaction.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsimpleaction.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmenumodel.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmenu.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmenuexporter.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusmenumodel.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnotification.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnotificationbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gvdb_gvdb-reader.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdelayedsettingsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gkeyfilesettingsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gmemorysettingsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gnullsettingsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsettingsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsettingsschema.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsettings-mapping.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsettings.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gregistrysettingsbackend.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusutils.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusaddress.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusauthobserver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusauth.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusauthmechanism.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusauthmechanismanon.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusauthmechanismexternal.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusauthmechanismsha1.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbuserror.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusconnection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusmessage.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusnameowning.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusnamewatching.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusproxy.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusprivate.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusintrospection.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusmethodinvocation.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusserver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusinterface.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusinterfaceskeleton.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusobject.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusobjectskeleton.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusobjectproxy.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusobjectmanager.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusobjectmanagerclient.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gdbusobjectmanagerserver.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gtestdbus.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/ghttpproxy.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalfile.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalfileenumerator.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalfileinfo.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalfileinputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalfilemonitor.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalfileoutputstream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalfileiostream.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/glocalvfs.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocks4proxy.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocks4aproxy.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/gsocks5proxy.c.obj' 'gio/6ae6c9e@@gio-2.0@sha/thumbnail-verify.c.obj' 'gio/win32/6ac3569@@giowin32@sta/gwin32fsmonitorutils.c.obj' 'gio/win32/6ac3569@@giowin32@sta/gwin32filemonitor.c.obj' 'gio/win32/6ac3569@@giowin32@sta/gwinhttpvfs.c.obj' 'gio/win32/6ac3569@@giowin32@sta/gwinhttpfile.c.obj' 'gio/win32/6ac3569@@giowin32@sta/gwinhttpfileinputstream.c.obj' 'gio/win32/6ac3569@@giowin32@sta/gwinhttpfileoutputstream.c.obj' -shared -Wl,--start-group -Wl,--out-implib=gio/libgio-2.0.dll.a glib/libglib-2.0.dll.a gobject/libgobject-2.0.dll.a gmodule/libgmodule-2.0.dll.a -Wl,-Bsymbolic-functions /usr/x86_64-w64-mingw32/sys-root/mingw/lib/libz.dll.a -lintl -lintl -lintl -lshlwapi -ldnsapi -liphlpapi -lws2_32 -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -Wl,--end-group  
gio/6ae6c9e@@gio-2.0@sha/giomodule.c.obj: In function `_g_io_modules_ensure_loaded':
/builds/GNOME/glib/_build/../gio/giomodule.c:1263: undefined reference to `g_memory_monitor_dbus_get_type'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Uploading artifacts...
_build/meson-logs: found 2 matching files
Uploading artifacts to coordinator... ok
id=371889 responseStatus=201 Created token=snw-23ZP
ERROR: Job failed: exit code 1