Home | History | Annotate | Download | only in scripts
      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
     15 CC = cl
     16 LD = link
     17 AR = lib
     18 CPPFLAGS = -I..\zlib
     19 CFLAGS  = -nologo -D_CRT_SECURE_NO_DEPRECATE -MD -O2 -W3
     20 LDFLAGS = -nologo
     21 ARFLAGS = -nologo
     22 RM = del
     23 
     24 # File extensions
     25 O=.obj
     26 
     27 #uncomment next to put error messages in a file
     28 #ERRFILE= >> pngerrs.log
     29 
     30 # Variables
     31 OBJS1 = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O)
     32 OBJS2 = pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O)
     33 OBJS3 = pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O)
     34 OBJS  = $(OBJS1) $(OBJS2) $(OBJS3)
     35 
     36 # Targets
     37 all: libpng.lib
     38 
     39 # see scripts/pnglibconf.mak for more options
     40 pnglibconf.h: scripts\pnglibconf.h.prebuilt
     41        copy scripts\pnglibconf.h.prebuilt $@
     42 
     43 png$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     44 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     45 
     46 pngset$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     47 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     48 
     49 pngget$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     50 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     51 
     52 pngread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     53 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     54 
     55 pngpread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     56 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     57 
     58 pngrtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     59 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     60 
     61 pngrutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     62 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     63 
     64 pngerror$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     65 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     66 
     67 pngmem$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     68 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     69 
     70 pngrio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     71 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     72 
     73 pngwio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     74 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     75 
     76 pngtrans$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     77 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     78 
     79 pngwrite$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     80 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     81 
     82 pngwtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     83 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     84 
     85 pngwutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
     86 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     87 
     88 libpng.lib: $(OBJS)
     89 	-$(RM) $@
     90 	$(AR) $(ARFLAGS) -out:$@ $(OBJS) $(ERRFILE)
     91 
     92 pngtest$(O): png.h pngconf.h pnglibconf.h
     93 	$(CC) -c $(CPPFLAGS) $(CFLAGS) $*.c $(ERRFILE)
     94 
     95 pngtest.exe: pngtest$(O) libpng.lib
     96 	$(LD) $(LDFLAGS) -out:$@ pngtest$(O) libpng.lib ..\zlib\zlib.lib $(ERRFILE)
     97 
     98 test: pngtest.exe
     99 	pngtest
    100 
    101 clean:
    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