File: makefile

package info (click to toggle)
libgdchart-gd1 0.10.1dev-10
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 260 kB
  • ctags: 327
  • sloc: ansic: 3,885; makefile: 126
file content (98 lines) | stat: -rw-r--r-- 3,010 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
GDC_INCL = .
GDC_LIB  = .

# GDChart requires the gd library - www.boutell.com/gd/
GD_INCL  = /usr/include
GD_LIB   = /usr/lib

# libgd requires libpng
# PNG_INCL = ../libpng-1.0.8
# PNG_LIB  = ../libpng-1.0.8

# libgd requires zlib
# ZLIB_INCL = ../zlib-1.1.3
# ZLIB_LIB  = ../zlib-1.1.3

# libgd needs libjpeg to produce JPEG images
# JPEG_INCL = ../libjpeg
# JPEG_LIB  = ../libjpeg
# JPEG_DEF  = -DHAVE_JPEG
# JPEG_LK   = -ljpeg

LIB_PATHS   = -L$(GD_LIB) 
# if not installed in standard paths (/lib, /usr/lib), or LD_LIBRARY_PATH
# LIB_PATHS   = -L$(GD_LIB) -L$(PNG_LIB) -L$(ZLIB_LIB) -L$(JPEG_LIB)

# NOTE:
# libpng, libz, etc. are usually linked in as dynamic libs
# either use a link line similar to one of these, or set environment LD_LIBRARY_PATH
# these should likely be absolute paths, as resolved at runtime
# LIB_PATHS = $(LIB_PATHS) -R$(PNG_LIB) -R$(ZLIB_LIB)
# LIB_PATHS = $(LIB_PATHS) -Xlinker -rpath -Xlinker $(PNG_LIB) -Xlinker -rpath -Xlinker $(ZLIB_LIB)

CC=gcc $(INCLUDEDIRS)

all: gdc_samp1 gdc_samp2 gdc_pie_samp

# --- compile the samples ---
gdc_pie_samp.o: $(GDC_INCL)/gdc.h $(GDC_INCL)/gdcpie.h gdc_pie_samp.c
	$(CC) -I$(GDC_INCL) -c gdc_pie_samp.c

gdc_samp1.o: $(GDC_INCL)/gdc.h $(GDC_INCL)/gdchart.h gdc_samp1.c
	$(CC) -I$(GDC_INCL) $(JPEG_DEF) -c gdc_samp1.c

gdc_samp2.o: $(GDC_INCL)/gdc.h $(GDC_INCL)/gdchart.h gdc_samp2.c
	$(CC) -I$(GDC_INCL) $(JPEG_DEF) -c gdc_samp2.c

# --- link the samples ---
gdc_samp1: gdc.o gdchart.o price_conv.o gdc_samp1.o gifencode.o $(GD_LIB)/libgd.a
	$(CC) -o gdc_samp1 \
			 gdc.o gdchart.o price_conv.o gifencode.o \
			 gdc_samp1.o \
			 $(LIB_PATHS) \
			 -lgd -lz -lpng $(JPEG_LK) -lm

gdc_samp2: gdc.o gdchart.o price_conv.o gdc_samp2.o gifencode.o $(GD_LIB)/libgd.a
	$(CC) -o gdc_samp2 \
			 gdc.o gdchart.o price_conv.o gifencode.o \
			 gdc_samp2.o \
			 $(LIB_PATHS) \
			 -lgd -lz -lpng $(JPEG_LK) -lm

gdc_pie_samp: gdc.o gdc_pie.o price_conv.o gdc_pie_samp.o gifencode.o $(GD_LIB)/libgd.a
	$(CC) -o gdc_pie_samp \
			 gdc.o gdc_pie.o price_conv.o gifencode.o \
			 gdc_pie_samp.o \
			 $(LIB_PATHS) \
			 -lgd -lz -lpng $(JPEG_LK) -lm

# --- compile the lib ---
libgdchart.a: gifencode.o price_conv.o gdc.o gdc_pie.o gdchart.o
	ar rc $@ $?
	ranlib $@

#gifencode.o: gifencode.c gifencode.h
#	$(CC) -I$(GD_INCL) -c gifencode.c

#price_conv.o: price_conv.c
#	$(CC) -c price_conv.c

#gdc.o: gdc.c $(GDC_INCL)/gdc.h $(GDC_INCL)/gifencode.h
#	$(CC) -I$(GD_INCL) -I$(GDC_INCL) $(JPEG_DEF) -c gdc.c

#gdc_pie.o: $(GDC_INCL)/gdc.h $(GDC_INCL)/gifencode.h $(GDC_INCL)/gdcpie.h gdc_pie.c
#	$(CC) -I$(GD_INCL) -I$(GDC_INCL) $(JPEG_DEF) -c gdc_pie.c

#gdchart.o: $(GDC_INCL)/gdc.h $(GDC_INCL)/gifencode.h $(GDC_INCL)/gdchart.h gdchart.c
#	$(CC) -I$(GD_INCL) -I$(GDC_INCL) $(JPEG_DEF) -c gdchart.c

# --- supporting libraries ---
# should be compile & installed separately
# $(GD_LIB)/libgd.a:
# 	cd $(GD_LIB) ; make -f Makefile libgd.a

# --- clean ---
clean:
	rm -f *.o gdc_samp1 gdc_samp2 gdc_pie_samp
#	cd $(GD_LIB) ; make -f Makefile clean