BUILD: Split engines/plugins_table header down to a file per engine.

This is the third and final commit enabling fully pluggable engines.

Now providing an engine folder contains a configure.engine, engine.mk
and engine-plugin.h file, it will be picked up automatically by the
configure script.
This commit is contained in:
D G Turner 2013-11-07 12:58:34 +01:00
parent d77cf95a18
commit 00c27a28f9
48 changed files with 144 additions and 132 deletions

2
.gitignore vendored
View File

@ -105,6 +105,8 @@ project.xcworkspace
/plugins
/engines/plugins_table.h
/test/runner
/test/runner.cpp
/test/*.dSYM

View File

@ -83,7 +83,7 @@ include $(srcdir)/Makefile.common
# check if configure has been run or has been changed since last run
ENGINE_SUBDIRS_CONFIGURE := $(wildcard $(srcdir)/engines/*/configure.engine)
config.h config.mk: $(srcdir)/configure $(ENGINE_SUBDIRS_CONFIGURE)
config.h config.mk engines/plugins_table.h: $(srcdir)/configure $(ENGINE_SUBDIRS_CONFIGURE)
ifeq "$(findstring config.mk,$(MAKEFILE_LIST))" "config.mk"
@echo "Running $(srcdir)/configure with the last specified parameters"
@sleep 2

View File

@ -81,7 +81,7 @@ $(EXECUTABLE): $(OBJS)
$(QUIET_LINK)$(LD) $(LDFLAGS) $(PRE_OBJS_FLAGS) $+ $(POST_OBJS_FLAGS) $(LIBS) -o $@
distclean: clean clean-devtools
$(RM) config.h config.mk config.log
$(RM) config.h config.mk config.log engines/plugins_table.h
clean:
$(RM_REC) $(DEPDIRS)

11
configure vendored
View File

@ -4382,3 +4382,14 @@ include \$(srcdir)/Makefile
EOF
fi
echo "Creating engines/plugins_table.h"
cat > engines/plugins_table.h << EOF
/* This file is automatically generated by configure */
/* DO NOT EDIT MANUALLY */
// This file is being included by "base/plugins.cpp"
EOF
for i in $_srcdir/engines/*/engine-plugin.h; do
cat $i >> engines/plugins_table.h
done

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(AGI)
LINK_PLUGIN(AGI)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(AGOS)
LINK_PLUGIN(AGOS)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(AVALANCHE)
LINK_PLUGIN(AVALANCHE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(CGE)
LINK_PLUGIN(CGE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(CINE)
LINK_PLUGIN(CINE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(COMPOSER)
LINK_PLUGIN(COMPOSER)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(CRUISE)
LINK_PLUGIN(CRUISE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(DRACI)
LINK_PLUGIN(DRACI)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(DRASCULA)
LINK_PLUGIN(DRASCULA)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(DREAMWEB)
LINK_PLUGIN(DREAMWEB)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(FULLPIPE)
LINK_PLUGIN(FULLPIPE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(GOB)
LINK_PLUGIN(GOB)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(GROOVIE)
LINK_PLUGIN(GROOVIE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(HOPKINS)
LINK_PLUGIN(HOPKINS)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(HUGO)
LINK_PLUGIN(HUGO)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(KYRA)
LINK_PLUGIN(KYRA)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(LASTEXPRESS)
LINK_PLUGIN(LASTEXPRESS)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(LURE)
LINK_PLUGIN(LURE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(MADE)
LINK_PLUGIN(MADE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(MOHAWK)
LINK_PLUGIN(MOHAWK)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(MORTEVIELLE)
LINK_PLUGIN(MORTEVIELLE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(NEVERHOOD)
LINK_PLUGIN(NEVERHOOD)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(PARALLACTION)
LINK_PLUGIN(PARALLACTION)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(PEGASUS)
LINK_PLUGIN(PEGASUS)
#endif

View File

@ -1,130 +0,0 @@
// This file is being included by "base/plugins.cpp"
#if PLUGIN_ENABLED_STATIC(SCUMM)
LINK_PLUGIN(SCUMM)
#endif
#if PLUGIN_ENABLED_STATIC(AGI)
LINK_PLUGIN(AGI)
#endif
#if PLUGIN_ENABLED_STATIC(AGOS)
LINK_PLUGIN(AGOS)
#endif
#if PLUGIN_ENABLED_STATIC(AVALANCHE)
LINK_PLUGIN(AVALANCHE)
#endif
#if PLUGIN_ENABLED_STATIC(CGE)
LINK_PLUGIN(CGE)
#endif
#if PLUGIN_ENABLED_STATIC(CINE)
LINK_PLUGIN(CINE)
#endif
#if PLUGIN_ENABLED_STATIC(COMPOSER)
LINK_PLUGIN(COMPOSER)
#endif
#if PLUGIN_ENABLED_STATIC(CRUISE)
LINK_PLUGIN(CRUISE)
#endif
#if PLUGIN_ENABLED_STATIC(DRACI)
LINK_PLUGIN(DRACI)
#endif
#if PLUGIN_ENABLED_STATIC(DRASCULA)
LINK_PLUGIN(DRASCULA)
#endif
#if PLUGIN_ENABLED_STATIC(DREAMWEB)
LINK_PLUGIN(DREAMWEB)
#endif
#if PLUGIN_ENABLED_STATIC(FULLPIPE)
LINK_PLUGIN(FULLPIPE)
#endif
#if PLUGIN_ENABLED_STATIC(GOB)
LINK_PLUGIN(GOB)
#endif
#if PLUGIN_ENABLED_STATIC(GROOVIE)
LINK_PLUGIN(GROOVIE)
#endif
#if PLUGIN_ENABLED_STATIC(HOPKINS)
LINK_PLUGIN(HOPKINS)
#endif
#if PLUGIN_ENABLED_STATIC(HUGO)
LINK_PLUGIN(HUGO)
#endif
#if PLUGIN_ENABLED_STATIC(KYRA)
LINK_PLUGIN(KYRA)
#endif
#if PLUGIN_ENABLED_STATIC(MORTEVIELLE)
LINK_PLUGIN(MORTEVIELLE)
#endif
#if PLUGIN_ENABLED_STATIC(LASTEXPRESS)
LINK_PLUGIN(LASTEXPRESS)
#endif
#if PLUGIN_ENABLED_STATIC(LURE)
LINK_PLUGIN(LURE)
#endif
#if PLUGIN_ENABLED_STATIC(MADE)
LINK_PLUGIN(MADE)
#endif
#if PLUGIN_ENABLED_STATIC(MOHAWK)
LINK_PLUGIN(MOHAWK)
#endif
#if PLUGIN_ENABLED_STATIC(NEVERHOOD)
LINK_PLUGIN(NEVERHOOD)
#endif
#if PLUGIN_ENABLED_STATIC(PARALLACTION)
LINK_PLUGIN(PARALLACTION)
#endif
#if PLUGIN_ENABLED_STATIC(PEGASUS)
LINK_PLUGIN(PEGASUS)
#endif
#if PLUGIN_ENABLED_STATIC(QUEEN)
LINK_PLUGIN(QUEEN)
#endif
#if PLUGIN_ENABLED_STATIC(SAGA)
LINK_PLUGIN(SAGA)
#endif
#if PLUGIN_ENABLED_STATIC(SCI)
LINK_PLUGIN(SCI)
#endif
#if PLUGIN_ENABLED_STATIC(SKY)
LINK_PLUGIN(SKY)
#endif
#if PLUGIN_ENABLED_STATIC(SWORD1)
LINK_PLUGIN(SWORD1)
#endif
#if PLUGIN_ENABLED_STATIC(SWORD2)
LINK_PLUGIN(SWORD2)
#endif
#if PLUGIN_ENABLED_STATIC(SWORD25)
LINK_PLUGIN(SWORD25)
#endif
#if PLUGIN_ENABLED_STATIC(TEENAGENT)
LINK_PLUGIN(TEENAGENT)
#endif
#if PLUGIN_ENABLED_STATIC(TESTBED)
LINK_PLUGIN(TESTBED)
#endif
#if PLUGIN_ENABLED_STATIC(TINSEL)
LINK_PLUGIN(TINSEL)
#endif
#if PLUGIN_ENABLED_STATIC(TOLTECS)
LINK_PLUGIN(TOLTECS)
#endif
#if PLUGIN_ENABLED_STATIC(TONY)
LINK_PLUGIN(TONY)
#endif
#if PLUGIN_ENABLED_STATIC(TOON)
LINK_PLUGIN(TOON)
#endif
#if PLUGIN_ENABLED_STATIC(TSAGE)
LINK_PLUGIN(TSAGE)
#endif
#if PLUGIN_ENABLED_STATIC(TOUCHE)
LINK_PLUGIN(TOUCHE)
#endif
#if PLUGIN_ENABLED_STATIC(TUCKER)
LINK_PLUGIN(TUCKER)
#endif
#if PLUGIN_ENABLED_STATIC(WINTERMUTE)
LINK_PLUGIN(WINTERMUTE)
#endif
#if PLUGIN_ENABLED_STATIC(ZVISION)
LINK_PLUGIN(ZVISION)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(QUEEN)
LINK_PLUGIN(QUEEN)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(SAGA)
LINK_PLUGIN(SAGA)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(SCI)
LINK_PLUGIN(SCI)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(SCUMM)
LINK_PLUGIN(SCUMM)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(SKY)
LINK_PLUGIN(SKY)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(SWORD1)
LINK_PLUGIN(SWORD1)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(SWORD2)
LINK_PLUGIN(SWORD2)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(SWORD25)
LINK_PLUGIN(SWORD25)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TEENAGENT)
LINK_PLUGIN(TEENAGENT)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TESTBED)
LINK_PLUGIN(TESTBED)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TINSEL)
LINK_PLUGIN(TINSEL)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TOLTECS)
LINK_PLUGIN(TOLTECS)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TONY)
LINK_PLUGIN(TONY)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TOON)
LINK_PLUGIN(TOON)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TOUCHE)
LINK_PLUGIN(TOUCHE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TSAGE)
LINK_PLUGIN(TSAGE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(TUCKER)
LINK_PLUGIN(TUCKER)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(WINTERMUTE)
LINK_PLUGIN(WINTERMUTE)
#endif

View File

@ -0,0 +1,3 @@
#if PLUGIN_ENABLED_STATIC(ZVISION)
LINK_PLUGIN(ZVISION)
#endif