]> code.ossystems Code Review - openembedded-core.git/commitdiff
ruby: improve reproducibility
authorHongxu Jia <hongxu.jia@windriver.com>
Mon, 27 Aug 2018 15:31:28 +0000 (23:31 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 29 Aug 2018 09:40:08 +0000 (10:40 +0100)
Find out rbconfig.rb and created.rid from ${B}/.installed.list
and remove build host directories

- For rbconfig.rb, parse it like python's _sysconfigdata.py
[snip rbconfig.rb]
 26   CONFIG["INSTALL"] = 'install -c'
[snip rbconfig.rb]

- For created.rid, it records file created time, just strip ${WORKDIR} prefix.
[snip created.rid]
840 /ruby-2.5.1/doc/maintainers.rdoc        Fri, 22 Dec 2017 23:08:05 +0000
[snip created.rid]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/ruby/ruby_2.5.1.bb

index af2739a43ddb1da220dc638980e13409d7fac7b4..1197323e90afefb7197d608b8822b995458050b0 100644 (file)
@@ -35,6 +35,26 @@ do_install() {
     oe_runmake 'DESTDIR=${D}' install
 }
 
+do_install_append_class-target () {
+    # Find out rbconfig.rb from .installed.list
+    rbconfig_rb=`grep rbconfig.rb ${B}/.installed.list`
+    # Remove build host directories
+    sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' \
+           -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \
+           -e 's|${DEBUG_PREFIX_MAP}||g' \
+           -e 's:${HOSTTOOLS_DIR}/::g' \
+           -e 's:${RECIPE_SYSROOT_NATIVE}::g' \
+           -e 's:${RECIPE_SYSROOT}::g' \
+           -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
+        ${D}$rbconfig_rb
+
+    # Find out created.rid from .installed.list
+    created_rid=`grep created.rid ${B}/.installed.list`
+    # Remove build host directories
+    sed -i -e 's:${WORKDIR}::g' ${D}$created_rid
+
+}
+
 PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc"
 
 SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library"