Rémi Bernon
e0e1d984c2
Vulkan-Loader: Add new submodule.
2022-01-19 11:26:04 +02:00
Rémi Bernon
cb94853f03
Vulkan-Headers: Update to v1.2.198.
2022-01-19 11:26:04 +02:00
Rémi Bernon
04bf8f150e
build: Build vkd3d-shader with cross-compilation rules.
2022-01-19 11:26:04 +02:00
Rémi Bernon
587f86fb9d
build: Better support meson cross compilation.
2022-01-19 11:26:04 +02:00
Rémi Bernon
5b8a6c72f9
build: Remove CCACHE_BIN variable, use wrappers in PATH instead.
...
Container have ccache wrappers in the PATH already, and the two
components CC / CXX just makes it harder to generate meson cross files.
2022-01-19 11:26:04 +02:00
Rémi Bernon
4ade59b2ca
build: Better support cross-compilation in common rules.
2022-01-19 11:26:04 +02:00
Rémi Bernon
09568c2159
build: Simplify cargo target replacement.
2022-01-19 11:26:04 +02:00
Rémi Bernon
808b99bd27
build: Use $$(OBJ) consistently in rules macros.
2022-01-19 11:26:04 +02:00
Rémi Bernon
6d682e4b17
build: Cleanup target directories before building.
...
And force copy artifacts after.
2022-01-19 11:26:04 +02:00
Rémi Bernon
2286a8e592
docker: Add python3-pefile package to SDK image.
2022-01-19 11:26:04 +02:00
Rémi Bernon
be485ab504
docker: Don't install tini, it's already there now.
2022-01-19 11:26:04 +02:00
Rémi Bernon
1c04188bc0
docker: Install libxpresent-dev packages.
2022-01-19 11:26:04 +02:00
Rémi Bernon
c9a428090f
docker: Bump steamrt version to 0.20210505.0.
2022-01-19 11:26:04 +02:00
Rémi Bernon
ccfad43c81
docs: Add some documentation for proper ICMP ECHO system config.
...
System ping utility cannot be used in SLR container so we need to use
ICMP sockets.
CW-Bug-Id: #19340
2021-11-11 18:36:07 +02:00
Rémi Bernon
cabe4dee6f
build: Make sure wineopenx64.json depends on prefix.
...
So that deleting the prefix to recreate it also forces the file to be
copied again.
2021-06-17 15:10:20 -05:00
Rémi Bernon
c1fc8283d1
build: Use jobs to control xargs parallelism.
2021-06-17 15:10:20 -05:00
Rémi Bernon
bdb6a31e8c
build: Make silent builds actually quiet.
2021-06-17 15:10:20 -05:00
Rémi Bernon
8448591ebd
build: Build with Proton SDK 0.20210505.0-2.
...
But disable XPresent extension for now.
2021-06-17 15:10:20 -05:00
Rémi Bernon
751535d863
build: Restore missing tabulation in Makefile.
2021-05-27 19:13:24 +02:00
Rémi Bernon
0e897ff8b7
build: Move protonsdk_version default value to configure.sh.
2021-05-27 16:59:02 +02:00
Rémi Bernon
a8b3580679
configure: Rename --no-steam-runtime to --no-proton-sdk.
2021-05-27 16:58:19 +02:00
Rémi Bernon
9d5b7eb0cc
configure: Rename --steam-runtime-image to --proton-sdk-image.
2021-05-27 16:58:19 +02:00
Rémi Bernon
ecca62efa8
build: Create CCACHE_DIR if it doesn't exist and mount it.
...
Instead of the HOME dir, and only when ENABLE_CCACHE is set.
2021-05-27 16:58:18 +02:00
Rémi Bernon
8dd5db85dd
build: Pass CCACHE environment variable to the container build.
2021-05-27 16:58:18 +02:00
Rémi Bernon
d3e4d8a811
build: Pass -j flags and overrides to sub-make inside Vagrant.
2021-05-27 16:58:16 +02:00
Rémi Bernon
b84a7593b7
build: Pass -j flags to ninja build steps too.
2021-05-27 16:57:45 +02:00
Rémi Bernon
bb4c28c6ac
build: Use a separate rule for downloads.
2021-05-27 16:57:41 +02:00
Rémi Bernon
9283c7b50d
build: Use SHELL variable to execute commands in Vagrant.
2021-05-27 16:57:22 +02:00
Rémi Bernon
1e561a8bc0
build: Split non-vagrant commands from install rule.
2021-05-27 16:52:27 +02:00
Rémi Bernon
2269616052
build: Use a rule to create the vagrant_share/* directories.
2021-05-27 16:52:23 +02:00
Rémi Bernon
b58a10a265
build: Simplify and cleanup TTF font creation rules.
2021-05-27 16:52:09 +02:00
Rémi Bernon
acded80882
build: Install wineopenxr64.json after the prefix is created.
2021-05-27 16:52:08 +02:00
Rémi Bernon
41d488deee
build: Pass make flags and parallel flags to module rule.
2021-05-27 16:52:08 +02:00
Rémi Bernon
08992c126e
build: Make sure that module target triggers wine-configure.
2021-05-27 16:52:08 +02:00
Rémi Bernon
8726ea849d
build: Add specified modules to the container build list.
...
And not only when ending with 32/64.
2021-05-27 16:52:08 +02:00
Rémi Bernon
5dd383efff
build: Remove duplicate BUILD_DIR variable.
2021-05-27 16:52:07 +02:00
Rémi Bernon
bbf41a6d75
build: Add -gdwarf-2 -gstrict-dwarf debug info compilation flags.
2021-03-31 14:08:11 -05:00
Rémi Bernon
d3890c110a
docs: Document thread priority configuration.
2021-03-31 14:08:10 -05:00
Rémi Bernon
99f40d87e9
build: Don't force the number of make jobs.
2021-03-31 14:08:10 -05:00
Rémi Bernon
ee04127950
build: Only mount what's required inside docker.
2021-03-31 14:08:10 -05:00
Rémi Bernon
4d63345180
build: Cleanup unused make variables.
2021-03-31 14:08:10 -05:00
Rémi Bernon
fef27d08d9
build: Install modules separately and factor debug extraction.
2021-03-31 14:08:10 -05:00
Rémi Bernon
f88ff58f53
build: Use build macros for mediaconv.
2021-03-31 14:08:10 -05:00
Rémi Bernon
cdd4f10b8b
build: Use build macros for vrclient.
2021-03-31 14:08:10 -05:00
Rémi Bernon
ee909c8c6b
build: Use build macros for steam.
2021-03-31 14:08:10 -05:00
Rémi Bernon
082b2628a7
build: Use build macros for lsteamclient.
2021-03-31 14:08:10 -05:00
Rémi Bernon
528ed849eb
build: Use build macros for dxvk.
2021-03-31 14:08:10 -05:00
Rémi Bernon
69241849ff
build: Use build macros for wineopenxr.
2021-03-31 14:08:10 -05:00
Rémi Bernon
fbc77f2eb1
build: Introduce rules-winemaker macro.
2021-03-31 14:08:10 -05:00
Rémi Bernon
2bf35d9f4f
build: Use build macros for wine.
2021-03-31 14:08:10 -05:00
Rémi Bernon
8c105d7aa1
build: Introduce rules-autoconf macro.
2021-03-31 14:08:10 -05:00
Rémi Bernon
8e2bce153c
build: Replace wine tools dependencies with wine.
...
It's heaviers but things will be fast enough later.
2021-03-31 14:08:10 -05:00
Rémi Bernon
e8455152a9
build: Use build macros for jxrlib.
2021-03-31 14:08:10 -05:00
Rémi Bernon
5aa5ff8cd9
build: Use build macros for faudio.
2021-03-31 14:08:10 -05:00
Rémi Bernon
5a161e318e
build: Use build macros for openxr.
2021-03-31 14:08:10 -05:00
Rémi Bernon
94fd711e2b
build: Introduce rules-cmake macro.
2021-03-31 14:08:10 -05:00
Rémi Bernon
05480be5b9
build: Use build macros for vkd3d-proton.
2021-03-31 14:08:10 -05:00
Rémi Bernon
d71bd981e4
build: Use build macros for gst_good.
2021-03-31 14:08:10 -05:00
Rémi Bernon
96756d8ea1
build: Use build macros for gst_base.
2021-03-31 14:08:10 -05:00
Rémi Bernon
78e2bea5e3
build: Use build macros for gstreamer.
2021-03-31 14:08:10 -05:00
Rémi Bernon
8e1c0d5b29
build: Use build macros for gst_orc.
2021-03-31 14:08:10 -05:00
Rémi Bernon
04631339f3
build: Introduce rules-meson macro.
2021-03-31 14:08:10 -05:00
Rémi Bernon
dcb0f60cb7
build: Introduce rules-common macro.
2021-03-31 14:08:10 -05:00
Rémi Bernon
49cfbe9870
build: Introduce rules-source macro.
2021-03-31 14:08:10 -05:00
Rémi Bernon
3273dc2de0
build: Introduce single container build target.
...
The intention is to batch all container invocations instead of
instanciating one for every rule that needs to run within a container.
This keeps track of build dependencies using a .any-build timestamp file
and define a CONTAINER=1 variable when make is running within the
container.
When running within the container, only "configure" and "build" targets
are active, all the other targets are no-op. When make is run outside
of the container, it's the opposite, except for the "build" targets
which all depend on this .any-build timestamp file to trigger the
container build execution.
The targets dependency graph is still complete, so "source" targets
will always all be executed before the container, and configure steps
will optionally run if the generated files are missing. When source
change is detected, only the build rules are executed again, trusting
each build system to decide if configure should be run again or not.
2021-03-31 14:08:10 -05:00
Rémi Bernon
3d2a7a09af
build: Move misc helpers to make/utility.mk.
2021-03-31 14:08:10 -05:00
Rémi Bernon
f0d1278458
build: Don't use priviledged / init docker.
...
Images already embed tini to pass kill signals.
2021-03-31 14:08:10 -05:00
Rémi Bernon
0197a981f4
build: Enable docker overlay2 driver by default.
2021-03-31 14:08:10 -05:00
Rémi Bernon
68bd1c20e8
build: Use proton sdk docker image for building.
2021-03-31 14:08:10 -05:00
Rémi Bernon
6eba98ad23
build: Bump GCC to 10.2.0, Binutils to 2.36.1 and Rust to 1.50.0.
2021-03-31 14:08:10 -05:00
Rémi Bernon
ae85b5d0df
build: Build docker images for proton sdk.
2021-02-05 08:28:09 -06:00
Rémi Bernon
de58187e6c
build: Also pass CXX override to wine configure.
...
So that it is correctly embedded into wineg++.
2021-02-05 08:28:09 -06:00
Rémi Bernon
433e98c22d
build: Use CC32 / CXX32 when building 32bit modules.
2021-02-05 08:28:09 -06:00
Rémi Bernon
ae1e942714
build: Build dxvk within the docker container.
2021-02-05 08:28:09 -06:00
Rémi Bernon
f417b5c3e3
configure: Use a single steam runtime image.
...
* Make it more flexible on the image name,
* Remove the image type support, only Docker is likely to be supported.
* Add target runtime name (scout / soldier), independent of the image.
2021-02-05 08:28:09 -06:00
Rémi Bernon
dcf5f0f53c
configure: Remove unused ffmpeg option.
2021-02-05 08:28:09 -06:00
Rémi Bernon
8e7a5fc21d
build: Remove unused NO_DXVK option.
2021-02-05 08:28:09 -06:00
Rémi Bernon
42e1584e71
steamclient: Fake Shift + Tab key release on overlay activation.
2021-01-14 10:11:07 -06:00
Rémi Bernon
186f81ec47
steamclient: Monitor GameOverlayActivated_t callbacks to track overlay presence.
2021-01-11 12:26:56 -06:00
Rémi Bernon
d126a401f6
proton: Add dotnetfx35.exe builtin override.
2020-11-10 07:31:32 -06:00
Rémi Bernon
87570998f1
build: Build and install jxrlib.
2020-09-29 14:29:06 -05:00
Rémi Bernon
d9d777072a
jxrlib: Add library sources
2020-09-29 14:29:06 -05:00
Rémi Bernon
265b103e72
proton: Add ntdll to the builtin dll symlink exceptions.
2020-09-29 14:29:06 -05:00
Rémi Bernon
1ae76adb07
proton: Copy Steam library files to C:/Program Files (x86)/Steam.
2020-09-29 14:29:06 -05:00
Rémi Bernon
6a9e719119
lsteamclient: Stub GameOverlayRenderer entry points.
2020-09-29 14:29:06 -05:00
Rémi Bernon
75ed8f6469
proton: Introduce seccomp runtime option.
...
This then sets the WINESECCOMP environment variable to enable seccomp
filter for DOOM Eternal DRM (and others) without impacting other games.
2020-04-15 11:57:44 -05:00
Rémi Bernon
1e4083027f
steam.exe: Create Steam for Windows named event.
...
This event is sometimes checked for existence by Denuvo DRM, to decide
whether the game is genuine. This the case in Just Cause 3, and not
having it makes the game delete all saved progress.
2020-02-24 09:33:55 -06:00
Rémi Bernon
c6cead45dc
lsteamclient: Reallocate new interface only when linux_side changes.
...
This fixes Batman: AK's Denuvo DRM incorrectly flagging the game as
pirated.
2020-02-24 09:33:55 -06:00
Rémi Bernon
a0b7e2daba
steam_helper: Do not let the default console ctrl handler kill us.
...
I'm not sure if we should intercept all ctrl types, but letting Ctrl-C
kill us is getting in the way when we run winedbg as a child.
2020-02-03 09:54:07 -06:00