makefile.ibmc 2.8 KB
Newer Older
1 2
# Makefile for libpng (static)
# IBM C version 3.x for Win32 and OS/2
3
# Copyright (C) 2006, 2014 Glenn Randers-Pehrson
4
# Copyright (C) 2000 Cosmin Truta
5
#
6
# This code is released under the libpng license.
7
# For conditions of distribution and use, see the disclaimer
8
# and license in png.h
9
#
10 11 12
# Notes:
#   Derived from makefile.std
#   All modules are compiled in C mode
13
#   Tested under Win32, expected to work under OS/2
14 15 16 17 18 19 20 21 22 23
#   Can be easily adapted for IBM VisualAge/C++ for AIX

# Location of the zlib library and include files
ZLIBINC = ../zlib
ZLIBLIB = ../zlib

# Compiler, linker, lib and other tools
CC = icc
LD = ilink
AR = ilib
24
CP = copy
25 26
RM = del

27 28
CPPFLAGS = -I$(ZLIBINC)
CFLAGS = -Mc -O2 -W3
29 30
LDFLAGS =

31 32 33 34
# Pre-built configuration
# See scripts/pnglibconf.mak for more options
PNGLIBCONF_H_PREBUILT = scripts/pnglibconf.h.prebuilt

35 36 37 38 39 40 41 42
# File extensions
O=.obj
A=.lib
E=.exe

# Variables
OBJS = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O) \
	pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O) \
43
	pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O)
44 45 46 47

LIBS = libpng$(A) $(ZLIBLIB)/zlib$(A)

# Targets
48 49 50
.c$(O):
	$(CC) -c $(CPPFLAGS) $(CFLAGS) $<

51
all: libpng$(A) pngtest$(E)
52

53
pnglibconf.h: $(PNGLIBCONF_H_PREBUILT)
54
	$(CP) $(PNGLIBCONF_H_PREBUILT) $@
55

56
libpng$(A): $(OBJS)
57
	$(AR) -out:$@ $(OBJS)
58 59 60 61 62 63 64 65 66 67 68 69

test: pngtest$(E)
	pngtest$(E)

pngtest: pngtest$(E)

pngtest$(E): pngtest$(O) libpng$(A)
	$(LD) $(LDFLAGS) pngtest$(O) $(LIBS)

clean:
	$(RM) *$(O)
	$(RM) libpng$(A)
70
	$(RM) pnglibconf.h
71 72 73
	$(RM) pngtest$(E)
	$(RM) pngout.png

74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
png$(O):      png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngerror$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngget$(O):   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngmem$(O):   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngpread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngread$(O):  png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngrio$(O):   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngrtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngrutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngset$(O):   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngtrans$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngwio$(O):   png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngwrite$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngwtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
pngwutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
89

90
pngtest$(O):  png.h pngconf.h pnglibconf.h