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
68bd1c20e8
build: Use proton sdk docker image for building.
2021-03-31 14:08:10 -05:00
Andrew Eikum
8398ebded4
update wine to 6.3
2021-03-31 14:08:09 -05: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
8e7a5fc21d
build: Remove unused NO_DXVK option.
2021-02-05 08:28:09 -06:00
Andrew Eikum
38f603d7bf
wineopenxr: Add openxr support
2021-01-11 12:26:56 -06:00
Andrew Eikum
0cf7f02112
update wine
2020-10-13 13:22:16 -05:00
Andrew Eikum
347c53bb42
Fix toolmanifest for no-steam-runtime builds
2020-09-29 14:29:06 -05:00
Andrew Eikum
26e8db3d6f
configure: Remove no longer needed steam-runtime argument
2020-09-29 14:29:06 -05:00
Rémi Bernon
87570998f1
build: Build and install jxrlib.
2020-09-29 14:29:06 -05:00
Andrew Eikum
8864bbfba3
Vagrantfile: Use public soldier SDK
2020-09-29 14:29:06 -05:00
Jens Peters
deabf97f1c
Use widl from mingw-tools
...
vkd3d-proton uses now widl from mingw for cross-builds.
2020-09-29 14:29:06 -05:00
Andrew Eikum
7e495564df
pass optimize flags to faudio
2020-09-29 14:29:06 -05:00
Andrew Eikum
9d7713235c
build: Use ccache binary instead of PATH
...
The ccache symlinks dir may differ (Arch and Debian disagree, for
example), and this allows us to use ccache for mingw-w64 within the
runtime container.
2020-09-29 14:29:06 -05:00
Zhiyi Zhang
24b944292e
build: Support ccache.
2020-09-29 14:29:06 -05:00
Andrew Eikum
414e439070
build: Disable bash-completion for gstreamer build
2020-09-29 14:29:06 -05:00
Andrew Eikum
ccb17c00cc
build: Build wine PE files with optimizations
2020-09-29 14:29:05 -05:00
Esme Povirk
0e34540c66
Make files in lib/wine read-only.
2020-09-29 14:29:05 -05:00
Esme Povirk
87ffa3c205
Put symlinks in the default prefix for builtin dlls.
2020-09-29 14:29:05 -05:00
Andrew Eikum
f21922d970
media-converter: Add media-converter gstreamer plugin
2020-09-29 14:29:05 -05:00
Andrew Eikum
2605bdf477
remove ffmpeg
2020-09-29 14:29:05 -05:00
Andrew Eikum
aa48d40386
FAudio: Support gstreamer
2020-09-29 14:29:05 -05:00
Andrew Eikum
7d444028c3
update wine to 5.13
2020-09-29 14:29:05 -05:00
Andrew Eikum
c1d65705bb
only build widl once
2020-09-17 10:41:18 -05:00
Andrew Eikum
fbd6881619
remove glib from build
2020-09-17 10:41:18 -05:00
Andrew Eikum
e9a48c2844
build against the Soldier SDK
2020-09-17 10:41:16 -05:00
Andrew Eikum
1c26086688
Fix up vkd3d-proton build
2020-07-15 10:31:53 -05:00
Hans-Kristian Arntzen
dd7130d113
Build standalone vkd3d d3d12.dll.
2020-07-15 10:31:53 -05:00
GloriousEggroll
b6b52d19f1
build: Build gstreamer with orc.
2020-06-02 08:46:19 -05:00
Zhiyi Zhang
60b53f915d
build: Use MAKE variable for building modules.
...
So that options like -j can be passed through.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2020-03-23 08:19:09 -05:00
Andrew Eikum
0a77ffde26
vrclient: import jsoncpp
2020-03-19 14:48:52 -05:00
Andrew Eikum
5f22772332
build: Build deinterlace gstreamer filter
2020-03-09 10:03:54 -05:00
Andrew Eikum
349df9c436
steam_helper: Set up VR paths in steam.exe, not proton
...
This speeds up game launch times.
2020-03-09 10:03:54 -05:00
Andrew Eikum
a4b8a51d4a
steam_helper: Don't use msvcrt
...
We need access to linux crt functions (like getenv()), so disallow use
of msvcrt. Notably, linux crt wchar functions are _not_ compatible with
Windows WCHAR strings.
2020-03-05 10:03:11 -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
Andrew Eikum
bca0a720cd
build: Build and ship glib, gstreamer, gst-plugins-base, and gst-plugins-good
2020-02-07 06:45:08 -06:00
Andrew Eikum
d439e35f62
build: Use a shared wine-gecko installation
2020-02-03 09:54:07 -06:00
Andrew Eikum
45e3edf3ef
update wine to 5.0
2020-02-03 09:54:07 -06:00
Andrew Eikum
113770b5f4
update licenses
2020-01-10 08:35:33 -06:00
Andrew Eikum
1bfc03a2c5
steamclient: generate 1.47 support
2020-01-10 07:49:46 -06:00
Andrew Eikum
f7f6f6b4db
build: Use new dxvk_config library instead of importing into wined3d
2020-01-10 07:49:13 -06:00
Andrew Eikum
17ae1c4447
Revert "build: Build c++ files with -fno-gnu-unique"
...
This reverts commit bd8efaa9a6
.
2019-12-18 09:39:02 -06:00
Andrew Eikum
9e542fada6
build: Ship d9vk from dxvk
2019-12-18 08:40:45 -06:00
Andrew Eikum
b6462471bf
Revert "build: Pass bison in PATH"
2019-11-26 14:12:28 -06:00
Zhiyi Zhang
aee1b47925
build: Move environment variables to the end of configure script.
...
"ENV=VAR ./configure" is different from "./configure ENV=VAR".
The latter caches command line variables in config.status.
So "config.status --recheck" succeeds executing configure script
Otherwise, "config.status --recheck" often fails when only source
is updated because some variables are not cached. Examples include
being not able to find bison or vkd3d.h when they are obviously present,
which are because of missing BISON and VKD3D_CFLAGS variables.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2019-11-26 14:07:01 -06:00
Zhiyi Zhang
c448cd61ce
build: Remove unused variables.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2019-11-26 14:07:01 -06:00
Andrew Eikum
bd8efaa9a6
build: Build c++ files with -fno-gnu-unique
...
Wine requires dlclose() to be functional, and g++ breaks it by default.
This manifested as wined3d failing to load a 2nd time after being
unloaded.
2019-11-07 13:36:27 -06:00
Andrew Eikum
faf2b8271a
build: Pass bison in PATH
...
When Wine re-runs configure (e.g. during bisect with an existing build
tree), it won't remember the previous BISON variable.
2019-11-07 13:36:27 -06:00
Andrew Eikum
2c896e5f4f
build: Build vkd3d with NDEBUG and strip it
2019-11-07 13:36:27 -06:00
Andrew Eikum
c87e94540c
update wine-mono to 4.9.4
2019-11-07 13:36:27 -06:00
Andrew Eikum
5dca355718
build and ship vkd3d for d3d12 support
...
SPIRV-Headers at 1.5.1
Vulkan-Headers at v1.1.126
2019-11-07 13:36:27 -06:00
Andrew Eikum
05173d8a2d
build: Pass in CXXFLAGS for building DXVK code in Wine
2019-10-22 09:13:21 -05:00
Andrew Eikum
e30bd8ea88
build: Add a new "redist" target for distribution outside of Steam
2019-10-18 11:20:47 -05:00
Andrew Eikum
24300e3f27
Don't compress dist tarball
...
This lets us take advantage of Steam delta updates.
2019-10-18 09:56:47 -05:00
Andrew Eikum
31fe51430a
build: Add UNSTRIPPED_BUILD option to avoid stripping binaries
2019-10-18 09:52:24 -05:00
Andrew Eikum
90563ed984
update wine-mono to 4.9.3
2019-10-08 15:21:18 -05:00
Andrew Eikum
da43c48f3d
Build Source Han Sans SC Regular as if it were YaHei
2019-08-23 09:57:46 -05:00
Andrew Eikum
d73b927e2d
steam_helper: Run console apps with a new console
...
This should allow Wine to show a wineconsole dialog for games which make
use of it. Suggested by Vincent.
2019-08-12 13:19:52 -05:00
Andrew Eikum
cfb2d906c8
update wine
2019-08-06 14:40:24 -05:00
Andrew Eikum
02ce41610d
makefile: Update steam runtime docker init path
...
The Steam runtime image was updated, and /dev/init no longer exists. It
is now at /sbin/docker-init. Unfortunately this change will break
existing runtime installations. You'll need to update your runtime.
Easiest way is to just recreate the Vagrant VM.
2019-07-23 08:08:02 -05:00
Andrew Eikum
030bdcd224
Simplify DXVK build
2019-07-03 08:11:05 -05:00
Andrew Eikum
d68e71bed6
Build wine with dxvk cross-compiler
...
WARNING: Do not look directly into the build system without eye
protection.
2019-07-03 08:11:05 -05:00
Andrew Eikum
ab453aaf11
steam_helper: Fix building against Wine 4.11
2019-07-03 08:11:05 -05:00
Andrew Eikum
bf237229b6
makefile: Add downloads target to download packages only once
2019-07-03 08:11:05 -05:00
GloriousEggroll
d7819c7bc5
add bison to proton build
2019-07-03 08:11:05 -05:00
Andrew Eikum
f52ecfc6a7
build and ship d9vk
2019-07-01 13:14:04 -05:00
Andrew Eikum
ca60bf429d
update to wine-mono 4.9.0
2019-06-18 13:00:19 -05:00
Andrew Eikum
5c5bfcc81e
Build dxvk with a special cross-compiler
...
This mingw-w64 build is a more recent compiler and has dwarf2 exceptions
enabled.
2019-06-06 11:41:28 -05:00
Andrew Eikum
e2c0c75b1b
makefile: Fix local install on sshfs
2019-05-14 13:19:38 -05:00
Andrew Eikum
c5e49b5330
makefile: Bump submake jobs
2019-05-07 14:32:02 -05:00
Zhiyi Zhang
5cfc6ea994
makefile: Move generated files into build directory.
...
This way, we can run make again without rerunning configure.sh
after a clean rsync, which should save several minutes for every build.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2019-04-23 23:17:09 +08:00