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