Files
LDD-LinuxDeviceDrivers/study/patch/ptrace/Makefile
T

67 lines
1.6 KiB
Makefile

#
#http://blog.sina.com.cn/s/blog_694f2ae70101amh6.html
#
target=ptrace_singlestep ptrace_singlestep2 \
ptrace_peekuser print nop
CURRENT_BIN_DIR=ptrace_bug
INSTALL_ROOT_DIR=~/Work/Kernel/runninglinuxkernel/filesystem
INSTALL_HOME_DIR=home/chengjian
ifeq ($(ARCH), arm64)
CROSS_COMPILE=/opt/arm/toolschain/linaro/gcc-linaro-7.1.1-2017.08-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
ARCH_FILE_DIR=_install_arm64
else ifeq ($(ARCH), arm32)
CROSS_COMPILE=arm-linux-gnueabi-
ARCH_FILE_DIR=_install_arm32
else # ifeq ($(ARCH), x86_64)
ARCH_FILE_DIR=_install_x86
endif
INSTALL_BIN_DIR=$(INSTALL_ROOT_DIR)/$(ARCH_FILE_DIR)/$(INSTALL_HOME_DIR)/ #$(CURRENT_BIN_DIR)
CC=${CROSS_COMPILE}gcc
AS=${CROSS_COMPILE}as
LD=${CROSS_COMPILE}ld
LDFLAGS+=-static
all : $(target)
ptrace_singlestep:ptrace_singlestep.c
$(CC) $^ -o $@ $(LDFLAGS)
@echo "ptrace singlestep..."
ptrace_singlestep2:ptrace_singlestep.c
$(CC) $^ -o $@ $(LDFLAGS) -DDEBUG
@echo "ptrace singlestep with debug info..."
ptrace_peekuser:ptrace_peekuser.c
$(CC) $^ -o $@ $(LDFLAGS)
@echo "ptrace peekuser..."
print:print.c
$(CC) $^ -o $@ $(LDFLAGS)
@echo "ptrace process print something..."
nop:nop.c
$(CC) $^ -o $@ $(LDFLAGS)
@echo "ptrace process do nothing..."
#%.o : %.c
# $(CC) -c $^ -o $@ $(CFLAGS) $(DEFINES)
#
#%.o : %.cpp
# $(CXX) -c $^ -o $@ $(CFLAGS) $(DEFINES)
clean :
rm -rf *.o
rm -rf $(target)
install :
mkdir -p $(CURRENT_BIN_DIR)
cp $(target) $(CURRENT_BIN_DIR)
#echo $(INSTALL_BIN_DIR)
cp -rf $(CURRENT_BIN_DIR) $(INSTALL_BIN_DIR)