makefile Template
来源:互联网 发布:ubuntu 16 chroot 编辑:程序博客网 时间:2024/06/08 08:15
######################################################################
#makefile Template
#
######################################################################
###################project path and name#################################
DIR=$(shell pwd)
BIN_DIR=$(DIR)/bin
LIB_DIR=$(DIR)/lib
SRC_DIR=$(DIR)/src
INCLUDE_DIR=$(DIR)/include
OBJ_DIR=$(DIR)/obj
DEPS_DIR=$(DIR)/deps
#PROGRAM=$(BIN_DIR)/test
PROGRAM=$(BIN_DIR)/TemplateProcessor
###################OBJ file and path############################################
EXTENSION=cpp
OBJS=$(patsubst $(SRC_DIR)/%.$(EXTENSION), $(OBJ_DIR)/%.o,$(wildcard $(SRC_DIR)/*.$(EXTENSION)))
DEPS=$(patsubst $(OBJ_DIR)/%.o, $(DEPS_DIR)/%.d, $(OBJS))
###################include head file##################################
#“\”符号表示在非换行符,方便阅读;命令行选项 -I 后跟上目录gcc -I./include 有多个目录,用多个-I
INCLUDE=\
-I$(INCLUDE_DIR) \
-I http://www.cnblogs.com/../system/source/Platform_Lib/ \
-I http://www.cnblogs.com/../system/source/Utility/
###################lib path and file######################################
LIBS=-Bdynamic -L/usr/lib -lstdc++ -Bstatic -L./lib -lctemplate_nothreads -Bdynamic -L/usr/lib -lm
###################compiler and option###################################
CC=g++
CFLAGS=-Wall -W -g
LDFLAGS=
###################compile target###########################################
.PHONY: all clean rebuild
all:$(OBJS)
#@echo $(DEPS_DIR)
$(CC) -o $(PROGRAM) $(OBJS) $(LDFLAGS) $(LIBS)
$(DEPS_DIR)/%.d: $(SRC_DIR)/%.$(EXTENSION)
$(CC) -MM $(INCLUDE) $(CFLAGS) $< | sed -e 1's,^,$(OBJ_DIR)/,' > $@
sinclude $(DEPS)
$(OBJ_DIR)/%.o:$(SRC_DIR)/%.$(EXTENSION)
$(CC) $< -o $@ -c $(CFLAGS) $(INCLUDE)
rebuild: clean all
clean:
rm -rf $(OBJS) $(BIN_DIR)/* $(DEPS_DIR)/*
- makefile Template
- makefile simple template
- Makefile && subdir template
- makefile Template(添加多个lib)
- template
- Template
- template
- template
- template
- Template
- template
- template
- Template
- template
- Template
- template
- template
- Template
- 去除 ubuntu 特效的办法
- oracle sqlldr命令
- vs2010如何显示行号?
- prefixing property instance vars 给实例变量添加前缀
- 线性参考
- makefile Template
- MFC如何动态给单文档菜单选项添加标记~~
- 动态游标(REF CURSOR)
- 为MyEclipse_8.5_GA 安装Freemarker插件
- js动态生成表格,奇偶行换色,增加删除表格
- 从网上搜集的基于角色的权限设计资料
- taskmgr
- c++中内存分为以下几个区
- Tiny6410基于linux2.6.36内核通过NFS启动根文件系统总结(成功挂载nfs根文件系统)