求教一个复杂点的makefile问题

klkfdsgdsallg 2012-08-02 09:01:54
我仅仅会写一些简单的makefile,如下
makefile
coolpkgadd : coolpkgadd.o
cc coolpkgadd.o -o coolpkgadd
coolpkgadd.o : coolpkgadd.c
cc -c coolpkgadd.c

./makefile to run
请问如何写复杂的makefile。
向如下的makefile,各个项意思是什么。并且如何用./makefile就执行。
Rules.mk:
.SOURCE.c (VROOT)/sigtran/trillium/common/
.SOURCE.x (VROOT)/sigtran/trillium/common/hdr
.SOURCE.h (VROOT)/sigtran/trillium/common/hdr

PRODUCTS =
PRODUCTS += libmt_ssi.so

CCFLAGS += -DCMFILE_REORG_1 -USTDIO_INCLD

CCFLAGS += -DSUNOS -DANSI -DSS_LINUX -DSS_MT -D__EXTENSIONS__ -DCMFILE_REORG_2 -DSS_M_PROTO_REGION -DDEBUGNOEXIT -DSLES9_PLUS -DSS_DATETIME_USEC -DSCCP -DHI -DIT -DSM_SS7 -DNO_ERRCLS -DNOERRCHK -DSS_PERF -DCM_LKSCTP_NONBLOCK -DUSE_PURE
CCFLAGS += -g3 -traditional -Wall -Wno-comment -pipe -Wshadow -Wcast-qual -Wconversion
CCFLAGS += -fPIC
CCFLAGS += $(SHAREDFLAG)

TRICOM_SRCS =
TRICOM_SRCS += ss_gen.c
TRICOM_SRCS += ss_id.c
TRICOM_SRCS += ss_task.c
...全文
68 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
羽飞 2012-08-02
  • 打赏
  • 举报
回复
哈哈,我这里有个比楼主复杂点的Makefile:


#XQ Makefile

CXX = g++
CFlags = -ggdb -c

$(mkdir -p build)

Source = Dispatch.cpp \
File.cpp \
Gloable.cpp \
Log.cpp \
Msg.cpp \
Mutex.cpp \
Object.cpp \
Process.cpp \
Socket.cpp \
Thread.cpp \
Threads.cpp \
Sem.cpp \
main.cpp

Object = $(Source:.cpp=.o)
Dependent = $(Source:.cpp=.d)

Target = xq

$(Target):$(Object)
$(CXX) -o $(Target) -lpthread $(Object)

#$(Object):%.o: %.cpp %.d
# $(CXX) -c $< -o $@

$(Dependent):%.d:%.cpp
$(CXX) -MM $< > $@.tmp; \
sed '$$a\\t$$\(CXX\) $$\(CFlags\) $$< -o $$@' $@.tmp > $@; \
rm -f $@.tmp

-include $(Dependent)

.PHONY : clean_all
clean_all:
-rm $(Target) $(Object) $(Dependent)

64,662

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧