File: Makefile

package info (click to toggle)
ivtv 0.8.2-2
  • links: PTS
  • area: contrib
  • in suites: etch, etch-m68k
  • size: 2,128 kB
  • ctags: 5,173
  • sloc: ansic: 28,746; perl: 2,593; cpp: 1,946; sh: 1,521; makefile: 263
file content (60 lines) | stat: -rw-r--r-- 1,407 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
PREFIX = /usr/local
BINDIR = $(PREFIX)/bin
HDRDIR = /usr/include/linux
KVER ?= $(shell uname -r)
INCDIR = /lib/modules/$(KVER)/build/include


X86  := $(shell if echo - | $(CC) -E -dM - | egrep -e '__i386__|__x86_64__' >/dev/null; \
	then echo y; else echo n; fi)

ifeq ($(X86),y)
X86_EXES := ivtvplay ivtv-mpegindex #ivtv-encoder
endif

EXES := v4l2-ctl ivtvctl ivtvfbctl ivtv-radio $(X86_EXES)

BIN := $(EXES) ivtv-tune/ivtv-tune cx25840ctl/cx25840ctl


HEADERS := ../driver/ivtv.h

CFLAGS = -I$(CURDIR)/../driver -I$(INCDIR) -D_GNU_SOURCE -O2 -Wall -g
CXXFLAGS = $(CFLAGS)

all: $(EXES)
	$(MAKE) CFLAGS="$(CFLAGS)" -C ivtv-tune
	$(MAKE) CFLAGS="$(CFLAGS)" -C cx25840ctl

ivtvctl: ivtvctl.o
	$(CC) -lm -o $@ $^

ivtvctl.c: ../driver/ivtv-svnversion.h

v4l2-ctl: v4l2-ctl.o
	$(CXX) -lm -o $@ $^

ivtvplay: ivtvplay.cc
	$(CXX) $(CXXFLAGS) -lm -lpthread -o $@ $^

encoder.o: encoder.c
	$(CC) $(CFLAGS) -DVIDEO_PORT=0 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -c $^

ivtv-encoder: enc_mindex.o enc_chann.o encoder.o
	$(CC) -lpthread -o $@ $^

install: all
	install -d $(DESTDIR)/$(HDRDIR)
	install -m 0644 $(HEADERS) $(DESTDIR)/$(HDRDIR)
	install -d $(DESTDIR)/$(BINDIR)
	install -m 0755 $(BIN) $(DESTDIR)/$(BINDIR)

clean: 
	rm -f *.o $(EXES)
	$(MAKE) -C ivtv-tune clean
	$(MAKE) -C cx25840ctl clean

../driver/ivtv-svnversion.h:
	$(MAKE) -C ../driver ivtv-svnversion.h

.PHONY: ../driver/ivtv-svnversion.h