summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2008-04-20 08:20:05 +0000
committerMike Frysinger <vapier@gentoo.org>2008-04-20 08:20:05 +0000
commit0f093c1a13673f9ff40c8a2e1cf6a65acab557b6 (patch)
treefc22c8a2193807983dfafa48d485d6f224d7a4ec /dev-libs/elfutils
parentFix by Ryan Hill for building with gcc-4.3 #200767. (diff)
downloadhistorical-0f093c1a13673f9ff40c8a2e1cf6a65acab557b6.tar.gz
historical-0f093c1a13673f9ff40c8a2e1cf6a65acab557b6.tar.bz2
historical-0f093c1a13673f9ff40c8a2e1cf6a65acab557b6.zip
Use Debian patched tarball to fix #158438 and add fix by Ryan Hill for building with gcc-4.3 #204610.
Package-Manager: portage-2.2_pre5
Diffstat (limited to 'dev-libs/elfutils')
-rw-r--r--dev-libs/elfutils/ChangeLog9
-rw-r--r--dev-libs/elfutils/Manifest15
-rw-r--r--dev-libs/elfutils/elfutils-0.131-r2.ebuild52
-rw-r--r--dev-libs/elfutils/files/elfutils-0.131-gnu-inline.patch255
4 files changed, 329 insertions, 2 deletions
diff --git a/dev-libs/elfutils/ChangeLog b/dev-libs/elfutils/ChangeLog
index f0f3e97b6068..a854cbb09cdc 100644
--- a/dev-libs/elfutils/ChangeLog
+++ b/dev-libs/elfutils/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-libs/elfutils
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/elfutils/ChangeLog,v 1.113 2008/01/06 17:38:46 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/elfutils/ChangeLog,v 1.114 2008/04/20 08:20:04 vapier Exp $
+
+*elfutils-0.131-r2 (20 Apr 2008)
+
+ 20 Apr 2008; Mike Frysinger <vapier@gentoo.org>
+ +files/elfutils-0.131-gnu-inline.patch, +elfutils-0.131-r2.ebuild:
+ Use Debian patched tarball to fix #158438 and add fix by Ryan Hill for
+ building with gcc-4.3 #204610.
*elfutils-0.131-r1 (06 Jan 2008)
diff --git a/dev-libs/elfutils/Manifest b/dev-libs/elfutils/Manifest
index 07e77b39767c..6ac71816132d 100644
--- a/dev-libs/elfutils/Manifest
+++ b/dev-libs/elfutils/Manifest
@@ -1,8 +1,12 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX elfutils-0.118-PaX-support.patch 954 RMD160 ed86dfec7b51b273721f3dd0c6e11bba935e6c1e SHA1 baaaa3686902c3f4ce9f81f7a83e2e66ba1575d2 SHA256 e769e1168dc645ce99655f984f5c19a54d765210cacd098556b6b68743b877fa
AUX elfutils-0.118-glibc-hacks.patch 368 RMD160 ebd18a941f0c5771c164b7c3754f34acd086cc6d SHA1 d929f8ce58dc759e47ddc38d6017546f7f56edd8 SHA256 917145e0a236a3eb6f222cf2ae84924281c92e55e2054a9990947fe34023a61b
AUX elfutils-0.118-libelf-link.patch 1495 RMD160 7b69456f49f98caf51ccae2af239a3bd09e0fa8d SHA1 8a15cd628add3975536b35f319acd70a30da6991 SHA256 edb9eaf85521ca15a0fa8282125ae41892fcc577a7c596df9948738ab0d2c180
AUX elfutils-0.118-no-nested-functions.patch 1961 RMD160 271c15eb11f4fb69e9972928bb47a72e27184df3 SHA1 08aae8d7520d766e66e8314a0d4b5842d73616c4 SHA256 5648aa0a4b4b519c1103fcd7e3f0b6e2009377e1e13e798b20d7c3cbeee12a10
AUX elfutils-0.120-mkinstalldirs.patch 752 RMD160 523cceb5a3d394ebba88cb5bdb6e0b41daf9e6da SHA1 17786d9131067cf59c57d8de1ac529eae47bd99b SHA256 73cd540e3a473b145d0efa227d8744fcef531834f2b730dd1cfc191b86872ffb
+AUX elfutils-0.131-gnu-inline.patch 8904 RMD160 a89857be29b95f00948e1e78d11e0b3fd05ed6b6 SHA1 7aa507d9e8c4b14260fd7661648ac6db5bc2f30c SHA256 104447b9c80a8c290d93e4ae601df39f3fec6c9733eb2e71ae954a7fb0dcea36
DIST elfutils-0.118-patches-1.0.tar.bz2 16369 RMD160 9125f94c0c1c6380100bae6f5d9fb0341001ce2f SHA1 0445a0634521c371c625e454061c5bcce973fe75 SHA256 d61d0849c4e3114d503ec1a3cb477c285f1bddf89178b3011c9948fac14c3bb8
DIST elfutils-0.118.tar.gz 1083164 RMD160 4952405a42290bffbed9f8ee7f1cfcc7fc3ae8fd SHA1 882029a3fd7cd7d5d1cba4d8d0e238d0e3308ac0 SHA256 e90db35bc93e23b198b60f09fb767ab5bf855921f7fd7e7e00add16772d3fe32
DIST elfutils-0.123-patches-1.0.tar.bz2 18420 RMD160 a0e0621742ef5ecc39482bdd80950e94738b749e SHA1 cf701e4c3c9f6f2e360bc0d7503276c8dd24f81a SHA256 15820b04bb95f52b26fcdc1057272006fb02e4cbca71b6c2c4d47cd6ab6e9a80
@@ -13,11 +17,20 @@ DIST elfutils-0.127-patches-1.0.tar.bz2 19950 RMD160 7bd6e8fd52a2c5df3b423a6e9f5
DIST elfutils-0.127.tar.gz 1247883 RMD160 f083e5d3d5fdbb82f15a95f4b420c0086d2f52e1 SHA1 2b6074069960ed9258df0efc9899e7a3a0be5aeb SHA256 bb5d2a846dbb5c9e779cec37a0ebdb4b1c8071131cfcce05358a08367281c38a
DIST elfutils-0.131-patches-1.0.tar.bz2 16640 RMD160 28c168d3d3f6731697354ab867a25c99c387ed32 SHA1 d83422054505c8e265afda85946b930636cc1321 SHA256 f959d97b68a53eedf1712bdfbf496faae0de5a0e2474aa5641a9811263b5ff8e
DIST elfutils-0.131.tar.gz 1412328 RMD160 18483d0d03e642eafdceabdfcebf88456b5aafba SHA1 d371731e3c09f05aad05f9b02ac2abc049528fac SHA256 947a9566a622f701a2fe2416d3b85b397d38d5f4189da91fc0a306b4d9950e6f
+DIST elfutils_0.131.orig.tar.gz 1412328 RMD160 18483d0d03e642eafdceabdfcebf88456b5aafba SHA1 d371731e3c09f05aad05f9b02ac2abc049528fac SHA256 947a9566a622f701a2fe2416d3b85b397d38d5f4189da91fc0a306b4d9950e6f
EBUILD elfutils-0.118.ebuild 1761 RMD160 68bcd05f0e005ddab426817af50eda4f7ae2caf5 SHA1 62dd172c0a6e6256b91b473462347ac68630c667 SHA256 7451204a33d72859aafade9264518a1e1f1cd9a6dc96b4d0e1119a4b80845b58
EBUILD elfutils-0.123.ebuild 1637 RMD160 0501e449df019558384729caf014d2cc569a0cad SHA1 c062c770067ea749407a82d3a84724e3a4232bd4 SHA256 b86cb794db60d54e5f1fceb24cb259873af9d698dfc69e5018151ea34298e614
EBUILD elfutils-0.125.ebuild 1636 RMD160 121766c9e35bbbe57dc77ec21483813a4654aaba SHA1 96555058dcaf1a90d52a8cc55de6f9883988c6c8 SHA256 d9be4d9f3a21b3b9f80157d0eb902f99fcf6c85dd38a339f9bb42be714491ecd
EBUILD elfutils-0.127.ebuild 1634 RMD160 e54b2eebd01feae4d5f744b74a659b378f63292e SHA1 8f25094d816c1dda4fdef7ace8e7dee720776f09 SHA256 4122c95b20f86d5d6ac53f5a84d4c947cc837199f970041d66e871f1617133ea
EBUILD elfutils-0.131-r1.ebuild 1718 RMD160 3f616ab94b1e857de1debb37861393010027d6b1 SHA1 aa77b3e6fbf17a6a345b114cc79e143a44955fa8 SHA256 33dfcd202766305fa203e77c8ef2eee5819f456fddef1f5e063bb5445f4f88c0
+EBUILD elfutils-0.131-r2.ebuild 1621 RMD160 a77b784a264a226df7351fdf4c97f2741cbf2600 SHA1 b1545ecd52720389ad20dfb3a8be1da04e30f01f SHA256 75379b2e2ec752fd22e4575834c129916e5cdd34b3bc7a6bba3c4b0051e6cadf
EBUILD elfutils-0.131.ebuild 1650 RMD160 742c347e9fce2c83f02c8b251c4c0b07dd216984 SHA1 cf429cdda485964d273650770db75a38afc9465f SHA256 ae972acca05eae85708ac0b25549c1119a3904bcaa7a700ef2700db832a59ee9
-MISC ChangeLog 14190 RMD160 412d4d4d535b18b8b2c82c98e3ab3528419fc228 SHA1 46766a1bad2982aeeae441736fc41eec00a2d61a SHA256 673902253b9b23249aced4581e64aac808db4344f478c8ca6242d0fefb1158e8
+MISC ChangeLog 14450 RMD160 013af22c22139e3bc5d5bc543b8045b9f31d8965 SHA1 7c015edae980e5bc34c13348d41f4da9e049c7dd SHA256 8011d54b9099d50e2d8651efa469c28af08cb8298b7bef5a651cc733c1aa2c20
MISC metadata.xml 162 RMD160 d002486a43522f2116b1d9d59828c484956d66e2 SHA1 d6b4923897f6ae673b4f93646f5b4ba61d5a2c3c SHA256 65a915d44de1f01d4b7f72d313b4192c38374a9835d24988c00c1e73dca5805a
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.7 (GNU/Linux)
+
+iD8DBQFICvy6j9hvisErhMIRAkK2AKDmkrzXbk3sG/H/Rhn4cZ+mL5eFxwCg1gRM
+qSKoICHGrGc0wl5tH/v+B4A=
+=pxfq
+-----END PGP SIGNATURE-----
diff --git a/dev-libs/elfutils/elfutils-0.131-r2.ebuild b/dev-libs/elfutils/elfutils-0.131-r2.ebuild
new file mode 100644
index 000000000000..134d1feb4322
--- /dev/null
+++ b/dev-libs/elfutils/elfutils-0.131-r2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/elfutils/elfutils-0.131-r2.ebuild,v 1.1 2008/04/20 08:20:04 vapier Exp $
+
+inherit eutils
+
+DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)"
+HOMEPAGE="http://people.redhat.com/drepper/"
+#SRC_URI="ftp://sources.redhat.com/pub/systemtap/${PN}/${P}.tar.gz"
+SRC_URI="mirror://debian/pool/main/e/elfutils/elfutils_${PV}.orig.tar.gz"
+
+LICENSE="OpenSoftware"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE=""
+
+# This pkg does not actually seem to compile currently in a uClibc
+# environment (xrealloc errs), but we need to ensure that glibc never
+# gets pulled in as a dep since this package does not respect virtual/libc
+DEPEND="elibc_glibc? ( >=sys-libs/glibc-2.3.2 )
+ sys-devel/gettext
+ sys-devel/autoconf
+ >=sys-devel/binutils-2.15.90.0.1
+ >=sys-devel/gcc-3.3.3
+ !dev-libs/libelf"
+RDEPEND=""
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-gnu-inline.patch #204610
+ find . -name Makefile.in -print0 | xargs -0 sed -i -e 's:-W\(error\|extra\)::g'
+ sed -i 's:\<off64_t\>:__off64_t:g' libelf/libelf.h || die #204502
+}
+
+src_compile() {
+ econf \
+ --program-prefix="eu-" \
+ --enable-shared \
+ || die "./configure failed"
+ emake || die
+}
+
+src_test() {
+ env LD_LIBRARY_PATH="${S}/libelf:${S}/libebl:${S}/libdw:${S}/libasm" \
+ make check || die "test failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dodoc AUTHORS ChangeLog NEWS NOTES README THANKS TODO
+}
diff --git a/dev-libs/elfutils/files/elfutils-0.131-gnu-inline.patch b/dev-libs/elfutils/files/elfutils-0.131-gnu-inline.patch
new file mode 100644
index 000000000000..334e704a1817
--- /dev/null
+++ b/dev-libs/elfutils/files/elfutils-0.131-gnu-inline.patch
@@ -0,0 +1,255 @@
+fix 'extern inline' handling to use gnu inlines
+
+http://bugs.gentoo.org/204610
+
+--- elfutils-0.131/backends/ia64_retval.c
++++ elfutils-0.131/backends/ia64_retval.c
+@@ -96,7 +96,7 @@
+ If we find a datum that's not the same FP type as the first datum, punt.
+ If we count more than eight total homogeneous FP data, punt. */
+
+- inline int hfa (const Dwarf_Op *loc, int nregs)
++ __gnu_inline int hfa (const Dwarf_Op *loc, int nregs)
+ {
+ if (fpregs_used == 0)
+ *locp = loc;
+--- elfutils-0.131/libdw/dwarf_entry_breakpoints.c
++++ elfutils-0.131/libdw/dwarf_entry_breakpoints.c
+@@ -64,7 +64,7 @@
+ *bkpts = NULL;
+
+ /* Add one breakpoint location to the result vector. */
+- inline int add_bkpt (Dwarf_Addr pc)
++ __gnu_inline int add_bkpt (Dwarf_Addr pc)
+ {
+ Dwarf_Addr *newlist = realloc (*bkpts, ++nbkpts * sizeof newlist[0]);
+ if (newlist == NULL)
+@@ -80,7 +80,7 @@
+ }
+
+ /* Fallback result, break at the entrypc/lowpc value. */
+- inline int entrypc_bkpt (void)
++ __gnu_inline int entrypc_bkpt (void)
+ {
+ Dwarf_Addr pc;
+ return INTUSE(dwarf_entrypc) (die, &pc) < 0 ? -1 : add_bkpt (pc);
+@@ -107,7 +107,7 @@
+ /* Search a contiguous PC range for prologue-end markers.
+ If DWARF, look for proper markers.
+ Failing that, if ADHOC, look for the ad hoc convention. */
+- inline int search_range (Dwarf_Addr low, Dwarf_Addr high,
++ __gnu_inline int search_range (Dwarf_Addr low, Dwarf_Addr high,
+ bool dwarf, bool adhoc)
+ {
+ size_t l = 0, u = nlines;
+--- elfutils-0.131/libdw/dwarf_getscopevar.c
++++ elfutils-0.131/libdw/dwarf_getscopevar.c
+@@ -93,7 +93,7 @@
+ size_t match_file_len = match_file == NULL ? 0 : strlen (match_file);
+ bool lastfile_matches = false;
+ const char *lastfile = NULL;
+- inline bool file_matches (Dwarf_Files *files, size_t idx)
++ __gnu_inline bool file_matches (Dwarf_Files *files, size_t idx)
+ {
+ if (idx >= files->nfiles)
+ return false;
+--- elfutils-0.131/libdw/libdw.h
++++ elfutils-0.131/libdw/libdw.h
+@@ -633,6 +633,12 @@
+
+ /* Inline optimizations. */
+ #ifdef __OPTIMIZE__
++# if defined(__GNUC_STDC_INLINE__) || defined(__GNUC_GNU_INLINE__)
++# define __gnu_inline inline __attribute__ ((__gnu_inline__))
++# else
++# define __gnu_inline inline
++# endif
++
+ /* Return attribute code of given attribute. */
+ __libdw_extern_inline unsigned int
+ dwarf_whatattr (Dwarf_Attribute *attr)
+--- elfutils-0.131/libdw/libdw_visit_scopes.c
++++ elfutils-0.131/libdw/libdw_visit_scopes.c
+@@ -109,7 +109,7 @@
+ if (INTUSE(dwarf_child) (&root->die, &child.die) != 0)
+ return -1;
+
+- inline int recurse (void)
++ __gnu_inline int recurse (void)
+ {
+ return __libdw_visit_scopes (depth + 1, &child,
+ previsit, postvisit, arg);
+--- elfutils-0.131/libdwfl/argp-std.c
++++ elfutils-0.131/libdwfl/argp-std.c
+@@ -106,7 +106,7 @@
+ static error_t
+ parse_opt (int key, char *arg, struct argp_state *state)
+ {
+- inline void failure (Dwfl *dwfl, int errnum, const char *msg)
++ __gnu_inline void failure (Dwfl *dwfl, int errnum, const char *msg)
+ {
+ if (errnum == -1)
+ argp_failure (state, EXIT_FAILURE, 0, "%s: %s",
+@@ -116,7 +116,7 @@
+ if (dwfl != NULL)
+ dwfl_end (dwfl);
+ }
+- inline error_t fail (Dwfl *dwfl, int errnum, const char *msg)
++ __gnu_inline error_t fail (Dwfl *dwfl, int errnum, const char *msg)
+ {
+ failure (dwfl, errnum, msg);
+ return errnum == -1 ? EIO : errnum;
+--- elfutils-0.131/libdwfl/dwfl_module_addrsym.c
++++ elfutils-0.131/libdwfl/dwfl_module_addrsym.c
+@@ -59,7 +59,7 @@
+
+ /* Return true iff we consider ADDR to lie in the same section as SYM. */
+ GElf_Word addr_shndx = SHN_UNDEF;
+- inline bool same_section (const GElf_Sym *sym, GElf_Word shndx)
++ __gnu_inline bool same_section (const GElf_Sym *sym, GElf_Word shndx)
+ {
+ /* For absolute symbols and the like, only match exactly. */
+ if (shndx >= SHN_LORESERVE)
+--- elfutils-0.131/libdwfl/dwfl_module_getsrc_file.c
++++ elfutils-0.131/libdwfl/dwfl_module_getsrc_file.c
+@@ -79,15 +79,15 @@
+ && cu != NULL
+ && (error = __libdwfl_cu_getsrclines (cu)) == DWFL_E_NOERROR)
+ {
+- inline const char *INTUSE(dwarf_line_file) (const Dwarf_Line *line)
++ __gnu_inline const char *INTUSE(dwarf_line_file) (const Dwarf_Line *line)
+ {
+ return line->files->info[line->file].name;
+ }
+- inline Dwarf_Line *dwfl_line (const Dwfl_Line *line)
++ __gnu_inline Dwarf_Line *dwfl_line (const Dwfl_Line *line)
+ {
+ return &dwfl_linecu (line)->die.cu->lines->info[line->idx];
+ }
+- inline const char *dwfl_line_file (const Dwfl_Line *line)
++ __gnu_inline const char *dwfl_line_file (const Dwfl_Line *line)
+ {
+ return INTUSE(dwarf_line_file) (dwfl_line (line));
+ }
+--- elfutils-0.131/libdwfl/elf-from-memory.c
++++ elfutils-0.131/libdwfl/elf-from-memory.c
+@@ -216,7 +216,7 @@
+ bool found_base = false;
+ switch (ehdr.e32.e_ident[EI_CLASS])
+ {
+- inline void handle_segment (GElf_Addr vaddr, GElf_Off offset,
++ __gnu_inline void handle_segment (GElf_Addr vaddr, GElf_Off offset,
+ GElf_Xword filesz, GElf_Xword align)
+ {
+ GElf_Off segment_end = ((offset + filesz + align - 1) & -align);
+@@ -280,7 +280,7 @@
+
+ switch (ehdr.e32.e_ident[EI_CLASS])
+ {
+- inline bool handle_segment (GElf_Addr vaddr, GElf_Off offset,
++ __gnu_inline bool handle_segment (GElf_Addr vaddr, GElf_Off offset,
+ GElf_Xword filesz, GElf_Xword align)
+ {
+ GElf_Off start = offset & -align;
+--- elfutils-0.131/libdwfl/linux-kernel-modules.c
++++ elfutils-0.131/libdwfl/linux-kernel-modules.c
+@@ -541,7 +541,7 @@
+ {
+ Dwarf_Addr start;
+ Dwarf_Addr end;
+- inline Dwfl_Module *report (void)
++ __gnu_inline Dwfl_Module *report (void)
+ {
+ return INTUSE(dwfl_report_module) (dwfl, KERNEL_MODNAME, start, end);
+ }
+@@ -628,7 +628,7 @@
+ only '_' and one only using '-'. */
+
+ char alternate_name[namelen + 1];
+- inline bool subst_name (char from, char to)
++ __gnu_inline bool subst_name (char from, char to)
+ {
+ const char *n = memchr (module_name, from, namelen);
+ if (n == NULL)
+--- elfutils-0.131/libdwfl/linux-proc-maps.c
++++ elfutils-0.131/libdwfl/linux-proc-maps.c
+@@ -134,7 +134,7 @@
+ char *last_file = NULL;
+ Dwarf_Addr low = 0, high = 0;
+
+- inline bool report (void)
++ __gnu_inline bool report (void)
+ {
+ if (last_file != NULL)
+ {
+--- elfutils-0.131/src/ld.h
++++ elfutils-0.131/src/ld.h
+@@ -1087,7 +1087,7 @@
+
+ /* Checked whether the symbol is undefined and referenced from a DSO. */
+ extern bool linked_from_dso_p (struct scninfo *scninfo, size_t symidx);
+-extern inline bool
++extern __gnu_inline bool
+ linked_from_dso_p (struct scninfo *scninfo, size_t symidx)
+ {
+ struct usedfiles *file = scninfo->fileinfo;
+--- elfutils-0.131/src/readelf.c
++++ elfutils-0.131/src/readelf.c
+@@ -5722,7 +5722,7 @@
+ qsort (regs, maxreg + 1, sizeof regs[0], &compare_registers);
+
+ /* Collect the unique sets and sort them. */
+- inline bool same_set (const struct register_info *a,
++ __gnu_inline bool same_set (const struct register_info *a,
+ const struct register_info *b)
+ {
+ return (a < &regs[maxnreg] && a->regloc != NULL
+--- elfutils-0.131/src/strip.c
++++ elfutils-0.131/src/strip.c
+@@ -1336,7 +1336,7 @@
+ /* Update section headers when the data size has changed.
+ We also update the SHT_NOBITS section in the debug
+ file so that the section headers match in sh_size. */
+- inline void update_section_size (const Elf_Data *newdata)
++ __gnu_inline void update_section_size (const Elf_Data *newdata)
+ {
+ GElf_Shdr shdr_mem;
+ GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem);
+--- elfutils-0.131/src/unstrip.c
++++ elfutils-0.131/src/unstrip.c
+@@ -389,7 +389,7 @@
+ {
+ Elf_Data *data = elf_getdata (outscn, NULL);
+
+- inline void adjust_reloc (GElf_Xword *info)
++ __gnu_inline void adjust_reloc (GElf_Xword *info)
+ {
+ size_t ndx = GELF_R_SYM (*info);
+ if (ndx != STN_UNDEF)
+@@ -1039,7 +1039,7 @@
+ }
+
+ bool fail = false;
+- inline void check_match (bool match, Elf_Scn *scn, const char *name)
++ __gnu_inline void check_match (bool match, Elf_Scn *scn, const char *name)
+ {
+ if (!match)
+ {
+@@ -1267,7 +1267,7 @@
+ }
+
+ /* Locate a matching unallocated section in SECTIONS. */
+- inline struct section *find_unalloc_section (const GElf_Shdr *shdr,
++ __gnu_inline struct section *find_unalloc_section (const GElf_Shdr *shdr,
+ const char *name)
+ {
+ size_t l = nalloc, u = stripped_shnum - 1;
+@@ -2182,7 +2182,7 @@
+ handle_implicit_modules (const struct arg_info *info)
+ {
+ struct match_module_info mmi = { info->args, NULL, info->match_files };
+- inline ptrdiff_t next (ptrdiff_t offset)
++ __gnu_inline ptrdiff_t next (ptrdiff_t offset)
+ {
+ return dwfl_getmodules (info->dwfl, &match_module, &mmi, offset);
+ }