mirror of
https://github.com/Relintai/sdl2_frt.git
synced 2024-12-16 11:06:49 +01:00
496337b3cf
tschwinger@elitemail.org Most ironically, although autoconf/automake-based builds install (pretty half-assed) CMake package configuration files, they're missing in installations resulting from CMake-based builds entirely. A proper configuration file typically also loads target exports (implemented in patch 3572, also fixing this issue - see my comment on that issue for details). I believe it would be best to let the dinosaurs go extinct and redirect all build efforts to the CMake end for two reasons: 1. It potentially provides the best user experience, but you'd have to give it some love and ship with less quirky buildfiles. 2. It would force distros to build SDL via CMake and thus would ensure target exports are actually available everywhere. Various CMake patches I submitted today in summary (directly converted from the HG commits and `am`d onto a fork of a git mirror that happened to be on `tip`). https://github.com/tschw/SDL/commits/patched Fixing #2576 #3572, #3613, and this fresh ticket, which is almost entirely advertisement ;). These already do to make SDL much less of a quirky fella to have in your dependency tree...
243 lines
7.2 KiB
Makefile
243 lines
7.2 KiB
Makefile
# Makefile to build and install the SDL library
|
|
|
|
top_builddir = .
|
|
srcdir = @srcdir@
|
|
objects = build
|
|
gen = gen
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
bindir = @bindir@
|
|
libdir = @libdir@
|
|
includedir = @includedir@
|
|
datarootdir = @datarootdir@
|
|
datadir = @datadir@
|
|
auxdir = @ac_aux_dir@
|
|
distpath = $(srcdir)/..
|
|
distdir = SDL2-@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@
|
|
AR = @AR@
|
|
RANLIB = @RANLIB@
|
|
WINDRES = @WINDRES@
|
|
|
|
TARGET = libSDL2.la
|
|
OBJECTS = @OBJECTS@
|
|
GEN_HEADERS = @GEN_HEADERS@
|
|
GEN_OBJECTS = @GEN_OBJECTS@
|
|
VERSION_OBJECTS = @VERSION_OBJECTS@
|
|
|
|
SDLMAIN_TARGET = libSDL2main.a
|
|
SDLMAIN_OBJECTS = @SDLMAIN_OBJECTS@
|
|
|
|
SDLTEST_TARGET = libSDL2_test.a
|
|
SDLTEST_OBJECTS = @SDLTEST_OBJECTS@
|
|
|
|
WAYLAND_SCANNER = @WAYLAND_SCANNER@
|
|
|
|
SRC_DIST = *.txt acinclude Android.mk autogen.sh android-project build-scripts cmake cmake_uninstall.cmake.in configure configure.in debian docs include Makefile.* sdl2-config.cmake.in sdl2-config.in sdl2.m4 sdl2.pc.in SDL2.spec.in SDL2Config.cmake src test VisualC.html VisualC VisualC-WinRT Xcode Xcode-iOS
|
|
GEN_DIST = SDL2.spec
|
|
|
|
ifneq ($V,1)
|
|
RUN_CMD_AR = @echo " AR " $@;
|
|
RUN_CMD_CC = @echo " CC " $@;
|
|
RUN_CMD_CXX = @echo " CXX " $@;
|
|
RUN_CMD_LTLINK = @echo " LTLINK" $@;
|
|
RUN_CMD_RANLIB = @echo " RANLIB" $@;
|
|
RUN_CMD_GEN = @echo " GEN " $@;
|
|
LIBTOOL += --quiet
|
|
endif
|
|
|
|
HDRS = \
|
|
SDL.h \
|
|
SDL_assert.h \
|
|
SDL_atomic.h \
|
|
SDL_audio.h \
|
|
SDL_bits.h \
|
|
SDL_blendmode.h \
|
|
SDL_clipboard.h \
|
|
SDL_cpuinfo.h \
|
|
SDL_egl.h \
|
|
SDL_endian.h \
|
|
SDL_error.h \
|
|
SDL_events.h \
|
|
SDL_filesystem.h \
|
|
SDL_gamecontroller.h \
|
|
SDL_gesture.h \
|
|
SDL_haptic.h \
|
|
SDL_hints.h \
|
|
SDL_joystick.h \
|
|
SDL_keyboard.h \
|
|
SDL_keycode.h \
|
|
SDL_loadso.h \
|
|
SDL_log.h \
|
|
SDL_main.h \
|
|
SDL_messagebox.h \
|
|
SDL_mouse.h \
|
|
SDL_mutex.h \
|
|
SDL_name.h \
|
|
SDL_opengl.h \
|
|
SDL_opengl_glext.h \
|
|
SDL_opengles.h \
|
|
SDL_opengles2_gl2ext.h \
|
|
SDL_opengles2_gl2.h \
|
|
SDL_opengles2_gl2platform.h \
|
|
SDL_opengles2.h \
|
|
SDL_opengles2_khrplatform.h \
|
|
SDL_pixels.h \
|
|
SDL_platform.h \
|
|
SDL_power.h \
|
|
SDL_quit.h \
|
|
SDL_rect.h \
|
|
SDL_render.h \
|
|
SDL_rwops.h \
|
|
SDL_scancode.h \
|
|
SDL_shape.h \
|
|
SDL_stdinc.h \
|
|
SDL_surface.h \
|
|
SDL_system.h \
|
|
SDL_syswm.h \
|
|
SDL_thread.h \
|
|
SDL_timer.h \
|
|
SDL_touch.h \
|
|
SDL_types.h \
|
|
SDL_version.h \
|
|
SDL_video.h \
|
|
begin_code.h \
|
|
close_code.h
|
|
|
|
SDLTEST_HDRS = $(shell ls $(srcdir)/include | fgrep SDL_test)
|
|
|
|
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) $(objects)/$(SDLTEST_TARGET)
|
|
|
|
$(srcdir)/configure: $(srcdir)/configure.in
|
|
@echo "Warning, configure is out of date, please re-run autogen.sh"
|
|
|
|
Makefile: $(srcdir)/Makefile.in
|
|
$(SHELL) config.status $@
|
|
|
|
Makefile.in:;
|
|
|
|
$(objects):
|
|
$(SHELL) $(auxdir)/mkinstalldirs $@
|
|
|
|
update-revision:
|
|
$(SHELL) $(auxdir)/updaterev.sh
|
|
|
|
.PHONY: all update-revision install install-bin install-hdrs install-lib install-data uninstall uninstall-bin uninstall-hdrs uninstall-lib uninstall-data clean distclean dist $(OBJECTS:.lo=.d)
|
|
|
|
$(objects)/$(TARGET): $(GEN_HEADERS) $(GEN_OBJECTS) $(OBJECTS) $(VERSION_OBJECTS)
|
|
$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -o $@ $(OBJECTS) $(GEN_OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
|
|
|
|
$(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
|
|
$(RUN_CMD_AR)$(AR) cru $@ $(SDLMAIN_OBJECTS)
|
|
$(RUN_CMD_RANLIB)$(RANLIB) $@
|
|
|
|
$(objects)/$(SDLTEST_TARGET): $(SDLTEST_OBJECTS)
|
|
$(RUN_CMD_AR)$(AR) cru $@ $(SDLTEST_OBJECTS)
|
|
$(RUN_CMD_RANLIB)$(RANLIB) $@
|
|
|
|
install: all install-bin install-hdrs install-lib install-data
|
|
install-bin:
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(bindir)
|
|
$(INSTALL) -m 755 sdl2-config $(DESTDIR)$(bindir)/sdl2-config
|
|
install-hdrs: update-revision
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(includedir)/SDL2
|
|
for file in $(HDRS) $(SDLTEST_HDRS); do \
|
|
$(INSTALL) -m 644 $(srcdir)/include/$$file $(DESTDIR)$(includedir)/SDL2/$$file; \
|
|
done
|
|
$(INSTALL) -m 644 include/SDL_config.h $(DESTDIR)$(includedir)/SDL2/SDL_config.h
|
|
if test -f include/SDL_revision.h; then \
|
|
$(INSTALL) -m 644 include/SDL_revision.h $(DESTDIR)$(includedir)/SDL2/SDL_revision.h; \
|
|
else \
|
|
$(INSTALL) -m 644 $(srcdir)/include/SDL_revision.h $(DESTDIR)$(includedir)/SDL2/SDL_revision.h; \
|
|
fi
|
|
|
|
install-lib: $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET)
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)
|
|
$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(TARGET) $(DESTDIR)$(libdir)/$(TARGET)
|
|
$(INSTALL) -m 644 $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
|
|
$(RANLIB) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
|
|
$(INSTALL) -m 644 $(objects)/$(SDLTEST_TARGET) $(DESTDIR)$(libdir)/$(SDLTEST_TARGET)
|
|
$(RANLIB) $(DESTDIR)$(libdir)/$(SDLTEST_TARGET)
|
|
install-data:
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(datadir)/aclocal
|
|
$(INSTALL) -m 644 $(srcdir)/sdl2.m4 $(DESTDIR)$(datadir)/aclocal/sdl2.m4
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/pkgconfig
|
|
$(INSTALL) -m 644 sdl2.pc $(DESTDIR)$(libdir)/pkgconfig
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/cmake/SDL2
|
|
$(INSTALL) -m 644 sdl2-config.cmake $(DESTDIR)$(libdir)/cmake/SDL2
|
|
|
|
uninstall: uninstall-bin uninstall-hdrs uninstall-lib uninstall-data
|
|
uninstall-bin:
|
|
rm -f $(DESTDIR)$(bindir)/sdl2-config
|
|
uninstall-hdrs:
|
|
for file in $(HDRS) $(SDLTEST_HDRS); do \
|
|
rm -f $(DESTDIR)$(includedir)/SDL2/$$file; \
|
|
done
|
|
rm -f $(DESTDIR)$(includedir)/SDL2/SDL_config.h
|
|
rm -f $(DESTDIR)$(includedir)/SDL2/SDL_revision.h
|
|
-rmdir $(DESTDIR)$(includedir)/SDL2
|
|
uninstall-lib:
|
|
$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(TARGET)
|
|
rm -f $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
|
|
rm -f $(DESTDIR)$(libdir)/$(SDLTEST_TARGET)
|
|
uninstall-data:
|
|
rm -f $(DESTDIR)$(datadir)/aclocal/sdl2.m4
|
|
rm -f $(DESTDIR)$(libdir)/pkgconfig/sdl2.pc
|
|
rm -f $(DESTDIR)$(libdir)/cmake/SDL2/sdl2-config.cmake
|
|
|
|
clean:
|
|
rm -rf $(objects)
|
|
rm -rf $(gen)
|
|
if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
|
|
|
|
distclean: clean
|
|
rm -f Makefile Makefile.rules sdl2-config
|
|
rm -f config.status config.cache config.log libtool
|
|
rm -rf $(srcdir)/autom4te*
|
|
find $(srcdir) \( \
|
|
-name '*~' -o \
|
|
-name '*.bak' -o \
|
|
-name '*.old' -o \
|
|
-name '*.rej' -o \
|
|
-name '*.orig' -o \
|
|
-name '.#*' \) \
|
|
-exec rm -f {} \;
|
|
if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
|
|
|
|
dist $(distfile):
|
|
$(SHELL) $(auxdir)/mkinstalldirs $(distdir)
|
|
(cd $(srcdir); tar cf - $(SRC_DIST)) | (cd $(distdir); tar xf -)
|
|
tar cf - $(GEN_DIST) | (cd $(distdir); tar xf -)
|
|
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
|
|
(cd $(distdir); build-scripts/updaterev.sh)
|
|
tar cvf - $(distdir) | gzip --best >$(distfile)
|
|
rm -rf $(distdir)
|
|
|
|
rpm: $(distfile)
|
|
rpmbuild -ta $?
|