#6520 closed enhancement (fixed)
Sort files in static library to make the build reproducible
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 )
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.
Attachments (1)
Change History (7)
comment:1 by , 8 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
comment:2 by , 8 years ago
Description: | modified (diff) |
---|---|
Milestone: | → 2.1.1 |
Resolution: | invalid |
Status: | closed → reopened |
Type: | defect → enhancement |
Version: | unspecified → svn-trunk |
comment:4 by , 8 years ago
by , 8 years ago
Attachment: | sort-files-in-static-library.patch added |
---|
comment:6 by , 8 years ago
Component: | default → ConfigBuild |
---|---|
Milestone: | 2.1.1 → 2.2.0 |
Being a fix for a not critical issue, I'm not too keen on applying that to the stable branch.
Adding a description causes an internal server error.