diff options
author | TheJackiMonster <thejackimonster@gmail.com> | 2022-09-25 12:37:58 +0200 |
---|---|---|
committer | TheJackiMonster <thejackimonster@gmail.com> | 2022-09-25 12:37:58 +0200 |
commit | 9aff43ff3b692f9fd15ae1f29e6522b5a4ee7642 (patch) | |
tree | 56ee5fbb8980e6642a0136875dd99837e3d7d043 /Makefile | |
parent | 7deabe9ff611d68ae780903e4970b5d73cd13493 (diff) | |
download | messenger-cli-9aff43ff3b692f9fd15ae1f29e6522b5a4ee7642.tar.gz messenger-cli-9aff43ff3b692f9fd15ae1f29e6522b5a4ee7642.zip |
Transition from single makefile to automake
Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 102 |
1 files changed, 0 insertions, 102 deletions
diff --git a/Makefile b/Makefile deleted file mode 100644 index 66bb7e2..0000000 --- a/Makefile +++ /dev/null | |||
@@ -1,102 +0,0 @@ | |||
1 | |||
2 | VERSION = 0.1.0 | ||
3 | TARGET_NAME = messenger-cli | ||
4 | |||
5 | SOURCE_DIR = src/ | ||
6 | INSTALL_DIR ?= /usr/local/ | ||
7 | |||
8 | PACKAGE = $(TARGET_NAME) | ||
9 | BINARY = $(TARGET_NAME) | ||
10 | SOURCES = messenger_cli.c\ | ||
11 | application.c\ | ||
12 | chat.c\ | ||
13 | util.c\ | ||
14 | ui/account_create_dialog.c\ | ||
15 | ui/accounts.c\ | ||
16 | ui/chat_open_dialog.c\ | ||
17 | ui/chats.c\ | ||
18 | ui/lobby_create_dialog.c\ | ||
19 | ui/lobby_enter_dialog.c\ | ||
20 | ui/members.c\ | ||
21 | ui/messages.c | ||
22 | HEADERS = application.h\ | ||
23 | chat.h\ | ||
24 | util.h\ | ||
25 | ui/account_create_dialog.h\ | ||
26 | ui/accounts.h\ | ||
27 | ui/chat.h\ | ||
28 | ui/chat_open_dialog.h\ | ||
29 | ui/chats.h\ | ||
30 | ui/list_input.h\ | ||
31 | ui/lobby_create_dialog.h\ | ||
32 | ui/lobby_enter_dialog.h\ | ||
33 | ui/members.h\ | ||
34 | ui/messages.h\ | ||
35 | ui/text_input.h | ||
36 | |||
37 | LIBRARIES = gnunetchat gnunetutil ncurses | ||
38 | |||
39 | DIST_FILES = Makefile\ | ||
40 | AUTHORS\ | ||
41 | CHANGES.md\ | ||
42 | COPYING\ | ||
43 | README.md | ||
44 | |||
45 | GNU_CC ?= gcc | ||
46 | GNU_LD ?= gcc | ||
47 | GNU_RM ?= rm | ||
48 | GNU_CP ?= cp | ||
49 | GNU_TAR ?= tar | ||
50 | |||
51 | CFLAGS += -pedantic -Wall -Wextra -ggdb3 -Wno-overlength-strings | ||
52 | LDFLAGS += | ||
53 | |||
54 | DEBUGFLAGS = -O0 -D _DEBUG | ||
55 | RELEASEFLAGS = -O2 -D NDEBUG | ||
56 | |||
57 | DIST_DIR = $(PACKAGE)-$(VERSION)/ | ||
58 | DIST_TAR = $(PACKAGE)-$(VERSION).tar.gz | ||
59 | |||
60 | SOURCE_FILES = $(addprefix $(SOURCE_DIR), $(SOURCES)) | ||
61 | OBJECT_FILES = $(SOURCE_FILES:%.c=%.o) | ||
62 | HEADER_FILES = $(addprefix $(SOURCE_DIR), $(HEADERS)) | ||
63 | LIBRARY_FLAGS = $(addprefix -l, $(LIBRARIES)) | ||
64 | |||
65 | all: $(BINARY) | ||
66 | |||
67 | debug: CFLAGS += $(DEBUGFLAGS) | ||
68 | debug: $(BINARY) | ||
69 | |||
70 | release: CFLAGS += $(RELEASEFLAGS) | ||
71 | release: $(BINARY) | ||
72 | |||
73 | %.o: %.c | ||
74 | $(GNU_CC) $(CFLAGS) -c $< -o $@ | ||
75 | |||
76 | $(BINARY): $(OBJECT_FILES) | ||
77 | $(GNU_LD) $(LDFLAGS) $^ -o $@ $(LIBRARY_FLAGS) | ||
78 | |||
79 | .PHONY: install | ||
80 | |||
81 | install: | ||
82 | install -m 755 $(BINARY) $(addprefix $(INSTALL_DIR), bin/) | ||
83 | |||
84 | .PHONY: uninstall | ||
85 | |||
86 | uninstall: | ||
87 | $(GNU_RM) -f $(addsuffix $(BINARY), $(addprefix $(INSTALL_DIR), bin/)) | ||
88 | |||
89 | .PHONY: dist | ||
90 | |||
91 | dist: clean | ||
92 | mkdir $(DIST_DIR) | ||
93 | $(GNU_CP) -r $(SOURCE_DIR) $(DIST_DIR) | ||
94 | $(foreach DIST_FILE,$(DIST_FILES),$(GNU_CP) $(DIST_FILE) $(addprefix $(DIST_DIR), $(DIST_FILE));) | ||
95 | $(GNU_TAR) -czf $(DIST_TAR) $(DIST_DIR) | ||
96 | $(GNU_RM) -r $(DIST_DIR) | ||
97 | |||
98 | .PHONY: clean | ||
99 | |||
100 | clean: | ||
101 | $(GNU_RM) -f $(BINARY) | ||
102 | $(GNU_RM) -f $(OBJECT_FILES) | ||