-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
35 lines (24 loc) · 758 Bytes
/
Makefile
File metadata and controls
35 lines (24 loc) · 758 Bytes
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
SRCDIR=src
OBJDIR=obj
HDRDIR=include
EXEC=elph
CC=gcc
CFLAGS=-W -Wall -Wextra -I $(HDRDIR) -g
LDFLAGS=
_DEPS=elf64.h elf64_read.h elf64_write.h elf64_hdr.h elf64_shr.h sym_tab.h fdetect.h elf64_phr.h elf64_payload.h elf64_patch.h verbose.h
_SRC=$(EXEC).c elf64.c elf64_read.c elf64_write.c elf64_hdr.c elf64_shr.c sym_tab.c fdetect.c elf64_phr.c elf64_payload.c elf64_patch.c verbose.c
_OBJ=$(_SRC:.c=.o)
DEPS=$(patsubst %,$(HDRDIR)/%,$(_DEPS))
OBJ=$(patsubst %,$(OBJDIR)/%,$(_OBJ))
SRC=$(patsubst %,$(SRCDIR)/%,$(_SRC))
all: $(EXEC)
$(EXEC): $(OBJ)
$(CC) -o $@ $^ $(CFLAGS)
$(OBJDIR)/$(EXEC).o: $(DEPS)
$(OBJDIR)/%.o: $(SRCDIR)/%.c
$(CC) -o $@ -c $< $(CFLAGS)
.PHONY: clean mrproper
clean:
rm -rf $(OBJDIR)/*.o
mproper: clean
rm -rf $(EXEC)