blob: 3d47941ef8b66552c3dc3cdb98a2c148e39f356c (
plain)
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
|
CC = gcc
CFLAGS = -O2 -std=gnu99 -Wall -Wextra
CFLAGS_PG= -g -pg -std=gnu99 -Wall -Wextra
INCLUDE = -I. -I../ -I../src/lib/eo/ -I../build
CONFIG = -DHAVE_CONFIG_H=1
EINA_CFLAGS = `pkg-config --cflags eina`
EINA_LIBS = `pkg-config --libs eina`
EO_SRC = ../src/lib/eo/eo_ptr_indirection.c ../src/lib/eo/eo.c ../src/lib/eo/eo_base_class.c ../src/lib/eo/eo2_base_class.c
EO_OBJS = eo_ptr_indirection.o eo.o eo_base_class.o eo2_base_class.o
BENCH_SRC = eo2_simple.c eo_simple.c eo2_inherit.c eo_inherit.c eo2-bench.c
BENCH_OBJS = eo2_simple.o eo_simple.o eo2_inherit.o eo_inherit.o eo2-bench.o
all: eo2-bench eo2-bench-pg test
eo.o: ../src/lib/eo/eo.c ../src/lib/eo/Eo.h ../src/lib/eo/eo_private.h
$(CC) $(CFLAGS) -fPIC -c $(INCLUDE) $(CONFIG) $(EINA_CFLAGS) $< -o $@
eo_ptr_indirection.o: ../src/lib/eo/eo_ptr_indirection.c ../src/lib/eo/Eo.h ../src/lib/eo/eo_private.h
$(CC) $(CFLAGS) -fPIC -c $(INCLUDE) $(CONFIG) $(EINA_CFLAGS) $< -o $@
eo_base_class.o: ../src/lib/eo/eo_base_class.c ../src/lib/eo/Eo.h ../src/lib/eo/eo_private.h
$(CC) $(CFLAGS) -fPIC -c $(INCLUDE) $(CONFIG) $(EINA_CFLAGS) $< -o $@
eo2_base_class.o: ../src/lib/eo/eo2_base_class.c ../src/lib/eo/Eo.h ../src/lib/eo/eo_private.h
$(CC) $(CFLAGS) -fPIC -c $(INCLUDE) $(CONFIG) $(EINA_CFLAGS) $< -o $@
libeo2.so: $(EO_OBJS)
$(CC) $(CFLAGS) -shared -Wl,-soname,libeo2.so $(INCLUDE) $(CONFIG) $(EO_OBJS) $(EINA_LIBS) -o $@
.c.o:
$(CC) $(CFLAGS) -c $(INCLUDE) $(CONFIG) $(EINA_CFLAGS) $< -o $@
eo2-bench: libeo2.so $(BENCH_OBJS) ../src/lib/eo/Eo.h ../src/lib/eo/eo_private.h
$(CC) $(CFLAGS) $(INCLUDE) $(CONFIG) $(BENCH_OBJS) $(EINA_LIBS) -L. -leo2 -o $@
eo2-bench-pg: $(EO_OBJS) $(BENCH_SRC) ../src/lib/eo/Eo.h ../src/lib/eo/eo_private.h
$(CC) $(CFLAGS_PG) $(INCLUDE) $(CONFIG) $(EINA_CFLAGS) $(EINA_LIBS) $(EO_SRC) $(BENCH_SRC) -o $@
.cc.o:
g++ -O2 -std=c++0x -c $(INCLUDE) $(CONFIG) $(EINA_CFLAGS) $< -o $@
test: libeo2.so simplesignal.o ../src/lib/eo/Eo.h ../src/lib/eo/eo_private.h
g++ -O2 -std=c++0x $(INCLUDE) $(CONFIG) simplesignal.o $(EINA_LIBS) -L. -leo2 -o $@
clean:
rm -f *~ *.o eo2-bench eo2-bench-pg test libeo2.so gmon.out
|