Commit Graph
111291 Commits
Author SHA1 Message Date
aryanrawlani28 2c2f21b0cd NEVERHOOD: Fix compilation 2020-10-03 14:56:36 +02:00
aryanrawlani28 973526a4d3 BBVS: Fix compilation 2020-10-03 14:56:36 +02:00
aryanrawlani28 a56dc094b9 ENGINES: ALL: Move detection_enums -> detection.h
- Cleans up headers quite a bit.
2020-10-03 14:56:36 +02:00
aryanrawlani28 ba5368542f BASE: PLUGINS: Update header file & use DETECTION_STATIC def check to build static detection features. 2020-10-03 14:56:36 +02:00
aryanrawlani28 11615faca8 MAKEFILES: Include dynamic building detection module if requested 2020-10-03 14:56:36 +02:00
aryanrawlani28 81d2bb8f11 ENGINES: DETECTION: Shift detection files to live inside engines subdirectory 2020-10-03 14:56:36 +02:00
aryanrawlani28 867e6c4e21 CONFIGURE: Improve enabling of detection as static/dynamic
- Add config statements to help in makefiles & base/plugins.cpp
- Print to console if detection is building as static or not
2020-10-03 14:56:36 +02:00
aryanrawlani28 0cbff637d4 MAKEFILES: Include all detection objects while keeping the rest as-is.
- This enables detection objects to be always available and build into the executable.
2020-10-03 14:56:36 +02:00
aryanrawlani28 1d3e4d2800 MOHAWK: Do not create additional folders for riven & myst metaengines. 2020-10-03 14:56:36 +02:00
aryanrawlani28 4f55c1b689 DIRECTOR & KYRA: MODULES: Use workarounds to skip warnings.
- When these files are included for the second time, a warning is shown that the previous recipes will be overriden.
- Use_Rules helps with a workaround to disable these warnings.
2020-10-03 14:56:36 +02:00
aryanrawlani28 ac900a06b8 BASE: PLUGINS: Use engines/detection_table header for static plugins 2020-10-03 14:56:36 +02:00
aryanrawlani28 6735c46c41 MAKEFILES: Add a variable which helps in deciding if rules.mk should be used or not
- It is always enabled by default
- Only disabled when we would include all engine module files, so we don't include unnecessary stuff
2020-10-03 14:56:36 +02:00
aryanrawlani28 911e0e4f3c GIT: Rename detection_tables inside gitignore which is now present inside engines subdirectory 2020-10-03 14:56:36 +02:00
aryanrawlani28 e64446e4ce CONFIGURE: Remove detection submodules written to engines.mk
- Write detection_table inside engines subdirectory
2020-10-03 14:56:36 +02:00
aryanrawlani28 29ceb07959 ENGINES: ALL: Revert detection submodule to be directly present in the engine directory
- DETECT_OBJS are present and added inside an engine's modules.mk file.
2020-10-03 14:56:36 +02:00
aryanrawlani28 274b8a51a1 TONY: Match consistency with other engines & move enums to new header. 2020-10-03 14:56:36 +02:00
aryanrawlani28 f3b9477893 ENGINES: ALL: Add header guards for the new detection-header files. 2020-10-03 14:56:36 +02:00
aryanrawlani28 fea29b04ac BASE: PLUGINS: Add a plugin suffix only if it is available 2020-10-03 14:56:36 +02:00
aryanrawlani28 7615f37698 BASE: PLUGINS: Add detection tables header file when getting static plugins. 2020-10-03 14:56:36 +02:00
aryanrawlani28 11f46399b6 GIT: Add detection_tables header to .gitignore
- It is generated by configure and works similiarly to plugins_table.
2020-10-03 14:56:36 +02:00
aryanrawlani28 2ee4cd2878 CONFIGURE: Add functionality for detection modules for each engine
- In engines.mk, add another module "enginename/detection"
- This module is always added, regardless if the engine is enabled or not.
- Remove the array which helped out when each individual engine port was being added over.
2020-10-03 14:56:36 +02:00
aryanrawlani28 78dd712a1c PARALLACTION: Adapt to new detection modules and misc changes.
- Move common enums into detection_enums.h
- Make a new module for detection. See previous commit notes for more info.
2020-10-03 14:56:36 +02:00
aryanrawlani28 8189a05316 ENGINES: ALL: Adapt to changes for new plugins by defining a new detection module
For each engine:
- Make a new folder detection
- Move detection-related files inside the folder
- Add a new module "enginename/detection"
- Add DETECT_OBJS here
- Adjust the normal engine module to remove detect_objs
- Adjust every file for the new changes.
2020-10-03 14:56:36 +02:00
aryanrawlani28 e16ec08d8b BASE: DETECTION: Use correct header file 2020-10-03 14:56:36 +02:00
aryanrawlani28 5f5363f03b BASE: MAIN: Load/Unload detection plugin for UncachedPluginMan as/when needed.
- Used only in context of UncachedPluginMan
- Always load on startup
- When starting a game, unload all other MetaEngines except the one needed.
2020-10-03 14:56:36 +02:00
aryanrawlani28 8dfaf6cc0e BASE: PLUGINS: Add support for detection plugins to be loaded on demand.
- Mainly used for UncachedPluginManagers.
- CachedPluginManagers will not handle these, as metaengines will always be available in memory.
2020-10-03 14:56:36 +02:00
aryanrawlani28 b78534dcb0 BASE: PLUGINS: Seperate declaration/definition of StaticPlugins.
- Move declarations inside plugins.h to make it visible to detection/detection.cpp
2020-10-03 14:56:36 +02:00
aryanrawlani28 408158edc9 BASE: PLUGINS: Add a new type of plugin - DETECTION. 2020-10-03 14:56:36 +02:00
aryanrawlani28 74149fe7cd BASE: DETECTION: Add a new module detection.
- This is being done to enable support of building detection as dynamic libraries.
2020-10-03 14:56:36 +02:00
aryanrawlani28 05e170415c CONFIGURE: TEMP: Add support to build detection features as dynamic.
- A commit to show how the new makefiles structure and flow would look like. This is not final.
2020-10-03 14:56:36 +02:00
aryanrawlani28 ff74297940 PLUMBERS: Move detection related code to a new folder, add new Detection module. 2020-10-03 14:56:36 +02:00
aryanrawlani28 fa8aa6e9f4 AGI: Move detection related code to a new folder, add AGI-Detection module. 2020-10-03 14:56:36 +02:00
aryanrawlani28 7fe1eb330d DREAMWEB: Remove redundant and unreachable return statement 2020-10-03 14:56:36 +02:00
aryanrawlani28 53f08789eb BASE: PLUGINS: Restore functionalities of uncached plugin manager for the new changes. 2020-10-03 14:56:36 +02:00
aryanrawlani28 8b43e79695 GUI: Fix namespaces for saveload dialogs when cloud is enabled. 2020-10-03 14:56:36 +02:00
aryanrawlani28 84ddd3ac88 BASE: PLUGINS: Remove comments referring to old game detection 2020-10-03 14:56:36 +02:00
aryanrawlani28 92839dce1c GLK: Split detection features & adapt to new plugins.
- Additionally, adapt to renaming glulxe -> glulx
2020-10-03 14:56:36 +02:00
aryanrawlani28 27d16ba9c5 GLK: Move game-description struct into a header file from glk.h. 2020-10-03 14:56:36 +02:00
aryanrawlani28 53c772aebb ULTIMA: Split detection features & adapt to new plugins. 2020-10-03 14:56:36 +02:00
aryanrawlani28 52a420f4b1 MOHAWK: Split detection features & adapt to new plugins. 2020-10-03 14:56:36 +02:00
aryanrawlani28 45ad55df2d MOHAWK: Move shared engine/detection enums to new header file. 2020-10-03 14:56:36 +02:00
aryanrawlani28 b4a0fcca6c MOHAWK: Dialogs: Use the new classes to help in dialogs correctly. 2020-10-03 14:56:36 +02:00
aryanrawlani28 65320b26a6 MOHAWK: MYST: Move common myst engine/detection code to new class.
- This new class will help in detection.
2020-10-03 14:56:36 +02:00
aryanrawlani28 2113bbcd9c MOHAWK: RIVEN: Move shared detection/riven code from engine to a new MetaEngine class.
- This new class will help detection work properly.
2020-10-03 14:56:36 +02:00
aryanrawlani28 8c324fab42 MOHAWK: RIVEN: Move shared graphics/detection enum to new header. 2020-10-03 14:56:36 +02:00
aryanrawlani28 81ba5d5627 ENGINES: ME & MEC: Allow MEC to build engine options widget.
- Rename the one in ME to avoid ambiguity.
- ME is named *static & MEC is named *dynamic.
- This change means that engines  can build 2 types of option widgets.
- The "Engine" tab is created statically regardless if an engine plugin is present or not.
- The in-game options are built using the MEC.
- With this commit, engines/dialogs is no longer dependant on MetaEngine, and instead used MEC all over.
2020-10-03 14:56:36 +02:00
aryanrawlani28 255af8a0eb SCI: Split detection features & adapt to new plugins. 2020-10-03 14:56:36 +02:00
aryanrawlani28 aa353cc4fb SCI: Move engine/detection common enums to new header. 2020-10-03 14:56:36 +02:00
aryanrawlani28 e644782294 SCI: Move graphics helpers/detection related enums into a new header 2020-10-03 14:56:36 +02:00
aryanrawlani28 c9f2c50380 WINTERMUTE: Split detection features & adapt to new plugins.
- Update AMEC's getFileProps (changes related to MacResMan)
- This commit also includes a change from other engines.
- Fallback detection here depends upon many Engine resources.
- As such, it might not be suitable to add all of them to executable.
- Thus, shift fallback detection to the dynamic part.
- The static part gets the relevant Engine plugin & then tries to call it.
- This way, fallback detection for Wintermute will depend on the engine plugin.
- Normal detection will still work fine.
2020-10-03 14:56:36 +02:00