1 Description: mk: sort object files when building deps lists
3 In order to achieve reproducible builds, always use the same
4 order when listing object files to build dependencies lists.
6 Origin: http://dpdk.org/dev/patchwork/patch/27511/
8 Author: Luca Boccassi <luca.boccassi@gmail.com>
9 Last-Update: 2017-08-10
11 mk/rte.app.mk | 4 ++--
12 mk/rte.hostapp.mk | 4 ++--
13 mk/rte.shared.mk | 4 ++--
14 3 files changed, 6 insertions(+), 6 deletions(-)
16 diff --git a/mk/rte.app.mk b/mk/rte.app.mk
17 index bcaf1b382..54134dea4 100644
20 @@ -263,8 +263,8 @@ LDLIBS_NAMES += $(patsubst -Wl$(comma)-l%,lib%.a,$(filter -Wl$(comma)-l%,$(LDLIB
22 # list of found libraries files (useful for deps). If not found, the
23 # library is silently ignored and dep won't be checked
24 -LDLIBS_FILES := $(wildcard $(foreach dir,$(LDLIBS_PATH),\
25 - $(addprefix $(dir)/,$(LDLIBS_NAMES))))
26 +LDLIBS_FILES := $(sort $(wildcard $(foreach dir,$(LDLIBS_PATH),\
27 + $(addprefix $(dir)/,$(LDLIBS_NAMES)))))
30 # Compile executable file if needed
31 diff --git a/mk/rte.hostapp.mk b/mk/rte.hostapp.mk
32 index 5cb4909cb..f58173c31 100644
33 --- a/mk/rte.hostapp.mk
34 +++ b/mk/rte.hostapp.mk
35 @@ -69,9 +69,9 @@ O_TO_EXE_DO = @set -e; \
36 -include .$(HOSTAPP).cmd
38 # list of .a files that are linked to this application
39 -LDLIBS_FILES := $(wildcard \
40 +LDLIBS_FILES := $(sort $(wildcard \
41 $(addprefix $(RTE_OUTPUT)/lib/, \
42 - $(patsubst -l%,lib%.a,$(filter -l%,$(LDLIBS)))))
43 + $(patsubst -l%,lib%.a,$(filter -l%,$(LDLIBS))))))
46 # Compile executable file if needed
47 diff --git a/mk/rte.shared.mk b/mk/rte.shared.mk
48 index 87ccf0ba4..4e680bc03 100644
49 --- a/mk/rte.shared.mk
50 +++ b/mk/rte.shared.mk
51 @@ -85,8 +85,8 @@ LDLIBS_NAMES += $(patsubst -Wl$(comma)-l%,lib%.a,$(filter -Wl$(comma)-l%,$(LDLIB
53 # list of found libraries files (useful for deps). If not found, the
54 # library is silently ignored and dep won't be checked
55 -LDLIBS_FILES := $(wildcard $(foreach dir,$(LDLIBS_PATH),\
56 - $(addprefix $(dir)/,$(LDLIBS_NAMES))))
57 +LDLIBS_FILES := $(sort $(wildcard $(foreach dir,$(LDLIBS_PATH),\
58 + $(addprefix $(dir)/,$(LDLIBS_NAMES)))))
61 # Archive objects in .so file if needed