Add linker script to export only needed symbols.

This commit is contained in:
Themaister 2011-10-29 20:00:52 +02:00
parent 7d07cb1751
commit 5e45aa7d57
2 changed files with 6 additions and 2 deletions

4
link.T Normal file
View File

@ -0,0 +1,4 @@
{
global: snes_*;
local: *;
};

View File

@ -75,12 +75,12 @@ static-library: $(snes_objects) obj/libsnes.o
library: $(snes_objects) obj/libsnes.o
ifeq ($(platform),x)
ar rcs out/libsnes.a $(snes_objects) obj/libsnes.o
$(CXX) -o out/libsnes.so -fPIC -shared -Wl,-soname,libsnes.so.1 $(snes_objects) obj/libsnes.o $(link) -ldl
$(CXX) -o out/libsnes.so -fPIC -shared -Wl,-soname,libsnes.so.1 $(snes_objects) obj/libsnes.o $(link) -ldl -Wl,--version-script=link.T
else ifeq ($(platform),osx)
ar rcs out/libsnes.a $(snes_objects) obj/libsnes.o
$(CXX) -o out/libsnes.dylib -install_name $(prefix)/lib/libsnes.dylib -dynamiclib $(snes_objects) obj/libsnes.o $(link)
else ifeq ($(platform),win)
$(CXX) -o out/snes.dll -static-libgcc -static-libstdc++ -shared -Wl,--out-implib,libsnes.a $(snes_objects) obj/libsnes.o $(link)
$(CXX) -o out/snes.dll -static-libgcc -static-libstdc++ -shared -Wl,--out-implib,libsnes.a $(snes_objects) obj/libsnes.o $(link) -Wl,--version-script=link.T
endif
library-install: