Makefile.in
author Sam Lantinga <slouken@libsdl.org>
Sat, 26 Sep 2009 09:44:52 +0000
changeset 3311 0679e03ef8fa
parent 3272 e8f63b28947d
child 3334 61ea9005fddf
permissions -rw-r--r--
Fixed bug #704

Dennis 2009-02-20 15:36:49 PST

When trying to run a parallel build, gcc will not be able to find SDL_revision.h
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
depend	= build-deps
slouken@1362
     7
prefix = @prefix@
slouken@1362
     8
exec_prefix = @exec_prefix@
slouken@2156
     9
bindir	= @bindir@
slouken@2156
    10
libdir  = @libdir@
slouken@2156
    11
includedir = @includedir@
slouken@2156
    12
datarootdir = @datarootdir@
slouken@2156
    13
datadir	= @datadir@
slouken@2156
    14
mandir	= @mandir@
slouken@1391
    15
auxdir	= @ac_aux_dir@
slouken@1362
    16
distpath = $(srcdir)/..
slouken@1362
    17
distdir = SDL-@SDL_VERSION@
slouken@1362
    18
distfile = $(distdir).tar.gz
slouken@1362
    19
slouken@1380
    20
@SET_MAKE@
slouken@1362
    21
SHELL	= @SHELL@
slouken@1362
    22
CC      = @CC@
slouken@1362
    23
INCLUDE = @INCLUDE@
slouken@1362
    24
CFLAGS  = @BUILD_CFLAGS@
slouken@1521
    25
EXTRA_CFLAGS = @EXTRA_CFLAGS@
slouken@1393
    26
LDFLAGS = @BUILD_LDFLAGS@
slouken@1521
    27
EXTRA_LDFLAGS = @EXTRA_LDFLAGS@
slouken@1362
    28
LIBTOOL = @LIBTOOL@
slouken@1362
    29
INSTALL = @INSTALL@
slouken@1362
    30
NASM	= @NASM@ @NASMFLAGS@
slouken@1419
    31
AR	= @AR@
slouken@1419
    32
RANLIB	= @RANLIB@
slouken@2204
    33
WINDRES	= @WINDRES@
slouken@1362
    34
slouken@1362
    35
TARGET  = libSDL.la
slouken@1362
    36
SOURCES = @SOURCES@
slouken@1362
    37
OBJECTS = @OBJECTS@
slouken@1362
    38
slouken@1397
    39
SDLMAIN_TARGET = libSDLmain.a
slouken@1397
    40
SDLMAIN_SOURCES = @SDLMAIN_SOURCES@
slouken@1397
    41
SDLMAIN_OBJECTS = @SDLMAIN_OBJECTS@
slouken@1397
    42
slouken@3257
    43
# PS3 SPU programs
slouken@3257
    44
SPU_GCC = @SPU_GCC@
slouken@3257
    45
EMBEDSPU = @EMBEDSPU@
slouken@3258
    46
#include $(srcdir)/src/video/ps3/spulibs/Makefile
slouken@3257
    47
slouken@3272
    48
DIST = acinclude.m4 autogen.sh Borland.html Borland.zip BUGS build-scripts configure configure.in COPYING CREDITS docs docs.html include INSTALL Makefile.minimal Makefile.in README* sdl-config.in sdl.m4 sdl.pc.in SDL.qpg.in SDL.spec SDL.spec.in src test TODO VisualC.html VisualC VisualCE Watcom-Win32.zip WhatsNew Xcode
slouken@1362
    49
slouken@3263
    50
HDRS = SDL.h SDL_atomic.h SDL_audio.h SDL_compat.h SDL_cpuinfo.h SDL_endian.h SDL_error.h SDL_events.h SDL_haptic.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_opengles.h SDL_pixels.h SDL_platform.h SDL_power.h SDL_quit.h SDL_rect.h SDL_revision.h SDL_rwops.h SDL_scancode.h SDL_stdinc.h SDL_surface.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
slouken@2122
    51
slouken@1362
    52
LT_AGE      = @LT_AGE@
slouken@1362
    53
LT_CURRENT  = @LT_CURRENT@
slouken@1362
    54
LT_RELEASE  = @LT_RELEASE@
slouken@1362
    55
LT_REVISION = @LT_REVISION@
slouken@2156
    56
LT_LDFLAGS  = -no-undefined -rpath $(DESTDIR)$(libdir) -release $(LT_RELEASE) -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
slouken@1362
    57
slouken@3311
    58
all: $(srcdir)/configure Makefile $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET)
slouken@1622
    59
slouken@1622
    60
$(srcdir)/configure: $(srcdir)/configure.in
slouken@1622
    61
	@echo "Warning, configure.in is out of date"
slouken@1622
    62
	#(cd $(srcdir) && sh autogen.sh && sh configure)
slouken@1623
    63
	@sleep 3
slouken@1362
    64
slouken@1362
    65
Makefile: $(srcdir)/Makefile.in
slouken@1362
    66
	$(SHELL) config.status $@
slouken@1362
    67
slouken@1362
    68
$(objects):
slouken@1391
    69
	$(SHELL) $(auxdir)/mkinstalldirs $@
slouken@1362
    70
slouken@3311
    71
# To make sure parallel builds will not fail
slouken@3311
    72
$(srcdir)/include/SDL_revision.h: update-revision
slouken@3311
    73
slouken@2982
    74
update-revision:
slouken@2982
    75
	$(SHELL) $(auxdir)/updaterev.sh
slouken@2982
    76
slouken@2982
    77
.PHONY: all update-revision 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
slouken@3311
    78
depend: update-revision
slouken@1634
    79
	@SOURCES="$(SOURCES)" INCLUDE="$(INCLUDE)" output="$(depend)" \
slouken@1391
    80
	$(SHELL) $(auxdir)/makedep.sh
slouken@1419
    81
	@for src in $(SDLMAIN_SOURCES); do \
slouken@1397
    82
	    obj=`echo $$src | sed -e 's|.*/||' -e 's|\.[^\.]*$$|.o|'`; \
slouken@1634
    83
	    echo "\$$(objects)/$$obj: $$src" >>$(depend); \
slouken@1522
    84
	    echo "	\$$(CC) \$$(CFLAGS) \$$(EXTRA_CFLAGS) -c $$src -o \$$@" >>$(depend); \
slouken@1397
    85
	done
slouken@1362
    86
slouken@1362
    87
include $(depend)
slouken@1362
    88
slouken@2984
    89
$(objects)/$(TARGET): $(OBJECTS)
slouken@1521
    90
	$(LIBTOOL) --mode=link $(CC) -o $@ $(OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
slouken@1362
    91
slouken@1397
    92
$(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
slouken@1419
    93
	$(AR) cru $@ $(SDLMAIN_OBJECTS)
slouken@1419
    94
	$(RANLIB) $@
slouken@1397
    95
slouken@1764
    96
install: all install-bin install-hdrs install-lib install-data install-man
slouken@1362
    97
install-bin:
slouken@2156
    98
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(bindir)
slouken@2156
    99
	$(INSTALL) -m 755 sdl-config $(DESTDIR)$(bindir)/sdl-config
slouken@1362
   100
install-hdrs:
slouken@2156
   101
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(includedir)/SDL
slouken@2122
   102
	for file in $(HDRS); do \
slouken@2156
   103
	    $(INSTALL) -m 644 $(srcdir)/include/$$file $(DESTDIR)$(includedir)/SDL/$$file; \
slouken@1362
   104
	done
slouken@2156
   105
	$(INSTALL) -m 644 include/SDL_config.h $(DESTDIR)$(includedir)/SDL/SDL_config.h
slouken@2151
   106
install-lib: $(objects) $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET)
slouken@2156
   107
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)
slouken@2156
   108
	$(LIBTOOL) --mode=install $(INSTALL) $(objects)/$(TARGET) $(DESTDIR)$(libdir)/$(TARGET)
slouken@2156
   109
	$(INSTALL) -m 644 $(objects)/$(SDLMAIN_TARGET) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
slouken@2156
   110
	$(RANLIB) $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
slouken@1362
   111
install-data:
slouken@2156
   112
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(datadir)/aclocal
slouken@2156
   113
	$(INSTALL) -m 644 $(srcdir)/sdl.m4 $(DESTDIR)$(datadir)/aclocal/sdl.m4
slouken@2156
   114
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(libdir)/pkgconfig
slouken@2156
   115
	$(INSTALL) -m 644 sdl.pc $(DESTDIR)$(libdir)/pkgconfig
slouken@1362
   116
install-man:
slouken@2156
   117
	$(SHELL) $(auxdir)/mkinstalldirs $(DESTDIR)$(mandir)/man3
slouken@1362
   118
	for src in $(srcdir)/docs/man3/*.3; do \
slouken@1362
   119
	    file=`echo $$src | sed -e 's|^.*/||'`; \
slouken@2156
   120
	    $(INSTALL) -m 644 $$src $(DESTDIR)$(mandir)/man3/$$file; \
slouken@1362
   121
	done
slouken@1362
   122
slouken@1603
   123
uninstall: uninstall-bin uninstall-hdrs uninstall-lib uninstall-data uninstall-man
slouken@1362
   124
uninstall-bin:
slouken@2156
   125
	rm -f $(DESTDIR)$(bindir)/sdl-config
slouken@1362
   126
uninstall-hdrs:
slouken@2122
   127
	for file in $(HDRS); do \
slouken@2156
   128
	    rm -f $(DESTDIR)$(includedir)/SDL/$$file; \
slouken@1362
   129
	done
slouken@2156
   130
	rm -f $(DESTDIR)$(includedir)/SDL/SDL_config.h
slouken@2156
   131
	-rmdir $(DESTDIR)$(includedir)/SDL
slouken@1362
   132
uninstall-lib:
slouken@2156
   133
	$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$(TARGET)
slouken@2156
   134
	rm -f $(DESTDIR)$(libdir)/$(SDLMAIN_TARGET)
slouken@1362
   135
uninstall-data:
slouken@2156
   136
	rm -f $(DESTDIR)$(datadir)/aclocal/sdl.m4
slouken@1362
   137
uninstall-man:
slouken@1362
   138
	for src in $(srcdir)/docs/man3/*.3; do \
slouken@1362
   139
	    file=`echo $$src | sed -e 's|^.*/||'`; \
slouken@2156
   140
	    rm -f $(DESTDIR)$(mandir)/man3/$$file; \
slouken@1362
   141
	done
slouken@1362
   142
slouken@1362
   143
clean:
slouken@1362
   144
	rm -rf $(objects)
slouken@1380
   145
	if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
slouken@1362
   146
slouken@1362
   147
distclean: clean
slouken@1362
   148
	rm -f Makefile include/SDL_config.h sdl-config
slouken@1362
   149
	rm -f SDL.qpg
slouken@3088
   150
	rm -f config.status config.cache config.log libtool $(depend)
slouken@1362
   151
	rm -rf $(srcdir)/autom4te*
slouken@1603
   152
	find $(srcdir) \( \
slouken@1603
   153
	    -name '*~' -o \
slouken@1603
   154
	    -name '*.bak' -o \
slouken@1603
   155
	    -name '*.old' -o \
slouken@1603
   156
	    -name '*.rej' -o \
slouken@1603
   157
	    -name '*.orig' -o \
slouken@1603
   158
	    -name '.#*' \) \
slouken@1362
   159
	    -exec rm -f {} \;
slouken@1603
   160
	cp $(srcdir)/include/SDL_config.h.default $(srcdir)/include/SDL_config.h
slouken@1380
   161
	if test -f test/Makefile; then (cd test; $(MAKE) $@); fi
slouken@1362
   162
slouken@1362
   163
dist $(distfile):
slouken@1391
   164
	$(SHELL) $(auxdir)/mkinstalldirs $(distdir)
slouken@1362
   165
	tar cf - $(DIST) | (cd $(distdir); tar xf -)
slouken@1603
   166
	cp $(distdir)/include/SDL_config.h.default $(distdir)/include/SDL_config.h
slouken@2982
   167
	$(SHELL) $(distdir)/build-scripts/updaterev.sh
slouken@1651
   168
	rm -rf `find $(distdir) -name .svn`
slouken@1846
   169
	find $(distdir) \( \
slouken@1845
   170
	    -name '*~' -o \
slouken@1845
   171
	    -name '*.bak' -o \
slouken@1845
   172
	    -name '*.old' -o \
slouken@1845
   173
	    -name '*.rej' -o \
slouken@1845
   174
	    -name '*.orig' -o \
slouken@1845
   175
	    -name '.#*' \) \
slouken@1845
   176
	    -exec rm -f {} \;
slouken@1848
   177
	if test -f $(distdir)/test/Makefile; then (cd $(distdir)/test && make distclean); fi
slouken@1362
   178
	tar cvf - $(distdir) | gzip --best >$(distfile)
slouken@1362
   179
	rm -rf $(distdir)
slouken@1362
   180
slouken@1362
   181
rpm: $(distfile)
slouken@1362
   182
	rpmbuild -ta $?
slouken@1424
   183
slouken@1895
   184
# Run indent on the source to standardize coding style
slouken@1895
   185
indent:
slouken@1895
   186
	@echo "Running indent... modified files:"
slouken@1895
   187
	@cd $(srcdir) && \
slouken@1895
   188
	find . \( \
slouken@1895
   189
	    -name '*.h' -o \
slouken@1895
   190
	    -name '*.c' -o \
slouken@1895
   191
	    -name '*.cc' \) \
slouken@2220
   192
	    -print | fgrep -v ./Xcode | \
slouken@1895
   193
	while read file; do \
slouken@1895
   194
	    indent "$$file" -o "$$file.indent"; \
slouken@1895
   195
	    if cmp "$$file" "$$file.indent" >/dev/null; then \
slouken@1895
   196
	        rm -f "$$file.indent"; \
slouken@1895
   197
	    else \
slouken@1895
   198
	        echo "$$file"; \
slouken@1895
   199
	        mv -f "$$file.indent" "$$file"; \
slouken@1895
   200
	    fi; \
slouken@1895
   201
	done
slouken@1895
   202
slouken@1895
   203
# Run indent and then commit modified files
slouken@1895
   204
commit: indent
slouken@1895
   205
	svn commit
slouken@1895
   206
slouken@1651
   207
# Create a SVN snapshot that people can run update on
slouken@1424
   208
snapshot:
slouken@3027
   209
	$(SHELL) $(auxdir)/snapshot.sh