Makefile.in
author Sam Lantinga <slouken@libsdl.org>
Sat, 14 Jan 2012 13:21:19 -0500
changeset 6217 6952b11b7f46
parent 6205 7dd8ea9f282d
child 6235 d169541f5049
permissions -rw-r--r--
Make sure that we use consistent configuration options on platforms like Windows so that command line builds and IDE builds have ABI compatibility.
Make sure we don't clobber SDL_revision.h when building from Mercurial
slouken@1362
     1
# Makefile to build and install the SDL library
slouken@1362
     2
slouken@1362
     3
top_builddir = .
slouken@1362
     4
srcdir  = @srcdir@
slouken@1362
     5
objects = build
slouken@1362
     6
prefix = @prefix@
slouken@1362
     7
exec_prefix = @exec_prefix@
slouken@2156
     8
bindir	= @bindir@
slouken@2156
     9
libdir  = @libdir@
slouken@2156
    10
includedir = @includedir@
slouken@2156
    11
datarootdir = @datarootdir@
slouken@2156
    12
datadir	= @datadir@
slouken@1391
    13
auxdir	= @ac_aux_dir@
slouken@1362
    14
distpath = $(srcdir)/..
slouken@1362
    15
distdir = SDL-@SDL_VERSION@
slouken@1362
    16
distfile = $(distdir).tar.gz
slouken@1362
    17
slouken@1380
    18
@SET_MAKE@
slouken@1362
    19
SHELL	= @SHELL@
slouken@1362
    20
CC      = @CC@
slouken@1362
    21
INCLUDE = @INCLUDE@
slouken@1362
    22
CFLAGS  = @BUILD_CFLAGS@
slouken@1521
    23
EXTRA_CFLAGS = @EXTRA_CFLAGS@
slouken@1393
    24
LDFLAGS = @BUILD_LDFLAGS@
slouken@1521
    25
EXTRA_LDFLAGS = @EXTRA_LDFLAGS@
slouken@1362
    26
LIBTOOL = @LIBTOOL@
slouken@1362
    27
INSTALL = @INSTALL@
slouken@1419
    28
AR	= @AR@
slouken@1419
    29
RANLIB	= @RANLIB@
slouken@2204
    30
WINDRES	= @WINDRES@
slouken@1362
    31
slouken@1362
    32
TARGET  = libSDL.la
slouken@1362
    33
OBJECTS = @OBJECTS@
slouken@3334
    34
VERSION_OBJECTS = @VERSION_OBJECTS@
slouken@1362
    35
slouken@1397
    36
SDLMAIN_TARGET = libSDLmain.a
slouken@1397
    37
SDLMAIN_OBJECTS = @SDLMAIN_OBJECTS@
slouken@1397
    38
slouken@6159
    39
SRC_DIST = acinclude Android.mk autogen.sh Borland.html Borland.zip BUGS build-scripts configure configure.in COPYING CREDITS include INSTALL Makefile.minimal Makefile.in README* sdl-config.in sdl.m4 sdl.pc.in SDL.spec.in src test TODO VisualC.html VisualC VisualCE Watcom-Win32.zip WhatsNew Xcode Xcode-iOS
slouken@5498
    40
GEN_DIST = SDL.spec
slouken@1362
    41
slouken@4929
    42
HDRS = \
slouken@4929
    43
	SDL.h \
slouken@4929
    44
	SDL_assert.h \
slouken@4929
    45
	SDL_atomic.h \
slouken@4929
    46
	SDL_audio.h \
slouken@4929
    47
	SDL_blendmode.h \
slouken@4929
    48
	SDL_clipboard.h \
slouken@6217
    49
	SDL_config.h \
slouken@6217
    50
	SDL_config_android.h \
slouken@6217
    51
	SDL_config_iphoneos.h \
slouken@6217
    52
	SDL_config_macosx.h \
slouken@6217
    53
	SDL_config_minimal.h \
slouken@6217
    54
	SDL_config_nintendods.h \
slouken@6217
    55
	SDL_config_windows.h \
slouken@4929
    56
	SDL_compat.h \
slouken@4929
    57
	SDL_cpuinfo.h \
slouken@4929
    58
	SDL_endian.h \
slouken@4929
    59
	SDL_error.h \
slouken@4929
    60
	SDL_events.h \
slouken@4929
    61
	SDL_gesture.h \
slouken@4929
    62
	SDL_haptic.h \
slouken@5189
    63
	SDL_hints.h \
slouken@4929
    64
	SDL_input.h \
slouken@4929
    65
	SDL_joystick.h \
slouken@4929
    66
	SDL_keyboard.h \
slouken@5340
    67
	SDL_keycode.h \
slouken@4929
    68
	SDL_loadso.h \
slouken@5221
    69
	SDL_log.h \
slouken@4929
    70
	SDL_main.h \
slouken@4929
    71
	SDL_mouse.h \
slouken@4929
    72
	SDL_mutex.h \
slouken@4929
    73
	SDL_name.h \
slouken@4929
    74
	SDL_opengl.h \
slouken@4929
    75
	SDL_opengles.h \
slouken@6205
    76
	SDL_opengles2.h \
slouken@4929
    77
	SDL_pixels.h \
slouken@4929
    78
	SDL_platform.h \
slouken@4929
    79
	SDL_power.h \
slouken@4929
    80
	SDL_quit.h \
slouken@4929
    81
	SDL_rect.h \
slouken@5145
    82
	SDL_render.h \
slouken@4929
    83
	SDL_rwops.h \
slouken@4929
    84
	SDL_scancode.h \
slouken@4929
    85
	SDL_shape.h \
slouken@4929
    86
	SDL_stdinc.h \
slouken@4929
    87
	SDL_surface.h \
slouken@4929
    88
	SDL_syswm.h \
slouken@4929
    89
	SDL_thread.h \
slouken@4929
    90
	SDL_timer.h \
slouken@4929
    91
	SDL_touch.h \
slouken@4929
    92
	SDL_types.h \
slouken@4929
    93
	SDL_version.h \
slouken@4929
    94
	SDL_video.h \
slouken@4929
    95
	begin_code.h \
slouken@4929
    96
	close_code.h
slouken@2122
    97
slouken@1362
    98
LT_AGE      = @LT_AGE@
slouken@1362
    99
LT_CURRENT  = @LT_CURRENT@
slouken@1362
   100
LT_RELEASE  = @LT_RELEASE@
slouken@1362
   101
LT_REVISION = @LT_REVISION@
slouken@2156
   102
LT_LDFLAGS  = -no-undefined -rpath $(DESTDIR)$(libdir) -release $(LT_RELEASE) -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
slouken@1362
   103
slouken@5324
   104
all: $(srcdir)/configure Makefile $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET)
slouken@1622
   105
slouken@1622
   106
$(srcdir)/configure: $(srcdir)/configure.in
slouken@1622
   107
	@echo "Warning, configure.in is out of date"
slouken@1622
   108
	#(cd $(srcdir) && sh autogen.sh && sh configure)
slouken@1623
   109
	@sleep 3
slouken@1362
   110
slouken@1362
   111
Makefile: $(srcdir)/Makefile.in
slouken@1362
   112
	$(SHELL) config.status $@
slouken@1362
   113
slouken@3416
   114
Makefile.in:;
slouken@3416
   115
slouken@1362
   116
$(objects):
slouken@1391
   117
	$(SHELL) $(auxdir)/mkinstalldirs $@
slouken@1362
   118
slouken@2982
   119
update-revision:
slouken@2982
   120
	$(SHELL) $(auxdir)/updaterev.sh
slouken@2982
   121
slouken@5346
   122
.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)
slouken@1362
   123
slouken@5345
   124
$(objects)/$(TARGET): $(OBJECTS) $(VERSION_OBJECTS)
slouken@3334
   125
	$(LIBTOOL) --mode=link $(CC) -o $@ $(OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
slouken@1362
   126
slouken@1397
   127
$(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
slouken@1419
   128
	$(AR) cru $@ $(SDLMAIN_OBJECTS)
slouken@1419
   129
	$(RANLIB) $@
slouken@1397
   130
slouken@3352
   131
install: all install-bin install-hdrs install-lib install-data
slouken@1362
   132
install-bin:
slouken@2156
   133
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(bindir)
slouken@2156
   134
	$(INSTALL) -m 755 sdl-config $(DESTDIR)$(bindir)/sdl-config
slouken@5345
   135
install-hdrs: update-revision
slouken@2156
   136
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(includedir)/SDL
slouken@2122
   137
	for file in $(HDRS); do \
slouken@2156
   138
	    $(INSTALL) -m 644 $(srcdir)/include/$$file $(DESTDIR)$(includedir)/SDL/$$file; \
slouken@1362
   139
	done
slouken@6217
   140
	$(INSTALL) -m 644 include/SDL_config_generated.h $(DESTDIR)$(includedir)/SDL/SDL_config_generated.h
slouken@5345
   141
	if test -f include/SDL_revision.h; then \
slouken@5345
   142
	    $(INSTALL) -m 644 include/SDL_revision.h $(DESTDIR)$(includedir)/SDL/SDL_revision.h; \
slouken@5345
   143
	else \
slouken@5345
   144
	    $(INSTALL) -m 644 $(srcdir)/include/SDL_revision.h $(DESTDIR)$(includedir)/SDL/SDL_revision.h; \
slouken@5345
   145
	fi
slouken@5345
   146
slouken@2151
   147
install-lib: $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET)
slouken@2156
   148
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)
slouken@2156
   149
	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(TARGET) $(DESTDIR)$(libdir)/$(TARGET)
slouken@2156
   150
	$(INSTALL) -m 644 $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
slouken@2156
   151
	$(RANLIB) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
slouken@1362
   152
install-data:
slouken@2156
   153
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(datadir)/aclocal
slouken@2156
   154
	$(INSTALL) -m 644 $(srcdir)/sdl.m4 $(DESTDIR)$(datadir)/aclocal/sdl.m4
slouken@2156
   155
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/pkgconfig
slouken@2156
   156
	$(INSTALL) -m 644 sdl.pc $(DESTDIR)$(libdir)/pkgconfig
slouken@1362
   157
slouken@3352
   158
uninstall: uninstall-bin uninstall-hdrs uninstall-lib uninstall-data
slouken@1362
   159
uninstall-bin:
slouken@2156
   160
	rm -f $(DESTDIR)$(bindir)/sdl-config
slouken@1362
   161
uninstall-hdrs:
slouken@2122
   162
	for file in $(HDRS); do \
slouken@2156
   163
	    rm -f $(DESTDIR)$(includedir)/SDL/$$file; \
slouken@1362
   164
	done
slouken@6217
   165
	rm -f $(DESTDIR)$(includedir)/SDL/SDL_config_generated.h
slouken@5310
   166
	rm -f $(DESTDIR)$(includedir)/SDL/SDL_revision.h
slouken@2156
   167
	-rmdir $(DESTDIR)$(includedir)/SDL
slouken@1362
   168
uninstall-lib:
slouken@2156
   169
	$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(TARGET)
slouken@2156
   170
	rm -f $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
slouken@1362
   171
uninstall-data:
slouken@2156
   172
	rm -f $(DESTDIR)$(datadir)/aclocal/sdl.m4
icculus@3355
   173
	rm -f $(DESTDIR)$(libdir)/pkgconfig/sdl.pc
slouken@1362
   174
slouken@1362
   175
clean:
slouken@1362
   176
	rm -rf $(objects)
slouken@1380
   177
	if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
slouken@1362
   178
slouken@1362
   179
distclean: clean
slouken@5345
   180
	rm -f Makefile Makefile.rules sdl-config
slouken@1362
   181
	rm -f SDL.qpg
slouken@3334
   182
	rm -f config.status config.cache config.log libtool
slouken@1362
   183
	rm -rf $(srcdir)/autom4te*
slouken@1603
   184
	find $(srcdir) \( \
slouken@1603
   185
	    -name '*~' -o \
slouken@1603
   186
	    -name '*.bak' -o \
slouken@1603
   187
	    -name '*.old' -o \
slouken@1603
   188
	    -name '*.rej' -o \
slouken@1603
   189
	    -name '*.orig' -o \
slouken@1603
   190
	    -name '.#*' \) \
slouken@1362
   191
	    -exec rm -f {} \;
slouken@1380
   192
	if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
slouken@1362
   193
slouken@1362
   194
dist $(distfile):
slouken@1391
   195
	$(SHELL) $(auxdir)/mkinstalldirs $(distdir)
slouken@5498
   196
	(cd $(srcdir); tar cf - $(SRC_DIST)) | (cd $(distdir); tar xf -)
slouken@5498
   197
	tar cf - $(GEN_DIST) | (cd $(distdir); tar xf -)
slouken@1846
   198
	find $(distdir) \( \
slouken@1845
   199
	    -name '*~' -o \
slouken@1845
   200
	    -name '*.bak' -o \
slouken@1845
   201
	    -name '*.old' -o \
slouken@1845
   202
	    -name '*.rej' -o \
slouken@1845
   203
	    -name '*.orig' -o \
slouken@1845
   204
	    -name '.#*' \) \
slouken@1845
   205
	    -exec rm -f {} \;
slouken@1848
   206
	if test -f $(distdir)/test/Makefile; then (cd $(distdir)/test && make distclean); fi
slouken@1362
   207
	tar cvf - $(distdir) | gzip --best >$(distfile)
slouken@1362
   208
	rm -rf $(distdir)
slouken@1362
   209
slouken@1362
   210
rpm: $(distfile)
slouken@1362
   211
	rpmbuild -ta $?
slouken@1424
   212
slouken@1895
   213
# Run indent on the source to standardize coding style
slouken@1895
   214
indent:
slouken@1895
   215
	@echo "Running indent... modified files:"
slouken@1895
   216
	@cd $(srcdir) && \
slouken@1895
   217
	find . \( \
slouken@1895
   218
	    -name '*.h' -o \
slouken@1895
   219
	    -name '*.c' -o \
slouken@1895
   220
	    -name '*.cc' \) \
slouken@2220
   221
	    -print | fgrep -v ./Xcode | \
slouken@1895
   222
	while read file; do \
slouken@1895
   223
	    indent "$$file" -o "$$file.indent"; \
slouken@1895
   224
	    if cmp "$$file" "$$file.indent" >/dev/null; then \
slouken@1895
   225
	        rm -f "$$file.indent"; \
slouken@1895
   226
	    else \
slouken@1895
   227
	        echo "$$file"; \
slouken@1895
   228
	        mv -f "$$file.indent" "$$file"; \
slouken@1895
   229
	    fi; \
slouken@1895
   230
	done
slouken@1895
   231
slouken@1895
   232
# Run indent and then commit modified files
slouken@1895
   233
commit: indent
slouken@5310
   234
	hg commit