< prev index next >

make/common/MakeBase.gmk

Print this page

        

*** 84,95 **** # Store the build times in this directory. BUILDTIMESDIR=$(OUTPUT_ROOT)/make-support/build-times # Record starting time for build of a sub repository. define RecordStartTime ! $(MKDIR) -p $(BUILDTIMESDIR) ! $(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_start_$(strip $1) $(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_start_$(strip $1)_human_readable endef # Record ending time and calculate the difference and store it in a # easy to read format. Handles builds that cross midnight. Expects --- 84,94 ---- # Store the build times in this directory. BUILDTIMESDIR=$(OUTPUT_ROOT)/make-support/build-times # Record starting time for build of a sub repository. define RecordStartTime ! $(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_start_$(strip $1) && \ $(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_start_$(strip $1)_human_readable endef # Record ending time and calculate the difference and store it in a # easy to read format. Handles builds that cross midnight. Expects
*** 231,240 **** --- 230,240 ---- $$(call ListPathsSafely_IfPrintf,$1,$2,9501,9750) $$(call ListPathsSafely_IfPrintf,$1,$2,9751,10000) endef endif # HAS_FILE_FUNCTION + ################################################################################ # The source tips can come from the Mercurial repository, or in the files # $(HGTIP_FILENAME) which contains the tip but is also positioned in the same # directory as the original $(HGDIR) directory. # These should not be := assignments, only used from the root Makefile. HG_VERSION = $(shell $(HG) version 2> /dev/null)
*** 262,277 **** fi; \ done >> $@ $(PRINTF) "\n" >> $@ endef ! # Create the HGTIP_FILENAME file. Called from jdk/make/closed/bundles.gmk define CreateHgTip $(HG) tip --repository $1 --template '{node|short}\n' > $1/$(HGTIP_FILENAME); \ $(ECHO) $1/$(HGTIP_FILENAME) endef define SetupLogging ifeq ($$(LOG_LEVEL), trace) # Shell redefinition trick inspired by http://www.cmcrossroads.com/ask-mr-make/6535-tracing-rule-execution-in-gnu-make # For each target executed, will print # Building <TARGET> (from <FIRST PREREQUISITE>) (<ALL NEWER PREREQUISITES> newer) --- 262,279 ---- fi; \ done >> $@ $(PRINTF) "\n" >> $@ endef ! # Create the HGTIP_FILENAME file. Called from closed/make/SourceBundles.gmk define CreateHgTip $(HG) tip --repository $1 --template '{node|short}\n' > $1/$(HGTIP_FILENAME); \ $(ECHO) $1/$(HGTIP_FILENAME) endef + ################################################################################ + define SetupLogging ifeq ($$(LOG_LEVEL), trace) # Shell redefinition trick inspired by http://www.cmcrossroads.com/ask-mr-make/6535-tracing-rule-execution-in-gnu-make # For each target executed, will print # Building <TARGET> (from <FIRST PREREQUISITE>) (<ALL NEWER PREREQUISITES> newer)
*** 366,378 **** $(call $(0)Body,$(strip $1)) endef ################################################################################ # Make directory without forking mkdir if not needed MakeDir = \ ! $(strip $(if $(subst $(wildcard $1 $2 $3 $4 $5 $6 $7 $8 $9),,$(strip $1 $2 $3 $4 $5 $6 $7 $8 $9)),\ ! $(shell $(MKDIR) -p $1 $2 $3 $4 $5 $6 $7 $8 $9))) ################################################################################ # Assign a variable only if it is empty # Param 1 - Variable to assign # Param 2 - Value to assign --- 368,380 ---- $(call $(0)Body,$(strip $1)) endef ################################################################################ # Make directory without forking mkdir if not needed + # 1: List of directories to create MakeDir = \ ! $(strip $(if $(wildcard $1), , $(shell $(MKDIR) -p $1))) ################################################################################ # Assign a variable only if it is empty # Param 1 - Variable to assign # Param 2 - Value to assign
*** 416,426 **** endef else # Running mkdir and cp in the same shell speeds up copy intensive tasks in Cygwin # significantly. define install-file ! $(MKDIR) -p '$(@D)' && $(CP) -fP '$<' '$@' endef endif ################################################################################ # Filter out duplicate sub strings while preserving order. Keeps the first occurance. --- 418,429 ---- endef else # Running mkdir and cp in the same shell speeds up copy intensive tasks in Cygwin # significantly. define install-file ! $(call MakeDir, $(@D)) ! $(CP) -fP '$<' '$@' endef endif ################################################################################ # Filter out duplicate sub strings while preserving order. Keeps the first occurance.
*** 539,549 **** # 1 : Source file # 2 : Dest file # 3 : Variable to add targets to # 4 : Macro to call for copy operation $2: $1 ! $(ECHO) $(LOG_INFO) Copying $$(patsubst $(OUTPUT_ROOT)/%,%,$$@) $$($$(strip $4)) $3 += $2 endef --- 542,552 ---- # 1 : Source file # 2 : Dest file # 3 : Variable to add targets to # 4 : Macro to call for copy operation $2: $1 ! $$(call LogInfo, Copying $$(patsubst $(OUTPUT_ROOT)/%,%,$$@)) $$($$(strip $4)) $3 += $2 endef
*** 684,695 **** # failure-logs directory. # Param 1 - The log file of the failed command # Param 2 - A compact but representative name to describe this command # Param 3 - Command to run LogFailures = \ ! ( ($(BASH) $(SRC_ROOT)/common/bin/logger.sh $1 $3 && $(RM) $1) || \ ! (exitcode=$(DOLLAR)$(DOLLAR)? && $(MV) $1 $(MAKESUPPORT_OUTPUTDIR)/failure-logs/$(strip $2).log && exit $(DOLLAR)$(DOLLAR)exitcode) ) ################################################################################ # Find lib dir for module # Param 1 - module name ifeq ($(OPENJDK_TARGET_OS_TYPE), unix) --- 687,700 ---- # failure-logs directory. # Param 1 - The log file of the failed command # Param 2 - A compact but representative name to describe this command # Param 3 - Command to run LogFailures = \ ! ( $3 > >($(TEE) $1) 2> >($(TEE) $1 >&2) || \ ! (exitcode=$(DOLLAR)$(DOLLAR)? && \ ! $(CP) $1 $(MAKESUPPORT_OUTPUTDIR)/failure-logs/$(strip $2).log && \ ! exit $(DOLLAR)$(DOLLAR)exitcode) ) ################################################################################ # Find lib dir for module # Param 1 - module name ifeq ($(OPENJDK_TARGET_OS_TYPE), unix)
< prev index next >