Source: reaver Version: 1.4-2 Severity: wishlist Tags: patch upstream User: reproducible-bui...@lists.alioth.debian.org Usertags: fileordering X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org
Dear Maintainer, While working on the "reproducible builds" effort [1], we have noticed that 'reaver' could not be built reproducibly. The attached patch fixes the order in which object files are passed to gcc. Once applied, reaver can be built reproducibly in our current experimental framework. Regards, Alexis Bienvenüe. [1]: https://wiki.debian.org/ReproducibleBuilds
Description: Order object files when linking Sort object files when liking, to make the build reproducible. Author: Alexis Bienvenüe <p...@passoire.fr> Index: reaver-1.4/src/Makefile.in =================================================================== --- reaver-1.4.orig/src/Makefile.in +++ reaver-1.4/src/Makefile.in @@ -5,15 +5,15 @@ prefix=@prefix@ exec_prefix=@exec_prefix@ CONFDIR=@sysconfdir@/@target@ CFLAGS=-DCONF_DIR='"$(CONFDIR)"' -DREAVER_DATABASE='"$(CONFDIR)/reaver.db"' @CFLAGS@ -LDFLAGS=$(LIBWPS_DIR)/*.o wps/*.o tls/bignum.o tls/libtls.a utils/libutils.a crypto/libcrypto.a lwe/libiw.a @LDFLAGS@ +LDFLAGS=`LC_ALL=C ls $(LIBWPS_DIR)/*.o wps/*.o` tls/bignum.o tls/libtls.a utils/libutils.a crypto/libcrypto.a lwe/libiw.a @LDFLAGS@ all: wash reaver wash: wps libiw libwps.o argsparser.o globule.o init.o misc.o 80211.o iface.o - $(CC) $(CFLAGS) $(INC) wpsmon.c *.o $(LDFLAGS) -o wash + $(CC) $(CFLAGS) $(INC) wpsmon.c `LC_ALL=C ls *.o` $(LDFLAGS) -o wash reaver: wps libiw libwps.o argsparser.o globule.o init.o sigint.o sigalrm.o misc.o cracker.o - $(CC) $(CFLAGS) $(INC) wpscrack.c *.o $(LDFLAGS) -o reaver + $(CC) $(CFLAGS) $(INC) wpscrack.c `LC_ALL=C ls *.o` $(LDFLAGS) -o reaver libwps.o: (cd $(LIBWPS_DIR) && make)