aboutsummaryrefslogtreecommitdiff
path: root/gold/gold.h
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@google.com>2012-10-24 02:26:39 +0000
committerCary Coutant <ccoutant@google.com>2012-10-24 02:26:39 +0000
commit774299092dc99b19dac96bc9226ff3421e70bef2 (patch)
treed2fb890acbc06f180341d09777235a2fc7a0e6b1 /gold/gold.h
parent657d0d47ba7fd3ae014a5b2b6e46ba6c8d1c461a (diff)
downloadfsf-binutils-gdb-774299092dc99b19dac96bc9226ff3421e70bef2.zip
fsf-binutils-gdb-774299092dc99b19dac96bc9226ff3421e70bef2.tar.gz
fsf-binutils-gdb-774299092dc99b19dac96bc9226ff3421e70bef2.tar.bz2
gold/
* dwp.h: New header file. * dwp.cc: New source file. * gold.h: Move shared declarations to system.h. * system.h: New header file. * Makefile.am: Add dwp. * Makefile.in: Regenerate.
Diffstat (limited to 'gold/gold.h')
-rw-r--r--gold/gold.h132
1 files changed, 1 insertions, 131 deletions
diff --git a/gold/gold.h b/gold/gold.h
index 9aa7cf3..ef95f53 100644
--- a/gold/gold.h
+++ b/gold/gold.h
@@ -32,137 +32,7 @@
#include <stdint.h>
#include <sys/types.h>
-#ifndef ENABLE_NLS
- // The Solaris version of locale.h always includes libintl.h. If we
- // have been configured with --disable-nls then ENABLE_NLS will not
- // be defined and the dummy definitions of bindtextdomain (et al)
- // below will conflict with the definitions in libintl.h. So we
- // define these values to prevent the bogus inclusion of libintl.h.
-# define _LIBINTL_H
-# define _LIBGETTEXT_H
-#endif
-
-// Always include <clocale> first to avoid conflicts with the macros
-// used when ENABLE_NLS is not defined.
-#include <clocale>
-
-#ifdef ENABLE_NLS
-# include <libintl.h>
-# define _(String) gettext (String)
-# ifdef gettext_noop
-# define N_(String) gettext_noop (String)
-# else
-# define N_(String) (String)
-# endif
-#else
-# define gettext(Msgid) (Msgid)
-# define dgettext(Domainname, Msgid) (Msgid)
-# define dcgettext(Domainname, Msgid, Category) (Msgid)
-# define textdomain(Domainname) do {} while (0) /* nothing */
-# define bindtextdomain(Domainname, Dirname) do {} while (0) /* nothing */
-# define _(String) (String)
-# define N_(String) (String)
-#endif
-
-// Figure out how to get a hash set and a hash map.
-
-#if defined(HAVE_TR1_UNORDERED_SET) && defined(HAVE_TR1_UNORDERED_MAP) \
- && defined(HAVE_TR1_UNORDERED_MAP_REHASH)
-
-#include <tr1/unordered_set>
-#include <tr1/unordered_map>
-
-// We need a template typedef here.
-
-#define Unordered_set std::tr1::unordered_set
-#define Unordered_map std::tr1::unordered_map
-#define Unordered_multimap std::tr1::unordered_multimap
-
-#define reserve_unordered_map(map, n) ((map)->rehash(n))
-
-#ifndef HAVE_TR1_HASH_OFF_T
-// The library does not support hashes of off_t values. Add support
-// here. This is likely to be specific to libstdc++. This issue
-// arises with GCC 4.1.x when compiling in 32-bit mode with a 64-bit
-// off_t type.
-namespace std { namespace tr1 {
-template<>
-struct hash<off_t> : public std::unary_function<off_t, std::size_t>
-{
- std::size_t
- operator()(off_t val) const
- { return static_cast<std::size_t>(val); }
-};
-} } // Close namespaces.
-#endif // !defined(HAVE_TR1_HASH_OFF_T)
-
-#elif defined(HAVE_EXT_HASH_MAP) && defined(HAVE_EXT_HASH_SET)
-
-#include <ext/hash_map>
-#include <ext/hash_set>
-#include <string>
-
-#define Unordered_set __gnu_cxx::hash_set
-#define Unordered_map __gnu_cxx::hash_map
-#define Unordered_multimap __gnu_cxx::hash_multimap
-
-namespace __gnu_cxx
-{
-
-template<>
-struct hash<std::string>
-{
- size_t
- operator()(std::string s) const
- { return __stl_hash_string(s.c_str()); }
-};
-
-template<typename T>
-struct hash<T*>
-{
- size_t
- operator()(T* p) const
- { return reinterpret_cast<size_t>(p); }
-};
-
-}
-
-#define reserve_unordered_map(map, n) ((map)->resize(n))
-
-#else
-
-// The fallback is to just use set and map.
-
-#include <set>
-#include <map>
-
-#define Unordered_set std::set
-#define Unordered_map std::map
-#define Unordered_multimap std::multimap
-
-#define reserve_unordered_map(map, n)
-
-#endif
-
-#ifndef HAVE_PREAD
-extern "C" ssize_t pread(int, void*, size_t, off_t);
-#endif
-
-#ifndef HAVE_FTRUNCATE
-extern "C" int ftruncate(int, off_t);
-#endif
-
-#ifndef HAVE_FFSLL
-extern "C" int ffsll(long long);
-#endif
-
-#if !HAVE_DECL_MEMMEM
-extern "C" void *memmem(const void *, size_t, const void *, size_t);
-#endif
-
-#if !HAVE_DECL_STRNDUP
-extern "C" char *strndup(const char *, size_t);
-#endif
+#include "system.h"
namespace gold
{