[Scummvm-tracker] [ScummVM :: Bugs] #11960: BASE: Metaengine - Excluded engine's detection.cpp gets compiled/produce undefined references on linking

ScummVM :: Bugs trac at scummvm.org
Tue Nov 17 12:00:41 UTC 2020


#11960: BASE: Metaengine - Excluded engine's detection.cpp gets compiled/produce
undefined references on linking
--------------------+--------------------
Reporter:  raziel-  |      Owner:  (none)
    Type:  defect   |     Status:  new
Priority:  normal   |  Component:  Common
Keywords:           |       Game:
--------------------+--------------------
 Latest sources

 When trying to build a test version with every engine excluded except
 scumm, i get a long list of errors (undefined reference to the excluded
 engines metaengine) on linking.

 I suspect the detection.cpp that are compiled for *all* engines, even the
 excluded ones.
 You can see in the full list (attached) that the only engine that doesn't
 produce an error is scumm, which was included.
 Shouldn't the exluded engine's detection.cpp be marked as excluded from
 compilation during configuration?

 Like this:
 engines/access/detection.o: In function `g_ACCESS_DETECTION_getObject()':
 engines/access/detection.cpp:37: undefined reference to
 `AdvancedMetaEngineStatic::AdvancedMetaEngineStatic(void const*, unsigned
 int, PlainGameDescriptor const*,
 ADExtraGuiOptionsMap const*)'
 engines/access/detection.cpp:55: undefined reference to `vtable for
 AdvancedMetaEngineStatic'
 engines/access/detection.cpp:55: undefined reference to `vtable for
 AdvancedMetaEngineStatic'
 engines/access/detection.cpp:55: undefined reference to `vtable for
 AdvancedMetaEngineStatic'
 engines/access/detection.cpp:55: undefined reference to `vtable for
 AdvancedMetaEngineStatic'
 engines/access/detection.cpp:55: undefined reference to `typeinfo for
 AdvancedMetaEngineStatic'
 engines/access/detection.cpp:55: undefined reference to
 `AdvancedMetaEngineStatic::getSupportedGames() const'
 engines/access/detection.cpp:55: undefined reference to
 `AdvancedMetaEngineStatic::findGame(char const*) const'
 engines/access/detection.cpp:55: undefined reference to
 `AdvancedMetaEngineStatic::detectGames(Common::FSList const&) const'
 engines/access/detection.cpp:55: undefined reference to
 `AdvancedMetaEngineStatic::getExtraGuiOptions(Common::String const&)
 const'
 engines/access/detection.cpp:55: undefined reference to
 `AdvancedMetaEngineStatic::detectGame(Common::FSNode const&,
 Common::HashMap<Common::String, Common::FSNode,
 Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo> const&,
 Common::Language, Common::Platform, Common::String const&) const'
 engines/access/detection.cpp:55: undefined reference to
 `AdvancedMetaEngineStatic::toDetectedGame(ADDetectedGame const&) const'

 for the rest, see the attached file.

 gcc (adtools build 8.3.0) 8.3.0
 AmigaOS4 - PPC - SDL - BE
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/11960>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list