Opened 8 years ago

Last modified 8 years ago

#6520 closed enhancement

Sort files in static library to make the build reproducible — at Version 2

Reported by: Bas Couwenberg Owned by: warmerdam
Priority: normal Milestone: 2.2.0
Component: ConfigBuild Version: svn-trunk
Severity: normal Keywords:
Cc:

Description (last modified by Bas Couwenberg)

As part of the effort to support Reproducible Builds Alexis Bienvenüe submitted two patches in Debian Bug #824808 to sort the object files in the static library: sort-files-1 & sort-files-2

These patches resolve the random_order_in_static_libraries issue which is illustrated by the diffoscope output.

The attached patch is modified version of the sort-files-2 patch doing do wildcard sorting in the $(LIBGDAL) target instead of a separate $(LIBGDAL).buildit target. Alexis chose that approach because:

In some situations some of the target dependencies do not exist before the "make target" call. When this arises, as $(wildcard) is expanded before building the dependencies, it can miss some files… I was not sure of the situation here, so I added a transitional target to be safe.

I prefer the single line change in the attached patch, but you may want to consider the separate target as done in the sort-files-2 patch too.

Change History (2)

comment:1 by Bas Couwenberg, 8 years ago

Resolution: invalid
Status: newclosed

Adding a description causes an internal server error.

comment:2 by Bas Couwenberg, 8 years ago

Description: modified (diff)
Milestone: 2.1.1
Resolution: invalid
Status: closedreopened
Type: defectenhancement
Version: unspecifiedsvn-trunk
Note: See TracTickets for help on using tickets.