makefile 命令执行分析
2011-11-25 17:26
225 查看
make的递归调用
在Makefile中使用“make”作为一个命令来执行本身或者其他makefile文件。递归调用在一个存在多级子目录的项目中非常有用。
subsystem:
cd subdir && $(MAKE)
等价于
subsystem:
$(MAKE) -C subdir
###################
$(MAKE) -C $(SRC_DIR_CGI)
意思是进入目录$(SRC_DIR_CGI) ,然后在子目录下面执行make 。
$(MAKE) -C $(SRC_DIR_CGI) clean
意思是进入目录$(SRC_DIR_CGI) ,然后在子目录下面执行make clean。
####################################
#leo Makfile install web files
####################################
CC=/var/smb/leo/wifi/projs/udisk/Ralink305x/toolchain/buildroot-gcc342/bin/mipsel-linux-gcc
LD=/var/smb/leo/wifi/projs/udisk/Ralink305x/toolchain/buildroot-gcc342/bin/mipsel-linux-gcc
OUT_DIR= $(PWD)/web
SRC_DIR= $(PWD)
SRC_DIR_FILES= $(SRC_DIR)/files
SRC_DIR_CGI= $(SRC_DIR)/cgi-bin
OUT_DIR_FILES= $(OUT_DIR)/files
OUT_DIR_CGI= $(OUT_DIR)/cgi-bin
#SUB_DIR = $(SRC_DIR_CGI)
#########################################################
#########################################################
all: clean subsystem install
subsystem:
$(MAKE) -C $(SRC_DIR_CGI)
#$(MAKE) -C $(SRC_DIR_FILES)
#$(MAKE) -C $(SUB_DIR)
install:
@echo "out files dir is $(OUT_DIR)..."
mkdir -p $(OUT_DIR)
mkdir -p $(OUT_DIR_CGI)
mkdir -p $(OUT_DIR_FILES)
cp $(SRC_DIR_CGI)/*.cgi $(OUT_DIR_CGI)/
cp $(SRC_DIR_FILES)/* $(OUT_DIR_FILES)/
cp $(SRC_DIR)/*.html $(OUT_DIR)/
chmod 766 $(OUT_DIR_FILES)/*
chmod +x $(OUT_DIR_CGI)/*
clean:
rm -fr $(OUT_DIR)
$(MAKE) -C $(SRC_DIR_CGI) clean
在Makefile中使用“make”作为一个命令来执行本身或者其他makefile文件。递归调用在一个存在多级子目录的项目中非常有用。
subsystem:
cd subdir && $(MAKE)
等价于
subsystem:
$(MAKE) -C subdir
###################
$(MAKE) -C $(SRC_DIR_CGI)
意思是进入目录$(SRC_DIR_CGI) ,然后在子目录下面执行make 。
$(MAKE) -C $(SRC_DIR_CGI) clean
意思是进入目录$(SRC_DIR_CGI) ,然后在子目录下面执行make clean。
####################################
#leo Makfile install web files
####################################
CC=/var/smb/leo/wifi/projs/udisk/Ralink305x/toolchain/buildroot-gcc342/bin/mipsel-linux-gcc
LD=/var/smb/leo/wifi/projs/udisk/Ralink305x/toolchain/buildroot-gcc342/bin/mipsel-linux-gcc
OUT_DIR= $(PWD)/web
SRC_DIR= $(PWD)
SRC_DIR_FILES= $(SRC_DIR)/files
SRC_DIR_CGI= $(SRC_DIR)/cgi-bin
OUT_DIR_FILES= $(OUT_DIR)/files
OUT_DIR_CGI= $(OUT_DIR)/cgi-bin
#SUB_DIR = $(SRC_DIR_CGI)
#########################################################
#########################################################
all: clean subsystem install
subsystem:
$(MAKE) -C $(SRC_DIR_CGI)
#$(MAKE) -C $(SRC_DIR_FILES)
#$(MAKE) -C $(SUB_DIR)
install:
@echo "out files dir is $(OUT_DIR)..."
mkdir -p $(OUT_DIR)
mkdir -p $(OUT_DIR_CGI)
mkdir -p $(OUT_DIR_FILES)
cp $(SRC_DIR_CGI)/*.cgi $(OUT_DIR_CGI)/
cp $(SRC_DIR_FILES)/* $(OUT_DIR_FILES)/
cp $(SRC_DIR)/*.html $(OUT_DIR)/
chmod 766 $(OUT_DIR_FILES)/*
chmod +x $(OUT_DIR_CGI)/*
clean:
rm -fr $(OUT_DIR)
$(MAKE) -C $(SRC_DIR_CGI) clean
相关文章推荐
- 跟我一起写Makefile(9)--- 书写命令(显示命令+命令执行+命令出错+嵌套执行make+定义命令包)
- xm info命令执行过程分析
- U-boot 编译学习---make TQ2440_config命令执行过程---在 Makefile 中
- 【漏洞分析】流行开源电子邮件程序Roundcube v1.2.2命令执行漏洞分析
- WordPress <= 4.6 命令执行漏洞(PHPMailer)复现分析
- Linux之Makefile(并发执行命令)
- RAC ASM磁盘扩容执行start_udev命令导致vip漂移问题分析及解决办法
- openwrt系统 sysupgrade 命令执行过程分析
- Appium Android Bootstrap源码分析之命令解析执行
- Makefile 中命令的@,-@,+@符号 作用, 案例分析
- CloudFoundry源码分析:Cloud Controller(2) vmc push命令执行过程分析
- Shell 命令执行顺序分析[图]
- bash执行命令各种情况分析
- 很感谢这篇文张【已解决】Makefile:xxx: recipe for target xxx failed +【顺带搞懂了】如何忽略makefile执行过程中的某些命令的错误而得以继续运行
- Struts2远程命令执行漏洞分析及防范
- CVE-2017-9805:Struts2 REST插件远程执行命令漏洞(S2-052) 分析报告
- OPKG命令执行过程分析
- NanoPC-T2 Uboot启动过程分析 - 3-2 启动命令的执行
- Shell 命令执行顺序分析[图]
- Maccms8.x 命令执行分析