1# makefile for libpng
2# Copyright (C) 1998 Tim Wegner
3# Copyright (C) 2006,2009 Glenn Randers-Pehrson
4#
5# This code is released under the libpng license.
6# For conditions of distribution and use, see the disclaimer
7# and license in png.h
8#
9# Assumes that zlib.lib, zconf.h, and zlib.h have been copied to ..\zlib
10# To use, do "nmake /f scripts\makefile.vcwin32"
11
12# -------- Microsoft Visual C++ 2.0 and later, no assembler code --------
13# If you want to use assembler (MMX) code, use makefile.vcawin32 instead.
14
15# Compiler, linker, librarian, and other tools
16CC = cl
17LD = link
18AR = lib
19CFLAGS  = -nologo -DPNG_NO_MMX_CODE -MD -O2 -W3 -I..\zlib
20LDFLAGS = -nologo
21ARFLAGS = -nologo
22RM = del
23
24# File extensions
25O=.obj
26
27#uncomment next to put error messages in a file
28#ERRFILE= >> pngerrs.log
29
30# Variables
31OBJS1 = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O)
32OBJS2 = pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O)
33OBJS3 = pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O)
34OBJS  = $(OBJS1) $(OBJS2) $(OBJS3)
35
36# Targets
37all: libpng.lib
38
39png$(O): png.h pngconf.h
40	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
41
42pngset$(O): png.h pngconf.h
43	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
44
45pngget$(O): png.h pngconf.h
46	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
47
48pngread$(O): png.h pngconf.h
49	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
50
51pngpread$(O): png.h pngconf.h
52	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
53
54pngrtran$(O): png.h pngconf.h
55	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
56
57pngrutil$(O): png.h pngconf.h
58	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
59
60pngerror$(O): png.h pngconf.h
61	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
62
63pngmem$(O): png.h pngconf.h
64	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
65
66pngrio$(O): png.h pngconf.h
67	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
68
69pngwio$(O): png.h pngconf.h
70	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
71
72pngtrans$(O): png.h pngconf.h
73	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
74
75pngwrite$(O): png.h pngconf.h
76	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
77
78pngwtran$(O): png.h pngconf.h
79	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
80
81pngwutil$(O): png.h pngconf.h
82	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
83
84libpng.lib: $(OBJS)
85	-$(RM) $@
86	$(AR) $(ARFLAGS) -out:$@ $(OBJS) $(ERRFILE)
87
88pngtest$(O): png.h pngconf.h
89	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
90
91pngtest.exe: pngtest$(O) libpng.lib
92	$(LD) $(LDFLAGS) -out:$@ pngtest$(O) libpng.lib ..\zlib\zlib.lib $(ERRFILE)
93
94test: pngtest.exe
95	pngtest
96
97clean:
98	-$(RM) *$(O)
99	-$(RM) libpng.lib
100	-$(RM) pngtest.exe
101	-$(RM) pngout.png
102
103# End of makefile for libpng
104
105