Makefile.in
author Sam Lantinga <slouken@libsdl.org>
Tue, 12 Jun 2018 00:18:10 -0700
changeset 12014 8af8c17eaf82
parent 11365 a9bd2625fa01
child 12035 1a7dec71e8e0
permissions -rw-r--r--
Added common controllers used with Steam Big Picture

These are entirely untested
Several USB ids refer to multiple packaged products. In those cases I tried to use the most common name, or a general name (e.g. PS3 Controller), or a completely generic name (e.g. USB gamepad) if it wasn't clear what type of controller it was.
Patches welcome!
     1 # Makefile to build and install the SDL library
     2 
     3 top_builddir = .
     4 srcdir  = @srcdir@
     5 objects = build
     6 gen = gen
     7 prefix = @prefix@
     8 exec_prefix = @exec_prefix@
     9 bindir	= @bindir@
    10 libdir  = @libdir@
    11 includedir = @includedir@
    12 datarootdir = @datarootdir@
    13 datadir	= @datadir@
    14 auxdir	= @ac_aux_dir@
    15 distpath = $(srcdir)/..
    16 distdir = SDL2-@SDL_VERSION@
    17 distfile = $(distdir).tar.gz
    18 
    19 @SET_MAKE@
    20 SHELL	= @SHELL@
    21 CC      = @CC@
    22 INCLUDE = @INCLUDE@
    23 CFLAGS  = @BUILD_CFLAGS@
    24 EXTRA_CFLAGS = @EXTRA_CFLAGS@
    25 LDFLAGS = @BUILD_LDFLAGS@
    26 EXTRA_LDFLAGS = @EXTRA_LDFLAGS@
    27 LIBTOOL = @LIBTOOL@
    28 INSTALL = @INSTALL@
    29 AR	= @AR@
    30 RANLIB	= @RANLIB@
    31 WINDRES	= @WINDRES@
    32 
    33 TARGET  = libSDL2.la
    34 OBJECTS = @OBJECTS@
    35 GEN_HEADERS = @GEN_HEADERS@
    36 GEN_OBJECTS = @GEN_OBJECTS@
    37 VERSION_OBJECTS = @VERSION_OBJECTS@
    38 
    39 SDLMAIN_TARGET = libSDL2main.la
    40 SDLMAIN_OBJECTS = @SDLMAIN_OBJECTS@
    41 
    42 SDLTEST_TARGET = libSDL2_test.la
    43 SDLTEST_OBJECTS = @SDLTEST_OBJECTS@
    44 
    45 WAYLAND_SCANNER = @WAYLAND_SCANNER@
    46 
    47 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
    48 GEN_DIST = SDL2.spec
    49 
    50 ifneq ($V,1)
    51 RUN_CMD_AR     = @echo "  AR    " $@;
    52 RUN_CMD_CC     = @echo "  CC    " $@;
    53 RUN_CMD_CXX    = @echo "  CXX   " $@;
    54 RUN_CMD_LTLINK = @echo "  LTLINK" $@;
    55 RUN_CMD_RANLIB = @echo "  RANLIB" $@;
    56 RUN_CMD_GEN    = @echo "  GEN   " $@;
    57 LIBTOOL += --quiet
    58 endif
    59 
    60 HDRS = \
    61 	SDL.h \
    62 	SDL_assert.h \
    63 	SDL_atomic.h \
    64 	SDL_audio.h \
    65 	SDL_bits.h \
    66 	SDL_blendmode.h \
    67 	SDL_clipboard.h \
    68 	SDL_cpuinfo.h \
    69 	SDL_egl.h \
    70 	SDL_endian.h \
    71 	SDL_error.h \
    72 	SDL_events.h \
    73 	SDL_filesystem.h \
    74 	SDL_gamecontroller.h \
    75 	SDL_gesture.h \
    76 	SDL_haptic.h \
    77 	SDL_hints.h \
    78 	SDL_joystick.h \
    79 	SDL_keyboard.h \
    80 	SDL_keycode.h \
    81 	SDL_loadso.h \
    82 	SDL_log.h \
    83 	SDL_main.h \
    84 	SDL_messagebox.h \
    85 	SDL_mouse.h \
    86 	SDL_mutex.h \
    87 	SDL_name.h \
    88 	SDL_opengl.h \
    89 	SDL_opengl_glext.h \
    90 	SDL_opengles.h \
    91 	SDL_opengles2_gl2ext.h \
    92 	SDL_opengles2_gl2.h \
    93 	SDL_opengles2_gl2platform.h \
    94 	SDL_opengles2.h \
    95 	SDL_opengles2_khrplatform.h \
    96 	SDL_pixels.h \
    97 	SDL_platform.h \
    98 	SDL_power.h \
    99 	SDL_quit.h \
   100 	SDL_rect.h \
   101 	SDL_render.h \
   102 	SDL_rwops.h \
   103 	SDL_scancode.h \
   104 	SDL_shape.h \
   105 	SDL_stdinc.h \
   106 	SDL_surface.h \
   107 	SDL_system.h \
   108 	SDL_syswm.h \
   109 	SDL_thread.h \
   110 	SDL_timer.h \
   111 	SDL_touch.h \
   112 	SDL_types.h \
   113 	SDL_version.h \
   114 	SDL_video.h \
   115 	SDL_vulkan.h \
   116 	begin_code.h \
   117 	close_code.h
   118 
   119 SDLTEST_HDRS = $(shell ls $(srcdir)/include | fgrep SDL_test)
   120 
   121 LT_AGE      = @LT_AGE@
   122 LT_CURRENT  = @LT_CURRENT@
   123 LT_RELEASE  = @LT_RELEASE@
   124 LT_REVISION = @LT_REVISION@
   125 LT_LDFLAGS  = -no-undefined -rpath $(libdir) -release $(LT_RELEASE) -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
   126 
   127 all: $(srcdir)/configure Makefile $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET)
   128 
   129 $(srcdir)/configure: $(srcdir)/configure.in
   130 	@echo "Warning, configure is out of date, please re-run autogen.sh"
   131 
   132 Makefile: $(srcdir)/Makefile.in
   133 	$(SHELL) config.status $@
   134 
   135 Makefile.in:;
   136 
   137 $(objects):
   138 	$(SHELL) $(auxdir)/mkinstalldirs $@
   139 
   140 update-revision:
   141 	$(SHELL) $(auxdir)/updaterev.sh
   142 
   143 .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)
   144 
   145 $(objects)/$(TARGET): $(GEN_HEADERS) $(GEN_OBJECTS) $(OBJECTS) $(VERSION_OBJECTS)
   146 	$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -o $@ $(OBJECTS) $(GEN_OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
   147 
   148 $(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
   149 	$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -static -o $@ $(SDLMAIN_OBJECTS) -rpath $(libdir)
   150 
   151 $(objects)/$(SDLTEST_TARGET): $(SDLTEST_OBJECTS)
   152 	$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -static -o $@ $(SDLTEST_OBJECTS) -rpath $(libdir)
   153 
   154 install: all install-bin install-hdrs install-lib install-data
   155 install-bin:
   156 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(bindir)
   157 	$(INSTALL) -m 755 sdl2-config $(DESTDIR)$(bindir)/sdl2-config
   158 install-hdrs: update-revision
   159 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(includedir)/SDL2
   160 	for file in $(HDRS) $(SDLTEST_HDRS); do \
   161 	    $(INSTALL) -m 644 $(srcdir)/include/$$file $(DESTDIR)$(includedir)/SDL2/$$file; \
   162 	done
   163 	$(INSTALL) -m 644 include/SDL_config.h $(DESTDIR)$(includedir)/SDL2/SDL_config.h
   164 	if test -f include/SDL_revision.h; then \
   165 	    $(INSTALL) -m 644 include/SDL_revision.h $(DESTDIR)$(includedir)/SDL2/SDL_revision.h; \
   166 	else \
   167 	    $(INSTALL) -m 644 $(srcdir)/include/SDL_revision.h $(DESTDIR)$(includedir)/SDL2/SDL_revision.h; \
   168 	fi
   169 
   170 install-lib: $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET)
   171 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)
   172 	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(TARGET) $(DESTDIR)$(libdir)/$(TARGET)
   173 	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
   174 	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(SDLTEST_TARGET) $(DESTDIR)$(libdir)/$(SDLTEST_TARGET)
   175 install-data:
   176 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(datadir)/aclocal
   177 	$(INSTALL) -m 644 $(srcdir)/sdl2.m4 $(DESTDIR)$(datadir)/aclocal/sdl2.m4
   178 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/pkgconfig
   179 	$(INSTALL) -m 644 sdl2.pc $(DESTDIR)$(libdir)/pkgconfig
   180 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/cmake/SDL2
   181 	$(INSTALL) -m 644 sdl2-config.cmake $(DESTDIR)$(libdir)/cmake/SDL2
   182 
   183 uninstall: uninstall-bin uninstall-hdrs uninstall-lib uninstall-data
   184 uninstall-bin:
   185 	rm -f $(DESTDIR)$(bindir)/sdl2-config
   186 uninstall-hdrs:
   187 	for file in $(HDRS) $(SDLTEST_HDRS); do \
   188 	    rm -f $(DESTDIR)$(includedir)/SDL2/$$file; \
   189 	done
   190 	rm -f $(DESTDIR)$(includedir)/SDL2/SDL_config.h
   191 	rm -f $(DESTDIR)$(includedir)/SDL2/SDL_revision.h
   192 	-rmdir $(DESTDIR)$(includedir)/SDL2
   193 uninstall-lib:
   194 	$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(TARGET)
   195 	rm -f $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
   196 	rm -f $(DESTDIR)$(libdir)/$(SDLTEST_TARGET)
   197 uninstall-data:
   198 	rm -f $(DESTDIR)$(datadir)/aclocal/sdl2.m4
   199 	rm -f $(DESTDIR)$(libdir)/pkgconfig/sdl2.pc
   200 	rm -f $(DESTDIR)$(libdir)/cmake/SDL2/sdl2-config.cmake
   201 
   202 clean:
   203 	rm -rf $(objects)
   204 	rm -rf $(gen)
   205 	if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
   206 
   207 distclean: clean
   208 	rm -f Makefile Makefile.rules sdl2-config
   209 	rm -f config.status config.cache config.log libtool
   210 	rm -rf $(srcdir)/autom4te*
   211 	find $(srcdir) \( \
   212 	    -name '*~' -o \
   213 	    -name '*.bak' -o \
   214 	    -name '*.old' -o \
   215 	    -name '*.rej' -o \
   216 	    -name '*.orig' -o \
   217 	    -name '.#*' \) \
   218 	    -exec rm -f {} \;
   219 	if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
   220 
   221 dist $(distfile):
   222 	$(SHELL) $(auxdir)/mkinstalldirs $(distdir)
   223 	(cd $(srcdir); tar cf - $(SRC_DIST)) | (cd $(distdir); tar xf -)
   224 	tar cf - $(GEN_DIST) | (cd $(distdir); tar xf -)
   225 	find $(distdir) \( \
   226 	    -name '*~' -o \
   227 	    -name '*.bak' -o \
   228 	    -name '*.old' -o \
   229 	    -name '*.rej' -o \
   230 	    -name '*.orig' -o \
   231 	    -name '.#*' \) \
   232 	    -exec rm -f {} \;
   233 	if test -f $(distdir)/test/Makefile; then (cd $(distdir)/test && make distclean); fi
   234 	(cd $(distdir); build-scripts/updaterev.sh)
   235 	tar cvf - $(distdir) | gzip --best >$(distfile)
   236 	rm -rf $(distdir)
   237 
   238 rpm: $(distfile)
   239 	rpmbuild -ta $?