1# makefile for libpng 2# Copyright (C) 1998 Tim Wegner 3# Copyright (C) 2006,2009,2011,2014 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 14# Compiler, linker, librarian, and other tools 15CC = cl 16LD = link 17AR = lib 18CPPFLAGS = -I..\zlib 19CFLAGS = -nologo -D_CRT_SECURE_NO_DEPRECATE -MD -O2 -W3 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 39# see scripts/pnglibconf.mak for more options 40pnglibconf.h: scripts\pnglibconf.h.prebuilt 41 copy scripts\pnglibconf.h.prebuilt $@ 42 43png$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 44 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 45 46pngset$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 47 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 48 49pngget$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 50 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 51 52pngread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 53 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 54 55pngpread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 56 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 57 58pngrtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 59 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 60 61pngrutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 62 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 63 64pngerror$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 65 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 66 67pngmem$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 68 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 69 70pngrio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 71 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 72 73pngwio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 74 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 75 76pngtrans$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 77 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 78 79pngwrite$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 80 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 81 82pngwtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 83 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 84 85pngwutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 86 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 87 88libpng.lib: $(OBJS) 89 -$(RM) $@ 90 $(AR) $(ARFLAGS) -out:$@ $(OBJS) $(ERRFILE) 91 92pngtest$(O): png.h pngconf.h pnglibconf.h 93 $(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE) 94 95pngtest.exe: pngtest$(O) libpng.lib 96 $(LD) $(LDFLAGS) -out:$@ pngtest$(O) libpng.lib ..\zlib\zlib.lib $(ERRFILE) 97 98test: pngtest.exe 99 pngtest 100 101clean: 102 -$(RM) *$(O) 103 -$(RM) libpng.lib 104 -$(RM) pnglibconf.h 105 -$(RM) pngtest.exe 106 -$(RM) pngout.png 107 108# End of makefile for libpng 109 110