?? makefile
字號:
#*****************************************************************************## Makefile for CANBUS4LINUX driver## (C) Copyright 2003 by Juergen Eder## The CANBUS4LINUX driver is distributed under the Gnu General Public License.# See file COPYING for details##*****************************************************************************# currently running kernelCURRENT=$(shell uname -r)KERNEL_NEW=$(shell if [ -d /lib/modules/$(CURRENT)/build ] ; \ then echo yes ; else echo no ; fi )ifndef KERNEL_LOCATIONifeq ($(KERNEL_NEW),yes)KERNEL_LOCATION=/lib/modules/$(CURRENT)/buildMODULE_CHAR_LOC=/lib/modules/$(CURRENT)/kernel/drivers/charelseKERNEL_LOCATION=/usr/src/linuxMODULE_CHAR_LOC=/lib/modules/$(CURRENT)/kernel/drivers/charendifendif#export TOPDIR := $(KERNEL_LOCATION)# Test for latest 2.5.xx and future 2.6.xx kernelsKERNEL_VERSION := $(shell awk -F\" '/REL/ {print $$2}' \ $(KERNEL_LOCATION)/include/linux/version.h | awk -F\- '{print $$1}')KERNEL_MODULE_V26 := $(shell echo $(KERNEL_VERSION) \ | sed -n 's/^.*2\.[5-9]\..*$$/yes/p')# Target object file if anyO_TARGET :=# Regular object filesO_OBJS = can200par.o cantronik.o elektor_canpar.o isa_sja1000.o sja1000.o canbuscore.o# Objects with exported symbols (-DEXPORT_SYMTAB)OX_OBJS =# Module objects M_OBJS = $(O_OBJS)# Module only objects with exported symbols (-DEXPORT_SYMTAB)MX_OBJS = # Kernel only objects L_OBJS = # Kernel only objects with exported symbols (-DEXPORT_SYMTAB)LX_OBJS = # Additional CFLAGSEXTRA_CFLAGS =# Linux 2.4.2 build system needs nextobj-m += $(O_OBJS)ifndef KERNEL_MODULE_V26FINAL_MODULE_OBJS=$(obj-m)elseFINAL_MODULE_OBJS=$(obj-m:%.o=%.ko)endifall : make_this_moduleinstall : remove_version_0_1 install_this_modulemake_this_module: DIR=`pwd`; (cd $(KERNEL_LOCATION); make SUBDIRS=$$DIR modules)remove_version_0_1: rm -f /lib/modules/$(VER)/misc/elektor_canpar.o rm -f /lib/modules/$(VER)/misc/can200par.o rm -f /lib/modules/$(VER)/misc/sja1000.o rm -f /lib/modules/$(VER)/misc/canbuscore.o rm -f /usr/src/linux/include/canbus4linux.hcreate_can_nodes: rm -f /dev/can? mknod /dev/can0 c 91 0 mknod /dev/can1 c 91 1 mknod /dev/can2 c 91 2 mknod /dev/can3 c 91 3 mknod /dev/can4 c 91 4 mknod /dev/can5 c 91 5 mknod /dev/can6 c 91 6 mknod /dev/can7 c 91 7 mknod /dev/can8 c 91 8 mknod /dev/can9 c 91 9 chmod 777 /dev/can? ln -f -s /dev/can0 /dev/caninstall_this_module: remove_version_0_1 make_this_module create_can_nodes su -c "mkdir -v -p $(MODULE_CHAR_LOC); cp -v $(FINAL_MODULE_OBJS) $(MODULE_CHAR_LOC)"# install -c canbus4linux.h $(KERNEL_LOCATION)/include/linux install -c canbus4linux.h /usr/include/linuxclean: rm -f $(M_OBJS) $(MX_OBJS) *.ko .*.o.flags .*.o.cmd .*.ko.cmd .depend *~ *.mod.c *.mod.ounload: rmmod elektor_canpar || : rmmod cantronik || : rmmod can200par || : rmmod isa_sja1000 || : rmmod sja1000 || : rmmod canbuscore || : modprobe -r load: insmod canbuscore.ko insmod sja1000.ko# insmod isa_sja1000.o cards=can-200pc# modprobe -k parport_pc insmod elektor_canpar.ko insmod can200par.ko frequency=16000000 insmod cantronik.ko frequency=16000000reload: unload loadrun_test: unload load gcanEXTRA_CFLAGS= ifndef KERNEL_MODULE_V26include $(KERNEL_LOCATION)/Rules.makeendif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -