makefile.vcwin32 2.8 KB
Newer Older
1 2
# makefile for libpng
# Copyright (C) 1998 Tim Wegner
3
# Copyright (C) 2006 Glenn Randers-Pehrson
4 5
# For conditions of distribution and use, see copyright notice in png.h
# Assumes that zlib.lib, zconf.h, and zlib.h have been copied to ..\zlib
6 7
# To use, do "nmake /f scripts\makefile.vcwin32"

8 9 10 11 12 13 14 15 16 17 18 19 20
# -------- Microsoft Visual C++ 2.0 and later, no assembler code --------
# If you want to use assembler (MMX) code, use makefile.vcawin32 instead.

# Compiler, linker, librarian, and other tools
CC = cl
LD = link
AR = lib
CFLAGS  = -nologo -MD -O2 -W3 -I..\zlib
LDFLAGS = -nologo
ARFLAGS = -nologo
RM = del

# File extensions
21 22 23
O=.obj

#uncomment next to put error messages in a file
24
#ERRFILE= >> pngerrs.log
25

26
# Variables
27
OBJS1 = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O) pnggccrd$(O)
28 29 30
OBJS2 = pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O)
OBJS3 = pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O)
OBJS  = $(OBJS1) $(OBJS2) $(OBJS3)
31

32
# Targets
33
all: libpng.lib pngdefs.h
34

35 36 37
pngdefs.h:
	echo "/* pngdefs.h was built by makefile.vcwin32 */" > pngdefs.h
	echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
38

39
png$(O): png.h pngconf.h pngdefs.h pngpriv.h
40
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
41

42
pngset$(O): png.h pngconf.h pngdefs.h pngpriv.h
43
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
44

45
pnggccrd$(O): png.h pngconf.h pngdefs.h pngpriv.h
46 47
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)

48
pngget$(O): png.h pngconf.h pngdefs.h pngpriv.h
49
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
50

51
pngread$(O): png.h pngconf.h pngdefs.h pngpriv.h
52
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
53

54
pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
55
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
56

57
pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
58 59
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)

60
pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
61
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
62

63
pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
64
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
65

66
pngmem$(O): png.h pngconf.h pngdefs.h pngpriv.h
67
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
68

69
pngrio$(O): png.h pngconf.h pngdefs.h pngpriv.h
70
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
71

72
pngwio$(O): png.h pngconf.h pngdefs.h pngpriv.h
73
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
74

75
pngtest$(O): png.h pngconf.h pngdefs.h pngpriv.h
76
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
77

78
pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
79
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
80

81
pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
82
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
83

84
pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
85
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
86

87
pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
88
	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
89

90 91 92
libpng.lib: $(OBJS)
	-$(RM) $@
	$(AR) $(ARFLAGS) -out:$@ $(OBJS) $(ERRFILE)
93

94 95
pngtest.exe: pngtest$(O) libpng.lib
	$(LD) $(LDFLAGS) -out:$@ pngtest$(O) libpng.lib ..\zlib\zlib.lib $(ERRFILE)
96 97 98 99

test: pngtest.exe
	pngtest

100 101 102 103 104 105
clean:
	-$(RM) *$(O)
	-$(RM) libpng.lib
	-$(RM) pngtest.exe
	-$(RM) pngout.png

106 107
# End of makefile for libpng