make/InitSupport.gmk
author erikj
Fri, 27 Mar 2015 14:11:26 +0100
changeset 29663 74ff65003536
parent 29662 78c47f0002c3
child 29788 b581a3d9db41
permissions -rw-r--r--
8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop. Reviewed-by: ihse
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     1
#
29156
bd932374081c 8072842: Add support for building native JTReg tests
ihse
parents: 29060
diff changeset
     2
# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     4
#
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     7
# published by the Free Software Foundation.  Oracle designates this
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     8
# particular file as subject to the "Classpath" exception as provided
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
     9
# by Oracle in the LICENSE file that accompanied this code.
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    10
#
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    11
# This code is distributed in the hope that it will be useful, but WITHOUT
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    13
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    14
# version 2 for more details (a copy is included in the LICENSE file that
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    15
# accompanied this code).
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    16
#
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    17
# You should have received a copy of the GNU General Public License version
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    18
# 2 along with this work; if not, write to the Free Software Foundation,
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    20
#
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    21
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    22
# or visit www.oracle.com if you need additional information or have any
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    23
# questions.
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    24
#
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    25
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    26
################################################################################
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    27
# This file contains helper functions for Init.gmk.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    28
# It is divided in two parts, depending on if a SPEC is present or not
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    29
# (HAS_SPEC is true or not).
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    30
################################################################################
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    31
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    32
ifndef _INITSUPPORT_GMK
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    33
_INITSUPPORT_GMK := 1
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    34
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    35
# Setup information about available configurations, if any.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    36
build_dir=$(topdir)/build
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    37
all_spec_files=$(wildcard $(build_dir)/*/spec.gmk)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    38
# Extract the configuration names from the path
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    39
all_confs=$(patsubst %/spec.gmk, %, $(patsubst $(build_dir)/%, %, $(all_spec_files)))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    40
any_spec_file=$(firstword $(all_spec_files))
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
    41
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    42
ifeq ($(HAS_SPEC),)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    43
  ##############################################################################
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    44
  # Helper functions for the initial part of Init.gmk, before the spec file is
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    45
  # loaded. Most of these functions provide parsing and setting up make options
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    46
  # from the command-line.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    47
  ##############################################################################
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
    48
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    49
  # Make control variables, handled by Init.gmk
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    50
  INIT_CONTROL_VARIABLES := LOG CONF SPEC JOBS CONF_CHECK
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
    51
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    52
  # All known make control variables
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    53
  MAKE_CONTROL_VARIABLES := $(INIT_CONTROL_VARIABLES) TEST JDK_FILTER
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
    54
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    55
  # Define a simple reverse function.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    56
  # Should maybe move to MakeBase.gmk, but we can't include that file now.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    57
  reverse = \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    58
      $(if $(strip $(1)), $(call reverse, $(wordlist 2, $(words $(1)), $(1)))) \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    59
          $(firstword $(1))
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
    60
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    61
  # The variable MAKEOVERRIDES contains variable assignments from the command
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    62
  # line, but in reverse order to what the user entered.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    63
  COMMAND_LINE_VARIABLES := $(subst \#,\ , $(call reverse, $(subst \ ,\#,$(MAKEOVERRIDES))))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    64
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    65
  # A list like FOO="val1" BAR="val2" containing all user-supplied make variables
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    66
  # that we should propagate.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    67
  USER_MAKE_VARS := $(filter-out $(addsuffix =%, $(INIT_CONTROL_VARIABLES)), \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    68
      $(MAKEOVERRIDES))
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
    69
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    70
  # Check for unknown command-line variables
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    71
  define CheckControlVariables
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    72
    command_line_variables := $$(strip $$(foreach var, \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    73
        $$(subst \ ,_,$$(MAKEOVERRIDES)), \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    74
        $$(firstword $$(subst =, , $$(var)))))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    75
    unknown_command_line_variables := $$(strip $$(filter-out $$(MAKE_CONTROL_VARIABLES), $$(command_line_variables)))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    76
    ifneq ($$(unknown_command_line_variables), )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    77
      $$(info Note: Command line contains non-control variables:)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    78
      $$(foreach var, $$(unknown_command_line_variables), $$(info * $$(var)=$$($$(var))))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    79
      $$(info Make sure it is not mistyped, and that you intend to override this variable.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    80
      $$(info 'make help' will list known control variables.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    81
      $$(info )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    82
    endif
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    83
  endef
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
    84
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    85
  # Check for deprecated ALT_ variables
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    86
  define CheckDeprecatedEnvironment
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    87
    defined_alt_variables := $$(filter ALT_%, $$(.VARIABLES))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    88
    ifneq ($$(defined_alt_variables), )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    89
      $$(info Warning: You have the following ALT_ variables set:)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    90
      $$(foreach var, $$(defined_alt_variables), $$(info * $$(var)=$$($$(var))))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    91
      $$(info ALT_ variables are deprecated, and may result in a failed build.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    92
      $$(info Please clean your environment.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    93
      $$(info )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    94
    endif
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    95
  endef
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
    96
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    97
  # Check for invalid make flags like -j
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    98
  define CheckInvalidMakeFlags
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
    99
    # This is a trick to get this rule to execute before any other rules
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   100
    # MAKEFLAGS only indicate -j if read in a recipe (!)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   101
    $$(topdir)/make/Init.gmk: .FORCE
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   102
	$$(if $$(findstring --jobserver, $$(MAKEFLAGS)), \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   103
	    $$(info Error: 'make -jN' is not supported, use 'make JOBS=N') \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   104
	    $$(error Cannot continue) \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   105
	)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   106
    .FORCE:
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   107
    .PHONY: .FORCE
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   108
  endef
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
   109
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   110
  # Check that the CONF_CHECK option is valid and set up handling
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   111
  define ParseConfCheckOption
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   112
    ifeq ($$(CONF_CHECK), )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   113
      # Default behavior is fail
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   114
      CONF_CHECK := fail
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   115
    else ifneq ($$(filter-out auto fail ignore, $$(CONF_CHECK)),)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   116
      $$(info Error: CONF_CHECK must be one of: auto, fail or ignore.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   117
      $$(error Cannot continue)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   118
    endif
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   119
  endef
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
   120
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   121
  define ParseLogLevel
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   122
    # Catch old-style VERBOSE= command lines.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   123
    ifneq ($$(origin VERBOSE), undefined)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   124
      $$(info Error: VERBOSE is deprecated. Use LOG=<warn|info|debug|trace> instead.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   125
      $$(error Cannot continue)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   126
    endif
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
   127
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   128
    # Setup logging according to LOG
14379
b449aa34783e 8003274: build-infra: Makefile changes needed for sjavac
tbell
parents: 14111
diff changeset
   129
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   130
    # If the "nofile" argument is given, act on it and strip it away
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   131
    ifneq ($$(findstring nofile, $$(LOG)),)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   132
      LOG_NOFILE := true
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   133
      # COMMA is defined in spec.gmk, but that is not included yet
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   134
      COMMA := ,
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   135
      # First try to remove ",nofile" if it exists, otherwise just remove "nofile"
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   136
      LOG_STRIPPED := $$(subst nofile,, $$(subst $$(COMMA)nofile,, $$(LOG)))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   137
      # We might have ended up with a leading comma. Remove it
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   138
      LOG_LEVEL := $$(strip $$(patsubst $$(COMMA)%, %, $$(LOG_STRIPPED)))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   139
    else
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   140
      LOG_LEVEL := $$(LOG)
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   141
    endif
13697
5262b00bc10c 7197849: Update new build-infra makefiles
ohair
parents: 13133
diff changeset
   142
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   143
    ifeq ($$(LOG_LEVEL),)
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   144
      # Set LOG to "warn" as default if not set
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   145
      LOG_LEVEL := warn
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   146
    endif
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   147
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   148
    ifeq ($$(LOG_LEVEL), warn)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   149
      MAKE_LOG_FLAGS := -s
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   150
    else ifeq ($$(LOG_LEVEL), info)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   151
      MAKE_LOG_FLAGS := -s
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   152
    else ifeq ($$(LOG_LEVEL), debug)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   153
      MAKE_LOG_FLAGS :=
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   154
    else ifeq ($$(LOG_LEVEL), trace)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   155
      MAKE_LOG_FLAGS := -d
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
   156
    else
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   157
      $$(info Error: LOG must be one of: warn, info, debug or trace.)
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   158
      $$(error Cannot continue)
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
   159
    endif
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   160
  endef
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
   161
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   162
  define ParseConfAndSpec
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   163
    ifneq ($$(origin SPEC), undefined)
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   164
      # We have been given a SPEC, check that it works out properly
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   165
      ifneq ($$(origin CONF), undefined)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   166
        # We also have a CONF argument. We can't have both.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   167
        $$(info Error: Cannot use CONF=$$(CONF) and SPEC=$$(SPEC) at the same time. Choose one.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   168
        $$(error Cannot continue)
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   169
      endif
27595
cff167b3bfa2 8065914: Various improvements and cleanup of build system
ihse
parents: 27000
diff changeset
   170
      ifeq ($$(wildcard $$(SPEC)),)
cff167b3bfa2 8065914: Various improvements and cleanup of build system
ihse
parents: 27000
diff changeset
   171
        $$(info Error: Cannot locate spec.gmk, given by SPEC=$$(SPEC).)
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   172
        $$(error Cannot continue)
27595
cff167b3bfa2 8065914: Various improvements and cleanup of build system
ihse
parents: 27000
diff changeset
   173
      endif
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   174
      ifeq ($$(filter /%, $$(SPEC)),)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   175
        # If given with relative path, make it absolute
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   176
        SPECS := $$(CURDIR)/$$(strip $$(SPEC))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   177
      else
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   178
        SPECS := $$(SPEC)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   179
      endif
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   180
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   181
      # For now, unset this SPEC variable.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   182
      override SPEC :=
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   183
    else
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   184
      # Use spec.gmk files in the build output directory
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   185
      ifeq ($$(any_spec_file),)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   186
        $$(info Error: No configurations found for $$(topdir).)
27595
cff167b3bfa2 8065914: Various improvements and cleanup of build system
ihse
parents: 27000
diff changeset
   187
        $$(info Please run 'bash configure' to create a configuration.)
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   188
        $$(info )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   189
        $$(error Cannot continue)
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   190
      endif
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
   191
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   192
      ifneq ($$(origin CONF), undefined)
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   193
        # User have given a CONF= argument.
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   194
        ifeq ($$(CONF),)
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   195
          # If given CONF=, match all configurations
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   196
          matching_confs := $$(strip $$(all_confs))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   197
        else
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   198
          # Otherwise select those that contain the given CONF string
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   199
          matching_confs := $$(strip $$(foreach var, $$(all_confs), $$(if $$(findstring $$(CONF), $$(var)), $$(var))))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   200
        endif
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   201
        ifeq ($$(matching_confs),)
27595
cff167b3bfa2 8065914: Various improvements and cleanup of build system
ihse
parents: 27000
diff changeset
   202
          $$(info Error: No configurations found matching CONF=$$(CONF).)
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   203
          $$(info Available configurations in $$(build_dir):)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   204
          $$(foreach var, $$(all_confs), $$(info * $$(var)))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   205
          $$(error Cannot continue)
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   206
        else
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   207
          ifeq ($$(words $$(matching_confs)), 1)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   208
            $$(info Building configuration '$$(matching_confs)' (matching CONF=$$(CONF)))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   209
          else
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   210
            $$(info Building these configurations (matching CONF=$$(CONF)):)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   211
            $$(foreach var, $$(matching_confs), $$(info * $$(var)))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   212
          endif
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   213
        endif
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
   214
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   215
        # Create a SPEC definition. This will contain the path to one or more spec.gmk files.
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   216
        SPECS := $$(addsuffix /spec.gmk, $$(addprefix $$(build_dir)/, $$(matching_confs)))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   217
      else
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   218
        # No CONF or SPEC given, check the available configurations
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   219
        ifneq ($$(words $$(all_spec_files)), 1)
27595
cff167b3bfa2 8065914: Various improvements and cleanup of build system
ihse
parents: 27000
diff changeset
   220
          $$(info Error: No CONF given, but more than one configuration found.)
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   221
          $$(info Available configurations in $$(build_dir):)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   222
          $$(foreach var, $$(all_confs), $$(info * $$(var)))
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   223
          $$(info Please retry building with CONF=<config pattern> (or SPEC=<spec file>).)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   224
          $$(info )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   225
          $$(error Cannot continue)
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   226
        endif
14111
2a82ecb35fc7 8000992: Update new build-infra makefiles
ohair
parents: 13697
diff changeset
   227
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   228
        # We found exactly one configuration, use it
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   229
        SPECS := $$(strip $$(all_spec_files))
20363
fa7663fc5d50 8001931: The new build system whitespace cleanup
ihse
parents: 16583
diff changeset
   230
      endif
13133
701e61c32ece 7182051: Update of latest build-infra Makefiles (missing files)
erikj
parents:
diff changeset
   231
    endif
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   232
  endef
29156
bd932374081c 8072842: Add support for building native JTReg tests
ihse
parents: 29060
diff changeset
   233
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   234
  define PrintConfCheckFailed
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   235
	@echo ' '
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   236
	@echo "Please rerun configure! Easiest way to do this is by running"
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   237
	@echo "'make reconfigure'."
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   238
	@echo "This behavior may also be changed using CONF_CHECK=<ignore|auto>."
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   239
	@echo ' '
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   240
  endef
13697
5262b00bc10c 7197849: Update new build-infra makefiles
ohair
parents: 13133
diff changeset
   241
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   242
else # $(HAS_SPEC)=true
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   243
  ##############################################################################
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   244
  # Helper functions for the 'main' target. These functions assume a single,
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   245
  # proper and existing SPEC is provided, and will load it.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   246
  ##############################################################################
29156
bd932374081c 8072842: Add support for building native JTReg tests
ihse
parents: 29060
diff changeset
   247
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   248
  include $(SPEC)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   249
  include $(SRC_ROOT)/make/common/MakeBase.gmk
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   250
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   251
  # Define basic logging setup
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   252
  BUILD_LOG := $(OUTPUT_ROOT)/build.log
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   253
  BUILD_TRACE_LOG := $(OUTPUT_ROOT)/build-trace-time.log
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   254
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   255
  BUILD_LOG_WRAPPER := $(BASH) $(SRC_ROOT)/common/bin/logger.sh $(BUILD_LOG)
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   256
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   257
  # Disable the build log wrapper on sjavac+windows until
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   258
  # we have solved how to prevent the log wrapper to wait
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   259
  # for the background sjavac server process.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   260
  ifeq ($(ENABLE_SJAVAC)X$(OPENJDK_BUILD_OS),yesXwindows)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   261
    LOG_NOFILE := true
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   262
  endif
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   263
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   264
  # Sanity check the spec file, so it matches this source code
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   265
  define CheckSpecSanity
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   266
    ifneq ($$(topdir), $$(TOPDIR))
29663
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   267
      ifneq ($$(topdir), $$(ORIGINAL_TOPDIR))
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   268
        ifneq ($$(topdir), $$(CANONICAL_TOPDIR))
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   269
          $$(info Error: SPEC mismatch! Current working directory)
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   270
          $$(info $$(topdir))
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   271
          $$(info does not match either TOPDIR, ORIGINAL_TOPDIR or CANONICAL_TOPDIR)
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   272
          $$(info $$(TOPDIR))
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   273
          $$(info $$(ORIGINAL_TOPDIR))
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   274
          $$(info $$(CANONICAL_TOPDIR))
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   275
          $$(error Cannot continue)
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   276
        endif
74ff65003536 8076123: 9-dev build fail: make/Init.gmk:142: *** multiple target patterns. Stop.
erikj
parents: 29662
diff changeset
   277
      endif
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   278
    endif
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   279
  endef
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   280
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   281
  define RotateLogFiles
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   282
	$(RM) $(BUILD_LOG).old 2> /dev/null
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   283
	$(MV) $(BUILD_LOG) $(BUILD_LOG).old 2> /dev/null || true
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   284
	$(if $(findstring trace, $(LOG_LEVEL)), \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   285
	  $(RM) $(BUILD_TRACE_LOG).old 2> /dev/null && \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   286
	  $(MV) $(BUILD_TRACE_LOG) $(BUILD_TRACE_LOG).old 2> /dev/null || true \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   287
	)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   288
  endef
26116
f051bd253364 8055095: Improve "do nothing" incremental build performance after modularized source code integration
erikj
parents: 25854
diff changeset
   289
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   290
  # Remove any javac server logs and port files. This
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   291
  # prevents a new make run to reuse the previous servers.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   292
  define PrepareSmartJavac
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   293
	$(if $(SJAVAC_SERVER_DIR), \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   294
	  $(RM) -r $(SJAVAC_SERVER_DIR) 2> /dev/null && \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   295
	  $(MKDIR) -p $(SJAVAC_SERVER_DIR) \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   296
	)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   297
  endef
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   298
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   299
  define CleanupSmartJavac
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   300
	[ -f $(SJAVAC_SERVER_DIR)/server.port ] && $(ECHO) Stopping sjavac server && \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   301
	    $(TOUCH) $(SJAVAC_SERVER_DIR)/server.port.stop; true
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   302
  endef
26116
f051bd253364 8055095: Improve "do nothing" incremental build performance after modularized source code integration
erikj
parents: 25854
diff changeset
   303
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   304
  define StartGlobalTimer
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   305
	$(RM) -r $(BUILDTIMESDIR) 2> /dev/null
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   306
	$(MKDIR) -p $(BUILDTIMESDIR)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   307
	$(call RecordStartTime,TOTAL)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   308
  endef
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   309
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   310
  define StopGlobalTimer
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   311
	$(call RecordEndTime,TOTAL)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   312
  endef
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   313
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   314
  # Find all build_time_* files and print their contents in a list sorted
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   315
  # on the name of the sub repository.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   316
  define ReportBuildTimes
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   317
	$(BUILD_LOG_WRAPPER) $(PRINTF) $(LOG_INFO) -- \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   318
	    "----- Build times -------\nStart %s\nEnd   %s\n%s\n%s\n-------------------------\n" \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   319
	    "`$(CAT) $(BUILDTIMESDIR)/build_time_start_TOTAL_human_readable`" \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   320
	    "`$(CAT) $(BUILDTIMESDIR)/build_time_end_TOTAL_human_readable`" \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   321
	    "`$(LS) $(BUILDTIMESDIR)/build_time_diff_* | $(GREP) -v _TOTAL | \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   322
	    $(XARGS) $(CAT) | $(SORT) -k 2`" \
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   323
	    "`$(CAT) $(BUILDTIMESDIR)/build_time_diff_TOTAL`"
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   324
  endef
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   325
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   326
endif # HAS_SPEC
27560
adc258b13e2c 8049367: Modular Run-Time Images
chegar
parents: 27000
diff changeset
   327
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 29156
diff changeset
   328
endif # _INITSUPPORT_GMK