-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
executable file
·99 lines (80 loc) · 3.48 KB
/
Makefile
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# **************************************************************************** #
# LE - / #
# / #
# Makefile .:: .:/ . .:: #
# +:+:+ +: +: +:+:+ #
# By: jmonneri <marvin@le-101.fr> +:+ +: +: +:+ #
# #+# #+ #+ #+# #
# Created: 2018/08/09 18:13:46 by jmonneri #+# ## ## #+# #
# Updated: 2018/09/05 12:34:01 by jmonneri ### #+. /#+ ###.fr #
# / #
# / #
# **************************************************************************** #
.PHONY: all clean fclean re signature
NAME = corewar
CC = gcc -g
CFLAGS += -Wall -Wextra -Werror
LFTDIR = libft
ASM_DIR = compiler
VM_DIR = vm
H_FILE = op.h
# **************************************************************************** #
# PLAYERS #
# **************************************************************************** #
PATH_COR = ./script/cor/
PATH_S = ./vm_champs/
P1 = aurollan.cor
P2 = aurollan.cor
# **************************************************************************** #
# RULES #
# **************************************************************************** #
all: $(NAME)
$(NAME): build_libft build_asm build_corewar
@echo "$(NAME) ready, enjoy!"
build_corewar:
@make -C $(VM_DIR)
@cp $(VM_DIR)/corewar .
build_asm:
@make -C $(ASM_DIR)
@cp $(ASM_DIR)/asm .
build_libft:
@make -C common/$(LFTDIR)
clean:
@make -C $(ASM_DIR) clean
@make -C $(VM_DIR) clean
fclean:
@make -C $(ASM_DIR) fclean
@make -C $(VM_DIR) fclean
@touch asm corewar
@rm asm corewar
re: fclean all
# **************************************************************************** #
# UTILS #
# **************************************************************************** #
script: build_corewar
@sh utils/script/run.sh
valgrind_vm: build_corewar
@valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes ./corewar $(addprefix $(PATH_COR), $(P1) $(P2) $(P3) $(P4))
@rm -rf corewar.dSYM
valgrind_asm: build_asm
@valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes ./asm $(addprefix $(PATH_S), $(P1) $(P2) $(P3) $(P4))
@rm -rf asm.dSYM
coffee:
@echo " ."
@echo " \`:."
@echo " \`:."
@echo " .:' ,::"
@echo " .:' ;:'"
@echo " :: ;:'"
@echo " : .:'"
@echo " \`. :."
@echo " _________________________"
@echo " : _ _ _ _ _ _ _ _ _ _ _ _ :"
@echo " ,---:\".\".\".\".\".\".\".\".\".\".\".\".\":"
@echo " : ,'\"\`::.:.:.:.:.:.:.:.:.:.:.::'"
@echo " \`.\`. \`:-===-===-===-===-===-:'"
@echo " \`.\`-._: :"
@echo " \`-.__\`. ,'"
@echo " ,--------\`\"\`-------------'--------."
@echo " \`\"--.__ __.--\"'"
@echo " \`\"\"-------------\"\"'"