1PROJECT_DIR := $(shell pwd) 2CC = gcc 3PROM = recovery 4UPDATE_ENGINE = updateEngine 5 6all: $(PROM) $(UPDATE_ENGINE) 7.PHONY : all 8 9OBJ = recovery.o \ 10 default_recovery_ui.o \ 11 rktools.o \ 12 roots.o \ 13 bootloader.o \ 14 safe_iop.o \ 15 strlcpy.o \ 16 strlcat.o \ 17 rkupdate.o \ 18 sdboot.o \ 19 usbboot.o \ 20 mtdutils/mounts.o \ 21 mtdutils/mtdutils.o \ 22 mtdutils/rk29.o \ 23 minzip/DirUtil.o \ 24 update_engine/log.o 25 26ifdef RecoveryNoUi 27OBJ += noui.o 28else 29OBJ += ui.o\ 30 minzip/Hash.o \ 31 minzip/SysUtil.o \ 32 minzip/Zip.o \ 33 minui/events.o \ 34 minui/graphics.o \ 35 minui/resources.o \ 36 minui/graphics_drm.o 37endif 38 39CFLAGS += -I$(PROJECT_DIR) -I/usr/include -I/usr/include/libdrm/ -lc -DUSE_UPDATEENGINE=ON 40 41ifdef RecoveryNoUi 42CFLAGS += -lpthread -lbz2 43else 44CFLAGS += -lz -lpng -ldrm -lpthread -lcurl -lcrypto -lbz2 45endif 46 47UPDATE_ENGINE_OBJ = mtdutils/mounts.o \ 48 mtdutils/mtdutils.o \ 49 mtdutils/rk29.o \ 50 update_engine/rkbootloader.o \ 51 update_engine/download.o \ 52 update_engine/flash_image.o \ 53 update_engine/log.o \ 54 update_engine/main.o \ 55 update_engine/md5sum.o \ 56 update_engine/rkimage.o \ 57 update_engine/rktools.o \ 58 update_engine/rkboot.o \ 59 update_engine/crc.o \ 60 update_engine/update.o \ 61 update_engine/do_patch.o 62 63# build in buildroot, it need change work directory 64recovery_version: 65 echo "#define GIT_COMMIT_INFO -g39f8f82f-231010" > recovery_autogenerate.h 66# cd $(PROJECT_DIR)/../../../../../external/recovery && \ 67# cd $(PROJECT_DIR) && \ 68# echo "#define GIT_COMMIT_INFO $${commit_info}" > recovery_autogenerate.h 69 70$(PROM): $(OBJ) 71 $(CC) -o $(PROM) $(OBJ) $(CFLAGS) 72 73$(UPDATE_ENGINE): $(UPDATE_ENGINE_OBJ) 74 $(CC) -o $(UPDATE_ENGINE) $(UPDATE_ENGINE_OBJ) $(CFLAGS) 75 76%.o: %.cpp 77 $(CC) -c $< -o $@ $(CFLAGS) 78 79%.o: %.c recovery_version 80 $(CC) -c $< -o $@ $(CFLAGS) 81 82clean: 83 rm -rf $(OBJ) $(PROM) $(UPDATE_ENGINE_OBJ) $(UPDATE_ENGINE) 84 85install: 86 mkdir -p $(DESTDIR)/res/images $(DESTDIR)/usr/bin 87 install -D -m 755 $(PROJECT_DIR)/recovery $(DESTDIR)/usr/bin/ 88 install -D -m 755 $(PROJECT_DIR)/updateEngine $(DESTDIR)/usr/bin/ 89 cp $(PROJECT_DIR)/res/images/* $(DESTDIR)/res/images/ 90 91