File: Makefile.in

package info (click to toggle)
eztrace 2.0%2Brepack-12
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 4,132 kB
  • sloc: ansic: 23,501; perl: 910; sh: 857; cpp: 771; makefile: 696; fortran: 327; f90: 320; python: 57
file content (97 lines) | stat: -rw-r--r-- 2,182 bytes parent folder | download | duplicates (8)
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# Copyright (C) CNRS, INRIA, Université Bordeaux 1, Télécom SudParis
# See COPYING in top-level directory.

BITS=@TARGET_BITS@
CORE_DIRECTORY=@abs_top_builddir@/src/core
CORE_SRC_DIRECTORY=@abs_top_srcdir@/src/core
PPTRACE_DIRECTORY=@abs_top_srcdir@/src/pptrace
TEST_DIRECTORY=@abs_top_srcdir@/test/pptrace/automatic

ifeq "@HAVE_LIBBFD@" "1"
TESTS=errors binary tracing opcodes wait_open hijack
endif

DEBUG_LEVEL=0

ifeq "@PPTRACE_BINARY_TYPE@" "1"
	LIBBIN=-lbfd -lopcodes
else
	LIBBIN=-lelf
endif

PPTRACE_DEPS=errors.c\
	    binary.c

ADDITIONAL_DEPS=$(CORE_SRC_DIRECTORY)/ezt_demangle.c

errors_FLAGS=$(LIBBIN)
errors_DEPS=$(PPTRACE_DEPS)

binary_FLAGS=$(LIBBIN)
binary_DEPS=$(PPTRACE_DEPS)

wait_open_FLAGS=$(LIBBIN)
wait_open_DEPS=$(PPTRACE_DEPS)\
	       tracing.c

tracing_FLAGS=$(LIBBIN)
tracing_DEPS=$(PPTRACE_DEPS)\
	     tracing.c

opcodes_FLAGS=$(LIBBIN)
opcodes_DEPS=$(PPTRACE_DEPS)\
	     opcodes.c

hijack_FLAGS=$(LIBBIN)
hijack_DEPS=	$(PPTRACE_DEPS)\
		opcodes.c\
		tracing.c\
		hijack.c\
		memory.c\
		isize.c

TESTCASES_=$(patsubst %.c,%,$(wildcard $(TEST_DIRECTORY)/testcase/*.c))
TESTCASES=$(foreach testcase,$(TESTCASES_),$(foreach b,$(BITS),$(testcase).$(b) $(testcase).$(b).so))

TESTS_CHECK=$(foreach test,$(TESTS),$(test).check)

CFLAGS = -O0 -g -I$(PPTRACE_DIRECTORY) -I$(CORE_DIRECTORY) -I$(CORE_SRC_DIRECTORY) -D__PPTRACE_DEBUG_LEVEL=$(DEBUG_LEVEL)

.PHONY:	check testcase

all:

distdir:

check:	testcase $(TESTS)

testcase:
	@make -C $(TEST_DIRECTORY)/testcase BITS='$(BITS)'

%.check:	%
	@echo -n " *** RUNNING TEST $<... "
	@./$<.test || (echo "FAILED!"; false)
	@echo "OK"

%::	$(TEST_DIRECTORY)/%.c
	@echo CC	$@
	@$(CC) $(CFLAGS) $^ $(foreach d,$($@_DEPS),$(PPTRACE_DIRECTORY)/$d) $(ADDITIONAL_DEPS) -o $@ $($@_FLAGS) 
	@echo "#!/bin/sh" >$@.test
	@echo "cd $$PWD" >>$@.test
	@echo './$@ ${TESTCASES} $$*' >>$@.test
	@echo 'RES=$$?' >>$@.test
	@echo 'cd - >/dev/null' >>$@.test
	@echo 'exit $$RES'>>$@.test
	@chmod +x $@.test

install:

installcheck:

uninstall:

distclean: clean

clean:
	@rm -f $(TESTS) $(foreach d,$(TESTS),$d.test)
	@if [ -d $(TEST_DIRECTORY)/testcase ] ; then make -C $(TEST_DIRECTORY)/testcase BITS='$(BITS)' clean ; fi