forked from JagadheesanD/memleakutil
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile.raw
More file actions
38 lines (26 loc) · 1.52 KB
/
Copy pathMakefile.raw
File metadata and controls
38 lines (26 loc) · 1.52 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
BUILD_OUTPUT=.
CFLAGS += -g -Wall -I./inc
CFLAGS_SELFTEST += ${CFLAGS} -DSELF_TEST
LDFLAGS += -L${BUILD_OUTPUT}
LDFLAGS_SELFTEST += ${LDFLAGS} -Wl,-O1 -Wl,--hash-style=gnu -Wl,--no-as-needed -lmemfnswrap -Wl,--as-needed
default: library link bin
selftest: selftestlib link selftestbin
library:
$(CC) $(CFLAGS) lib/memfns_wrap.c -o ${BUILD_OUTPUT}/memfns_wrap.o -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -c -fPIC
$(CC) $(LDFLAGS) ${BUILD_OUTPUT}/memfns_wrap.o -lrt -ldl -shared -Wl,-soname,libmemfnswrap.so.0 -o ${BUILD_OUTPUT}/libmemfnswrap.so.0.0
bin:
$(CC) $(CFLAGS) -c uty/memleakutil.c -o ${BUILD_OUTPUT}/memleakutil.o
$(CC) $(LDFLAGS) ${BUILD_OUTPUT}/memleakutil.o -lpthread -lrt -ldl -o ${BUILD_OUTPUT}/memleakutil
selftestlib:
$(CC) $(CFLAGS_SELFTEST) lib/memfns_wrap.c -o ${BUILD_OUTPUT}/memfns_wrap.o -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -c -fPIC
$(CC) $(LDFLAGS) ${BUILD_OUTPUT}/memfns_wrap.o -lrt -ldl -shared -Wl,-soname,libmemfnswrap.so.0 -o ${BUILD_OUTPUT}/libmemfnswrap.so.0.0
selftestbin:
$(CC) $(CFLAGS_SELFTEST) -c uty/memleakutil.c -o ${BUILD_OUTPUT}/memleakutil.o
$(CC) $(CFLAGS_SELFTEST) -c tst/memleakutil_test.c -o ${BUILD_OUTPUT}/memleakutil_test.o
$(CC) $(LDFLAGS_SELFTEST) ${BUILD_OUTPUT}/memleakutil.o ${BUILD_OUTPUT}/memleakutil_test.o -lpthread -lrt -ldl -o ${BUILD_OUTPUT}/memleakutil
link:
cd ${BUILD_OUTPUT}
ln -sf libmemfnswrap.so.0 libmemfnswrap.so
ln -sf libmemfnswrap.so.0.0 libmemfnswrap.so.0
clean:
rm -f libmemfnswrap.so* memleakutil memleakutil.o memfns_wrap.o memleakutil_test.o