linux应用程序_1_文本浏览器_7_Makefile_2_支持pc机
依据上文的Makefile修改:
一、顶层Makefile
1、工具链 :CROSS_COMPILE
2、编译选项:CFLAGS
3、链接选项:LDFLAGS
4、依赖 :obj
二、顶层Makefile.build无需变动
三、子目录Makefile
依赖 :obj
说明:这个Makefile支持pc机上的显示,因此
在 display/Makefile 中,依赖必须添加上 on_pc.o
这里只附上顶层Makefile代码
CROSS_COMPILE :=
CC := $(CROSS_COMPILE)gcc
LD := $(CROSS_COMPILE)ld
export CROSS_COMPILE CC LD
TOPDIR := $(shell pwd)/
export TOPDIR
CFLAGS := -Wall -O2 -g
CFLAGS += -I$(PWD)/include -I/usr/include/freetype2 -I/usr/local/include
export CFLAGS
LDFLAGS := -lm -lfreetype -lvga -lvgagl
export LDFLAGS
TARGET := built
obj += main.o
obj += draw.o
obj += encoding/
obj += fonts/
obj += display/
all :
make -C ./ -f $(TOPDIR)Makefile.build
$(CC) $(LDFLAGS) -o $(TARGET) built-in.o
clean :
rm -f $(shell find -name "*.o")
rm -f $(TARGET)
distclean :
rm -f $(shell find -name "*.o")
rm -f $(TARGET)
rm -f $(shell find -name "*.d")