OSDN Git Service

Support sun symbol versioning in libitm
[pf3gnuchains/gcc-fork.git] / libitm / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2
3 ACLOCAL_AMFLAGS = -I .. -I ../config
4 SUBDIRS = testsuite
5
6 ## May be used by toolexeclibdir.
7 gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
8
9 abi_version = -fabi-version=4
10
11 config_path = @config_path@
12 search_path = $(addprefix $(top_srcdir)/config/, $(config_path)) $(top_srcdir)
13
14 fincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/finclude
15 libsubincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/include
16
17 vpath % $(strip $(search_path))
18
19 AM_CPPFLAGS = $(addprefix -I, $(search_path))
20 AM_CFLAGS = $(XCFLAGS)
21 AM_CXXFLAGS = -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti \
22         $(XCFLAGS) $(abi_version)
23 AM_CCASFLAGS = $(XCFLAGS)
24 AM_LDFLAGS = $(XLDFLAGS) $(SECTION_LDFLAGS) $(OPT_LDFLAGS)
25
26 toolexeclib_LTLIBRARIES = libitm.la
27 nodist_toolexeclib_HEADERS = libitm.spec
28
29 if LIBITM_BUILD_VERSIONED_SHLIB
30 if LIBITM_BUILD_VERSIONED_SHLIB_GNU
31 libitm_version_script = -Wl,--version-script,$(top_srcdir)/libitm.map
32 libitm_version_dep = $(top_srcdir)/libitm.map
33 endif
34 if LIBITM_BUILD_VERSIONED_SHLIB_SUN
35 libitm_version_script = -Wl,-M,libitm.map-sun
36 libitm_version_dep = libitm.map-sun
37 libitm.map-sun : $(top_srcdir)/libitm.map \
38                 $(top_srcdir)/../contrib/make_sunver.pl \
39                 $(libitm_la_OBJECTS) $(libitm_la_LIBADD)
40         perl $(top_srcdir)/../contrib/make_sunver.pl \
41           $(top_srcdir)/libitm.map \
42           $(libitm_la_OBJECTS:%.lo=.libs/%.o) \
43          `echo $(libitm_la_LIBADD) | \
44             sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
45          > $@ || (rm -f $@ ; exit 1)
46 endif
47 else
48 libitm_version_script =
49 libitm_version_dep =
50 endif
51 libitm_version_info = -version-info $(libtool_VERSION)
52
53 # Force link with C, not C++.  For now, while we're using C++ we don't
54 # want or need libstdc++.
55 libitm_la_DEPENDENCIES = $(libitm_version_dep)
56 libitm_la_LINK = $(LINK) $(libitm_la_LDFLAGS)
57 libitm_la_LDFLAGS = $(libitm_version_info) $(libitm_version_script) \
58         -no-undefined
59
60 libitm_la_SOURCES = \
61         aatree.cc alloc.cc alloc_c.cc alloc_cpp.cc barrier.cc beginend.cc \
62         clone.cc eh_cpp.cc local.cc \
63         query.cc retry.cc rwlock.cc useraction.cc util.cc \
64         sjlj.S tls.cc method-serial.cc method-gl.cc
65
66 if ARCH_X86
67 libitm_la_SOURCES += x86_sse.cc x86_avx.cc
68 x86_sse.lo : XCFLAGS += -msse
69 endif
70 if ARCH_X86_AVX
71 x86_avx.lo : XCFLAGS += -mavx
72 endif
73
74 if ARCH_FUTEX
75 libitm_la_SOURCES += futex.cc
76 endif
77
78 # Automake Documentation:
79 # If your package has Texinfo files in many directories, you can use the
80 # variable TEXINFO_TEX to tell Automake where to find the canonical
81 # `texinfo.tex' for your package. The value of this variable should be
82 # the relative path from the current `Makefile.am' to `texinfo.tex'.
83 TEXINFO_TEX   = ../gcc/doc/include/texinfo.tex
84
85 # Defines info, dvi, pdf and html targets
86 MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
87 info_TEXINFOS = libitm.texi
88
89 # AM_CONDITIONAL on configure option --generated-files-in-srcdir
90 if GENINSRC
91 STAMP_GENINSRC = stamp-geninsrc
92 else
93 STAMP_GENINSRC =
94 endif
95
96 # AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
97 if BUILD_INFO
98 STAMP_BUILD_INFO = stamp-build-info
99 else
100 STAMP_BUILD_INFO =
101 endif
102
103
104 all-local: $(STAMP_GENINSRC)
105
106 stamp-geninsrc: libitm.info
107         cp -p $(top_builddir)/libitm.info $(srcdir)/libitm.info
108         @touch $@
109
110 libitm.info: $(STAMP_BUILD_INFO)
111
112 stamp-build-info: libitm.texi
113         $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libitm.info $(srcdir)/libitm.texi
114         @touch $@
115
116
117 CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libitm.info
118 MAINTAINERCLEANFILES = $(srcdir)/libitm.info