forked from RAGUL1902/Dynamic-Memory-Allocation-in-C
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
35 lines (27 loc) · 707 Bytes
/
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
MM_MGMT = free.c calloc.c malloc.c realloc.c
MM_MGMT_LIB = $(MM_MGMT)
MM_MGMT_LIB_NAME = libmm.so
MM_MGMT_LIB_AR_NAME = libmm_ar.a
INCLUDE_DIR = \
-Iinclude
all: lib glibc my_mm
lib:
$(CC) -c $(MM_MGMT_LIB) $(INCLUDE_DIR)
ar -r $(MM_MGMT_LIB_AR_NAME) *.o
$(CC) -c $(MM_MGMT_LIB) $(INCLUDE_DIR) -fPIC
gcc -shared -o $(MM_MGMT_LIB_NAME) *.o
rm -rf *.o
clean:
rm -rf *.o $(MM_MGMT_LIB_NAME) $(MM_MGMT_LIB_AR_NAME)
glibc:
gcc main.c -o glib_test
my_mm: lib
gcc main.c -DMY_MM -I. -L. -lmm -o my_mm_test
check: lib my_mm glibc
@echo "run glibc"
./glib_test
@echo "run self define"
ldd my_mm_test
LD_LIBRARY_PATH=./:$$LD_LIBRARY_PATH ./my_mm_test
distclean: clean
.PHONY: all clean lib glibc