Le Philousophe
8ed733994f
VITA: Fix build
2024-09-17 08:29:05 +02:00
sluicebox
c4822373b6
WIN32: Fix Win32Plugin by updating for Common::Path
2024-08-19 12:04:26 -07:00
Donovan Watteau
42b2760f43
BACKENDS: Fix -Wformat warning
2024-08-11 16:33:53 +02:00
Le Philousophe
09729ac9de
PLUGINS: Use override keyword
...
This silences a clang warning
2024-06-30 18:39:06 +02:00
Le Philousophe
c9d701884b
PLUGINS: Reset pointer after deletion
...
This avoids error on double unload.
2024-06-30 18:39:06 +02:00
Donovan Watteau
81c0503008
MACOSX: Fix macOS builds with plugins (as used for OSX PPC releases)
2024-06-16 09:12:16 +02:00
Le Philousophe
2a7241a97c
PLUGINS: Implement NONE relocations
...
ARM emit them in some cases and add it to MIPS for completeness
Fixes : #14905
2024-02-24 20:48:21 +01:00
Vladimir Serbinenko
0b10743566
KOLIBRI: Replace kos32sys.h
...
kos32sys.h is no longer available. Just declare DLL-related functions ourselves
like other programs do.
2024-01-20 23:52:50 +01:00
Cameron Cawley
288e1aaa3f
COMMON: Remove use of fmin/fmax/fminf/fmaxf
2024-01-08 13:07:05 +01:00
Le Philousophe
f156e3a0c2
VITA: Hopefully really fix the build
2023-12-29 08:35:08 +01:00
Le Philousophe
2fdd7ce9d0
VITA: Add missing function for plugins
2023-12-28 18:18:31 +01:00
Le Philousophe
b3fbce7782
BACKENDS: Migrate plugins to Path API
2023-12-24 13:19:25 +01:00
Cameron Cawley
3a6566c1f0
DS: Hack to work around ARM/Thumb relocation issues in the SCUMM engine
2023-11-05 22:01:40 +01:00
Le Philousophe
fa450e060e
PSP2: Add missing function for plugins
2023-08-29 12:45:30 +02:00
Kaloyan Chehlarski
3a31521b27
RISCOS: Add log2f to function to link
2023-08-22 13:30:34 +03:00
sluicebox
dc0ba4e14a
WIN32: Re-enable Win32PluginProvider
...
In 2006, Win32PluginProvider was removed from Windows builds:
df5be19409
Instead, SdlPluginProvider became the provider used in Window builds.
Currently, no code uses Win32PluginProvider.
The two classes are small and effectively do the same thing, but
Win32PluginProvider has the advantage of using our Windows string
conversion functions for paths, just like the rest of backend code.
We've seen problems before where SDL handles encoding differently:
0ab9653556
2023-08-06 14:16:16 +02:00
Cameron Cawley
a12c007e92
RISCOS: Don't force the use of dynamic areas on RISC OS 5
2023-02-28 22:46:03 +00:00
Le Philousophe
57e759e05d
RISCOS: Use dynamic areas for data and application space for plugins
...
We only use application space in 26-bits (legacy) mode.
2023-02-07 22:13:32 +00:00
Vladimir Serbinenko
4bcd4671ab
KOLIBRI: Add kolibrios backend
2023-02-05 22:55:40 +01:00
Vladimir Serbinenko
bfd7f91d5c
COMMON: Fix 3DS compilation with newer toolchain that emits PREL31 relocs
2022-12-13 13:41:18 +01:00
Le Philousophe
2a84d3e988
VITA: Add plugins support
2022-08-07 18:15:09 +02:00
Cameron Cawley
05a5e44729
RISCOS: Add log10f and strcoll to functions to link
2022-06-19 00:34:58 +01:00
Le Philousophe
a591c8b6bf
RISCOS: Add expf to functions to link
2022-06-18 16:10:22 +02:00
Le Philousophe
b065158898
RISCOS: Don't build SDLPluginProvider: it doesn't work for us
...
And it fails to build with VFP because libdl is not compiled with VFP
2022-06-18 16:10:22 +02:00
Cameron Cawley
038579d0d9
PLUGINS: Improve warnings when allocation fails
2022-06-17 20:38:37 +01:00
Cameron Cawley
b862b55822
RISCOS: Ensure that functions used by plugins can be found in the main executable
2022-06-17 21:31:04 +02:00
Cameron Cawley
f9e64f2293
RISCOS: Use OS_SynchroniseCodeAreas to flush the cache
2022-06-17 21:31:04 +02:00
Le Philousophe
02808a019a
RISCOS: Add an ELF plugin provider
...
This will allow do dynamically load plugins and not be limited by
24-bits relocations
2022-06-17 21:31:04 +02:00
Le Philousophe
87f515a6e0
PLUGINS: Force export of __dso_handle
...
Some toolchains (RiscOS) may not export it in certain conditions.
This list does not enforce the symbol to be here so it shouldn't fail
build on platforms without this symbol.
2022-06-17 21:31:04 +02:00
Le Philousophe
f60d229c78
PLUGINS: Implement R_ARM_PC24 relocations
...
These relocations are used in RiscOS even when using long calls.
As it's a relative relocation, nothing is to be done.
2022-06-17 21:31:04 +02:00
Donovan Watteau
4672ba71dd
PLUGINS: Let macOS use its resource bundle as a valid plugin directory
2022-05-22 23:42:45 +01:00
Francisco Javier Trujillo Mata
9aa4485137
PSP: Update executable start position
2022-05-02 17:11:10 -05:00
Cameron Cawley
57abc6b86f
PSP: Remove .MIPS.abiflags* sections from plugins
2022-04-29 13:29:25 -05:00
Le Philousophe
675695c708
PSP: Fix build failures with latest PSP toolchain
...
The new PSP toolchain automatically links system libraries which wasn't
the case before. The ordering of libraries builtin in GCC and our spec
file collided. This fixes the order.
PSP SDK includes time.h so it needs an exemption.
A warning was emitted about a if without curly braces which are needed.
2021-12-31 09:50:53 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+
2021-12-26 18:48:43 +01:00
Orgad Shaneh
b11c5ace90
BACKENDS: JANITORIAL: Remove 'virtual' when override is specified
2021-11-14 14:31:41 +02:00
Cameron Cawley
d540054c0a
DS: Remove .ARM.exidx* and .ARM.extab* sections from plugins
...
Thanks to @lephilousophe for helping out with this.
2021-08-27 17:45:37 +01:00
sluicebox
006b91f45b
WIN32: Fix #includes in plugin provider
2021-07-07 01:20:25 -05:00
sluicebox
7deb79efab
WIN32: Make Win32Plugin UNICODE compatible
2021-06-29 12:38:01 -05:00
Orgad Shaneh
a05e54f00c
JANITORIAL: Remove trailing whitespaces
2021-05-04 11:46:30 +03:00
Cameron Cawley
a900337952
DS: Fix default search paths
2021-02-04 01:59:14 +01:00
Alexander Reim
901032db9f
WII: Update linkscript and fix for linker false error message
2020-10-19 11:21:22 +02:00
Cameron Cawley
5c255b3aa9
WIN32: Add override and final keywords
2020-10-16 18:32:08 +01:00
Cameron Cawley
70aebaca5b
WII: Add override and final keywords
2020-10-16 17:46:43 +01:00
Bastien Bouclet
55db1210eb
3DS: Set a Virtual Memory Address when linking the plugins
...
Setting the base address for the plugin elf files high in memory forces
the linker to generate veneers to turn relative jumps to the main binary
into absolute jumps. This removes the need to allocate the plugins near
the the main binary in the program address space. This also removes the
need to handle the R_ARM_CALL and R_ARM_JUMP24 relocation types.
Fixes #11555 .
2020-08-27 21:14:07 +02:00
Eugene Sandulenko
aa563f0c81
ALL: Remove PS2 port
2020-08-01 15:15:49 +02:00
Bastien Bouclet
4825e9f967
3DS: Upgrade to libctru v2.0.0
2020-07-19 17:41:05 +02:00
Bastien Bouclet
f17a7a96da
BASE: Fix being unable to run games when using dynamic plugins
...
When the plugin-engine mapping is not cached in the configuration file,
we were not scanning all the plugins to establish the mapping.
This is a regression from commit: e2d91258b7
This commit reverts the offending commit and implements a proper fix for
the case where there are no dynamic plugins.
Fixes #11300 .
2020-01-04 17:49:32 +01:00
Cameron Cawley
e2d91258b7
PLUGINS: Fix crash when no plugins are available
2019-12-02 11:04:57 +02:00
Bastien Bouclet
34e835a20c
3DS: Implement dynamic plugins
...
Allows a full build to run on old generation devices
2019-12-01 17:19:50 +01:00