]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/valgrind/src/valgrind-3.6.0-svn/Makefile.vex.am
e7f2c6d76855995c972cd689bf5bce219a8b25bd
[l4.git] / l4 / pkg / valgrind / src / valgrind-3.6.0-svn / Makefile.vex.am
1 # VEX/Makefile is generated from this file at configure-time.
2
3 include $(top_srcdir)/Makefile.all.am
4
5 #----------------------------------------------------------------------------
6 # Headers, etc
7 #----------------------------------------------------------------------------
8
9 EXTRA_DIST = \
10         HACKING.README \
11         LICENSE.README \
12         LICENSE.GPL \
13         quote.txt \
14         newline.txt \
15         auxprogs/genoffsets.c
16
17 pkginclude_HEADERS = \
18         pub/libvex.h \
19         pub/libvex_basictypes.h \
20         pub/libvex_emwarn.h \
21         pub/libvex_guest_offsets.h \
22         pub/libvex_guest_x86.h \
23         pub/libvex_guest_amd64.h \
24         pub/libvex_guest_ppc32.h \
25         pub/libvex_guest_ppc64.h \
26         pub/libvex_guest_arm.h \
27         pub/libvex_ir.h \
28         pub/libvex_trc_values.h
29
30 noinst_HEADERS = \
31         priv/main_globals.h \
32         priv/main_util.h \
33         priv/ir_match.h \
34         priv/ir_opt.h \
35         priv/guest_generic_bb_to_IR.h \
36         priv/guest_generic_x87.h \
37         priv/guest_x86_defs.h \
38         priv/guest_amd64_defs.h \
39         priv/guest_ppc_defs.h \
40         priv/guest_arm_defs.h \
41         priv/host_generic_regs.h \
42         priv/host_generic_simd64.h \
43         priv/host_x86_defs.h \
44         priv/host_amd64_defs.h \
45         priv/host_ppc_defs.h \
46         priv/host_arm_defs.h
47
48 BUILT_SOURCES = pub/libvex_guest_offsets.h
49 CLEANFILES    = pub/libvex_guest_offsets.h
50 VEX_SRC       = $(top_srcdir)/VEX
51
52 # This is very uggerly.  Need to sed out both "xyzzyN" and
53 # "xyzzy$N" since gcc on different targets emits the constants
54 # differently -- with a leading $ on x86/amd64 but none on ppc32/64.
55 pub/libvex_guest_offsets.h:
56         mkdir -p auxprogs
57         mkdir -p pub
58         mkdir -p priv
59         rm -f auxprogs/genoffsets.s
60         $(CC) $(LIBVEX_CFLAGS) -O -S -o auxprogs/genoffsets.s \
61                                         $(VEX_SRC)/auxprogs/genoffsets.c
62         grep xyzzy auxprogs/genoffsets.s | grep define \
63            | sed "s/xyzzy\\$$//g" \
64            | sed "s/xyzzy#//g" \
65            | sed "s/xyzzy//g" \
66            > pub/libvex_guest_offsets.h
67         rm -f auxprogs/genoffsets.s
68
69 #----------------------------------------------------------------------------
70 # libvex-<platform>.a
71 #----------------------------------------------------------------------------
72
73 pkglib_LIBRARIES  = libvex-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a
74 if VGCONF_HAVE_PLATFORM_SEC
75 pkglib_LIBRARIES += libvex-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a
76 endif
77
78 LIBVEX_SOURCES_COMMON = \
79         priv/main_globals.c \
80         priv/main_main.c \
81         priv/main_util.c \
82         priv/ir_defs.c \
83         priv/ir_match.c \
84         priv/ir_opt.c \
85         priv/guest_generic_bb_to_IR.c \
86         priv/guest_generic_x87.c \
87         priv/guest_x86_helpers.c \
88         priv/guest_x86_toIR.c \
89         priv/guest_amd64_helpers.c \
90         priv/guest_amd64_toIR.c \
91         priv/guest_ppc_helpers.c \
92         priv/guest_ppc_toIR.c \
93         priv/guest_arm_helpers.c \
94         priv/guest_arm_toIR.c \
95         priv/host_generic_regs.c \
96         priv/host_generic_simd64.c \
97         priv/host_generic_reg_alloc2.c \
98         priv/host_x86_defs.c \
99         priv/host_x86_isel.c \
100         priv/host_amd64_defs.c \
101         priv/host_amd64_isel.c \
102         priv/host_ppc_defs.c \
103         priv/host_ppc_isel.c \
104         priv/host_arm_defs.c \
105         priv/host_arm_isel.c
106
107 LIBVEX_CFLAGS = \
108         -Wbad-function-cast \
109         -Wcast-qual \
110         -Wcast-align \
111         -fstrict-aliasing
112
113 libvex_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES  = $(LIBVEX_SOURCES_COMMON)
114 libvex_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CPPFLAGS = \
115         $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) -Ipriv
116 libvex_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS   = \
117         $(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) $(LIBVEX_CFLAGS)
118 if VGCONF_HAVE_PLATFORM_SEC
119 libvex_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES  = $(LIBVEX_SOURCES_COMMON)
120 libvex_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CPPFLAGS = \
121         $(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) -Ipriv
122 libvex_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS   = \
123         $(AM_CFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) $(LIBVEX_CFLAGS)
124 endif
125