📄 makefile
字号:
# Makefile for ksymoops# Defaults for vmlinux, ksyms, objects, lsmod, System.map. Externalised so# distributions can tweak to suit their own file system layout.# To default to not reading a source, set to any empty string.# To default to reading a source, supply a quoted and escaped string.# If the string contains *r (*m, *n, *s) then it is replaced at run time by# the current value of `uname -r` (-m, -n, -s). '*' was chosen as something# that rarely appears in filenames and does not cause problems like '%' or '$'.# RedHat users might want defaults like these# DEF_MAP := \"/boot/System.map-*r\"DEF_VMLINUX := # default no vmlinuxDEF_KSYMS := \"/proc/ksyms\" # default current ksymsDEF_LSMOD := \"/proc/modules\" # default current lsmodDEF_OBJECTS := \"/lib/modules/*r/\" # default current modulesDEF_MAP := \"/usr/src/linux/System.map\" # default current map# Cross compile program prefix for installing cross ksymoops, and# running binutils (objdump & nm), normally empty for system binutils# If you are building for a cross compile, these sample values might be useful.# DEF_TARGET := \"elf64-bigmips\"# DEF_ARCH := \"mips:8000\"# CROSS := mips64-linux-# BFD_PREFIX := /usr/mips64-linux# Prefix for finding BFD library, normally empty for system bfdBFD_PREFIX :=DEF_TARGET := # default bfd target, empty for systemDEF_ARCH := # default bfd arch, empty for systemCROSS := # prefix for installed program, nm, objdump# Prefix for install librariesINSTALL_PREFIX := /usr# Install programINSTALL := /usr/bin/install# Assignment followed by a comment includes the spaces between the value and the# comment as part of the value, so strip those extra spaces.override DEF_VMLINUX := $(strip $(DEF_VMLINUX))override DEF_KSYMS := $(strip $(DEF_KSYMS))override DEF_LSMOD := $(strip $(DEF_LSMOD))override DEF_OBJECTS := $(strip $(DEF_OBJECTS))override DEF_MAP := $(strip $(DEF_MAP))override DEF_TARGET := $(strip $(DEF_TARGET))override DEF_ARCH := $(strip $(DEF_ARCH))override INSTALL_PREFIX := $(strip $(INSTALL_PREFIX))override CROSS := $(strip $(CROSS))override BFD_PREFIX := $(strip $(BFD_PREFIX))DEFS := Makefile ksymoops.hPROGS := ksymoopsCC := gccCFLAGS += -Dlinux \ -Wall \ -Wno-conversion \ -Waggregate-return \ -Wstrict-prototypes \ -Wmissing-prototypes \ -DINSTALL_PREFIX="\"$(INSTALL_PREFIX)\"" \ -DCROSS="\"$(CROSS)\"" \ $(DEBUG)ifneq ($(DEF_VMLINUX),) CFLAGS += -DDEF_VMLINUX=$(DEF_VMLINUX)endififneq ($(DEF_KSYMS),) CFLAGS += -DDEF_KSYMS=$(DEF_KSYMS)endififneq ($(DEF_LSMOD),) CFLAGS += -DDEF_LSMOD=$(DEF_LSMOD)endififneq ($(DEF_OBJECTS),) CFLAGS += -DDEF_OBJECTS=$(DEF_OBJECTS)endififneq ($(DEF_MAP),) CFLAGS += -DDEF_MAP=$(DEF_MAP)endififneq ($(DEF_TARGET),) CFLAGS += -DDEF_TARGET=$(DEF_TARGET)endififneq ($(DEF_ARCH),) CFLAGS += -DDEF_ARCH=$(DEF_ARCH)endififneq ($(BFD_PREFIX),) CFLAGS += -I$(BFD_PREFIX)/include LDFLAGS += -L$(BFD_PREFIX)/libendififeq ($(INSTALL_MANDIR),) INSTALL_MANDIR := $(INSTALL_PREFIX)/manendifSTATIC := -Wl,-BstaticDYNAMIC := -Wl,-BdynamicOBJECTS := io.o ksyms.o ksymoops.o map.o misc.o object.o oops.o re.o symbol.oall: $(PROGS): $(OBJECTS)$(OBJECTS): $(DEFS)$(PROGS): %: %.o $(DEFS) $(OBJECTS) $(CC) $(OBJECTS) $(CFLAGS) $(LDFLAGS) $(STATIC) -lbfd -liberty $(DYNAMIC) -o $@ -@size $@clean: rm -f core *.o $(PROGS)install: all $(INSTALL) -d $(INSTALL_PREFIX)/bin $(INSTALL) ksymoops $(INSTALL_PREFIX)/bin/$(CROSS)ksymoops $(INSTALL) -d $(INSTALL_MANDIR)/man8 $(INSTALL) ksymoops.8 $(INSTALL_MANDIR)/man8/$(CROSS)ksymoops.8
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -