1PROJECT_DIR := $(shell pwd) 2 3.PHONY : all 4all: io update vendor_storage sample_vendor_lib minimad 5 6io: 7 $(CC) -c $(PROJECT_DIR)/io.c 8 $(CC) -o $(PROJECT_DIR)/io $(PROJECT_DIR)/io.o 9update: 10 $(CC) -c $(PROJECT_DIR)/update_recv/update_recv.c -I$(PROJECT_DIR)/update_recv 11 $(CC) -c $(PROJECT_DIR)/update.c -I$(PROJECT_DIR) 12 $(CC) -o $(PROJECT_DIR)/update $(PROJECT_DIR)/update.o $(PROJECT_DIR)/update_recv.o 13vendor_storage: 14 $(CC) -c $(PROJECT_DIR)/vendor_storage.c 15 $(CC) -o $(PROJECT_DIR)/vendor_storage $(PROJECT_DIR)/vendor_storage.o 16sample_vendor_lib: 17 $(CC) -o $(PROJECT_DIR)/libvendor_storage.o -c $(PROJECT_DIR)/vendor_storage.c -DBUILD_LIB_VENDOR_STORAGE 18 $(CC) -c $(PROJECT_DIR)/sample/sample_vendor_lib.c -I$(PROJECT_DIR) 19 $(CC) -o $(PROJECT_DIR)/sample_vendor_lib $(PROJECT_DIR)/sample_vendor_lib.o $(PROJECT_DIR)/libvendor_storage.o 20minimad: 21 $(CC) -c $(PROJECT_DIR)/minimad.c 22 $(CC) -o $(PROJECT_DIR)/minimad $(PROJECT_DIR)/minimad.o -lmad 23 24clean: 25 rm -rf $(PROJECT_DIR)/io \ 26 $(PROJECT_DIR)/update \ 27 $(PROJECT_DIR)/vendor_storage \ 28 $(PROJECT_DIR)/sample_vendor_lib \ 29 $(PROJECT_DIR)/minimad \ 30 $(PROJECT_DIR)/io.o \ 31 $(PROJECT_DIR)/libvendor_storage.o \ 32 $(PROJECT_DIR)/sample_vendor_lib.o \ 33 $(PROJECT_DIR)/update.o \ 34 $(PROJECT_DIR)/update_recv.o \ 35 $(PROJECT_DIR)/vendor_storage.o \ 36 $(PROJECT_DIR)/minimad.o 37 38install: 39 mkdir -p $(DESTDIR)/usr/bin 40 install -D -m 755 $(PROJECT_DIR)/io $(DESTDIR)/usr/bin/ 41 install -D -m 755 $(PROJECT_DIR)/update $(DESTDIR)/usr/bin/ 42 install -D -m 755 $(PROJECT_DIR)/vendor_storage $(DESTDIR)/usr/bin/ 43 install -D -m 755 $(PROJECT_DIR)/sample_vendor_lib $(DESTDIR)/usr/bin/ 44 install -D -m 755 $(PROJECT_DIR)/minimad $(DESTDIR)/usr/bin/ 45 46