annotate libbacktrace/Makefile.am @ 144:8f4e72ab4e11

fix segmentation fault caused by nothing next cur_op to end
author Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Sun, 23 Dec 2018 21:23:56 +0900
parents 84e7813d76e9
children 1830386684a0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 # Makefile.am -- Backtrace Makefile.
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
2 # Copyright (C) 2012-2018 Free Software Foundation, Inc.
111
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 # Redistribution and use in source and binary forms, with or without
kono
parents:
diff changeset
5 # modification, are permitted provided that the following conditions are
kono
parents:
diff changeset
6 # met:
kono
parents:
diff changeset
7
kono
parents:
diff changeset
8 # (1) Redistributions of source code must retain the above copyright
kono
parents:
diff changeset
9 # notice, this list of conditions and the following disclaimer.
kono
parents:
diff changeset
10
kono
parents:
diff changeset
11 # (2) Redistributions in binary form must reproduce the above copyright
kono
parents:
diff changeset
12 # notice, this list of conditions and the following disclaimer in
kono
parents:
diff changeset
13 # the documentation and/or other materials provided with the
kono
parents:
diff changeset
14 # distribution.
kono
parents:
diff changeset
15
kono
parents:
diff changeset
16 # (3) The name of the author may not be used to
kono
parents:
diff changeset
17 # endorse or promote products derived from this software without
kono
parents:
diff changeset
18 # specific prior written permission.
kono
parents:
diff changeset
19
kono
parents:
diff changeset
20 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
kono
parents:
diff changeset
21 # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
kono
parents:
diff changeset
22 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
kono
parents:
diff changeset
23 # DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
kono
parents:
diff changeset
24 # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
kono
parents:
diff changeset
25 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
kono
parents:
diff changeset
26 # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
kono
parents:
diff changeset
27 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
kono
parents:
diff changeset
28 # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
kono
parents:
diff changeset
29 # IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
kono
parents:
diff changeset
30 # POSSIBILITY OF SUCH DAMAGE.
kono
parents:
diff changeset
31
kono
parents:
diff changeset
32 ACLOCAL_AMFLAGS = -I .. -I ../config
kono
parents:
diff changeset
33
kono
parents:
diff changeset
34 AM_CPPFLAGS = -I $(top_srcdir)/../include -I $(top_srcdir)/../libgcc \
kono
parents:
diff changeset
35 -I ../libgcc
kono
parents:
diff changeset
36
kono
parents:
diff changeset
37 AM_CFLAGS = $(EXTRA_FLAGS) $(WARN_FLAGS) $(PIC_FLAG)
kono
parents:
diff changeset
38
kono
parents:
diff changeset
39 noinst_LTLIBRARIES = libbacktrace.la
kono
parents:
diff changeset
40
kono
parents:
diff changeset
41 libbacktrace_la_SOURCES = \
kono
parents:
diff changeset
42 backtrace.h \
kono
parents:
diff changeset
43 atomic.c \
kono
parents:
diff changeset
44 dwarf.c \
kono
parents:
diff changeset
45 fileline.c \
kono
parents:
diff changeset
46 internal.h \
kono
parents:
diff changeset
47 posix.c \
kono
parents:
diff changeset
48 print.c \
kono
parents:
diff changeset
49 sort.c \
kono
parents:
diff changeset
50 state.c
kono
parents:
diff changeset
51
kono
parents:
diff changeset
52 BACKTRACE_FILES = \
kono
parents:
diff changeset
53 backtrace.c \
kono
parents:
diff changeset
54 simple.c \
kono
parents:
diff changeset
55 nounwind.c
kono
parents:
diff changeset
56
kono
parents:
diff changeset
57 FORMAT_FILES = \
kono
parents:
diff changeset
58 elf.c \
kono
parents:
diff changeset
59 pecoff.c \
kono
parents:
diff changeset
60 unknown.c \
kono
parents:
diff changeset
61 xcoff.c
kono
parents:
diff changeset
62
kono
parents:
diff changeset
63 VIEW_FILES = \
kono
parents:
diff changeset
64 read.c \
kono
parents:
diff changeset
65 mmapio.c
kono
parents:
diff changeset
66
kono
parents:
diff changeset
67 ALLOC_FILES = \
kono
parents:
diff changeset
68 alloc.c \
kono
parents:
diff changeset
69 mmap.c
kono
parents:
diff changeset
70
kono
parents:
diff changeset
71 EXTRA_libbacktrace_la_SOURCES = \
kono
parents:
diff changeset
72 $(BACKTRACE_FILES) \
kono
parents:
diff changeset
73 $(FORMAT_FILES) \
kono
parents:
diff changeset
74 $(VIEW_FILES) \
kono
parents:
diff changeset
75 $(ALLOC_FILES)
kono
parents:
diff changeset
76
kono
parents:
diff changeset
77 libbacktrace_la_LIBADD = \
kono
parents:
diff changeset
78 $(BACKTRACE_FILE) \
kono
parents:
diff changeset
79 $(FORMAT_FILE) \
kono
parents:
diff changeset
80 $(VIEW_FILE) \
kono
parents:
diff changeset
81 $(ALLOC_FILE)
kono
parents:
diff changeset
82
kono
parents:
diff changeset
83 libbacktrace_la_DEPENDENCIES = $(libbacktrace_la_LIBADD)
kono
parents:
diff changeset
84
kono
parents:
diff changeset
85 # Testsuite.
kono
parents:
diff changeset
86
kono
parents:
diff changeset
87 check_PROGRAMS =
kono
parents:
diff changeset
88
kono
parents:
diff changeset
89 TESTS = $(check_PROGRAMS)
kono
parents:
diff changeset
90
kono
parents:
diff changeset
91 if NATIVE
kono
parents:
diff changeset
92
kono
parents:
diff changeset
93 btest_SOURCES = btest.c testlib.c
kono
parents:
diff changeset
94 btest_CFLAGS = $(AM_CFLAGS) -g -O
kono
parents:
diff changeset
95 btest_LDADD = libbacktrace.la
kono
parents:
diff changeset
96
kono
parents:
diff changeset
97 check_PROGRAMS += btest
kono
parents:
diff changeset
98
kono
parents:
diff changeset
99 stest_SOURCES = stest.c
kono
parents:
diff changeset
100 stest_LDADD = libbacktrace.la
kono
parents:
diff changeset
101
kono
parents:
diff changeset
102 check_PROGRAMS += stest
kono
parents:
diff changeset
103
kono
parents:
diff changeset
104 ztest_SOURCES = ztest.c testlib.c
kono
parents:
diff changeset
105 ztest_CFLAGS = -DSRCDIR=\"$(srcdir)\"
kono
parents:
diff changeset
106 ztest_LDADD = libbacktrace.la
kono
parents:
diff changeset
107
kono
parents:
diff changeset
108 if HAVE_ZLIB
kono
parents:
diff changeset
109 ztest_LDADD += -lz
kono
parents:
diff changeset
110 endif
kono
parents:
diff changeset
111 ztest_LDADD += $(CLOCK_GETTIME_LINK)
kono
parents:
diff changeset
112
kono
parents:
diff changeset
113 check_PROGRAMS += ztest
kono
parents:
diff changeset
114
kono
parents:
diff changeset
115 edtest_SOURCES = edtest.c edtest2_build.c testlib.c
kono
parents:
diff changeset
116 edtest_LDADD = libbacktrace.la
kono
parents:
diff changeset
117
kono
parents:
diff changeset
118 check_PROGRAMS += edtest
kono
parents:
diff changeset
119
kono
parents:
diff changeset
120 edtest2_build.c: gen_edtest2_build; @true
kono
parents:
diff changeset
121 gen_edtest2_build: $(srcdir)/edtest2.c
kono
parents:
diff changeset
122 cat $(srcdir)/edtest2.c > tmp-edtest2_build.c
kono
parents:
diff changeset
123 $(SHELL) $(srcdir)/../move-if-change tmp-edtest2_build.c edtest2_build.c
kono
parents:
diff changeset
124 echo timestamp > $@
kono
parents:
diff changeset
125
kono
parents:
diff changeset
126 if HAVE_PTHREAD
kono
parents:
diff changeset
127
kono
parents:
diff changeset
128 check_PROGRAMS += ttest
kono
parents:
diff changeset
129
kono
parents:
diff changeset
130 ttest_SOURCES = ttest.c testlib.c
kono
parents:
diff changeset
131 ttest_CFLAGS = $(AM_CFLAGS) -pthread
kono
parents:
diff changeset
132 ttest_LDADD = libbacktrace.la
kono
parents:
diff changeset
133
kono
parents:
diff changeset
134 endif HAVE_PTHREAD
kono
parents:
diff changeset
135
kono
parents:
diff changeset
136 if HAVE_OBJCOPY_DEBUGLINK
kono
parents:
diff changeset
137
kono
parents:
diff changeset
138 TESTS += dtest
kono
parents:
diff changeset
139
kono
parents:
diff changeset
140 dtest: btest
kono
parents:
diff changeset
141 $(OBJCOPY) --only-keep-debug btest btest.debug
kono
parents:
diff changeset
142 $(OBJCOPY) --strip-debug --add-gnu-debuglink=btest.debug btest dtest
kono
parents:
diff changeset
143
kono
parents:
diff changeset
144 endif HAVE_OBJCOPY_DEBUGLINK
kono
parents:
diff changeset
145
kono
parents:
diff changeset
146 if HAVE_COMPRESSED_DEBUG
kono
parents:
diff changeset
147
kono
parents:
diff changeset
148 ctestg_SOURCES = btest.c testlib.c
kono
parents:
diff changeset
149 ctestg_CFLAGS = $(AM_CFLAGS) -g
kono
parents:
diff changeset
150 ctestg_LDFLAGS = -Wl,--compress-debug-sections=zlib-gnu
kono
parents:
diff changeset
151 ctestg_LDADD = libbacktrace.la
kono
parents:
diff changeset
152
kono
parents:
diff changeset
153 ctesta_SOURCES = btest.c testlib.c
kono
parents:
diff changeset
154 ctesta_CFLAGS = $(AM_CFLAGS) -g
kono
parents:
diff changeset
155 ctesta_LDFLAGS = -Wl,--compress-debug-sections=zlib-gabi
kono
parents:
diff changeset
156 ctesta_LDADD = libbacktrace.la
kono
parents:
diff changeset
157
kono
parents:
diff changeset
158 check_PROGRAMS += ctestg ctesta
kono
parents:
diff changeset
159
kono
parents:
diff changeset
160 endif
kono
parents:
diff changeset
161
kono
parents:
diff changeset
162 endif NATIVE
kono
parents:
diff changeset
163
kono
parents:
diff changeset
164 # We can't use automake's automatic dependency tracking, because it
kono
parents:
diff changeset
165 # breaks when using bootstrap-lean. Automatic dependency tracking
kono
parents:
diff changeset
166 # with GCC bootstrap will cause some of the objects to depend on
kono
parents:
diff changeset
167 # header files in prev-gcc/include, e.g., stddef.h and stdarg.h. When
kono
parents:
diff changeset
168 # using bootstrap-lean, prev-gcc is removed after each stage. When
kono
parents:
diff changeset
169 # running "make install", those header files will be gone, causing the
kono
parents:
diff changeset
170 # library to be rebuilt at install time. That may not succeed.
kono
parents:
diff changeset
171
kono
parents:
diff changeset
172 # These manual dependencies do not include dependencies on unwind.h,
kono
parents:
diff changeset
173 # even though that is part of GCC, because where to find it depends on
kono
parents:
diff changeset
174 # whether we are being built as a host library or a target library.
kono
parents:
diff changeset
175
kono
parents:
diff changeset
176 INCDIR = $(top_srcdir)/../include
kono
parents:
diff changeset
177 alloc.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
178 backtrace.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
179 btest.lo: (INCDIR)/filenames.h backtrace.h backtrace-supported.h
kono
parents:
diff changeset
180 dwarf.lo: config.h $(INCDIR)/dwarf2.h $(INCDIR)/dwarf2.def \
kono
parents:
diff changeset
181 $(INCDIR)/filenames.h backtrace.h internal.h
kono
parents:
diff changeset
182 elf.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
183 fileline.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
184 mmap.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
185 mmapio.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
186 nounwind.lo: config.h internal.h
kono
parents:
diff changeset
187 pecoff.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
188 posix.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
189 print.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
190 read.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
191 simple.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
192 sort.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
193 stest.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
194 state.lo: config.h backtrace.h backtrace-supported.h internal.h
kono
parents:
diff changeset
195 unknown.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
196 xcoff.lo: config.h backtrace.h internal.h
kono
parents:
diff changeset
197