<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/image-prelink.bbclass, branch master-next2</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=master-next2</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=master-next2'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2018-08-23T16:58:59+00:00</updated>
<entry>
<title>linuxloader: Convert to python function</title>
<updated>2018-08-23T16:58:59+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2018-08-22T14:49:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=516697bed676a4567a4ff93022b9ac592648619a'/>
<id>urn:sha1:516697bed676a4567a4ff93022b9ac592648619a</id>
<content type='text'>
We could do with one decent general purpose python function to query the
path to the dynamic loader. Convert the shell code into python.

Also correct baremetal to return "None", not musl loaders.

(From OE-Core rev: 73fab4ede12d8ae31be72b5cb4ab29d7ef7dae17)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>classes/recipes: Use expanded BUILD_REPRODUCIBLE_BINARIES value</title>
<updated>2018-03-12T22:06:32+00:00</updated>
<author>
<name>Juro Bystricky</name>
<email>juro.bystricky@intel.com</email>
</author>
<published>2018-03-10T18:56:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=98e852983cf58e3004a88bcfb20430289f679140'/>
<id>urn:sha1:98e852983cf58e3004a88bcfb20430289f679140</id>
<content type='text'>
Replace the occurences of BUILD_REPRODUCIBLE_BINARIES with expanded
values ${BUILD_REPRODUCIBLE_BINARIES} so the variable does not need to be
exported.

(From OE-Core rev: 27f87bbc8395a2481ef808465a62d213a6b678ac)

Signed-off-by: Juro Bystricky &lt;juro.bystricky@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>image-prelink.bbclass: support binary reproducibility</title>
<updated>2017-08-15T23:03:15+00:00</updated>
<author>
<name>Juro Bystricky</name>
<email>juro.bystricky@intel.com</email>
</author>
<published>2017-08-09T17:48:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f3da1613c4d19f599ecea34fc9ea7b9935a8a26a'/>
<id>urn:sha1:f3da1613c4d19f599ecea34fc9ea7b9935a8a26a</id>
<content type='text'>
Conditionally support binary reproducibility in built images.
If BUILD_REPRODUCIBLE_BINARIES = 1 then:

1. Do not randomize library addresses
2. Set/export PRELINK_TIMESTAMP to a reproducible value.
   If REPRODUCIBLE_TIMESTAMP_ROOTFS is specified, then the value will
   be used. Otherwise the timestamp will be derived from the top git commit.

(From OE-Core rev: 40ce3db222f8557a01d041f8115d531cc90a54e8)

Signed-off-by: Juro Bystricky &lt;juro.bystricky@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>image-prelink: Disable for musl images</title>
<updated>2017-08-13T08:27:38+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2017-08-11T07:10:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=bb81ff1343d8d6213f0418fd18b10312c96c4617'/>
<id>urn:sha1:bb81ff1343d8d6213f0418fd18b10312c96c4617</id>
<content type='text'>
For some reason prelink was refusing to prelink musl images but now sometimes
does modify the binaries. Since musl has no support for this, such images
end up broken and unable to boot.

To avoid this, be explicit and only apply prelinking for libc-glibc.

[YOCTO #11913]

(From OE-Core rev: 5a25ed1071f0d9b7d95edcc2b5b4545f960d5f95)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>image-prelink: use STAGING_*_NATIVE variables</title>
<updated>2016-03-09T16:58:12+00:00</updated>
<author>
<name>Ross Burton</name>
<email>ross.burton@intel.com</email>
</author>
<published>2016-03-01T08:54:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=4dd3e40ed67aabe37016f4827b203a2b74983a70'/>
<id>urn:sha1:4dd3e40ed67aabe37016f4827b203a2b74983a70</id>
<content type='text'>
(From OE-Core rev: d78921e91ea1caf0154d544496a8aeabc2ec543d)

Signed-off-by: Ross Burton &lt;ross.burton@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>linuxloader/image-prelink/image-mklibs: Fix non-standard path prelinking</title>
<updated>2016-03-07T00:11:40+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2016-03-04T16:28:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=ae85c4b9a6609523c293173843679733b1ede7ba'/>
<id>urn:sha1:ae85c4b9a6609523c293173843679733b1ede7ba</id>
<content type='text'>
Prelinking on x86-64 wasn't working out the box as it uses /lib and
not /lib64 for libs. Prelink was refusing to link as the dynamic loader
didn't match its idea of the right path. Passing in the --dyanmic-linker
option avoids this.

We can share code from image-mklibs so abstract that into a new class,
linuxloader.bbclass.

This does break prelinking of multilib images, I've opened a bug so we
can loop back and fix that problem, the code would need to iterate the
dynamic loaders (and setup ld.so.conf files for it).

(From OE-Core rev: 7c3f2f61536cc8e0322087558cdcfe29ee2fac6d)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>insane/prelink: Handle nonstandard library paths</title>
<updated>2016-03-07T00:11:39+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2016-03-04T16:27:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=0b84897ea813a4f7a8b198efcc7ac335debf19d9'/>
<id>urn:sha1:0b84897ea813a4f7a8b198efcc7ac335debf19d9</id>
<content type='text'>
Prelink contains some hardcoded assumptions about the path layout of
the target system. Unfortunately if the system doesn't match, prelink
doesn't work. This breaks:

a) prelink of those images
b) the unsafe-references-in-binaries QA test (which uses prelink-rtld)

One way to work around this is to construct an ld.so.conf file which
lists the library paths in question. We do this in sanity QA check and
in the rootfs prelink code, being careful not to trample any existing
target ld.so.conf.

There is an additional problem that $LIB references in RPATHs won't be
handled correctly, I've not see any system use these in reality though
so this change at least improves things.

(From OE-Core rev: 7fd1d7e639c2ed7e0699937a5cb245c187b7c811)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>image/image-prelink/image-mklibs/sanity: Drop pointless EXPORT_FUNCTIONS</title>
<updated>2014-04-01T22:37:01+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-04-01T10:08:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=1588b02d14e4ce2971ea0bbfb77d6d8607df9825'/>
<id>urn:sha1:1588b02d14e4ce2971ea0bbfb77d6d8607df9825</id>
<content type='text'>
I'm sick of seeing people adding to EXPORT_FUNCTIONS in these classes
when they clearly have no idea what it does.

Worse, these uses of it are all broken, the naming is incorrect and
they do nothing. Lets remove them and try and preserve any remaining
part of my sanity.

(From OE-Core rev: 05a2fb19f722652c5d13be911b8ed45a264bbb40)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>classes: Remove various bashisms</title>
<updated>2011-11-10T11:51:18+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2011-11-08T17:57:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c96e4990feb2eb0f15fa186fe82072a1baf47387'/>
<id>urn:sha1:c96e4990feb2eb0f15fa186fe82072a1baf47387</id>
<content type='text'>
(From OE-Core rev: a057adfbb72454e28294f00075a69e0e7c699bec)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>image-prelink: remove hardcoded path assumptions, don't generate cache file</title>
<updated>2011-05-17T16:06:38+00:00</updated>
<author>
<name>Phil Blundell</name>
<email>pb@pbcl.net</email>
</author>
<published>2011-05-17T15:52:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=7cc59107f944a2a786cf93e8589edf7dfd0f2d70'/>
<id>urn:sha1:7cc59107f944a2a786cf93e8589edf7dfd0f2d70</id>
<content type='text'>
Pass -N option to prelink so that no cache file is generated (obviates need for deleting it afterwards).
Use symbolic names, ${sysconfdir} et al., rather than hardcoded paths.
Pass explicit -c option to prelink in case ${sysconfdir} and ${sysconfdir_native} are different.

(From OE-Core rev: 78a3cc9e8588e37badcd2ea02d2cf3b5a25ee5b8)

Signed-off-by: Phil Blundell &lt;philb@gnu.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
