Due to how we handle building and compilation flags we end up with a lot
of warnings that are normally hidden. Let's introudce an option to
suppress them for CI builds to generate smaller, more searchable logs.
The old 1-indexed format:
"1" "Z:\\home\\ivyl\\.local\\share\\Steam"
Changes to new 0-indexed one:
"0"
{
"path" "Z:\\home\\ivyl\\.local\\share\\Steam"
}
that is used by Steam on Windows.
There are valid cases, e.g. when debugging Wine Mono, to have WINEDEBUG
set to -all. Before this change this would disable the logging even if
PROTON_LOG=1.
When switching back to 8.0 from Experimental it will point to a .dll in
the Experimental install directory. It's incompatible with 8.0 due to
experimental-only winegstreamer changes and causes delayed symbol
imports to fail.
CW-Bug-Id: #22205
In anticipation of a pull-request being merged that moves things around
and introduces d3d12core.dll.
This should be made non-optional once the vkd3d-proton changes land.
Link: https://github.com/HansKristian-Work/vkd3d-proton/pull/1458
Parts of the rules, including the magical ones created via
make/rules-*.mk, are executed inside of the container via SHELL
override, and parts are executed on the host side.
This makes reasoning about and debugging the rules much harder than it
should be. It also requirs the users to have certain programs installed
on the host in addition to docker/podman.
With this change `make` will act as a simple pass through to inside of
the container for the most part.
One notable exception is installation which still happens the host side.
Up until now ./configure.sh was baking in the default value into the
generated Makefile. Because of it if there was a change that requires a
newer version of the SDK the compilation would fail until the next
./configure.sh invocation does the update.
This is proved to be confusing - mysterious build errors without clear
explanation.
With this change the default value is a part of Makefile.in and if user
doesn't specify --proton-sdk-image it will be always used and always up
to date.
--proton-sdk-image overrides the default and stores it in the Makefile
just like it used to.
The second grep in sequence can exit early (-q, as soon as we have one
match it exits with a success) which makes the first grep unhappy as its
write pipe is closed early, resulting in:
syncing vulkan-loader... grep: write error: Broken pipe
Let's silence those errors.
1. ElementImpl trait requires GstObjectImpl
2. gst logging macros are no longer globals prefixed with gst_, they
live inside gst:: instead
3. element is not longer passed around in many places, it can be
accessed as self.obj() or self.instance()
4. query_default is now a part of gst::Pad and takes the pad as an argument
5. some constructors were changed to use from_$type()
6. query.view_mut() returns QueryViewMut
7. ElementFactory::make now returns a builder that we have to .build()
There are some extra cleanups as well:
1. spurious 'mut' and '&' are removed, a lot of that can be infered or
were turned into a dereference by the compiler anyway
2. !bla.is_ok() are now bla.is_err()
3. some unneeded imports were removed
Those are the original repos that were later moved to freedesktop.org.
The author recently started updating them as mirrors.
Freedesktop.org goes down much more often than GitHub and we fetch
everything else from GitHub anyway.
It's better to depend on fewer hosting services to have fewer
interruptions.
Since the migration off Vagrant we no longer need to copy Proton
installation from the VM to the host. This was replaced with a `make
install` invoked using the new build system which already puts things in
the right place. This render install-internal an unnecessary no-op.
We can move everything but Liberation fonts build to the container.
Sadly those require newer version of fontforge than the one available in
the Steam RT.
There's some extra logic necessary to assure that font build triggers in
the container with the default/all targets.
This removes the requirement to have afdko and fonttools installed on
the host.