Commit Graph

175 Commits

Author SHA1 Message Date
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
Cameron Cawley
f2b9f7bb76 BACKENDS: Remove the Windows CE port 2019-11-17 22:33:56 +01:00
Le Philousophe
be4dd18dbc PLUGINS: Implement NONE relocation for PPC
It's used by recent versions of GCC in .eh_frame sections
2019-10-09 13:33:11 +02:00
Cameron Cawley
bcef809e61 WINCE: Fix compilation 2019-04-15 08:06:39 +03:00
Cameron Cawley
174b0d1864 PS2: Fix compilation with latest PS2SDK 2018-09-14 02:33:16 +01:00
Adrian Frühwirth
9bee9e1ba6 JANITORIAL: Fix whitespace 2018-04-19 12:08:31 +02:00
Cameron Cawley
925025ec54 DS: Only disable forbidden symbols when necessary 2018-04-07 22:12:18 +00:00
Cameron Cawley
9111998c49 DS: Fix compilation with devkitARM r47 2018-04-07 09:30:07 +02:00
Eugene Sandulenko
940b2a20f1 Revert "COMMON: Change way the Singleton instances are instantiated"
This reverts commit eefa72afa1.

With this patch ConfigManager is broken.
2017-07-10 21:17:41 +02:00
Thierry Crozat
eefa72afa1 COMMON: Change way the Singleton instances are instantiated
This fixes tons of warnings with clang from a recent xcode version on
macOS (and possibly other systems) complaining that an instantiation
of _singleton is required but no definition is available.
2017-07-10 21:11:20 +02:00
Johannes Schickel
22a60e6c0b WIN32: Fix plugin provider build for 64bit target. 2016-02-23 22:31:30 +01:00
Eugene Sandulenko
c3ffbd884a Merge pull request #426 from sunmax/master
PS2: Pull request to master for latest PS2 code
2014-04-28 21:20:42 +03:00
Johannes Schickel
449ea100d9 WIN32: Make GPL headers consistent in themselves. 2014-02-18 02:39:40 +01:00
Johannes Schickel
3b73ceb17e WII: Make GPL headers consistent in themselves. 2014-02-18 02:39:40 +01:00
Johannes Schickel
63304ee9ec SDL: Make GPL headers consistent in themselves. 2014-02-18 02:39:38 +01:00
Johannes Schickel
2a7e57dd48 PSP: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Johannes Schickel
7aa3de5d37 PS2: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Johannes Schickel
d8202baadd POSIX: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Johannes Schickel
312442fcdd DS: Make GPL headers consistent in themselves. 2014-02-18 02:39:34 +01:00
Johannes Schickel
121687d2ed BACKENDS: Make GPL headers consistent in themselves. 2014-02-18 02:39:32 +01:00
Max Lingua
5ba5434688 PS2: removed plugins cksum deps on build time 2014-01-18 13:47:36 -05:00
Max Lingua
263a0972a3 PS2: removed plugins cksum deps on build time 2014-01-18 13:46:50 -05:00
Tarek Soliman
a4798602d7 JANITORIAL: Fix missing whitespace in pointer cast
find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g'

This seems to have caught some params as well which is not undesirable IMO.
It also caught some strings containing this which is undesirable so I
excluded them manually. (engines/sci/engine/kernel_tables.h)
2012-02-15 10:07:10 -06:00
Christoph Mallon
23a0f5318c JANITORIAL: Remove trailing empty lines. 2011-08-07 13:53:33 +02:00
Ori Avtalion
aa0f307e06 ALL: Require DECLARE_SINGLETON to be used in the Common namepsace
Silences the clang warning:

  static data member specialization of '_singleton' must
  originally be declared in namespace 'Common'; accepted as a C++0x
  extension [-Wc++0x-extensions]

Wrapping "namespace Common {}" around the macro assignment causes clang
to complain about a spurious semicolon, and removing the semicolon at
the end of the macro causes some editors to misbehave.

Changing the requirement of using the macro in one namespace (the
global) to another (Common) seems a small price to pay to
silence a warning.
2011-06-30 22:41:41 +03:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Max Horn
39076ef972 BUILD: Rename UNIX #define to POSIX 2011-05-25 13:23:03 +02:00
CeRiAl
e27dd8ac4e WINCE: Change plugin extensions from .dll to .plugin - fixes erroneous loading of runtime-dlls 2011-05-20 06:31:23 +08:00
CeRiAl
6db6d69eed WINCE: Enable building of plugins with normal configure/make
Enables building of plugin .dlls without a custom Makefile.
Also removes generation of scummvm.exe.map from configure script.
2011-05-18 06:04:23 +08:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Max Horn
28403e4543 BACKENDS: Fix copy & paste mistakes in some comments 2011-05-04 16:18:18 +02:00
Ori Avtalion
4d485fc741 BACKENDS: Fix compilation for various backends
Affects:
* PS2
* GPH
* ELF
* MOTO
* IPHONE
* N64
* DINGUX
* WINCE
* PSP
2011-04-28 23:24:06 +03:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Marcus Comstedt
21421d2e86 DC: Move dynamic plugin handling into the platform 2011-04-20 23:46:44 +02:00
Max Horn
42ab839dd6 AUDIO: Rename sound/ dir to audio/
svn-id: r55850
2011-02-09 01:09:01 +00:00
Yotam Barnoy
7558331550 PLUGINS: rename ONE_PLUGIN_AT_A_TIME define to UNCACHED_PLUGINS
ONE_PLUGIN_AT_A_TIME is too long.

svn-id: r55064
2010-12-30 08:01:58 +00:00
Yotam Barnoy
8f36a5f887 PLUGINS: single plugin model now saves plugin filename to config file
After searching for the right plugin once, the filename will be saved to the config file under the domain 'plugin_files'. The key is the gameid and the value is the plugin file. The backup mechanism is searching plugin by plugin.

svn-id: r55061
2010-12-29 15:25:21 +00:00
Yotam Barnoy
4f36239644 PLUGINS: fixed resource leak that caused PSP to crash
The leaky file handles didn't show up when debugging using the shell since that uses the Windows file handles, of which there are many more.

svn-id: r55048
2010-12-26 20:44:19 +00:00
Yotam Barnoy
a79ccfed55 PLUGINS: replace all size_t's with uint32's and add #include <malloc.h> to memory manager
uint32 is all we need since we only handle ELF32 anyway.

svn-id: r55012
2010-12-22 15:33:46 +00:00
Johannes Schickel
0134ffd86e PLUGINS: Only enable ELFMemoryManager when dynamic plugins and the ELF loader is enabled.
This should fix compilation on desktop systems, where for example memalign
is not present.

svn-id: r55011
2010-12-22 15:09:42 +00:00
Johannes Schickel
48ce90419f PLUGINS: Fix ELFMemoryManager::pluginAllocate signature.
svn-id: r55010
2010-12-22 15:07:14 +00:00
Yotam Barnoy
6817d4b300 PLUGINS: add ELF memory manager to solve fragmentation
Following lordhoto's suggestion, I implemented a simple allocator that grabs the size of the biggest available plugin in memory. This is an elegant solution to the fragmentation problem, with the caveat that memory is wasted. As such, it's not suited for the DS, so I added a #define to disable it there.

svn-id: r55009
2010-12-22 14:48:51 +00:00
Johannes Schickel
a1d99836cd BACKENDS: Fix SVN keyword usage.
svn-id: r54584
2010-11-29 18:48:43 +00:00
Max Horn
df05ed1a46 BACKENDS: Include scummsys.h at top of all .cpp files, *before* any #ifdefs
svn-id: r54573
2010-11-29 16:18:43 +00:00
Max Horn
4e0e406181 SDL: Move #include <SDL.h> into a special wrapper file
svn-id: r54572
2010-11-29 16:16:50 +00:00
Max Horn
7ace85e636 PLUGINS: Simplify ELF plugin providers & DLObject subclasses
* Remove DLObject virtual methods allocSegment and freeSegment.
  As long as all DLObject implementations use memalign + free to
  allocate/release segments, there is no point in wrapping those.
  This enables further simplifications.
* Add TemplatedELFPlugin template class. Use this instead of explicit
  ELFPlugin subclasses.
* Rename DLObject::discard_symtab to discardSymtab

svn-id: r54082
2010-11-05 01:20:34 +00:00
Max Horn
102e7ee88c PLUGINS: Add EM_SH to elf32.h (e_machine type used by DC backend)
svn-id: r54081
2010-11-05 01:19:45 +00:00
Yotam Barnoy
f5bfae598c PSP: cleaning up some stuff from plugin merge
svn-id: r54060
2010-11-04 06:28:34 +00:00