[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#983046: marked as done (kjs: please make the opcodes.h file reproducible)



Your message dated Mon, 15 Mar 2021 07:04:05 +0000
with message-id <E1lLhGn-000HgC-7k@fasolo.debian.org>
and subject line Bug#983046: fixed in kjs 5.80.0-1
has caused the Debian Bug report #983046,
regarding kjs: please make the opcodes.h file reproducible
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
983046: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=983046
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: kjs
Version: 5.78.0-2
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-bugs@lists.alioth.debian.org

Hi,

Whilst working on the Reproducible Builds effort [0] we noticed that
kjs could not be built reproducibly.

This is, in part, because it generates an opcodes.h file that embeds the
full path to its original filename which naturally varies on the original
build directory.

Patch attached that applies the equivalent of basename(3) to these values;
kjs doesn't use boost so I cannot use boost::filesystem, nor does it use
c++17 (?) so I cannot use std::filesystem::path either, alas.

 [0] https://reproducible-builds.org/


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby@debian.org / chris-lamb.co.uk
       `-
--- a/debian/patches/reproducible_build	1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/reproducible_build	2021-02-18 14:52:49.165246604 +0000
@@ -0,0 +1,49 @@
+Description: Make the build reproducible
+Author: Chris Lamb <lamby@debian.org>
+Last-Update: 2021-02-18
+
+--- kjs-5.78.0.orig/src/kjs/bytecode/generator/filetemplate.h
++++ kjs-5.78.0/src/kjs/bytecode/generator/filetemplate.h
+@@ -46,6 +46,7 @@ struct FileTemplate {
+     {
+         isOK  = true;
+         lines = 0;
++	inFileBaseName = inFileName.substr(inFileName.find_last_of("/") + 1);
+ 
+         in.open(inFileName.c_str());
+         if (in.fail()) {
+@@ -60,7 +61,7 @@ struct FileTemplate {
+         }
+ 
+         if (isOK) {
+-            out << "// WARNING: Portions of this file are autogenerated from codes.def and " << inFileName << ".\n";
++            out << "// WARNING: Portions of this file are autogenerated from codes.def and " << inFileBaseName << ".\n";
+             out << "// (which is what the licensing terms apply to)\n";
+             out << "// Any changes you make here may be lost!\n";
+             handleUntilGenerate();
+@@ -77,7 +78,7 @@ struct FileTemplate {
+     // Goes until @generate..
+     void handleUntilGenerate()
+     {
+-        out << "#line " << (lines + 1) << " \"" << inFileName << "\"\n";
++        out << "#line " << (lines + 1) << " \"" << inFileBaseName << "\"\n";
+         while (!in.eof()) {
+             string line;
+             getline(in, line);
+@@ -92,7 +93,7 @@ struct FileTemplate {
+ 
+     void handleSuffix()
+     {
+-        out << "#line " << (lines + 1) << " \"" << inFileName << "\"\n";
++        out << "#line " << (lines + 1) << " \"" << inFileBaseName << "\"\n";
+         while (!in.eof()) {
+             string line;
+             getline(in, line);
+@@ -101,6 +102,7 @@ struct FileTemplate {
+     }
+ 
+     string   inFileName;
++    string   inFileBaseName;
+     string   outFileName;
+     ifstream in;
+     ofstream out;
--- a/debian/patches/series	2021-02-18 12:56:03.551163060 +0000
--- b/debian/patches/series	2021-02-18 13:00:06.669560158 +0000
@@ -1 +1,2 @@
 install_missing_headers
+reproducible_build

--- End Message ---
--- Begin Message ---
Source: kjs
Source-Version: 5.80.0-1
Done: Norbert Preining <norbert@preining.info>

We believe that the bug you reported is fixed in the latest version of
kjs, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 983046@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Norbert Preining <norbert@preining.info> (supplier of updated kjs package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Mon, 15 Mar 2021 15:10:35 +0900
Source: kjs
Architecture: source
Version: 5.80.0-1
Distribution: experimental
Urgency: medium
Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Changed-By: Norbert Preining <norbert@preining.info>
Closes: 983046
Changes:
 kjs (5.80.0-1) experimental; urgency=medium
 .
   [ Norbert Preining ]
   * Make the build reproducible (Closes: #983046) (Thanks to Chris Lamb)
   * New upstream version (5.80.0)
   * Bump inter-frameworks dependencies.
Checksums-Sha1:
 8f126a9c4cbed087c6a2169821f64054a9d15766 2155 kjs_5.80.0-1.dsc
 30c91f09bd07e89ec33670a935f4c4092011cc87 337980 kjs_5.80.0.orig.tar.xz
 63dc6519f4c0da5547e050785a2bf54d5deaed49 488 kjs_5.80.0.orig.tar.xz.asc
 c66607c74dfcb8e4092af95f2a51e9c16e11746b 17748 kjs_5.80.0-1.debian.tar.xz
 832a43dc1a27f85da63240a772b93d9e233acccf 11275 kjs_5.80.0-1_source.buildinfo
Checksums-Sha256:
 62371ccdbdf938a04ea9708830cc1ef5afce9576337e77f410dc7ba64e4a28f1 2155 kjs_5.80.0-1.dsc
 3286281f3ebbfc78336cff73a012106f836f39b7ef1ed32e6040c4ffb98f72ec 337980 kjs_5.80.0.orig.tar.xz
 6550ee1dc51f9eb99ad336b4797dd7e1dcd8721743f02e307324073f9bf7f94b 488 kjs_5.80.0.orig.tar.xz.asc
 5e3138c426919127df9f5b74b08a337743308e5050c1c90a35b44a8fb9dae44d 17748 kjs_5.80.0-1.debian.tar.xz
 34338912cb79164ede6ac39c6c3626b45da0edca7754b48623c4bdabf4fc6f0d 11275 kjs_5.80.0-1_source.buildinfo
Files:
 f466e07c6bbec3f18b22a52ddc4ce8d9 2155 libs optional kjs_5.80.0-1.dsc
 87a9922336ad922dd4730b942cae4148 337980 libs optional kjs_5.80.0.orig.tar.xz
 4297ee741237455f5343ebd8b1b6f344 488 libs optional kjs_5.80.0.orig.tar.xz.asc
 18e4821420702c9f5ecffb6c731066d5 17748 libs optional kjs_5.80.0-1.debian.tar.xz
 1aa4d4eb1900ad5d9af797403b8ebdf5 11275 libs optional kjs_5.80.0-1_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEE68ws0vrA2voQX53I2A4JsIcUAGYFAmBO+9sACgkQ2A4JsIcU
AGaqOAgAp4k9NDT3R+fjd7NJz0KSCPVgj5zsuK0NfwUmAWXCtbDyuF0snXMFVUXs
urg1e5AXZFqGRvigkdDjXweE8xiOFlqsND+1g8RlCGpVgSwovl7cSpzn78zTVKbL
D7QA2oO3Fk5YtZ0Y/JWQfBdUFsIF80TcFyvgTss+ELtUrCFZURjZoqcfTrDyt8hz
/9oj/UxmpxoK4P5swXRA+Fac+6qnjY+ud+7we3kxn69eqoTplDKYttVUUDFgROX/
tTWhZ9OZu6eAjE8G6uWqC4tJ6nEvYzpMus/rwKUDqgGl/w5WAozMA24Nq72zLkKU
J+2prppkWouvOS7d//zZvxZcdGK5OQ==
=YUX2
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: