From 3343ea9e8ea4f552b3f6e5436938f2f0e153b947 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 5 Jan 2016 15:47:05 -0500 Subject: [PATCH] Sort $(wildcard) output where needed for reproducible build output. The order of inclusion of .o files makes a difference in linker output; not a functional difference, but still a bitwise difference, which annoys some packagers who would like reproducible builds. Report and patch by Christoph Berg --- contrib/hstore_plperl/Makefile | 2 +- contrib/hstore_plpython/Makefile | 4 ++-- contrib/ltree_plpython/Makefile | 4 ++-- src/bin/pg_xlogdump/Makefile | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/contrib/hstore_plperl/Makefile b/contrib/hstore_plperl/Makefile index 8f7b171bcd..b3b8654bc8 100644 --- a/contrib/hstore_plperl/Makefile +++ b/contrib/hstore_plperl/Makefile @@ -32,7 +32,7 @@ endif ifeq ($(PORTNAME), win32) # these settings are the same as for plperl override CPPFLAGS += -DPLPERL_HAVE_UID_GID -Wno-comment -SHLIB_LINK += ../hstore/libhstore.a $(wildcard ../../src/pl/plperl/libperl*.a) +SHLIB_LINK += ../hstore/libhstore.a $(sort $(wildcard ../../src/pl/plperl/libperl*.a)) endif ifeq ($(PORTNAME), cygwin) diff --git a/contrib/hstore_plpython/Makefile b/contrib/hstore_plpython/Makefile index 2de00a2c43..c4dad6f111 100644 --- a/contrib/hstore_plpython/Makefile +++ b/contrib/hstore_plpython/Makefile @@ -27,10 +27,10 @@ endif # dependency. This does preclude pgxs builds. ifeq ($(PORTNAME), aix) rpathdir = $(pkglibdir):$(python_libdir) -SHLIB_LINK += ../hstore/libhstore.exp $(python_libspec) $(python_additional_libs) $(wildcard ../../src/pl/plpython/libplpython*.exp) +SHLIB_LINK += ../hstore/libhstore.exp $(python_libspec) $(python_additional_libs) $(sort $(wildcard ../../src/pl/plpython/libplpython*.exp)) endif ifeq ($(PORTNAME), win32) -SHLIB_LINK += ../hstore/libhstore.a $(wildcard ../../src/pl/plpython/libpython*.a) $(wildcard ../../src/pl/plpython/libplpython*.a) +SHLIB_LINK += ../hstore/libhstore.a $(sort $(wildcard ../../src/pl/plpython/libpython*.a)) $(sort $(wildcard ../../src/pl/plpython/libplpython*.a)) endif ifeq ($(PORTNAME), cygwin) diff --git a/contrib/ltree_plpython/Makefile b/contrib/ltree_plpython/Makefile index 7eacb40115..08186f19a1 100644 --- a/contrib/ltree_plpython/Makefile +++ b/contrib/ltree_plpython/Makefile @@ -27,10 +27,10 @@ endif # dependency. This does preclude pgxs builds. ifeq ($(PORTNAME), aix) rpathdir = $(pkglibdir):$(python_libdir) -SHLIB_LINK += $(python_libspec) $(python_additional_libs) $(wildcard ../../src/pl/plpython/libplpython*.exp) +SHLIB_LINK += $(python_libspec) $(python_additional_libs) $(sort $(wildcard ../../src/pl/plpython/libplpython*.exp)) endif ifeq ($(PORTNAME), win32) -SHLIB_LINK += $(wildcard ../../src/pl/plpython/libpython*.a) $(wildcard ../../src/pl/plpython/libplpython*.a) +SHLIB_LINK += $(sort $(wildcard ../../src/pl/plpython/libpython*.a)) $(sort $(wildcard ../../src/pl/plpython/libplpython*.a)) endif ifeq ($(PORTNAME), cygwin) diff --git a/src/bin/pg_xlogdump/Makefile b/src/bin/pg_xlogdump/Makefile index 315e869ffe..11df47d516 100644 --- a/src/bin/pg_xlogdump/Makefile +++ b/src/bin/pg_xlogdump/Makefile @@ -12,7 +12,7 @@ OBJS = pg_xlogdump.o compat.o xlogreader.o rmgrdesc.o \ override CPPFLAGS := -DFRONTEND $(CPPFLAGS) -RMGRDESCSOURCES = $(notdir $(wildcard $(top_srcdir)/src/backend/access/rmgrdesc/*desc.c)) +RMGRDESCSOURCES = $(sort $(notdir $(wildcard $(top_srcdir)/src/backend/access/rmgrdesc/*desc.c))) RMGRDESCOBJS = $(patsubst %.c,%.o,$(RMGRDESCSOURCES)) -- GitLab