summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/patchelf/patchelf/alignmentfix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/patchelf/patchelf/alignmentfix.patch')
-rw-r--r--meta/recipes-devtools/patchelf/patchelf/alignmentfix.patch20
1 files changed, 11 insertions, 9 deletions
diff --git a/meta/recipes-devtools/patchelf/patchelf/alignmentfix.patch b/meta/recipes-devtools/patchelf/patchelf/alignmentfix.patch
index 62e11a5e7f..a06876e50a 100644
--- a/meta/recipes-devtools/patchelf/patchelf/alignmentfix.patch
+++ b/meta/recipes-devtools/patchelf/patchelf/alignmentfix.patch
@@ -31,12 +31,14 @@ Index: git/src/patchelf.cc
31=================================================================== 31===================================================================
32--- git.orig/src/patchelf.cc 32--- git.orig/src/patchelf.cc
33+++ git/src/patchelf.cc 33+++ git/src/patchelf.cc
34@@ -1035,6 +1035,8 @@ void ElfFile<ElfFileParamNames>::normali 34@@ -1010,8 +1010,9 @@ void ElfFile<ElfFileParamNames>::normali
35 phdrs.push_back(new_phdr); 35 size_t size = 0;
36 36 for (const auto & shdr : shdrs) {
37 curr_off += size; 37 if (rdi(shdr.sh_type) != SHT_NOTE) continue;
38+ /* The next section offset would be aligned */ 38- if (rdi(shdr.sh_offset) != curr_off) continue;
39+ curr_off = roundUp(curr_off, sectionAlignment); 39+ if (rdi(shdr.sh_offset) != roundUp(curr_off, rdi(shdr.sh_addralign))) continue;
40 } 40 size = rdi(shdr.sh_size);
41 } 41+ curr_off = roundUp(curr_off, rdi(shdr.sh_addralign));
42 wri(hdr->e_phnum, phdrs.size()); 42 break;
43 }
44 if (size == 0)