48fb7bfab7
highlights from: http://gcc.gnu.org/gcc-4.6/changes.html GCC now has stricter checks for invalid command-line options New -Wunused-but-set-variable and -Wunused-but-set-parameter warnings Many platforms have been obsoleted Link-time optimization improvements A new switch -fstack-usage has been added A new function attribute leaf was introduced A new warning, enabled by -Wdouble-promotion Support for selectively enabling and disabling warnings via #pragma GCC diagnostic has been added There is now experimental support for some features from the upcoming C1X revision of the ISO C standard Improved experimental support for the upcoming C++0x ISO C++ standard G++ now issues clearer diagnostics in several cases Updates for ARM, x86, MIPS, PPC/PPC64, SPARC Darwin, FreeBSD, Solaris 2, MinGW and Cygwin now all support __float128 on 32-bit and 64-bit x86 targets. [*1] highlights from: http://gcc.gnu.org/gcc-4.7/changes.html The -fconserve-space flag has been deprecated Support for a new parameter --param case-values-threshold=n was added Interprocedural and Link-time optimization improvements A new built-in, __builtin_assume_aligned, has been added A new warning option -Wunused-local-typedefs was added A new experimental command-line option -ftrack-macro-expansion was added Support for atomic operations specifying the C++11/C11 memory model has been added There is support for some more features from the C11 revision of the ISO C standard Improved experimental support for the new ISO C++ standard, C++11 Updates for ARM, x86, MIPS, PPC/PPC64, SH, SPARC, TILE* A new option (-grecord-gcc-switches) was added highlights from: http://gcc.gnu.org/gcc-4.8/changes.html GCC now uses C++ as its implementation language. This means that to build GCC from sources, you will need a C++ compiler that understands C++ 2003 DWARF4 is now the default when generating DWARF debug information A new general optimization level, -Og, has been introduced A new option -ftree-partial-pre was added The option -fconserve-space has been removed The command-line options -fipa-struct-reorg and -fipa-matrix-reorg have been removed Interprocedural and Link-time optimization improvements AddressSanitizer, a fast memory error detector, has been added [*2] A new -Wsizeof-pointer-memaccess warning has been added G++ now supports a -std=c++1y option for experimentation with features proposed for the next revision of the standard, expected around 2014 Improved experimental support for the new ISO C++ standard, C++11 A new port has been added to support AArch64 Updates for ARM, x86, MIPS, PPC/PPC64, SH, SPARC, TILE* [*1] we should support this too! [*2] we should look into this. https://code.google.com/p/address-sanitizer/
121 lines
3.5 KiB
Makefile
121 lines
3.5 KiB
Makefile
## Process this file with automake to produce Makefile.in
|
|
|
|
ACLOCAL_AMFLAGS = -I .. -I ../config
|
|
SUBDIRS = testsuite
|
|
|
|
## May be used by toolexeclibdir.
|
|
gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
|
|
|
|
abi_version = -fabi-version=4
|
|
|
|
config_path = @config_path@
|
|
search_path = $(addprefix $(top_srcdir)/config/, $(config_path)) $(top_srcdir)
|
|
|
|
fincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/finclude
|
|
libsubincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/include
|
|
|
|
vpath % $(strip $(search_path))
|
|
|
|
AM_CPPFLAGS = $(addprefix -I, $(search_path))
|
|
AM_CFLAGS = $(XCFLAGS)
|
|
AM_CXXFLAGS = $(XCFLAGS) -std=gnu++0x -funwind-tables -fno-exceptions \
|
|
-fno-rtti $(abi_version)
|
|
AM_CCASFLAGS = $(XCFLAGS)
|
|
AM_LDFLAGS = $(XLDFLAGS) $(SECTION_LDFLAGS) $(OPT_LDFLAGS) $(HWCAP_LDFLAGS)
|
|
|
|
toolexeclib_LTLIBRARIES = libitm.la
|
|
nodist_toolexeclib_HEADERS = libitm.spec
|
|
|
|
if LIBITM_BUILD_VERSIONED_SHLIB
|
|
if LIBITM_BUILD_VERSIONED_SHLIB_GNU
|
|
libitm_version_script = -Wl,--version-script,$(top_srcdir)/libitm.map
|
|
libitm_version_dep = $(top_srcdir)/libitm.map
|
|
endif
|
|
if LIBITM_BUILD_VERSIONED_SHLIB_SUN
|
|
libitm_version_script = -Wl,-M,libitm.map-sun
|
|
libitm_version_dep = libitm.map-sun
|
|
libitm.map-sun : $(top_srcdir)/libitm.map \
|
|
$(top_srcdir)/../contrib/make_sunver.pl \
|
|
$(libitm_la_OBJECTS) $(libitm_la_LIBADD)
|
|
perl $(top_srcdir)/../contrib/make_sunver.pl \
|
|
$(top_srcdir)/libitm.map \
|
|
$(libitm_la_OBJECTS:%.lo=.libs/%.o) \
|
|
`echo $(libitm_la_LIBADD) | \
|
|
sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
|
|
> $@ || (rm -f $@ ; exit 1)
|
|
endif
|
|
else
|
|
libitm_version_script =
|
|
libitm_version_dep =
|
|
endif
|
|
libitm_version_info = -version-info $(libtool_VERSION)
|
|
|
|
# Force link with C, not C++. For now, while we're using C++ we don't
|
|
# want or need libstdc++.
|
|
libitm_la_DEPENDENCIES = $(libitm_version_dep)
|
|
libitm_la_LINK = $(LINK) $(libitm_la_LDFLAGS)
|
|
libitm_la_LDFLAGS = $(libitm_version_info) $(libitm_version_script)
|
|
|
|
libitm_la_SOURCES = \
|
|
aatree.cc alloc.cc alloc_c.cc alloc_cpp.cc barrier.cc beginend.cc \
|
|
clone.cc eh_cpp.cc local.cc \
|
|
query.cc retry.cc rwlock.cc useraction.cc util.cc \
|
|
sjlj.S tls.cc method-serial.cc method-gl.cc method-ml.cc
|
|
|
|
if ARCH_ARM
|
|
libitm_la_SOURCES += hwcap.cc
|
|
endif
|
|
if ARCH_X86
|
|
libitm_la_SOURCES += x86_sse.cc x86_avx.cc
|
|
x86_sse.lo : XCFLAGS += -msse
|
|
endif
|
|
if ARCH_X86_AVX
|
|
x86_avx.lo : XCFLAGS += -mavx
|
|
endif
|
|
|
|
if ARCH_FUTEX
|
|
libitm_la_SOURCES += futex.cc
|
|
endif
|
|
|
|
# Automake Documentation:
|
|
# If your package has Texinfo files in many directories, you can use the
|
|
# variable TEXINFO_TEX to tell Automake where to find the canonical
|
|
# `texinfo.tex' for your package. The value of this variable should be
|
|
# the relative path from the current `Makefile.am' to `texinfo.tex'.
|
|
TEXINFO_TEX = ../gcc/doc/include/texinfo.tex
|
|
|
|
# Defines info, dvi, pdf and html targets
|
|
MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
|
|
info_TEXINFOS = libitm.texi
|
|
|
|
# AM_CONDITIONAL on configure option --generated-files-in-srcdir
|
|
if GENINSRC
|
|
STAMP_GENINSRC = stamp-geninsrc
|
|
else
|
|
STAMP_GENINSRC =
|
|
endif
|
|
|
|
# AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
|
|
if BUILD_INFO
|
|
STAMP_BUILD_INFO = stamp-build-info
|
|
else
|
|
STAMP_BUILD_INFO =
|
|
endif
|
|
|
|
|
|
all-local: $(STAMP_GENINSRC)
|
|
|
|
stamp-geninsrc: libitm.info
|
|
cp -p $(top_builddir)/libitm.info $(srcdir)/libitm.info
|
|
@touch $@
|
|
|
|
libitm.info: $(STAMP_BUILD_INFO)
|
|
|
|
stamp-build-info: libitm.texi
|
|
$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libitm.info $(srcdir)/libitm.texi
|
|
@touch $@
|
|
|
|
|
|
CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libitm.info
|
|
MAINTAINERCLEANFILES = $(srcdir)/libitm.info
|