1 | RMSDK_VERSION ?= 10.0.4␊ |
2 | RMSDK_C_VERSION ?= 10_0␊ |
3 | CROSS ?= arm-linux-gnueabihf-␊ |
4 | CXX = $(CROSS)g++␊ |
5 | CC = $(CROSS)gcc␊ |
6 | ␊ |
7 | DEBUG ?= 0␊ |
8 | NO_BUILD_OPENSSL ?= 0␊ |
9 | INSTALL_DIR ?= $(PWD)/deploy␊ |
10 | RMSDK_LIBDIR = $(PWD)/lib/rmsdk/$(RMSDK_VERSION)␊ |
11 | ␊ |
12 | OUTPUT_DIR ?= output/$(RMSDK_VERSION)␊ |
13 | ␊ |
14 | TARGET_ACSM = $(OUTPUT_DIR)/acsmdownloader␊ |
15 | SRCS_ACSM = src/acsmdownloader.cpp␊ |
16 | TARGET_ACTIVATE = $(OUTPUT_DIR)/activate␊ |
17 | SRCS_ACTIVATE = src/activate.cpp␊ |
18 | ␊ |
19 | TARGETS = $(TARGET_ACSM) $(TARGET_ACTIVATE)␊ |
20 | CXXFLAGS += -I./include -I./include/rmsdk/ `pkg-config --cflags Qt5Core Qt5Network` -fPIC -DRMSDK_$(RMSDK_C_VERSION) -Wall␊ |
21 | ␊ |
22 | ifeq ($(DEBUG),1)␊ |
23 | CXXFLAGS += -ggdb␊ |
24 | endif␊ |
25 | ␊ |
26 | LDFLAGS=-L. -L$(RMSDK_LIBDIR) -L./lib -lrmsdk -lQt5Core -lQt5Network -lpthread␊ |
27 | ␊ |
28 | all: $(RMSDK_LIBDIR) $(OUTPUT_DIR) $(TARGETS)␊ |
29 | ␊ |
30 | clean:␊ |
31 | ␉rm -rf $(TARGETS)␊ |
32 | ␊ |
33 | ultraclean:␊ |
34 | ␉rm -rf output lib tmp $(INSTALL_DIR)␊ |
35 | ␊ |
36 | prepare: $(RMSDK_LIBDIR)␊ |
37 | ␊ |
38 | install: $(TARGETS)␊ |
39 | ␉rm -rf $(INSTALL_DIR)␊ |
40 | ␉mkdir -p $(INSTALL_DIR)␊ |
41 | ␉cp -r $(RMSDK_LIBDIR) $(INSTALL_DIR)/lib␊ |
42 | ␉cp $(TARGETS) $(INSTALL_DIR)␊ |
43 | ␉cp scripts/acsmdownloader.sh $(INSTALL_DIR)␊ |
44 | ␉cp scripts/activate.sh $(INSTALL_DIR)␊ |
45 | ␉@echo␊ |
46 | ␉@echo "Files installed into $(INSTALL_DIR)"␊ |
47 | ␊ |
48 | $(RMSDK_LIBDIR):␊ |
49 | ␉CC=$(CC) NO_BUILD_OPENSSL=$(NO_BUILD_OPENSSL) RMSDK_VERSION=$(RMSDK_VERSION) $(PWD)/scripts/setup.sh␊ |
50 | ␊ |
51 | $(OUTPUT_DIR):␊ |
52 | ␉mkdir -p $@␊ |
53 | ␊ |
54 | $(TARGET_ACTIVATE): $(SRCS_ACTIVATE)␊ |
55 | ␉$(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -ldl -o $@␊ |
56 | $(TARGET_ACSM): $(SRCS_ACSM)␊ |
57 | ␉$(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -o $@␊ |
58 | ␊ |
59 | help:␊ |
60 | ␉@echo ""␊ |
61 | ␉@echo "ACSMDownloader Makefile"␊ |
62 | ␉@echo ""␊ |
63 | ␉@echo "Targets :"␊ |
64 | ␉@echo "\tall \t\tDownload external libraries and build all targets (acsmdownloader and activate)"␊ |
65 | ␉@echo "\tclean \t\tClean targets"␊ |
66 | ␉@echo "\tultraclean \tClean targets, lib and install directory"␊ |
67 | ␉@echo "\tprepare \tDownload libraries from Kobo (done by default)"␊ |
68 | ␉@echo "\tinstall \tInstall result"␊ |
69 | ␉@echo ""␊ |
70 | ␉@echo "Main environment variables :"␊ |
71 | ␉@echo "\tCROSS : \tthat defines cross compilation prefix (default \"arm-linux-gnueabihf-\")"␊ |
72 | ␉@echo "\tDEBUG : 1|0 \tto enable debug symbols (default 0)"␊ |
73 | ␉@echo "\tNO_BUILD_OPENSSL : 1|0 \tto disable OpenSSL build and not use the one from Kobo (default 0)"␊ |
74 | ␉@echo "\tINSTALL_DIR : \tdirectory to put everythong needed (default ./deploy)"␊ |
75 | ␉@echo ""␊ |