File: Makefile.w32

package info (click to toggle)
pngquant 1.0-3
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 152 kB
  • ctags: 105
  • sloc: ansic: 1,471; makefile: 7
file content (86 lines) | stat: -rw-r--r-- 2,417 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# MSVC/NMAKE makefile for pngquant.
# Greg Roelofs
# Last modified:  28 December 2000
#
# Invoke this makefile from a DOS prompt window via:
#
#	%devstudio%\vc\bin\vcvars32.bat
#	nmake -nologo -f Makefile.w32
#
# where %devstudio% is the installation directory for MSVC / DevStudio.  If
# you get "environment out of space" errors, create a desktop shortcut with
# "c:\windows\command.com /e:4096" as the program command line and set the
# working directory to this directory.  Then double-click to open the new
# DOS-prompt window with a bigger environment and retry the commands above.
# 
# This makefile assumes zlib has already been built or downloaded and is in
# a subdirectory at the same level as the current subdirectory (as indicated
# by the ZPATH macro below).  Edit as appropriate.
#
# Note that the names of the dynamic and static zlib libraries used below may
# change in later releases of the library.  This makefile builds statically
# linked executables, but that can be changed by uncommenting the appropriate
# ZLIB lines.

!include <ntwin32.mak>


# macros --------------------------------------------------------------------

PNGPATH = ../libpng
PNGINC = -I$(PNGPATH)
PNGLIB = $(PNGPATH)/libpng.lib

ZPATH = ../zlib
ZINC = -I$(ZPATH)
#ZLIB = $(ZPATH)/zlibdll.lib
ZLIB = $(ZPATH)/zlibstat.lib

INCS = $(PNGINC) $(ZINC)
LIBS = $(PNGLIB) $(ZLIB)

CC = cl
LD = link
RM = del
CFLAGS = -nologo -O -W3 $(INCS) -DWIN32 $(cvars)
# [note that -W3 is an MSVC-specific compilation flag ("all warnings on")]
# [see %devstudio%\vc\include\win32.mak for cvars macro definition]
O = .obj
E = .exe

LDFLAGS = -nologo

PROG = pngquant

OBJS  = $(PROG)$(O) rwpng$(O)

EXES = $(PROG)$(E)


# implicit make rules -------------------------------------------------------

.c$(O):
	$(CC) -c $(CFLAGS) $<


# dependencies --------------------------------------------------------------

all:  $(EXES)

# setargv.obj expands wildcards and is included as part of MSVC; may be called
# "wildargs.obj" (or similar) for Borland or Watcom compilers
$(PROG)$(E): $(OBJS)
	$(LD) $(LDFLAGS) -out:$@ $(OBJS) setargv.obj $(LIBS)

$(PROG)$(O):	$(PROG).c


# maintenance ---------------------------------------------------------------

clean:
#	ideally we could just do this:
#	$(RM) $(EXES) $(ROBJS) $(ROBJS2) $(WOBJS)
#	...but the Windows "DEL" command is none too bright, so:
	$(RM) $(PROG)$(E)
	$(RM) $(PROG)$(O)
	$(RM) rwpng$(O)