~baltix/+junk/irrlicht-test

« back to all changes in this revision

Viewing changes to source/Irrlicht/libpng/contrib/gregbook/Makefile.mingw32

  • Committer: Mantas Kriaučiūnas
  • Date: 2011-07-18 13:06:25 UTC
  • Revision ID: mantas@akl.lt-20110718130625-c5pvifp61e7kj1ol
Included whole irrlicht SVN libraries to work around launchpad recipe issue with quilt, see https://answers.launchpad.net/launchpad/+question/165193

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Sample makefile for rpng-win / rpng2-win / wpng using mingw32-gcc and make.
 
2
# Greg Roelofs
 
3
# Last modified:  2 June 2007
 
4
#
 
5
#       The programs built by this makefile are described in the book,
 
6
#       "PNG:  The Definitive Guide," by Greg Roelofs (O'Reilly and
 
7
#       Associates, 1999).  Go buy a copy, eh?  Well, OK, it's not
 
8
#       generally for sale anymore, but it's the thought that counts,
 
9
#       right?  (Hint:  http://www.libpng.org/pub/png/book/ )
 
10
#
 
11
# Invoke this makefile from a DOS-prompt window via:
 
12
#
 
13
#       make -f Makefile.mingw32
 
14
#
 
15
# This makefile assumes libpng and zlib have already been built or downloaded
 
16
# and are in subdirectories at the same level as the current subdirectory
 
17
# (as indicated by the PNGDIR and ZDIR macros below).  It makes no assumptions
 
18
# at all about the mingw32 installation tree (W32DIR).  Edit as appropriate.
 
19
#
 
20
# Note that the names of the dynamic and static libpng and zlib libraries
 
21
# used below may change in later releases of the libraries.  This makefile
 
22
# builds both statically and dynamically linked executables by default.
 
23
# (You need only one set, but for testing it can be handy to have both.)
 
24
 
 
25
 
 
26
# macros --------------------------------------------------------------------
 
27
 
 
28
#PNGDIR = ../..#                for libpng-x.y.z/contrib/gregbook builds
 
29
PNGDIR = ../libpng-win32
 
30
PNGINC = -I$(PNGDIR)
 
31
PNGLIBd = $(PNGDIR)/libpng.dll.a        # dynamically linked
 
32
PNGLIBs = $(PNGDIR)/libpng.a            # statically linked, local libpng
 
33
 
 
34
#ZDIR = ../../../zlib-win32#    for libpng-x.y.z/contrib/gregbook builds
 
35
ZDIR = ../zlib-win32
 
36
ZINC = -I$(ZDIR)
 
37
ZLIBd = $(ZDIR)/libzdll.a
 
38
ZLIBs = $(ZDIR)/libz.a
 
39
 
 
40
# change this to be the path where mingw32 installs its stuff:
 
41
W32DIR =
 
42
#W32DIR = /usr/local/cross-tools/i386-mingw32msvc
 
43
W32INC = -I$(W32DIR)/include
 
44
W32LIB = $(W32DIR)/lib/libuser32.a $(W32DIR)/lib/libgdi32.a
 
45
 
 
46
CC = gcc
 
47
#CC = i386-mingw32msvc-gcc #    e.g., Linux -> Win32 cross-compilation
 
48
LD = $(CC)
 
49
RM = rm -f
 
50
CFLAGS = -O -Wall $(INCS) $(MINGW_CCFLAGS)
 
51
# [note that -Wall is a gcc-specific compilation flag ("most warnings on")]
 
52
# [-ansi, -pedantic and -W can also be used]
 
53
LDFLAGS = $(MINGW_LDFLAGS)
 
54
O = .o
 
55
E = .exe
 
56
 
 
57
INCS = $(PNGINC) $(ZINC) $(W32INC)
 
58
RLIBSd = $(PNGLIBd) $(ZLIBd) $(W32LIB) -lm
 
59
RLIBSs = $(PNGLIBs) $(ZLIBs) $(W32LIB) -lm
 
60
WLIBSd = $(PNGLIBd) $(ZLIBd)
 
61
WLIBSs = $(PNGLIBs) $(ZLIBs)
 
62
 
 
63
RPNG   = rpng-win
 
64
RPNG2  = rpng2-win
 
65
WPNG   = wpng
 
66
 
 
67
ROBJSd  = $(RPNG)$(O) readpng.pic$(O)
 
68
ROBJS2d = $(RPNG2)$(O) readpng2.pic$(O)
 
69
WOBJSd  = $(WPNG)$(O) writepng.pic$(O)
 
70
 
 
71
RPNGs  = $(RPNG)-static
 
72
RPNG2s = $(RPNG2)-static
 
73
WPNGs  = $(WPNG)-static
 
74
 
 
75
ROBJSs  = $(RPNG)$(O) readpng$(O)
 
76
ROBJS2s = $(RPNG2)$(O) readpng2$(O)
 
77
WOBJSs  = $(WPNG)$(O) writepng$(O)
 
78
 
 
79
STATIC_EXES  = $(RPNGs)$(E) $(RPNG2s)$(E) $(WPNGs)$(E)
 
80
DYNAMIC_EXES = $(RPNG)$(E) $(RPNG2)$(E) $(WPNG)$(E)
 
81
 
 
82
EXES = $(STATIC_EXES) $(DYNAMIC_EXES)
 
83
 
 
84
 
 
85
# implicit make rules -------------------------------------------------------
 
86
 
 
87
.c$(O):
 
88
        $(CC) -c $(CFLAGS) $<
 
89
 
 
90
%.pic$(O): %.c
 
91
        $(CC) -c $(CFLAGS) -DPNG_BUILD_DLL -o $@ $<
 
92
 
 
93
 
 
94
# dependencies --------------------------------------------------------------
 
95
 
 
96
all:  $(EXES)
 
97
 
 
98
$(RPNGs)$(E): $(ROBJSs)
 
99
        $(LD) $(LDFLAGS) -o $@ $(ROBJSs) $(RLIBSs)
 
100
 
 
101
$(RPNG)$(E): $(ROBJSd)
 
102
        $(LD) $(LDFLAGS) -o $@ $(ROBJSd) $(RLIBSd)
 
103
 
 
104
$(RPNG2s)$(E): $(ROBJS2s)
 
105
        $(LD) $(LDFLAGS) -o $@ $(ROBJS2s) $(RLIBSs)
 
106
 
 
107
$(RPNG2)$(E): $(ROBJS2d)
 
108
        $(LD) $(LDFLAGS) -o $@ $(ROBJS2d) $(RLIBSd)
 
109
 
 
110
$(WPNGs)$(E): $(WOBJSs)
 
111
        $(LD) $(LDFLAGS) -o $@ $(WOBJSs) $(WLIBSs)
 
112
 
 
113
$(WPNG)$(E): $(WOBJSd)
 
114
        $(LD) $(LDFLAGS) -o $@ $(WOBJSd) $(WLIBSd)
 
115
 
 
116
$(RPNG)$(O):    $(RPNG).c readpng.h
 
117
$(RPNG2)$(O):   $(RPNG2).c readpng2.h
 
118
$(WPNG)$(O):    $(WPNG).c writepng.h
 
119
 
 
120
readpng$(O) readpng.pic$(O):    readpng.c readpng.h
 
121
readpng2$(O) readpng2.pic$(O):  readpng2.c readpng2.h
 
122
writepng$(O) writepng.pic$(O):  writepng.c writepng.h
 
123
 
 
124
 
 
125
# maintenance ---------------------------------------------------------------
 
126
 
 
127
clean:
 
128
        $(RM) $(EXES)
 
129
        $(RM) $(ROBJSs) $(ROBJS2s) $(WOBJSs)
 
130
        $(RM) $(ROBJSd) $(ROBJS2d) $(WOBJSd)