码迷,mamicode.com
首页 > 其他好文 > 详细

省事之通用Makefile模版

时间:2017-01-19 03:20:01      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:ack   rm -rf   linu   接受   libname   car   class   文件名   规则   

现在编译方案都偏爱使用cmake解决问题,这两条做unity插件,还是用Makefile,居然忘得光光,好记性不如烂笔头。

后面,翻箱倒柜找到以前为炼金术写的Makefiel,发现还真是挺好用,贴出来,当万能Makefile模板挺好的。。

PROJECT_DIR = ..
#PATH:=${ALCHEMY_HOME}/achacks:${PATH}
CC = gcc
AR = ar
CFLAGS := -Wall -W -std=gnu99 -g
LDFLAGS = 
INCLUDE_DIR = -I$(PROJECT_DIR)/luajit/src
LIBNAME = libz.a

OBJS = $(patsubst ./%.c, %.o,$(wildcard ./*.c)) 

.PHONY: all clean

.SUFFIXES: .c .o

.c.o:
	$(CC) $(CFLAGS) -c $< $(INCLUDE_DIR)
	
all: $(LIBNAME)

$(LIBNAME):$(OBJS)
	@$(AR) rcs $(LIBNAME) $(OBJS)
	ranlib $(LIBNAME)

clean:
	@rm -rf $(LIBNAME) $(OBJS)
  • 修改LIBNAME为你想要库名
  • 在源码目录文件名为Makefile
  • 只实现make 和make clean
  • 如果c++的自己实现一下自动推导规则,看着也简单

另外,也改善一下对MinGW的印象,其实也挺好用的,不一定要用cmake生成vc解决方案,既然喜欢linux,为什么不能接受mingw呢?

省事之通用Makefile模版

标签:ack   rm -rf   linu   接受   libname   car   class   文件名   规则   

原文地址:http://www.cnblogs.com/linbc/p/6298568.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!