Source: xprobe Version: 0.3-2 Severity: wishlist Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: fileordering X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org
Hi! While working on the "reproducible builds" effort [1], we have noticed that xprobe could not be built reproducibly. The order of object files packed into static library archives is unsorted. The attached patch fixes this. Regards, Reiner [1]: https://wiki.debian.org/ReproducibleBuilds
diff --git a/debian/patches/reproducible_build.patch b/debian/patches/reproducible_build.patch new file mode 100644 index 0000000..fa353a0 --- /dev/null +++ b/debian/patches/reproducible_build.patch @@ -0,0 +1,49 @@ +Author: Reiner Herrmann <rei...@reiner-h.de> +Description: Sort order of object files in static libraries + +--- a/libs-external/USI++/src/Makefile.in ++++ b/libs-external/USI++/src/Makefile.in +@@ -15,7 +15,7 @@ + clear + + usi++:icmp.o datalink.o ip.o misc.o udp.o tcp.o TX_IP.o Layer2.o arp.o +- ar cr libusi++.a *.o ++ ar cr libusi++.a `LC_ALL=C ls *.o` + # ld *.o -Bshareable -o libusi++.so + $(RANLIB) libusi++.a + rm -f *.o +--- a/src/xpmodules/alive_probe/Makefile.in ++++ b/src/xpmodules/alive_probe/Makefile.in +@@ -42,7 +42,7 @@ + all: alive_probe.a + + alive_probe.a: icmp_ping.o tcp_ping.o udp_ping.o ttl_module portscan_module +- ar cr alive_probe.a *.o ttl_calc/*.o portscanner/*.o ++ ar cr alive_probe.a `LC_ALL=C ls *.o ttl_calc/*.o portscanner/*.o` + $(RANLIB) alive_probe.a + + icmp_ping.o: icmp_ping.cc +--- a/src/xpmodules/os_probe/Makefile.in ++++ b/src/xpmodules/os_probe/Makefile.in +@@ -43,8 +43,8 @@ + + os_probe.a: icmp_port_unreach_mod icmp_echo_id_mod icmp_timestamp_mod \ + icmp_inforeq_mod icmp_addrmask_mod tcp_handshake_mod tcp_rst_mod smb_mod snmp_mod +- ar cr os_probe.a icmp_port_unreach/*.o icmp_echo_id/*.o icmp_timestamp/*.o \ +- icmp_inforeq/*.o icmp_addrmask/*.o tcp_handshake/*.o tcp_rst/*.o smb/*.o snmp/*.o ++ ar cr os_probe.a `LC_ALL=C ls icmp_port_unreach/*.o icmp_echo_id/*.o icmp_timestamp/*.o \ ++ icmp_inforeq/*.o icmp_addrmask/*.o tcp_handshake/*.o tcp_rst/*.o smb/*.o snmp/*.o` + $(RANLIB) os_probe.a + + +--- a/src/xplib/Makefile.in ++++ b/src/xplib/Makefile.in +@@ -44,7 +44,7 @@ + all: libxplib.a + + libxplib.a: $(OBJS) +- ar cr libxplib.a *.o ++ ar cr libxplib.a `LC_ALL=C ls *.o` + $(RANLIB) libxplib.a + + .c.o: $(INCLUDES) diff --git a/debian/patches/series b/debian/patches/series index 7a23e24..aa1238f 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,4 @@ fix-build-usi.patch fix-for-gcc4.3.patch fix-man-page.patch +reproducible_build.patch
signature.asc
Description: PGP signature