1 Star 0 Fork 0

王忠凯/RS232-485-For-Linux

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Makefile 2.10 KB
一键复制 编辑 原始数据 按行查看 历史
lianglican 提交于 2020-03-08 15:57 . first commit
###########目标文件的名称##########
RELEASE_DIR:=release
OBJ_DIR :=.objects/
EXEC_FILE:=$(RELEASE_DIR)/uart
######指定源文件所在目录
SRC_DIR := ./
######指定头文件所在目录
INCLUDE_DIR := $(SRC_DIR)
#############编译平台##########
#COMPILER_PREFIX:=arm-arago-linux-gnueabi-
CC := $(COMPILER_PREFIX)gcc
CXX := $(COMPILER_PREFIX)g++
AR := $(COMPILER_PREFIX)ar
LD := $(COMPILER_PREFIX)ld
#####指定所依赖的静态库文件
#STATIC_LIBS := ./staticLib/libstatic.a
#####指定所依赖的动态库文件如:libtest.so, -L后面带依赖库的路径
#LDFLAGS+= -L./dynamicLib -ldynamic
#####指定编译选项
USERCPPFLAGS := -ffunction-sections -fdata-sections
#USERCPPFLAGS += -pipe -std=c++0x -O1 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -Wall -W -D_REENTRANT
VPATH := $(SRC_DIR)
CSrcs := $(foreach CurDir,$(SRC_DIR),$(wildcard $(CurDir)/*.c))
CppSrcs := $(foreach CurDir,$(SRC_DIR),$(wildcard $(CurDir)/*.cpp))
Objects := $(addprefix $(OBJ_DIR), $(addsuffix .o,$(notdir $(basename $(CSrcs) $(CppSrcs)))))
CDeps:= $(addsuffix .cdep, $(addprefix $(OBJ_DIR), $(basename $(notdir $(CSrcs)))))
CppDeps := $(addsuffix .cppdep, $(addprefix $(OBJ_DIR), $(basename $(notdir $(CppSrcs)))))
CPPFLAGS := -Werror -W $(USERCPPFLAGS)
CPPFLAGS += $(addprefix -I,$(INCLUDE_DIR))
LDFLAGS += -lpthread -ldl -lrt -lm
$(EXEC_FILE): $(Objects) $(STATIC_LIBS)
$(CXX) $^ -o $@ $(LDFLAGS)
@#$(COMPILER_PREFIX)strip $(EXEC_FILE)
ifneq ($(MAKECMDGOALS),clean)
ifneq ($(MAKECMDGOALS),cleandep)
-include $(CDeps)
-include $(CppDeps)
endif
endif
$(OBJ_DIR)%.cdep: %.c
$(create_dep_file)
$(OBJ_DIR)%.cppdep: %.cpp
$(create_dep_file)
$(OBJ_DIR)%.o:%.c
$(CC) $(CPPFLAGS) -c -o $@ $<
$(OBJ_DIR)%.o:%.cpp
$(CXX) $(CPPFLAGS) -c -o $@ $<
define create_dep_file
@if [ ! -e "$(RELEASE_DIR)" ];then mkdir "$(RELEASE_DIR)";fi
@if [ ! -e "$(OBJ_DIR)" ];then mkdir "$(OBJ_DIR)"; fi
@echo Updating dependance ====\> $@;\
rm -f $@; \
$(CC) $(CPPFLAGS) -MM $< | sed 's,$(*F).o:,$(OBJ_DIR)$*.o $@:,g' > $@;
endef
.PHONY: clean
clean:
-rm $(OBJ_DIR) $(RELEASE_DIR)/* -rf
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wzk2019/RS232-485-For-Linux.git
git@gitee.com:wzk2019/RS232-485-For-Linux.git
wzk2019
RS232-485-For-Linux
RS232-485-For-Linux
master

搜索帮助