-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
81 lines (60 loc) · 1.81 KB
/
Makefile
File metadata and controls
81 lines (60 loc) · 1.81 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
78
79
80
81
# Author: Bryan Martin and Joseph Listro
# Class: CSI 385 <Section 02>
# Assignment: Semester Project
# Date Assigned: 6 September 2016
# Due Date: 6 December 2016
# Description: Project Makefile
# Certification of Authenticity:
# I certify that this assignment is entirely my own work.
CC = gcc
CC_OPTIONS = -std=c99 -D _SVID_SOURCE
EXE = BetterShell
MAIN = src/helper/fatSupport.[ch] src/helper/fat.[ch] src/helper/shared.[ch] src/helper/shellFunctions.[ch]
SHARE = src/helper/fatSupport.[ch] src/helper/fat.[ch] src/helper/shared.[ch]
all:
@make BetterShell
@make cat
@make cd
@make df
@make ls
@make mkdir
@make pbs
@make pfe
@make pwd
@make rm
@make rmdir
@make touch
@make mkdir
@make clean
$(EXE): src/main.c $(MAIN)
@make validate-build
$(CC) -g -o $@ $(CC_OPTIONS) $^
cat: src/cmd/cat.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
cd: src/cmd/cd.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
df: src/cmd/df.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
ls: src/cmd/ls.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
mkdir: src/cmd/mkdir.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
pbs: src/cmd/pbs.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
pfe: src/cmd/pfe.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
pwd: src/cmd/pwd.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
rm: src/cmd/rm.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
rmdir: src/cmd/rmdir.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
touch: src/cmd/touch.c $(SHARE)
$(CC) -g -o bin/$@ $(CC_OPTIONS) $^
clean:
rm -f *.o *~ bin/*.o bin/*~ src/*~ src/cmd/*~ src/helper/*~ src/helper/*.gch
reset:
@make clean
rm -f bin/* BetterShell
validate-build:
if ! [ -d "./bin" ]; then mkdir -p "./bin"; fi