mirror of
https://github.com/yawut/SDL.git
synced 2026-10-03 05:36:43 -05:00
Carlo Bramini 2010-01-27 10:06:17 PST When building third party software powered by libtool (like xine-lib and several others) under Mingw+MSys, libSDL fails to link. I got this message when building SDL video out component of xine-lib: *** Warning: linker path does not have real file for library -lmingw32. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with libmingw32 and none of the candidates passed a file format test *** using a file magic. Last file checked: /mingw/lib/libmingw32.a Apparently there is no need to manually add -lmingw32 for making libSDL working. If this flag is removed, everything is built without troubles. If it has been added for fixing a cross-compiler, perhaps if would be a better idea to adjust its SPECS file in the same manner it has been done in the true one used by mingw on Windows (I'm just guessing why it exists here). There is also another message received on the console: *** Warning: linker path does not have real file for library -lSDLmain. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with libSDLmain and none of the candidates passed a file format test *** using a file magic. Last file checked: /mingw/lib/libSDLmain.a This message, like previous one, is caused by -no-undefined flag sent to libtool when building shared libraries. Actually adding an .la file with its dependencies solves the troubles, so I believe it would be better to create it too in the build process of libSDL. --HG-- branch : SDL-1.2
179 lines
6.3 KiB
Makefile
179 lines
6.3 KiB
Makefile
# Makefile to build and install the SDL library
|
|
|
|
top_builddir = .
|
|
srcdir = @srcdir@
|
|
objects = build
|
|
depend = build-deps
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
bindir = @bindir@
|
|
libdir = @libdir@
|
|
includedir = @includedir@
|
|
datarootdir = @datarootdir@
|
|
datadir = @datadir@
|
|
mandir = @mandir@
|
|
auxdir = @ac_aux_dir@
|
|
distpath = $(srcdir)/..
|
|
distdir = SDL-@SDL_VERSION@
|
|
distfile = $(distdir).tar.gz
|
|
|
|
@SET_MAKE@
|
|
SHELL = @SHELL@
|
|
CC = @CC@
|
|
INCLUDE = @INCLUDE@
|
|
CFLAGS = @BUILD_CFLAGS@
|
|
EXTRA_CFLAGS = @EXTRA_CFLAGS@
|
|
LDFLAGS = @BUILD_LDFLAGS@
|
|
EXTRA_LDFLAGS = @EXTRA_LDFLAGS@
|
|
LIBTOOL = @LIBTOOL@
|
|
INSTALL = @INSTALL@
|
|
NASM = @NASM@ @NASMFLAGS@
|
|
AR = @AR@
|
|
RANLIB = @RANLIB@
|
|
WINDRES = @WINDRES@
|
|
|
|
TARGET = libSDL.la
|
|
SOURCES = @SOURCES@
|
|
OBJECTS = @OBJECTS@
|
|
|
|
SDLMAIN_TARGET = libSDLmain.la
|
|
SDLMAIN_SOURCES = @SDLMAIN_SOURCES@
|
|
SDLMAIN_OBJECTS = @SDLMAIN_OBJECTS@
|
|
SDLMAIN_LDFLAGS = @SDLMAIN_LDFLAGS@
|
|
|
|
DIST = acinclude autogen.sh Borland.html Borland.zip BUGS build-scripts configure configure.in COPYING CREDITS CWprojects.sea.bin docs docs.html include INSTALL Makefile.dc Makefile.minimal Makefile.in MPWmake.sea.bin README* sdl-config.in sdl.m4 sdl.pc.in SDL.qpg.in SDL.spec SDL.spec.in src test TODO VisualCE VisualC.html VisualC Watcom-OS2.zip Watcom-Win32.zip symbian.zip WhatsNew Xcode
|
|
|
|
HDRS = SDL.h SDL_active.h SDL_audio.h SDL_byteorder.h SDL_cdrom.h SDL_cpuinfo.h SDL_endian.h SDL_error.h SDL_events.h SDL_getenv.h SDL_joystick.h SDL_keyboard.h SDL_keysym.h SDL_loadso.h SDL_main.h SDL_mouse.h SDL_mutex.h SDL_name.h SDL_opengl.h SDL_platform.h SDL_quit.h SDL_rwops.h SDL_stdinc.h SDL_syswm.h SDL_thread.h SDL_timer.h SDL_types.h SDL_version.h SDL_video.h begin_code.h close_code.h
|
|
|
|
LT_AGE = @LT_AGE@
|
|
LT_CURRENT = @LT_CURRENT@
|
|
LT_RELEASE = @LT_RELEASE@
|
|
LT_REVISION = @LT_REVISION@
|
|
LT_LDFLAGS = -no-undefined -rpath $(DESTDIR)$(libdir) -release $(LT_RELEASE) -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
|
|
|
|
all: $(srcdir)/configure Makefile $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET)
|
|
|
|
$(srcdir)/configure: $(srcdir)/configure.in
|
|
@echo "Warning, configure.in is out of date"
|
|
#(cd $(srcdir) && sh autogen.sh && sh configure)
|
|
@sleep 3
|
|
|
|
Makefile: $(srcdir)/Makefile.in
|
|
$(SHELL) config.status $@
|
|
|
|
$(objects):
|
|
$(SHELL) $(auxdir)/mkinstalldirs $@
|
|
|
|
.PHONY: all depend install install-bin install-hdrs install-lib install-data install-man uninstall uninstall-bin uninstall-hdrs uninstall-lib uninstall-data uninstall-man clean distclean dist
|
|
depend:
|
|
@SOURCES="$(SOURCES) $(SDLMAIN_SOURCES)" INCLUDE="$(INCLUDE)" output="$(depend)" \
|
|
$(SHELL) $(auxdir)/makedep.sh
|
|
|
|
include $(depend)
|
|
|
|
$(objects)/$(TARGET): $(OBJECTS)
|
|
$(LIBTOOL) --mode=link $(CC) -o $@ $^ $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
|
|
|
|
$(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
|
|
$(LIBTOOL) --mode=link $(CC) -o $@ $^ $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS) $(SDLMAIN_LDFLAGS)
|
|
|
|
|
|
install: all install-bin install-hdrs install-lib install-data install-man
|
|
install-bin:
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(bindir)
|
|
$(INSTALL) -m 755 sdl-config $(DESTDIR)$(bindir)/sdl-config
|
|
install-hdrs:
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(includedir)/SDL
|
|
for file in $(HDRS); do \
|
|
$(INSTALL) -m 644 $(srcdir)/include/$$file $(DESTDIR)$(includedir)/SDL/$$file; \
|
|
done
|
|
$(INSTALL) -m 644 include/SDL_config.h $(DESTDIR)$(includedir)/SDL/SDL_config.h
|
|
install-lib: $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET)
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)
|
|
$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(TARGET) $(DESTDIR)$(libdir)/$(TARGET)
|
|
$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
|
|
install-data:
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(datadir)/aclocal
|
|
$(INSTALL) -m 644 $(srcdir)/sdl.m4 $(DESTDIR)$(datadir)/aclocal/sdl.m4
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/pkgconfig
|
|
$(INSTALL) -m 644 sdl.pc $(DESTDIR)$(libdir)/pkgconfig
|
|
install-man:
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(mandir)/man3
|
|
for src in $(srcdir)/docs/man3/*.3; do \
|
|
file=`echo $$src | sed -e 's|^.*/||'`; \
|
|
$(INSTALL) -m 644 $$src $(DESTDIR)$(mandir)/man3/$$file; \
|
|
done
|
|
|
|
uninstall: uninstall-bin uninstall-hdrs uninstall-lib uninstall-data uninstall-man
|
|
uninstall-bin:
|
|
rm -f $(DESTDIR)$(bindir)/sdl-config
|
|
uninstall-hdrs:
|
|
for file in $(HDRS); do \
|
|
rm -f $(DESTDIR)$(includedir)/SDL/$$file; \
|
|
done
|
|
rm -f $(DESTDIR)$(includedir)/SDL/SDL_config.h
|
|
-rmdir $(DESTDIR)$(includedir)/SDL
|
|
uninstall-lib:
|
|
$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(TARGET)
|
|
$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
|
|
uninstall-data:
|
|
rm -f $(DESTDIR)$(datadir)/aclocal/sdl.m4
|
|
rm -f $(DESTDIR)$(libdir)/pkgconfig/sdl.pc
|
|
uninstall-man:
|
|
for src in $(srcdir)/docs/man3/*.3; do \
|
|
file=`echo $$src | sed -e 's|^.*/||'`; \
|
|
rm -f $(DESTDIR)$(mandir)/man3/$$file; \
|
|
done
|
|
|
|
clean:
|
|
rm -rf $(objects)
|
|
if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
|
|
|
|
distclean: clean
|
|
rm -f Makefile include/SDL_config.h sdl-config
|
|
rm -f SDL.qpg
|
|
rm -f config.status config.cache config.log libtool $(depend)
|
|
rm -rf $(srcdir)/autom4te*
|
|
rm -rf $(srcdir)/test/autom4te*
|
|
find $(srcdir) \( \
|
|
-name '*~' -o \
|
|
-name '*.bak' -o \
|
|
-name '*.old' -o \
|
|
-name '*.rej' -o \
|
|
-name '*.orig' -o \
|
|
-name '.#*' \) \
|
|
-exec rm -f {} \;
|
|
cp $(srcdir)/include/SDL_config.h.default $(srcdir)/include/SDL_config.h
|
|
if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
|
|
|
|
dist $(distfile):
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(distdir)
|
|
tar cf - $(DIST) | (cd $(distdir); tar xf -)
|
|
cp $(distdir)/include/SDL_config.h.default $(distdir)/include/SDL_config.h
|
|
rm -rf `find $(distdir) -name .svn`
|
|
rm -rf $(distdir)/test/autom4te*
|
|
find $(distdir) \( \
|
|
-name '*~' -o \
|
|
-name '*.bak' -o \
|
|
-name '*.old' -o \
|
|
-name '*.rej' -o \
|
|
-name '*.orig' -o \
|
|
-name '.#*' \) \
|
|
-exec rm -f {} \;
|
|
if test -f $(distdir)/test/Makefile; then (cd $(distdir)/test && make distclean); fi
|
|
tar cvf - $(distdir) | gzip --best >$(distfile)
|
|
rm -rf $(distdir)
|
|
|
|
rpm: $(distfile)
|
|
rpmbuild -ta $?
|
|
|
|
# Create a SVN snapshot that people can run update on
|
|
snapshot:
|
|
svn co http://svn.libsdl.org/branches/SDL-1.2
|
|
(cd SDL-1.2 && ./autogen.sh && rm -rf autom4te.cache)
|
|
cp SDL-1.2/include/SDL_config.h.default SDL-1.2/include/SDL_config.h
|
|
tar zcf $(HOME)/SDL-1.2.tar.gz SDL-1.2
|
|
rm -f $(HOME)/SDL-1.2.zip
|
|
zip -r $(HOME)/SDL-1.2.zip SDL-1.2
|
|
rm -rf SDL-1.2
|