From bb7f455a575b2f1a14fdb5901e2b87804b188ec7 Mon Sep 17 00:00:00 2001 From: Philippe Coval Date: Fri, 28 Nov 2014 15:04:44 +0100 Subject: [PATCH] sort sources to make deterministic build log Change-Id: Ie8eee7f336e6f1fa2863c4150d967afd15519f1d Signed-off-by: Philippe Coval --- codepage/Makefile | 2 +- com32/cmenu/Makefile | 6 +++--- com32/gpllib/Makefile | 2 +- com32/hdt/Makefile | 2 +- com32/libupload/Makefile | 2 +- com32/rosh/Makefile | 2 +- com32/sysdump/Makefile | 4 ++-- core/Makefile | 24 ++++++++++++------------ dos/Makefile | 2 +- efi/Makefile | 2 +- gpxe/src/Makefile.housekeeping | 12 ++++++------ lzo/Makefile | 2 +- memdisk/Makefile | 2 +- mtools/Makefile | 2 +- win32/Makefile | 2 +- win64/Makefile | 2 +- 16 files changed, 35 insertions(+), 35 deletions(-) diff --git a/codepage/Makefile b/codepage/Makefile index 18a590f..af5258a 100644 --- a/codepage/Makefile +++ b/codepage/Makefile @@ -1,6 +1,6 @@ VPATH = $(SRC) PERL = perl -CPSRC = $(wildcard $(SRC)/*.txt) +CPSRC = $(sort $(wildcard $(SRC)/*.txt)) CPOBJ = $(notdir $(CPSRC)) GENFILES = $(patsubst %.txt,%.cp,$(CPOBJ)) diff --git a/com32/cmenu/Makefile b/com32/cmenu/Makefile index 6bb5231..b81b68e 100644 --- a/com32/cmenu/Makefile +++ b/com32/cmenu/Makefile @@ -32,8 +32,8 @@ LIBMENU = libmenu/syslnx.o libmenu/com32io.o libmenu/tui.o \ libmenu/menu.o libmenu/passwords.o libmenu/des.o libmenu/help.o \ $(objdir)/com32/libutil/libutil.c32 $(objdir)/com32/lib/libcom32.c32 -CMENUS = $(patsubst %.c,%.c32,$(wildcard $(SRC)/*.c)) -IMENUS = $(patsubst %.menu,%.c32,$(wildcard $(SRC)/*.menu)) +CMENUS = $(patsubst %.c,%.c32,$(sort $(wildcard $(SRC)/*.c))) +IMENUS = $(patsubst %.menu,%.c32,$(sort $(wildcard $(SRC)/*.menu))) MENUS = $(LIBS) $(subst $(SRC)/,,$(CMENUS) $(IMENUS)) @@ -62,7 +62,7 @@ clean: tidy menuclean rm -f *.lss *.com menuclean: - rm -f $(patsubst %.menu,%.c,$(wildcard *.menu)) + rm -f $(patsubst %.menu,%.c,$(sort $(wildcard *.menu))) spotless: clean libclean menuclean rm -f *~ \#* *.c32 diff --git a/com32/gpllib/Makefile b/com32/gpllib/Makefile index e3e30d7..1fec914 100644 --- a/com32/gpllib/Makefile +++ b/com32/gpllib/Makefile @@ -8,7 +8,7 @@ include $(MAKEDIR)/lib.mk REQFLAGS += -I$(SRC)/../gplinclude -I$(SRC)/../gplinclude/zzjson GPLDIRS := $(SRC) $(addprefix $(SRC)/,disk dmi vpd acpi zzjson) -LIBOBJS := $(subst $(SRC)/,,$(foreach dir,$(GPLDIRS),$(patsubst %.c,%.o,$(wildcard $(dir)/*.c)))) +LIBOBJS := $(subst $(SRC)/,,$(foreach dir,$(GPLDIRS),$(patsubst %.c,%.o,$(sort $(wildcard $(dir)/*.c))))) BINDIR = /usr/bin LIBDIR = /usr/lib diff --git a/com32/hdt/Makefile b/com32/hdt/Makefile index 80f2d0a..61736d0 100644 --- a/com32/hdt/Makefile +++ b/com32/hdt/Makefile @@ -25,7 +25,7 @@ CFLAGS += -I$(com32)/cmenu/libmenu -I$(com32) MODULES = hdt.c32 TESTFILES = -OBJS = $(subst $(SRC)/,,$(patsubst %.c,%.o,$(wildcard $(SRC)/*.c))) +OBJS = $(subst $(SRC)/,,$(patsubst %.c,%.o,$(sort $(wildcard $(SRC)/*.c)))) VERSION = $(shell $(SED) -n 's/\#define VERSION \"\(.*\)\"/\1/p' hdt.h) CODENAME = $(shell $(SED) -n 's/\#define CODENAME \"\(.*\)\"/\1/p' hdt.h) NODASH_VERSION = $(shell echo $(VERSION) | $(SED) -e 's/-/_/g' | $(SED) -e 's/\./_/g') diff --git a/com32/libupload/Makefile b/com32/libupload/Makefile index f9440c5..a779913 100644 --- a/com32/libupload/Makefile +++ b/com32/libupload/Makefile @@ -4,7 +4,7 @@ include $(MAKEDIR)/com32.mk REQFLAGS += -I$(SRC) -LIBOBJS := $(notdir $(patsubst %.c,%.o,$(wildcard $(SRC)/*.c))) +LIBOBJS := $(notdir $(patsubst %.c,%.o,$(sort $(wildcard $(SRC)/*.c)))) BINDIR = /usr/bin LIBDIR = /usr/lib diff --git a/com32/rosh/Makefile b/com32/rosh/Makefile index 4d900f4..0d49eec 100644 --- a/com32/rosh/Makefile +++ b/com32/rosh/Makefile @@ -27,7 +27,7 @@ include $(MAKEDIR)/rosh.mk # official release. Otherwise, substitute a hex string that is pretty much # guaranteed to be unique to be unique from build to build. ifndef HEXDATE -HEXDATE := $(shell $(PERL) $(topdir)/now.pl $(SRCS) $(wildcard *.h)) +HEXDATE := $(shell $(PERL) $(topdir)/now.pl $(SRCS) $(sort $(wildcard *.h))) endif ifndef DATE DATE := $(shell sh $(topdir)/gen-id.sh $(VERSION) $(HEXDATE)) diff --git a/com32/sysdump/Makefile b/com32/sysdump/Makefile index 240edaa..ba9bcae 100644 --- a/com32/sysdump/Makefile +++ b/com32/sysdump/Makefile @@ -27,14 +27,14 @@ CFLAGS += -I$(com32) -I$(topdir) MODULES = sysdump.c32 TESTFILES = -SRCS = $(wildcard $(SRC)/*.c) +SRCS = $(sort $(wildcard $(SRC)/*.c)) OBJS = $(subst $(SRC)/,,$(patsubst %.c,%.o,$(SRCS))) # The DATE is set on the make command line when building binaries for # official release. Otherwise, substitute a hex string that is pretty much # guaranteed to be unique to be unique from build to build. ifndef HEXDATE -HEXDATE := $(shell $(PERL) $(topdir)/now.pl $(SRCS) $(wildcard *.h)) +HEXDATE := $(shell $(PERL) $(topdir)/now.pl $(SRCS) $(sort $(wildcard *.h))) endif ifndef DATE DATE := $(shell sh $(topdir)/gen-id.sh $(VERSION) $(HEXDATE)) diff --git a/core/Makefile b/core/Makefile index ad0acb5..bb754b8 100644 --- a/core/Makefile +++ b/core/Makefile @@ -39,11 +39,11 @@ BTARGET = kwdhash.gen \ isolinux.bin isolinux-debug.bin pxelinux.0 lpxelinux.0 # All primary source files for the main syslinux files -NASMSRC := $(wildcard $(SRC)/*.asm) -NASMHDR := $(wildcard $(SRC)/*.inc) -CSRC := $(shell find $(SRC) -name '*.c' -print) -SSRC := $(shell find $(SRC) -name '*.S' -print) -CHDR := $(shell find $(SRC) -name '*.h' -print) +NASMSRC := $(sort $(wildcard $(SRC)/*.asm)) +NASMHDR := $(sort $(wildcard $(SRC)/*.inc)) +CSRC := $(shell find $(SRC) -name '*.c' -print | sort) +SSRC := $(shell find $(SRC) -name '*.S' -print | sort) +CHDR := $(shell find $(SRC) -name '*.h' -print | sort) OTHERSRC := keywords ALLSRC = $(NASMSRC) $(NASMHDR) $(CSRC) $(SSRC) $(CHDR) $(OTHERSRC) @@ -56,18 +56,18 @@ CORE_PXE_CSRC = \ $(addprefix $(SRC)/fs/pxe/, dhcp_option.c pxe.c tftp.c urlparse.c bios.c) LPXELINUX_CSRC = $(CORE_PXE_CSRC) \ - $(shell find $(SRC)/lwip -name '*.c' -print) \ + $(shell find $(SRC)/lwip -name '*.c' -print | sort) \ $(addprefix $(SRC)/fs/pxe/, \ core.c dnsresolv.c ftp.c ftp_readdir.c gpxeurl.c http.c \ http_readdir.c idle.c isr.c tcp.c) PXELINUX_CSRC = $(CORE_PXE_CSRC) \ - $(shell find $(SRC)/legacynet -name '*.c' -print) + $(shell find $(SRC)/legacynet -name '*.c' -print | sort) LPXELINUX_OBJS = $(subst $(SRC)/,,$(LPXELINUX_CSRC:%.c=%.o)) PXELINUX_OBJS = $(subst $(SRC)/,,$(PXELINUX_CSRC:%.c=%.o)) -UNITTEST_CSRC = $(shell find $(SRC) -path '*/tests/*.c' -print) +UNITTEST_CSRC = $(shell find $(SRC) -path '*/tests/*.c' -print | sort) UNITTEST_OBJS = $(subst $(SRC)/,,$(UNITTEST_CSRC:%.c=%.o)) # Don't include console and network stack specific objects or unit tests @@ -80,9 +80,9 @@ FILTER_OBJS = %rawcon.o %plaincon.o %pxelinux-c.o %ldlinux-c.o \ ifdef EFI_BUILD # EFI is single-threaded, and doesn't use the LZO assembly decoder FILTER_OBJS += $(subst $(SRC)/,, \ - $(patsubst %.S,%.o, $(wildcard $(SRC)/lzo/*.S)) \ - $(patsubst %.c,%.o, $(wildcard $(SRC)/thread/*.c)) \ - $(patsubst %.S,%.o, $(wildcard $(SRC)/thread/*.S))) + $(patsubst %.S,%.o, $(sort $(wildcard $(SRC)/lzo/*.S))) \ + $(patsubst %.c,%.o, $(sort $(wildcard $(SRC)/thread/*.c))) \ + $(patsubst %.S,%.o, $(sort $(wildcard $(SRC)/thread/*.S)))) endif COBJS = $(filter-out $(FILTER_OBJS),$(COBJ)) @@ -255,4 +255,4 @@ spotless: clean rm -f $(BTARGET) *.bin *_bin.c # Include dependencies file --include $(shell find . -name '.*.d' -print) +-include $(shell find . -name '.*.d' -print | sort) diff --git a/dos/Makefile b/dos/Makefile index b9c337d..4c930d1 100644 --- a/dos/Makefile +++ b/dos/Makefile @@ -34,7 +34,7 @@ SRCS = syslinux.c \ ../libinstaller/getopt/getopt_long.c \ ../libinstaller/bootsect_bin.c \ ../libinstaller/mbr_bin.c \ - $(wildcard $(SRC)/../libfat/*.c) + $(sort $(wildcard $(SRC)/../libfat/*.c)) OBJS = header.o crt0.o ldlinux.o \ $(patsubst %.c,%.o,$(notdir $(SRCS))) LIBOBJS = int2526.o conio.o memcpy.o memset.o memmove.o skipatou.o atou.o \ diff --git a/efi/Makefile b/efi/Makefile index d5443bd..047d7d2 100644 --- a/efi/Makefile +++ b/efi/Makefile @@ -29,7 +29,7 @@ FILTERED_OBJS:= $(subst $(core),$(OBJ)/../core/,$(patsubst %.c,%.o, \ # Don't include unit tests FILTERED_OBJS += $(subst $(core),$(OBJ)/../core/, \ - $(patsubst %.c,%.o,$(shell find $(core) -path "*/tests/*.c" -print))) + $(patsubst %.c,%.o,$(shell find $(core) -path "*/tests/*.c" -print | sort))) # Don't include console objects CORE_OBJS = $(filter-out %hello.o %rawcon.o %plaincon.o %strcasecmp.o %bios.o \ diff --git a/gpxe/src/Makefile.housekeeping b/gpxe/src/Makefile.housekeeping index 1f5e115..903ac53 100644 --- a/gpxe/src/Makefile.housekeeping +++ b/gpxe/src/Makefile.housekeeping @@ -246,9 +246,9 @@ endif # # BIN has the form bin[-[arch-]platform] -ARCHS := $(patsubst arch/%,%,$(wildcard arch/*)) +ARCHS := $(patsubst arch/%,%,$(sort $(wildcard arch/*))) PLATFORMS := $(patsubst config/defaults/%.h,%,\ - $(wildcard config/defaults/*.h)) + $(sort $(wildcard config/defaults/*.h))) archs : @$(ECHO) $(ARCHS) @@ -307,8 +307,8 @@ srcdirs : # SRCS lists all .c or .S files found in any SRCDIR # -SRCS += $(wildcard $(patsubst %,%/*.c,$(SRCDIRS))) -SRCS += $(wildcard $(patsubst %,%/*.S,$(SRCDIRS))) +SRCS += $(sort $(wildcard $(patsubst %,%/*.c,$(SRCDIRS)))) +SRCS += $(sort $(wildcard $(patsubst %,%/*.S,$(SRCDIRS)))) srcs : @$(ECHO) $(SRCS) @@ -677,7 +677,7 @@ endef $(BIN)/%.objs : $(BIN)/%.tmp $(Q)$(ECHO) $(call objs_list,$<) $(BIN)/%.sizes : $(BIN)/%.tmp - $(Q)$(SIZE) -t $(foreach OBJ,$(call objs_list,$<),$(wildcard $(BIN)/$(subst _,?,$(OBJ)).o)) | \ + $(Q)$(SIZE) -t $(foreach OBJ,$(call objs_list,$<),$(sort $(wildcard $(BIN)/$(subst _,?,$(OBJ)).o))) | \ sort -g # Get dependency list for the specified target @@ -807,7 +807,7 @@ $(BIN)/%.o : payload/%.img $(Q)$(LD) -b binary -r -o $@ $< --undefined obj_payload \ --defsym obj_$*=0 -BOBJS += $(patsubst payload/%.img,$(BIN)/%.o,$(wildcard payload/*.img)) +BOBJS += $(patsubst payload/%.img,$(BIN)/%.o,$(sort $(wildcard payload/*.img))) # The "allXXXs" targets for each suffix # diff --git a/lzo/Makefile b/lzo/Makefile index 0c5d296..29f1fa6 100644 --- a/lzo/Makefile +++ b/lzo/Makefile @@ -15,7 +15,7 @@ include $(MAKEDIR)/build.mk INCLUDES += -I$(SRC)/include -LIBOBJS = $(patsubst %.c,%.o,$(subst $(SRC)/,,$(wildcard $(SRC)/src/*.c))) +LIBOBJS = $(patsubst %.c,%.o,$(subst $(SRC)/,,$(sort $(wildcard $(SRC)/src/*.c)))) LIB = lzo.a BINS = prepcore diff --git a/memdisk/Makefile b/memdisk/Makefile index e6557d8..42e56e0 100644 --- a/memdisk/Makefile +++ b/memdisk/Makefile @@ -23,7 +23,7 @@ NFLAGS = -dDATE='"$(DATE)"' NINCLUDE = -I$(SRC)/ VPATH = $(SRC) -SRCS = $(wildcard *.asm *.c *.h) +SRCS = $(sort $(wildcard *.asm *.c *.h)) # The DATE is set on the make command line when building binaries for # official release. Otherwise, substitute a hex string that is pretty much diff --git a/mtools/Makefile b/mtools/Makefile index 70269ef..0d0b1b2 100755 --- a/mtools/Makefile +++ b/mtools/Makefile @@ -13,7 +13,7 @@ SRCS = syslinux.c \ ../libinstaller/bootsect_bin.c \ ../libinstaller/ldlinux_bin.c \ ../libinstaller/ldlinuxc32_bin.c \ - $(wildcard $(SRC)/../libfat/*.c) + $(sort $(wildcard $(SRC)/../libfat/*.c)) OBJS = $(patsubst %.c,%.o,$(notdir $(SRCS))) .SUFFIXES: .c .o .i .s .S diff --git a/win32/Makefile b/win32/Makefile index 437f954..c648530 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -59,7 +59,7 @@ LIBSRC = ../libinstaller/fs.c \ ../libinstaller/ldlinux_bin.c \ ../libinstaller/ldlinuxc32_bin.c \ ../libinstaller/mbr_bin.c \ - $(wildcard $(SRC)/../libfat/*.c) + $(sort $(wildcard $(SRC)/../libfat/*.c)) LIBOBJS = $(patsubst %.c,%.obj,$(notdir $(LIBSRC))) LIB = syslinux.lib diff --git a/win64/Makefile b/win64/Makefile index ae47e2e..359d270 100644 --- a/win64/Makefile +++ b/win64/Makefile @@ -49,7 +49,7 @@ LIBSRC = ../libinstaller/fs.c \ ../libinstaller/ldlinux_bin.c \ ../libinstaller/ldlinuxc32_bin.c \ ../libinstaller/mbr_bin.c \ - $(wildcard $(SRC)/../libfat/*.c) + $(sort $(wildcard $(SRC)/../libfat/*.c)) LIBOBJS = $(patsubst %.c,%.obj,$(notdir $(LIBSRC))) LIB = syslinux.lib -- 2.7.4