-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
executable file
·78 lines (68 loc) · 2.12 KB
/
Makefile
File metadata and controls
executable file
·78 lines (68 loc) · 2.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
ifeq ($(strip $(PRODUCT_NAME)),)
PRODUCT_NAME:=impdclient
endif
ifeq ($(strip $(SRCROOT)),)
SRCROOT=.
endif
ifeq ($(strip $(BUILT_PRODUCTS_DIR)),)
BUILT_PRODUCTS_DIR=./build/Debug
endif
ifeq ($(strip $(CONFIGURATION_TEMP_DIR)),)
CONFIGURATION_TEMP_DIR=./build/impdclient.build/Debug
endif
INFOPLIST=Info.plist
DEFAULT_BACKGROUND=Default.png
APP_ICON=icon.png
APP_RESOURCES=resources/*.png
SOURCES=\
main.m \
impdclientApp.m \
AlbumsView.m \
ArtistsView.m \
PlaylistView.m \
PreferencesView.m \
SearchView.m \
SongsView.m
FRAMEWORKS=\
-framework CoreFoundation \
-framework Foundation \
-framework UIKit \
-framework CoreGraphics \
-framework GraphicsServices \
-framework LayerKit
CC=/usr/local/bin/arm-apple-darwin-gcc
CFLAGS=-O3 -g -Wall -I/usr/local/arm-apple-darwin/include -I/usr/local/arm-apple-darwin/include/Foundation
LD=$(CC)
LDFLAGS=-lobjc $(FRAMEWORKS) libmpd.a
WRAPPER_NAME=$(PRODUCT_NAME).app
EXECUTABLE_NAME=$(PRODUCT_NAME)
SOURCES_ABS=$(addprefix $(SRCROOT)/,$(SOURCES))
INFOPLIST_ABS=$(addprefix $(SRCROOT)/,$(INFOPLIST))
DEFAULT_BACKGROUND_ABS=$(addprefix $(SRCROOT)/,$(DEFAULT_BACKGROUND))
APP_ICON_ABS=$(addprefix $(SRCROOT)/,$(APP_ICON))
APP_RESOURCES_ABS=$(addprefix $(SRCROOT)/,$(APP_RESOURCES))
OBJECTS=\
$(patsubst %.c,%.o,$(filter %.c,$(SOURCES))) \
$(patsubst %.cc,%.o,$(filter %.cc,$(SOURCES))) \
$(patsubst %.cpp,%.o,$(filter %.cpp,$(SOURCES))) \
$(patsubst %.m,%.o,$(filter %.m,$(SOURCES))) \
$(patsubst %.mm,%.o,$(filter %.mm,$(SOURCES)))
OBJECTS_ABS=$(addprefix $(CONFIGURATION_TEMP_DIR)/,$(OBJECTS))
APP_ABS=$(BUILT_PRODUCTS_DIR)/$(WRAPPER_NAME)
PRODUCT_ABS=$(APP_ABS)/$(EXECUTABLE_NAME)
all: $(PRODUCT_ABS)
$(PRODUCT_ABS): $(APP_ABS) $(OBJECTS_ABS)
$(LD) $(LDFLAGS) -o $(PRODUCT_ABS) $(OBJECTS_ABS)
$(APP_ABS): $(INFOPLIST_ABS)
mkdir -p $(APP_ABS)
mkdir -p $(APP_ABS)/resources
cp $(INFOPLIST_ABS) $(APP_ABS)/
cp $(DEFAULT_BACKGROUND_ABS) $(APP_ABS)/
cp $(APP_ICON_ABS) $(APP_ABS)/
cp $(APP_RESOURCES_ABS) $(APP_ABS)/resources/
$(CONFIGURATION_TEMP_DIR)/%.o: $(SRCROOT)/%.m
mkdir -p $(dir $@)
$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
clean:
rm -f $(OBJECTS_ABS)
rm -rf $(APP_ABS)