3d57eb5b |
1 | |
3d57eb5b |
2 | CC=gcc |
15146922 |
3 | INCLUDE_DIR=/usr/include |
3a4541a5 |
4 | LIB_DIR?=/usr/lib |
06b6cf12 |
5 | RANLIB=ranlib |
3d57eb5b |
6 | |
ce22b1be |
7 | LTT_CFLAGS=-I. -O2 -L. -fPIC |
976db1b3 |
8 | |
9 | #For testing lib ltt-usertrace-fast |
10 | #CFLAGS+=-DLTT_SUBBUF_SIZE_CPU=134217728 |
11 | #CFLAGS+=-DLTT_NULL_OUTPUT_TEST |
12 | |
13 | all: libs samples |
14 | |
1a7c8c19 |
15 | #SAMPLE PROGRAMS |
976db1b3 |
16 | |
1a7c8c19 |
17 | samples: sample sample-highspeed sample-printf \ |
4df264b2 |
18 | sample-instrument-fct sample-thread-slow sample-thread-fast sample-thread-brand sample-block |
3d57eb5b |
19 | |
ce22b1be |
20 | sample: sample.c |
21 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lltt-loader-user_generic -o $@ $^ |
22 | sample-block: sample-block.c |
23 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lltt-loader-user_generic -o $@ $^ |
972a52cf |
24 | |
ce22b1be |
25 | sample-thread-brand: sample-thread-brand.c |
26 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lltt-loader-user_generic -o $@ $^ |
a31c6b45 |
27 | |
ce22b1be |
28 | sample-highspeed: sample-highspeed.c |
29 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lltt-usertrace-fast -lltt-loader-user_generic -o $@ $^ |
3d57eb5b |
30 | |
ce22b1be |
31 | sample-printf: sample-printf.c |
32 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lltt-loader-user_generic -o $@ $^ |
15146922 |
33 | |
06b6cf12 |
34 | sample-instrument-fct: sample-instrument-fct.c |
3a4541a5 |
35 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -g -finstrument-functions -lltt-instrument-functions -o $@ $^ |
20f73bc0 |
36 | |
ce22b1be |
37 | sample-thread-slow: sample-thread-slow.c |
38 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lpthread -lltt-loader-user_generic -o $@ $^ |
1a7c8c19 |
39 | |
ce22b1be |
40 | sample-thread-fast: sample-thread-fast.c |
41 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lpthread -lltt-usertrace-fast -lltt-loader-user_generic -o $@ $^ |
1a7c8c19 |
42 | |
43 | |
44 | #LIBRAIRIES |
45 | |
46 | libs: libltt-instrument-functions.a libltt-instrument-functions.so.0 \ |
ce22b1be |
47 | libltt-usertrace-fast.a libltt-usertrace-fast.so.0 \ |
48 | libltt-loader-user_generic.a libltt-loader-user_generic.so.0 |
1a7c8c19 |
49 | |
50 | libltt-usertrace-fast.a: ltt-usertrace-fast.o |
976db1b3 |
51 | @rm -f libltt-usertrace-fast.a |
52 | $(AR) rc $@ $^ |
53 | $(RANLIB) $@ |
54 | |
1a7c8c19 |
55 | libltt-usertrace-fast.so.0: ltt-usertrace-fast.o |
976db1b3 |
56 | @rm -f libltt-usertrace-fast.so libltt-usertrace-fast.so.0 |
3a4541a5 |
57 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lpthread -shared -Wl,-soname,libltt-usertrace-fast.so -o $@ $^ |
976db1b3 |
58 | ln -s libltt-usertrace-fast.so.0 libltt-usertrace-fast.so |
59 | |
60 | libltt-instrument-functions.a: ltt-instrument-functions.o ltt-facility-loader-user_generic.o ltt-usertrace-fast.o |
06b6cf12 |
61 | @rm -f libltt-instrument-functions.a |
62 | $(AR) rc $@ $^ |
63 | $(RANLIB) $@ |
64 | |
976db1b3 |
65 | libltt-instrument-functions.so.0: ltt-instrument-functions.o ltt-facility-loader-user_generic.o ltt-usertrace-fast.o |
06b6cf12 |
66 | @rm -f libltt-instrument-functions.so libltt-instrument-functions.so.0 |
3a4541a5 |
67 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lpthread -shared -Wl,-soname,libltt-instrument-functions.so -o $@ $^ |
06b6cf12 |
68 | ln -s libltt-instrument-functions.so.0 libltt-instrument-functions.so |
e90c7b86 |
69 | |
ce22b1be |
70 | libltt-loader-user_generic.a: ltt-facility-loader-user_generic.o |
71 | @rm -f libltt-loader-user_generic.a |
72 | $(AR) rc $@ $^ |
73 | $(RANLIB) $@ |
74 | |
75 | libltt-loader-user_generic.so.0: ltt-facility-loader-user_generic.o |
76 | @rm -f libltt-loader-user_generic.so libltt-loader-user_generic.so.0 |
77 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -lpthread -shared -Wl,-soname,libltt-loader-user_generic.so -o $@ $^ |
78 | ln -s libltt-loader-user_generic.so.0 libltt-loader-user_generic.so |
79 | |
3a4541a5 |
80 | %.o: %.c |
81 | $(CC) $(LTT_CFLAGS) $(CFLAGS) -c -o $@ $+ |
e36efdc5 |
82 | |
3a4541a5 |
83 | .PHONY : clean install libs install_libs install_headers samples |
84 | |
85 | install_headers: |
15146922 |
86 | if [ ! -e "$(INCLUDE_DIR)/ltt" ] ; then mkdir $(INCLUDE_DIR)/ltt ; fi |
87 | cp -f ltt/*.h $(INCLUDE_DIR)/ltt |
3a4541a5 |
88 | |
89 | install_libs: |
b09f3215 |
90 | cp -df libltt-instrument-functions.so* libltt-instrument-functions.a $(LIB_DIR) |
976db1b3 |
91 | cp -df libltt-usertrace-fast.so* libltt-usertrace-fast.a $(LIB_DIR) |
ce22b1be |
92 | cp -df libltt-loader-user_generic.so* libltt-loader-user_generic.a $(LIB_DIR) |
3d57eb5b |
93 | |
3a4541a5 |
94 | install: install_headers libs install_libs |
95 | |
3d57eb5b |
96 | clean: |
ce22b1be |
97 | rm -fr *.o *~ sample-thread sample sample-highspeed sample-printf sample-instrument-fct libltt-instrument-functions.so* libltt-instrument-functions.a libltt-usertrace-fast.a libltt-usertrace-fast.so* libltt-loader-user_generic.so* libltt-loader-user_generic.a sample-thread-slow sample-thread-fast sample-thread-brand |
3d57eb5b |
98 | |