makefile

SRCDIR	:= .
			
INCDIRS := .

TARGET := sdl_test


CSRCS=


root=$(shell pwd)

Q :=@




OUTPUT_DIR_NAME := obj
cross_complier :=arm-anykav500-linux-uclibcgnueabi-
CC :=$(cross_complier)gcc
cpp_complier:=$(cross_complier)g++
LD :=$(cross_complier)ld
OBJCOPY :=$(cross_complier)objcopy
CSRCS			+= $(foreach dir, $(SRCDIR), $(wildcard $(dir)/*.c))
CPPSRCS			+= $(foreach dir, $(SRCDIR), $(wildcard $(dir)/*.cpp))

SFILES :=$(foreach dir, $(SRCDIR), $(wildcard $(dir)/*.S))

# CSOUCEFILE_NODIR :=$(notdir $(CSRCS))
# SSOUCEFILE_NODIR :=$(notdir $(SFILES))
# CPLUSPLUSSOUCEFILE_NODIR :=$(notdir $(CPPSRCS))


COBJS :=$(CSRCS :%.c=%.o)
CPLUSPLUSOBJS :=$(CPPSRCS:%.cpp=%.o)
SOBJS :=$(SSOUCEFILE_NODIR:%.S=$(OUTPUT_DIR_NAME)/%.o)
# COBJS :=$(CSRCS:%.c=%.o)

OBJS := $(COBJS)  $(CPLUSPLUSOBJS) $(SOBJS)
INCLUDE			:= $(patsubst %, -I%, $(INCDIRS))

C_DEFINES:=-D__HELLO__ 

CFLAGS +=$(C_DEFINES) -Wall -std=c11 -O2 \

# -ISDL2-2.0.7/include 

LINKFLAGS= -lSDL2 -lpthread -lrt -lm -ldl 
# -LSDL2-2.0.7/lib

CPPFLAGS :=$(C_DEFINES) -Wall -std=c++11 -O2 



.PHONY:clean rebuild  debug
all: $(TARGET)


$(TARGET):$(OBJS)
	$(cpp_complier)   $^ $(LINKFLAGS)     -o $(TARGET)

%.o:%.c
	$(CC)	$(CFLAGS) $(INCLUDE) -c  $<  -o $@ 
%.o:%.S
	$(CC)  $(CFLAGS) $(INCLUDE)	-c $<   -o $@ 
%.o:%.cpp
	$(cpp_complier)  $(CPPFLAGS) $(INCLUDE) 	-c $<  -o $@ 

createDirs:
	@mkdir -p $(OUTPUT_DIR_NAME)
		
clean:
	rm -rf *.o  $(TARGET) 
	
rebuild:clean $(TARGET)


debug:
	@echo CSRCS=$(CSRCS)
	@echo CPPSRCS=$(CPPSRCS)
	@echo $(SFILES)
	@echo $(CPPSRCS)
	@echo $(CSOUCEFILE_NODIR)
	@echo $(SSOUCEFILE_NODIR)
	@echo $(CPLUSPLUSSOUCEFILE_NODIR)
	@echo OBJS=$(OBJS)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值