Makefile.in
author Sam Lantinga <slouken@libsdl.org>
Fri, 29 May 2020 21:26:32 -0700
changeset 13884 ba1ed72249c0
parent 13797 55ec5ae4aa0b
permissions -rw-r--r--
Fixed bug 5113 - SDL_UpdateWindowSurfaceRects BitBlt the entire surface on Win32

Ryan C. Gordon

As discussed here:
https://discourse.libsdl.org/t/question-about-implementation-of-sdl-updatewindowsurfacerects/27561

"As you can see this function [WIN_UpdateWindowFramebuffer, in src/video/windows/SDL_windowsframebuffer.c] calls BitBlt on entire screen, even though it accepts the rects. Rects variable is not even used in this function at all. Now my question is why is that the case?"
     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 RC	= @RC@
    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 INSTALL_SDL2_CONFIG = @INSTALL_SDL2_CONFIG@
    48 
    49 SRC_DIST = *.txt acinclude Android.mk autogen.sh android-project build-scripts cmake cmake_uninstall.cmake.in configure configure.ac debian docs include Makefile.* sdl2-config.cmake.in sdl2-config-version.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 wayland-protocols
    50 GEN_DIST = SDL2.spec
    51 
    52 ifneq ($V,1)
    53 RUN_CMD_AR     = @echo "  AR    " $@;
    54 RUN_CMD_CC     = @echo "  CC    " $@;
    55 RUN_CMD_CXX    = @echo "  CXX   " $@;
    56 RUN_CMD_LTLINK = @echo "  LTLINK" $@;
    57 RUN_CMD_RANLIB = @echo "  RANLIB" $@;
    58 RUN_CMD_RC     = @echo "  RC    " $@;
    59 RUN_CMD_GEN    = @echo "  GEN   " $@;
    60 LIBTOOL += --quiet
    61 endif
    62 
    63 HDRS = \
    64 	SDL.h \
    65 	SDL_assert.h \
    66 	SDL_atomic.h \
    67 	SDL_audio.h \
    68 	SDL_bits.h \
    69 	SDL_blendmode.h \
    70 	SDL_clipboard.h \
    71 	SDL_cpuinfo.h \
    72 	SDL_egl.h \
    73 	SDL_endian.h \
    74 	SDL_error.h \
    75 	SDL_events.h \
    76 	SDL_filesystem.h \
    77 	SDL_gamecontroller.h \
    78 	SDL_gesture.h \
    79 	SDL_haptic.h \
    80 	SDL_hints.h \
    81 	SDL_joystick.h \
    82 	SDL_keyboard.h \
    83 	SDL_keycode.h \
    84 	SDL_loadso.h \
    85 	SDL_locale.h \
    86 	SDL_log.h \
    87 	SDL_main.h \
    88 	SDL_messagebox.h \
    89 	SDL_metal.h \
    90 	SDL_mouse.h \
    91 	SDL_mutex.h \
    92 	SDL_name.h \
    93 	SDL_opengl.h \
    94 	SDL_opengl_glext.h \
    95 	SDL_opengles.h \
    96 	SDL_opengles2_gl2ext.h \
    97 	SDL_opengles2_gl2.h \
    98 	SDL_opengles2_gl2platform.h \
    99 	SDL_opengles2.h \
   100 	SDL_opengles2_khrplatform.h \
   101 	SDL_pixels.h \
   102 	SDL_platform.h \
   103 	SDL_power.h \
   104 	SDL_quit.h \
   105 	SDL_rect.h \
   106 	SDL_render.h \
   107 	SDL_rwops.h \
   108 	SDL_scancode.h \
   109 	SDL_sensor.h \
   110 	SDL_shape.h \
   111 	SDL_stdinc.h \
   112 	SDL_surface.h \
   113 	SDL_system.h \
   114 	SDL_syswm.h \
   115 	SDL_thread.h \
   116 	SDL_timer.h \
   117 	SDL_touch.h \
   118 	SDL_types.h \
   119 	SDL_version.h \
   120 	SDL_video.h \
   121 	SDL_vulkan.h \
   122 	begin_code.h \
   123 	close_code.h
   124 
   125 SDLTEST_HDRS = $(shell ls $(srcdir)/include | fgrep SDL_test)
   126 
   127 LT_AGE      = @LT_AGE@
   128 LT_CURRENT  = @LT_CURRENT@
   129 LT_RELEASE  = @LT_RELEASE@
   130 LT_REVISION = @LT_REVISION@
   131 LT_LDFLAGS  = -no-undefined -rpath $(libdir) -release $(LT_RELEASE) -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
   132 
   133 all: $(srcdir)/configure Makefile $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET)
   134 
   135 $(srcdir)/configure: $(srcdir)/configure.ac
   136 	@echo "Warning, configure is out of date, please re-run autogen.sh"
   137 
   138 Makefile: $(srcdir)/Makefile.in
   139 	$(SHELL) config.status $@
   140 
   141 Makefile.in:;
   142 
   143 $(objects)/.created:
   144 	$(SHELL) $(auxdir)/mkinstalldirs $(objects)
   145 	touch $@
   146 
   147 update-revision:
   148 	$(SHELL) $(auxdir)/updaterev.sh
   149 
   150 .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)
   151 
   152 $(objects)/$(TARGET): $(GEN_HEADERS) $(GEN_OBJECTS) $(OBJECTS) $(VERSION_OBJECTS)
   153 	$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -o $@ $(OBJECTS) $(GEN_OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
   154 
   155 $(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
   156 	$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -static -o $@ $(SDLMAIN_OBJECTS) -rpath $(libdir)
   157 
   158 $(objects)/$(SDLTEST_TARGET): $(SDLTEST_OBJECTS)
   159 	$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=CC --mode=link $(CC) -static -o $@ $(SDLTEST_OBJECTS) -rpath $(libdir)
   160 
   161 install: all install-bin install-hdrs install-lib install-data
   162 install-bin:
   163 ifeq ($(INSTALL_SDL2_CONFIG),TRUE)
   164 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(bindir)
   165 	$(INSTALL) -m 755 sdl2-config $(DESTDIR)$(bindir)/sdl2-config
   166 endif
   167 
   168 install-hdrs: update-revision
   169 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(includedir)/SDL2
   170 	for file in $(HDRS) $(SDLTEST_HDRS); do \
   171 	    $(INSTALL) -m 644 $(srcdir)/include/$$file $(DESTDIR)$(includedir)/SDL2/$$file; \
   172 	done
   173 	$(INSTALL) -m 644 include/SDL_config.h $(DESTDIR)$(includedir)/SDL2/SDL_config.h
   174 	if test -f include/SDL_revision.h; then \
   175 	    $(INSTALL) -m 644 include/SDL_revision.h $(DESTDIR)$(includedir)/SDL2/SDL_revision.h; \
   176 	else \
   177 	    $(INSTALL) -m 644 $(srcdir)/include/SDL_revision.h $(DESTDIR)$(includedir)/SDL2/SDL_revision.h; \
   178 	fi
   179 
   180 install-lib: $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET)
   181 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)
   182 	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(TARGET) $(DESTDIR)$(libdir)/$(TARGET)
   183 	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
   184 	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(SDLTEST_TARGET) $(DESTDIR)$(libdir)/$(SDLTEST_TARGET)
   185 install-data:
   186 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(datadir)/aclocal
   187 	$(INSTALL) -m 644 $(srcdir)/sdl2.m4 $(DESTDIR)$(datadir)/aclocal/sdl2.m4
   188 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/pkgconfig
   189 	$(INSTALL) -m 644 sdl2.pc $(DESTDIR)$(libdir)/pkgconfig
   190 ifeq ($(INSTALL_SDL2_CONFIG),TRUE)
   191 	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/cmake/SDL2
   192 	$(INSTALL) -m 644 sdl2-config.cmake $(DESTDIR)$(libdir)/cmake/SDL2
   193 	$(INSTALL) -m 644 sdl2-config-version.cmake $(DESTDIR)$(libdir)/cmake/SDL2
   194 endif
   195 
   196 uninstall: uninstall-bin uninstall-hdrs uninstall-lib uninstall-data
   197 uninstall-bin:
   198 	rm -f $(DESTDIR)$(bindir)/sdl2-config
   199 uninstall-hdrs:
   200 	for file in $(HDRS) $(SDLTEST_HDRS); do \
   201 	    rm -f $(DESTDIR)$(includedir)/SDL2/$$file; \
   202 	done
   203 	rm -f $(DESTDIR)$(includedir)/SDL2/SDL_config.h
   204 	rm -f $(DESTDIR)$(includedir)/SDL2/SDL_revision.h
   205 	-rmdir $(DESTDIR)$(includedir)/SDL2
   206 uninstall-lib:
   207 	$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(TARGET)
   208 	rm -f $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
   209 	rm -f $(DESTDIR)$(libdir)/$(SDLTEST_TARGET)
   210 uninstall-data:
   211 	rm -f $(DESTDIR)$(datadir)/aclocal/sdl2.m4
   212 	rm -f $(DESTDIR)$(libdir)/pkgconfig/sdl2.pc
   213 	rm -f $(DESTDIR)$(libdir)/cmake/SDL2/sdl2-config.cmake
   214 	rm -f $(DESTDIR)$(libdir)/cmake/SDL2/sdl2-config-version.cmake
   215 
   216 clean:
   217 	rm -rf $(objects)
   218 	rm -rf $(gen)
   219 	if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
   220 
   221 distclean: clean
   222 	rm -f Makefile Makefile.rules sdl2-config
   223 	rm -f config.status config.cache config.log libtool
   224 	rm -rf $(srcdir)/autom4te*
   225 	find $(srcdir) \( \
   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 test/Makefile; then (cd test; $(MAKE) $@); fi
   234 
   235 dist $(distfile):
   236 	$(SHELL) $(auxdir)/mkinstalldirs $(distdir)
   237 	(cd $(srcdir); tar cf - $(SRC_DIST)) | (cd $(distdir); tar xf -)
   238 	tar cf - $(GEN_DIST) | (cd $(distdir); tar xf -)
   239 	find $(distdir) \( \
   240 	    -name '*~' -o \
   241 	    -name '*.bak' -o \
   242 	    -name '*.old' -o \
   243 	    -name '*.rej' -o \
   244 	    -name '*.orig' -o \
   245 	    -name '.#*' \) \
   246 	    -exec rm -f {} \;
   247 	if test -f $(distdir)/test/Makefile; then (cd $(distdir)/test && make distclean); fi
   248 	(cd $(distdir); build-scripts/updaterev.sh)
   249 	tar cvf - $(distdir) | gzip --best >$(distfile)
   250 	rm -rf $(distdir)
   251 
   252 rpm: $(distfile)
   253 	rpmbuild -ta $?