Hi all,
I am trying to investigate why `commons-daemon:commons-daemon:1.4.0` release is unreproducible and how to fix it. Since I did not see any related mail here<https://lists.apache.org/list?dev@commons.apache.org:lte=1M:reproducible>, I thought I should start another thread. The diff between the artifacts are documented here<https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/org/apache/commons/commons-daemon/commons-daemon-1.4.0.diffoscope>. It seems most of the zip and tar archives have some binaries missing. For example, `commons-daemon-1.4.0-bin-windows.zip` has three missing Windows executables. Checking the release instructions<https://github.com/apache/commons-daemon/blob/2b4fa9a14b8b073ade4c95ba4564455c06e1ae29/HOWTO-RELEASE.txt#L83-L100>, it seems that these executables require running some shell scripts and nmake command. Hence, I tried to make the release reproducible by placing the commands under `execBefore` in the buildspec file<https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/doc/BUILDSPEC.md>. It seems that it fixes artifacts "commons-daemon-1.4.0-native-src.tar.gz commons-daemon-1.4.0-native-src.zip commons-daemon-1.4.0-src.tar.gz commons-daemon-1.4.0-src.zip", however, `commons-daemon-1.4.0-bin-windows.zip` still marked as unreproducible. I saw that it builds with nmake which is on Windows. A solution make build scripts portable is to use `cmake`. I think successfully building them and place them in the target folder should achieve a successful reproducible build. Regards, Aman Sharma PhD Student KTH Royal Institute of Technology School of Electrical Engineering and Computer Science (EECS) Department of Theoretical Computer Science (TCS) <http://www.kth.se><https://www.kth.se/profile/amansha><https://www.kth.se/profile/amansha> <https://www.kth.se/profile/amansha>https://algomaster99.github.io/