Makefile
author attila
Mon, 19 Oct 2015 08:23:03 +0200
changeset 33330 35531ae624ef
parent 29662 78c47f0002c3
child 41040 7b919a4497ff
permissions -rw-r--r--
8139304: Remove elaborate call site descriptor class hierarchy and factory for them. Remove AutoDiscovery, DefaultPrelinkFilter, and BottomGuardingDynamicLinker as they can be inlined into DynamicLinkerFactory. Remove CallerSensitiveDetector as it can be inlined into AbstractJavaLinker. Make ClassMap non-public. Reviewed-by: hannesw, sundar
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     1
#
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
     2
# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
fd16c54261b3 Initial load
duke
parents:
diff changeset
     4
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
fd16c54261b3 Initial load
duke
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4309
diff changeset
     7
# published by the Free Software Foundation.  Oracle designates this
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     8
# particular file as subject to the "Classpath" exception as provided
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4309
diff changeset
     9
# by Oracle in the LICENSE file that accompanied this code.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    10
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    11
# This code is distributed in the hope that it will be useful, but WITHOUT
fd16c54261b3 Initial load
duke
parents:
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
fd16c54261b3 Initial load
duke
parents:
diff changeset
    13
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
fd16c54261b3 Initial load
duke
parents:
diff changeset
    14
# version 2 for more details (a copy is included in the LICENSE file that
fd16c54261b3 Initial load
duke
parents:
diff changeset
    15
# accompanied this code).
fd16c54261b3 Initial load
duke
parents:
diff changeset
    16
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    17
# You should have received a copy of the GNU General Public License version
fd16c54261b3 Initial load
duke
parents:
diff changeset
    18
# 2 along with this work; if not, write to the Free Software Foundation,
fd16c54261b3 Initial load
duke
parents:
diff changeset
    19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
fd16c54261b3 Initial load
duke
parents:
diff changeset
    20
#
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4309
diff changeset
    21
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4309
diff changeset
    22
# or visit www.oracle.com if you need additional information or have any
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4309
diff changeset
    23
# questions.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    24
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    25
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    26
###
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    27
### This file is just a very small wrapper needed to run the real make/Init.gmk.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    28
### It also performs some sanity checks on make.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    29
###
17
bb9f330cd95a 6649672: Adjustments to OUTPUTDIR default and mkdirs to avoid empty directory clutter
ohair
parents: 16
diff changeset
    30
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    31
# The shell code below will be executed on /usr/ccs/bin/make on Solaris, but not in GNU Make.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    32
# /usr/ccs/bin/make lacks basically every other flow control mechanism.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    33
.TEST_FOR_NON_GNUMAKE:sh=echo You are not using GNU Make/gmake, this is a requirement. Check your path. 1>&2 && exit 1
9618
83db8167c9f6 7043700: Regression for IcedTea builds
ohair
parents: 9309
diff changeset
    34
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    35
# The .FEATURES variable is likely to be unique for GNU Make.
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    36
ifeq ($(.FEATURES), )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    37
  $(info Error: '$(MAKE)' does not seem to be GNU Make, which is a requirement.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    38
  $(info Check your path, or upgrade to GNU Make 3.81 or newer.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    39
  $(error Cannot continue)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    40
endif
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    41
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    42
# Assume we have GNU Make, but check version.
21759
e24e22311718 8027566: Remove the old build system
ihse
parents: 19758
diff changeset
    43
ifeq ($(strip $(foreach v, 3.81% 3.82% 4.%, $(filter $v, $(MAKE_VERSION)))), )
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    44
  $(info Error: This version of GNU Make is too low ($(MAKE_VERSION)).)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    45
  $(info Check your path, or upgrade to GNU Make 3.81 or newer.)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    46
  $(error Cannot continue)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    47
endif
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    48
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    49
# In Cygwin, the MAKE variable gets prepended with the current directory if the
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    50
# make executable is called using a Windows mixed path (c:/cygwin/bin/make.exe).
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    51
ifneq ($(findstring :, $(MAKE)), )
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    52
  MAKE := $(patsubst $(CURDIR)%, %, $(patsubst $(CURDIR)/%, %, $(MAKE)))
874
638ddad10e12 6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build
ohair
parents: 668
diff changeset
    53
endif
638ddad10e12 6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build
ohair
parents: 668
diff changeset
    54
21759
e24e22311718 8027566: Remove the old build system
ihse
parents: 19758
diff changeset
    55
# Locate this Makefile
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    56
ifeq ($(filter /%, $(lastword $(MAKEFILE_LIST))),)
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    57
  makefile_path := $(CURDIR)/$(strip $(lastword $(MAKEFILE_LIST)))
21759
e24e22311718 8027566: Remove the old build system
ihse
parents: 19758
diff changeset
    58
else
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    59
  makefile_path := $(lastword $(MAKEFILE_LIST))
27595
cff167b3bfa2 8065914: Various improvements and cleanup of build system
ihse
parents: 26548
diff changeset
    60
endif
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    61
topdir := $(strip $(patsubst %/, %, $(dir $(makefile_path))))
874
638ddad10e12 6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build
ohair
parents: 668
diff changeset
    62
29662
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    63
# ... and then we can include the real makefile
78c47f0002c3 8076060: Improve make bootstrap process
ihse
parents: 28902
diff changeset
    64
include $(topdir)/make/Init.gmk