include ../settings.mk NATIVE_SDL_LIB = $(shell ../findLib "libSDL-1.2.so.0") NATIVE_SDL_NET_LIB = $(shell ../findLib "libSDL_net-1.2.so.0") NATIVE_SDL_PANGO_LIB = $(shell ../findLib "libSDL_Pango.so.1") NATIVE_SDL_MIXER_LIB = $(shell ../findLib "libSDL_mixer-1.2.so.0") NATIVE_SDL_SOUND_LIB = $(shell ../findLib "libSDL_sound-1.0.so.1") NATIVE_SDL_GFX_LIB = $(shell ../findLib "libSDL_gfx.so.13") NATIVE_SGE_LIB = $(shell ../findLib "libSGE.so.0") all: SDL.5D SDLNet.5D SDLPango.5D SDLMixer.5D SDLSound.5D SDLGfx.5D # this uses a strange SDL_Rect return type, so it cannot be wrapped. SGE.5D prototypes a.out: a.c Makefile $(CC) -aux-info prototypes.new -o a.out a.c `sdl-config --cflags --libs` && sed -e 's;SDLPango_Init (/[^)]*);SDLPango_Init (void);' -e 's;SDLPango_WasInit (/[^)]*);SDLPango_WasInit (void);' -e 's;SDLPango_CreateContext (/[^)]*);SDLPango_CreateContext (void);' prototypes.new >prototypes.new2 && mv prototypes.new2 prototypes SDL.5D: SDL.sign $(FIND_5D_EXPORTS) SDL.sign >SDL.5D.new && mv SDL.5D.new SDL.5D SDL.sign: SDL.symbols prototypes ../generateSignatures $< $(NATIVE_SDL_LIB) SDL_ >SDL.sign.new && mv SDL.sign.new SDL.sign SDL.symbols: $(NATIVE_SDL_LIB) $(EXTRACT_GNU_SYMBOLS) $< > SDL.symbols.new && mv SDL.symbols.new SDL.symbols ifneq (,$(NATIVE_SGE_LIB)) SGE.5D: SGE.sign $(FIND_5D_EXPORTS) SGE.sign >SGE.5D.new && mv SGE.5D.new SGE.5D SGE.sign: SGE.symbols prototypes ../generateSignatures $< $(NATIVE_SGE_LIB) sge_ >SGE.sign.new && mv SGE.sign.new SGE.sign SGE.symbols: /usr/lib/libSGE.so.0 $(EXTRACT_GNU_SYMBOLS) $< > SGE.symbols.new && mv SGE.symbols.new SGE.symbols else SGE.5D: ../dummy.5D cp ../dummy.5D SGE.5D endif ifneq (,$(NATIVE_SDL_NET_LIB)) SDLNet.5D: SDLNet.sign $(FIND_5D_EXPORTS) SDLNet.sign >SDLNet.5D.new && mv SDLNet.5D.new SDLNet.5D SDLNet.sign: SDLNet.symbols prototypes ../generateSignatures $< $(NATIVE_SDL_NET_LIB) SDLNet_ >SDLNet.sign.new && mv SDLNet.sign.new SDLNet.sign SDLNet.symbols: $(NATIVE_SDL_NET_LIB) $(EXTRACT_GNU_SYMBOLS) $< > SDLNet.symbols.new && mv SDLNet.symbols.new SDLNet.symbols else SDLNet.5D: ../dummy.5D cp ../dummy.5D SDLNet.5D endif ifneq (,$(NATIVE_SDL_PANGO_LIB)) SDLPango.5D: SDLPango.sign $(FIND_5D_EXPORTS) SDLPango.sign >SDLPango.5D.new && mv SDLPango.5D.new SDLPango.5D SDLPango.sign: SDLPango.symbols prototypes ../generateSignatures $< $(NATIVE_SDL_PANGO_LIB) SDLPango_ >SDLPango.sign.new && mv SDLPango.sign.new SDLPango.sign SDLPango.symbols: $(NATIVE_SDL_PANGO_LIB) $(EXTRACT_GNU_SYMBOLS) $< > SDLPango.symbols.new && mv SDLPango.symbols.new SDLPango.symbols else SDLPango.5D: ../dummy.5D cp ../dummy.5D SDLPango.5D endif SDLMixer.5D: SDLMixer.sign $(FIND_5D_EXPORTS) SDLMixer.sign >SDLMixer.5D.new && mv SDLMixer.5D.new SDLMixer.5D SDLMixer.sign: SDLMixer.symbols prototypes ../generateSignatures $< $(NATIVE_SDL_MIXER_LIB) Mix_ >SDLMixer.sign.new && mv SDLMixer.sign.new SDLMixer.sign SDLMixer.symbols: $(NATIVE_SDL_MIXER_LIB) $(EXTRACT_GNU_SYMBOLS) $< > SDLMixer.symbols.new && mv SDLMixer.symbols.new SDLMixer.symbols ifneq (,$(NATIVE_SDL_SOUND_LIB)) SDLSound.5D: SDLSound.sign $(FIND_5D_EXPORTS) SDLSound.sign >SDLSound.5D.new && mv SDLSound.5D.new SDLSound.5D SDLSound.sign: SDLSound.symbols prototypes ../generateSignatures $< $(NATIVE_SDL_SOUND_LIB) Sound_ >SDLSound.sign.new && mv SDLSound.sign.new SDLSound.sign SDLSound.symbols: $(NATIVE_SDL_SOUND_LIB) $(EXTRACT_GNU_SYMBOLS) $< > SDLSound.symbols.new && mv SDLSound.symbols.new SDLSound.symbols else SDLSound.5D: ../dummy.5D cp ../dummy.5D SDLSound.5D endif SDLGfx.5D: SDLGfx.sign $(FIND_5D_EXPORTS) SDLGfx.sign >SDLGfx.5D.new && mv SDLGfx.5D.new SDLGfx.5D SDLGfx.sign: SDLGfx.symbols prototypes ../generateSignatures $< $(NATIVE_SDL_GFX_LIB) "" >SDLGfx.sign.new && mv SDLGfx.sign.new SDLGfx.sign SDLGfx.symbols: $(NATIVE_SDL_GFX_LIB) $(EXTRACT_GNU_SYMBOLS) $< > SDLGfx.symbols.new && mv SDLGfx.symbols.new SDLGfx.symbols clean: rm -f SDL.5D SDL.sign rm -f SDLNet.5D SDLNet.sign rm -f SDLPango.5D SDLPango.sign rm -f SDLMixer.5D SDLMixer.sign rm -f SDLGfx.5D SDLGfx.sign rm -f SDLSound.5D SDLSound.sign rm -f SGE.5D SGE.sign rm -f a.out prototypes.new prototypes.new2 distclean: clean rm -f prototypes SDL.symbols SDLNet.symbols SDLPango.symbols SDLMixer.symbols SDLGfx.symbols SDLSound.symbols SGE.symbols install: install -m 755 -d $(DESTDIR)/usr/share/5D/SDL1.2 install -m 644 SDL.5D $(DESTDIR)/usr/share/5D/SDL1.2/SDL.5D install -m 644 SDLMixer.5D $(DESTDIR)/usr/share/5D/SDL1.2/SDLMixer.5D install -m 644 SDLNet.5D $(DESTDIR)/usr/share/5D/SDL1.2/SDLNet.5D install -m 644 SDLPango.5D $(DESTDIR)/usr/share/5D/SDL1.2/SDLPango.5D install -m 644 SDLSound.5D $(DESTDIR)/usr/share/5D/SDL1.2/SDLSound.5D install -m 644 SDLGfx.5D $(DESTDIR)/usr/share/5D/SDL1.2/SDLGfx.5D install -m 644 init.5D $(DESTDIR)/usr/share/5D/SDL1.2/init.5D