Commits

Sven Eckelmann  committed 44f300b

Export only functions which are part of the api

The g++ also exports symbols of implicit instantiations of templates. These
aren't part of the api and must not be accessed by any other part of
mupen64plus. We can use version-scripts to surpress these symbols without using
explicit instantiations of all templates we use.

  • Participants
  • Parent commits dc0eee3

Comments (0)

Files changed (2)

File projects/unix/Makefile

 	$(SRCDIR)/wrapper/main.cpp \
 	$(SRCDIR)/wrapper/textures.cpp 
 
+# only export api symbols
+LDFLAGS += -Wl,-version-script,$(SRCDIR)/video_api_export.ver
+
 
 
 # generate a list of object files build, make a temporary directory for them

File src/video_api_export.ver

+{ global:
+PluginStartup;
+PluginShutdown;
+PluginGetVersion;
+ChangeWindow;
+InitiateGFX;
+MoveScreen;
+ProcessDList;
+ProcessRDPList;
+RomClosed;
+RomOpen;
+ShowCFB;
+UpdateScreen;
+ViStatusChanged;
+ViWidthChanged;
+ReadScreen2;
+SetRenderingCallback;
+FBRead;
+FBWrite;
+FBGetFrameBufferInfo;
+local: *; };