Makefile 嵌套补充

#makefile for virtualinterface
#2013 02 23 by clara
CC = gcc
CXX = g++
DEFINES = -DMONGO_HAVE_STDINT
CFLAGS += -Wall $(DEFINES)
INCLUDE = -I./src \
          -I./CConfigFile \
          -I./CLogFile
LFLAGS = -L./src -lmongo \
         -L./CConfigFile -lconf \
         -L./CLogFile -llog
SHELL = /bin/bash
SUBDIRS = src CConfigFile CLogFile

TARGET = VirtualInterface

SOUCE_FILES = $(wildcard *.cpp)
OBJS = $(patsubst %.cpp,%.o,$(SOUCE_FILES))

%.o : %.cpp %.h
	$(CXX) -c $(CFLAGS) $< -o $@
%.o : %.cpp
	$(CXX) -c $(CFLAGS) $< -o $@
%.o: %.c
	$(CXX) -c $(CFLAGS)  $< -o $@  

$(TARGET): $(OBJS) libs
	$(CXX) $(OBJS) -o $@ $(INCLUDE) $(LFLAGS)
	@echo "**************compiled success*****************"
libs:
	@ for subdir in $(SUBDIRS); do \
        (cd $$subdir && $(MAKE)); \
    done

.PHONY:clean
clean:
	$(RM) $(TARGET) $(OBJS)
	@ for subdir in $(SUBDIRS); do \
        (cd $$subdir && $(MAKE) clean); \
    done
 
CC = gcc
CFLAGS = -Wall -O -DMONGO_HAVE_STDINT
AR = ar
AFLAGS = -r
INCLUDE = -I/usr/include/mysql
LFLAGS = -L/usr/lib/mysql -lmysqlclient -lpthread

TARGET = libmongo.a

SOUCE_FILES = $(wildcard *.c)
OBJS = $(patsubst %.c,%.o,$(SOUCE_FILES))
%.o : %.c %.h
	$(CC) -c $(CFLAGS) $< -o $@

%.o : %.c
	$(CC) -c $(CFLAGS) $< -o $@

$(TARGET): $(OBJS)
	$(AR) $(AFLAGS) $(TARGET) $(OBJS)

.PHONY:clean
clean:
	$(RM) $(TARGET) $(OBJS)




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值