?? makefile
字號:
ifeq ($(obj),)
obj = .
endif
#################################################
# configuration
include $(obj)/Make.config
# symbol exports
export-objs := video-buf.o v4l1-compat.o v4l2-common.o
export-objs += ir-common.o
export-objs += bttv-if.o btcx-risc.o
export-objs += cx88-cards.o cx88-core.o
# drivers objects
bttv-objs := bttv-driver.o bttv-cards.o bttv-risc.o bttv-if.o \
bttv-vbi.o bttv-i2c.o
saa7134-objs := saa7134-core.o saa7134-i2c.o saa7134-video.o \
saa7134-vbi.o saa7134-tvaudio.o saa7134-oss.o \
saa7134-cards.o saa7134-ts.o
cx88xx-objs := cx88-cards.o cx88-core.o
cx8800-objs := cx88-video.o cx88-tvaudio.o cx88-i2c.o
list-multi := bttv.o saa7134.o cx88xx.o cx8800.o
# what to build
obj-m := video-buf.o v4l1-compat.o v4l2-common.o
obj-$(CONFIG_VIDEO_BTTV) += btcx-risc.o ir-common.o bttv.o
obj-$(CONFIG_VIDEO_CX88) += btcx-risc.o cx88xx.o cx8800.o
obj-$(CONFIG_VIDEO_SAA7134) += saa7134.o saa6752hs.o
obj-$(CONFIG_VIDEO_IR) += ir-common.o
obj-$(CONFIG_VIDEO_TUNER) += tuner.o tda9887.o
obj-$(CONFIG_VIDEO_TVAUDIO) += msp3400.o tvaudio.o
# 2.6-only stuff
ifeq ($(VERSION).$(PATCHLEVEL),2.6)
ifeq ($(CONFIG_VIDEO_BTTV),m)
bttv-objs += bttv-gpio.o
obj-$(CONFIG_VIDEO_IR) += ir-kbd-gpio.o ir-kbd-i2c.o
endif
endif
# ir for saa7134
ifeq ($(CONFIG_VIDEO_IR),m)
EXTRA_CFLAGS += -DCONFIG_VIDEO_IR=1
saa7134-objs += saa7134-input.o
endif
#################################################
# compile modules
ifneq ($(KERNELRELEASE),)
# recursive call from kernel build system
dummy := $(shell echo $(KERNELRELEASE) > $(obj)/.version)
ifeq ($(VERSION).$(PATCHLEVEL),2.6)
export-objs :=
else
foo := $(shell echo "" >&2)
multi-m := $(filter $(list-multi), $(obj-m))
foo := $(shell echo "multi-m: $(multi-m)" >&2)
int-m := $(sort $(foreach m, $(multi-m), $($(basename $(m))-objs)))
foo := $(shell echo "int-m : $(int-m)" >&2)
export-objs := $(filter $(int-m) $(obj-m),$(export-objs))
foo := $(shell echo "export : $(export-objs)" >&2)
foo := $(shell echo "" >&2)
endif
CC += -I$(obj)
#EXTRA_CFLAGS += -g
snapshot := $(wildcard $(obj)/.snapshot)
ifneq ($(snapshot),)
SNAPSHOT_CFLAGS := -DSNAPSHOT='$(shell cat $(snapshot))'
EXTRA_CFLAGS += $(SNAPSHOT_CFLAGS)
endif
bttv.o: $(bttv-objs)
$(LD) -r -o $@ $(bttv-objs)
cx8800.o: $(cx8800-objs)
$(LD) -g -r -o $@ $(cx8800-objs)
cx88xx.o: $(cx88xx-objs)
$(LD) -g -r -o $@ $(cx88xx-objs)
saa7134.o: $(saa7134-objs)
$(LD) -g -r -o $@ $(saa7134-objs)
-include $(TOPDIR)/Rules.make
else
# take version info from last module build if available
KERNELRELEASE := $(shell cat $(obj)/.version 2>/dev/null || uname -r)
endif
KDIR := /lib/modules/$(KERNELRELEASE)/build
PWD := $(shell pwd)
DEST := /lib/modules/$(KERNELRELEASE)/$(MDIR)
# locales seem to cause trouble sometimes.
LC_ALL = POSIX
export LC_ALL
default::
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
install::
strip --strip-debug $(obj-m)
-su -c "mkdir -p $(DEST); cp -v $(obj-m) $(DEST); depmod -a"
clean::
-rm -f *~ *.o *.ko *.mod.c
-rm -f .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
#################################################
# build tarballs
thisdir := $(notdir $(PWD))
name := $(shell echo $(thisdir) | sed 's/-.*//')
ver := $(shell echo $(thisdir) | sed 's/.*-//')
date := $(shell date +%Y%m%d)
tardest ?= .
snapdir := $(HOME)/snapshot
snap ?= $(name)
release: clean
rm -f .snapshot
(cd ..; tar cvzf $(tardest)/$(name)-$(ver).tar.gz $(thisdir))
snapshot snap tarball: clean
echo $(date) > .snapshot
(cd ..; tar czf $(snapdir)/$(snap)-$(date).tar.gz $(thisdir))
$(MAKE) -C $(snapdir)
#################################################
# other stuff
%.asm: %.o
objdump -S $< > $@
cardlists:
scripts/cardlist
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -