File: Makefile

package info (click to toggle)
qcam 0.91-6
  • links: PTS
  • area: main
  • in suites: hamm
  • size: 256 kB
  • ctags: 242
  • sloc: ansic: 2,967; makefile: 99; sh: 29
file content (115 lines) | stat: -rw-r--r-- 2,923 bytes parent folder | download | duplicates (2)
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# Makefile for QCAM under Linux

# Where you want to install all of this.

INSTALLPATH=/usr
BINPATH=$(INSTALLPATH)/bin
MANPATH=/usr/man
CONFFILE=/etc/qcam.conf

# Note: Using gcc 2.7.0 under Linux, I get the best speeds with -O.
# Using -O2 or -O6 slows xqcam down ~10%.  Using the -g flag makes no
# measurable speed difference.

DEFINES=-DCONFIG_FILE=\"$(CONFFILE)\"

# CFLAGS=-Wall -O -g -DDEBUG
CFLAGS=-Wall -O6

LDFLAGS=$(CFLAGS)

XLIBS=-L/usr/X11R6/lib -lXext -lX11
SVLIBS=-lvga -lvgagl
QCLIBS=-L. -lqcam -lqcamip
JPEGLIBS=-ljpeg
OTHERLIBS=-lc

#### You shouldn't have to edit below here.

LIBS=$(XLIBS) $(OTHERLIBS)

C_SRCS=qcam.c qcam-os.c qcam-lib.c exposure.c histogram.c \
	xqcam.c probeqcam.c qcam-simple.c dark.c make.darkmask.c \
	edge.c writejpeg.c

TARGETS=qcam xqcam probeqcam qcam-simple make.darkmask sqcam #xfqcam xtqcam 


all:: libqcam.a libqcamip.a $(TARGETS)

sqcam: sqcam.o libqcam.a libqcamip.a qcam-os.o qcam-lib.o
	$(CC) $(LDFLAGS) -o sqcam sqcam.o $(SVLIBS) $(QCLIBS)

qcam: qcam.o libqcam.a libqcamip.a dark.o edge.o writejpeg.o
	rm -f qcam
	$(CC) $(LDFLAGS) -o qcam qcam.o $(QCLIBS) dark.o edge.o writejpeg.o $(JPEGLIBS)

qcam-os.h:
	ln -sf qcam-`uname`.h qcam-os.h

qcam-os.c:
	ln -sf qcam-`uname`.c qcam-os.c

qcam-os.o: qcam-os.c qcam-os.h
	$(CC) $(CFLAGS) -c -o qcam-os.o qcam-os.c

qcam-lib.o:
	$(CC) $(CFLAGS) $(DEFINES) -c -o qcam-lib.o qcam-lib.c

dark.o: dark.c
	$(CC) $(CFLAGS) $(DEFINES) -c dark.c

xqcam: xqcam.o libqcam.a libqcamip.a dark.o edge.o
	rm -f xqcam
	$(CC) $(LDFLAGS) -o xqcam xqcam.o dark.o edge.o $(QCLIBS) $(LIBS)

xfqcam: xfqcam.o controlpanel.o libqcam.a
	rm -f xfqcam
	$(CC) $(LDFLAGS) -o xfqcam xfqcam.o controlpanel.o $(QCLIBS) -lforms $(LIBS) -lm

qcam-simple: qcam-simple.o libqcam.a

probeqcam: probeqcam.o libqcam.a
	rm -f probeqcam
	$(CC) $(LDFLAGS) -o probeqcam probeqcam.o -L. -lqcam

# libqcam.a: qcam-os.o qcam-lib.o
libqcam.a: qcam-lib.o
	rm -f libqcam.a
	ar rcs $@ $^ 

libqcamip.a: exposure.o histogram.o
	ar rcs $@ $^

make.darkmask: make.darkmask.c libqcam.a
	$(CC) $(CFLAGS) $(DEFINES) -o make.darkmask make.darkmask.c -L. -lqcam

install:: all
	install -s -m 4755 -o root qcam $(BINPATH)
	install -s -m 4755 -o root xqcam $(BINPATH)
	install -m 644 -o root qcam.1 $(MANPATH)/man1
#	install -m 755 -o root tkqcam $(BINPATH)

install-conf::
	cp qcam.conf $(CONFFILE)

clean:: 
	rm -f *.o $(TARGETS) *.pgm *~ qcam-os.[ch] *.a tkqcam

depend:: $(C_SRCS)
	sed '/\#\#\# Dependencies/q' < Makefile > tmp_make
	$(CC) $(CFLAGS) -MM $(C_SRCS) >> tmp_make
	mv tmp_make Makefile

### Dependencies:
qcam.o: qcam.c qcam.h qcamip.h
qcam-os.o: qcam-os.c qcam.h qcam-Linux.h
qcam-lib.o: qcam-lib.c qcam.h qcam-os.h qcam-os.c
exposure.o: exposure.c qcam.h qcamip.h
histogram.o: histogram.c qcam.h qcamip.h
xqcam.o: xqcam.c qcam.h qcam-os.h qcamip.h
probeqcam.o: probeqcam.c qcam.h
qcam-simple.o: qcam-simple.c qcam.h

dark.o: dark.c qcam.h
edge.o: edge.c qcam.h