Makefile通用模板
2016-04-01 10:42
330 查看
假设工程目录结构如下
src
|-------
include
|-------
Makefile
Makefile文件如下
src
|-------
include
|-------
Makefile
Makefile文件如下
CC=gcc CXX=g++ CFLAGS=-Iinclude CXXFLAGS=-Iinclude LDFLAGS=-lpthread -lrt -lm SRCDIRS=src OBJPATH= CFILES=$(foreach dir, $(SRCDIRS), $(wildcard $(dir)/*.c)) CPPFILES=$(foreach dir, $(SRCDIRS), $(wildcard $(dir)/*.cpp)) COBJS=$(CFILES:%.c=%.o) CXXOBJS=$(CPPFILES:%.cpp=%.o) OBJS=$(COBJS) $(CXXOBJS) DEPS=$(OBJS:%.o=%.d) TARGET=test all: $(TARGET) %.d: %.c @$(CC) $(CFLAGS) -MM $< | sed -e 's/\(.*\)\.o\(.*\)/\1\.d \1\.o\2/g' >$@ %.d: %.cpp @$(CC) $(CFLAGS) -MM $< | sed -e 's/\(.*\)\.o\(.*\)/\1\.d \1\.o\2/g' >$@ $(TARGET): $(OBJS) $(CXX) $(LDFLAGS) $^ -o $@ -include $(DEPS) clean: rm -rf src/*.d src/*.o $(TARGET) .PHONY: all clean</span>
相关文章推荐
- 对FileOutputStream/FileInputStream的应用
- 对Timer类的应用
- 四则运算4
- 怎样申请试用最新一代商翼ERC企业管理软件
- 基于 infinitescroll、isotope、imagesLoaded 的瀑布流网站
- ansible role 执行顺序
- iOS js oc相互调用(JavaScriptCore)(二)
- USB2.0 A型、B型、Mini和Micro接口定义及封装
- live555学习笔记
- Python之类
- 对RandomAccessFile类的应用
- Pychrm中lxml导入etree失败
- Linux 下让进程在后台可靠运行的几种方法
- Django Ajax CSRF 认证
- launchMode传递参数注意startActivityForResult
- iOS开发中手机号码和价格金额有效性判断及特殊字符的限制
- Win10系统自动开机怎么取消?Win10系统取消自动开机的方法
- java定时任务
- CardView的那点事儿
- 我理解的--java模板方法模式