Source: nmodl
Severity: normal
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

The build path is embedded in /usr/bin/nmodl:

  
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope-results/nmodl.html

  /build/1st/nmodl-0.5/obj-x86_64-linux-gnu/share/nmodl/nrnunits.lib
  vs.
  /build/2/nmodl-0.5/2nd/obj-x86_64-linux-gnu/share/nmodl/nrnunits.lib

The attached patch fixes this by patching src/config/config.cpp.in to
avoid embedding a (presumed) search path including the build path for
NRNUNITSLIB_PATH.

This build path is generally not available when the package is
installed, so this should not cause issues at run-time... if nmodl
eventually adopts a test suite, this might cause issues; there is no
test suite run as part of the current debian package.


According to my local tests, with this patch applied nmodl should build
reproducibly on tests.reproducible-builds.org!


Thanks for maintaining nmodl!


live well,
  vagrant
From 09e3bc7f2336e8ec15bb0ddc713f88a0e4fdc252 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagr...@reproducible-builds.org>
Date: Wed, 12 Apr 2023 17:09:49 -0700
Subject: [PATCH] src/config/config.cpp.in: Drop build path from
 NRNUNITSLIB_PATH.

The build path will not generally be available when the package is
installed, so should not be able to afect the resulting package at
runtime.

https://reproducible-builds.org/docs/build-path/
---
 src/config/config.cpp.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/config/config.cpp.in b/src/config/config.cpp.in
index d962184..726d243 100644
--- a/src/config/config.cpp.in
+++ b/src/config/config.cpp.in
@@ -22,4 +22,4 @@ const std::string nmodl::Version::NMODL_VERSION = "@PROJECT_VERSION@";
  * will cause ccache misses when the build prefix is changed.
  */
 std::vector<std::string> nmodl::NrnUnitsLib::NRNUNITSLIB_PATH =
-    {"@CMAKE_INSTALL_PREFIX@/share/nmodl/nrnunits.lib", "@NMODL_PROJECT_BINARY_DIR@/share/nmodl/nrnunits.lib"};
+    {"@CMAKE_INSTALL_PREFIX@/share/nmodl/nrnunits.lib"};
-- 
2.39.2

Attachment: signature.asc
Description: PGP signature

Reply via email to