Commit Graph

25 Commits (master)

Author SHA1 Message Date
Alessandro Toia a7a73afdad mangohud bin: remove ld_preload workarounds 2 months ago
Alessandro Toia 5598fda8f4 mangohud bin: add Borderlands3.exe to disable ld_preload to prevent crashing 2 months ago
Alessandro Toia 54df529eba mangohud bin: add RoboCop.exe to disable ld_preload to prevent crashing 2 months ago
Alessandro Toia 1613276182 mangohud bin: make sure script is posix compliant 7 months ago
Alessandro Toia 672d6481cc mangohud bin: add an array of items to disable LD_PRELOAD, added cs2.sh to DISABLE_LD_PRELOAD 7 months ago
FlightlessMango 84daa06581 mangohud biun: dlsym: don't shift when env variable 7 months ago
FlightlessMango 1462716bf0 Re-introduce MANGOHUD_DLSYM
[skip ci]
7 months ago
FlightlessMango f38cc78996 add --version to mangohud script 10 months ago
FlightlessMango 30395ab947 mangohud script: use _opengl for LD_PRELOAD 10 months ago
FlightlessMango f1b5ba34be mangohud bin: Don't append library multiple times in LD_PRELOAD 12 months ago
jackun cac664bef1
Nuke MANGOHUD_DLSYM
[skip actions]
1 year ago
Emil Velikov 8c531b4833 mangohud: simplify variable handling
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
1 year ago
Emil Velikov f47f777e26 meson: unwrap ld_libdir_mangohud handling, remove ld_libdir_abs
Currently we have ld_libdir_abs which defaults to false. In that case,
both the mangohud shell wrapper, as well as the json files, reference
the DSOs directly without any path component.

This means that at run-time the dynamic linker, vulkan loader as well as
pressure-vessel will need to jump through hoops and figure out the
bitness of the DSO, whether one wants the 32 or 64bit one and even then
there will be confusing messages like:

fatal: /usr/lib/libMangoHud.so: wrong ELF class: ELFCLASS32

When set to true, as seen in the in-tree build.sh we'll append empty
path to LD_LIBRARY_PATH (bad), the full path with the $LIB token will be
used with LD_PRELOAD (good) and json files (bad).

Since we are generating separate json files, we can use the actual path
(while $LIB currently works, it's not really strict json nor documented
as supported). We can also drop the dubious LD_LIBRARY_PATH manipulation

This basically reinstates the prepend_libdir_vk=true option that was
dropped earlier.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
1 year ago
jackun 31d63255b0
Append colon only if LD_* env vars are set 2 years ago
FlightlessMango 370a2d5da6 Only use MANGOHUD=1 in script 3 years ago
jackun 53cca5e723
Merge remote-tracking branch 'origin/master' into develop 3 years ago
freddii 2bbb7174e3 fixed typos 3 years ago
flightlessmango 8aa299630c Disable by default some vulkan layers that cause issues 3 years ago
jackun 6a5cd38127
Meson option to have absolute paths in LD_PRELOAD 4 years ago
jackun a7db4276e3
Don't force bash usage in launcher script 4 years ago
jackun 24b731f78c
Add `--dlsym` option 4 years ago
Stephan Lachnit d712d35aaf
simplify cross arch preloading
This commit does a couple of things. In the mangohud launch script, the library will be found using $LIB with ld, so the correct path is selected depending on the cpu arch. The same is done for mangohud.json (vulkan layer). In addition some now unused files have been deleted.

Signed-off-by: Stephan Lachnit <stephanlachnit@protonmail.com>
4 years ago
FlightlessMango 4bdd252393 Load 32bit libs if they exist with 64bit bin 4 years ago
jackun 934dc31e44
Add utility lib with dlsym hooking 4 years ago
jackun f99129f9de
Libdirs: once more, with feeling 4 years ago