hotspot/make/linux/Makefile
author collins
Fri, 12 Oct 2012 11:31:27 -0700
changeset 13978 50ecf9f35089
parent 13975 2f7431485cfa
child 14815 41114a74463a
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     1
#
12501
ea7feae692ae 7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents: 10559
diff changeset
     2
# Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     4
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
489c9b5090e2 Initial load
duke
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
489c9b5090e2 Initial load
duke
parents:
diff changeset
     7
# published by the Free Software Foundation.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     8
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
     9
# This code is distributed in the hope that it will be useful, but WITHOUT
489c9b5090e2 Initial load
duke
parents:
diff changeset
    10
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    11
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
489c9b5090e2 Initial load
duke
parents:
diff changeset
    12
# version 2 for more details (a copy is included in the LICENSE file that
489c9b5090e2 Initial load
duke
parents:
diff changeset
    13
# accompanied this code).
489c9b5090e2 Initial load
duke
parents:
diff changeset
    14
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    15
# You should have received a copy of the GNU General Public License version
489c9b5090e2 Initial load
duke
parents:
diff changeset
    16
# 2 along with this work; if not, write to the Free Software Foundation,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    17
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    18
#
5547
f4b087cbb361 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 4013
diff changeset
    19
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
f4b087cbb361 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 4013
diff changeset
    20
# or visit www.oracle.com if you need additional information or have any
f4b087cbb361 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 4013
diff changeset
    21
# questions.
6453
970dc585ab63 6953144: Tiered compilation
iveresov
parents: 6187
diff changeset
    22
#
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    23
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    24
489c9b5090e2 Initial load
duke
parents:
diff changeset
    25
# This makefile creates a build tree and lights off a build.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    26
# You can go back into the build tree and perform rebuilds or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    27
# incremental builds as desired. Be sure to reestablish
489c9b5090e2 Initial load
duke
parents:
diff changeset
    28
# environment variable settings for LD_LIBRARY_PATH and JAVA_HOME.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    29
489c9b5090e2 Initial load
duke
parents:
diff changeset
    30
# The make process now relies on java and javac. These can be
489c9b5090e2 Initial load
duke
parents:
diff changeset
    31
# specified either implicitly on the PATH, by setting the
489c9b5090e2 Initial load
duke
parents:
diff changeset
    32
# (JDK-inherited) ALT_BOOTDIR environment variable to full path to a
489c9b5090e2 Initial load
duke
parents:
diff changeset
    33
# JDK in which bin/java and bin/javac are present and working (e.g.,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    34
# /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    35
# default BOOTDIR path value. Note that one of ALT_BOOTDIR
489c9b5090e2 Initial load
duke
parents:
diff changeset
    36
# or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    37
# from the PATH.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    38
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    39
# One can set ALT_BOOTDIR or BOOTDIR to point to a jdk that runs on
489c9b5090e2 Initial load
duke
parents:
diff changeset
    40
# an architecture that differs from the target architecture, as long
489c9b5090e2 Initial load
duke
parents:
diff changeset
    41
# as the bootstrap jdk runs under the same flavor of OS as the target
489c9b5090e2 Initial load
duke
parents:
diff changeset
    42
# (i.e., if the target is linux, point to a jdk that runs on a linux
489c9b5090e2 Initial load
duke
parents:
diff changeset
    43
# box).  In order to use such a bootstrap jdk, set the make variable
489c9b5090e2 Initial load
duke
parents:
diff changeset
    44
# REMOTE to the desired remote command mechanism, e.g.,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    45
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    46
#    make REMOTE="rsh -l me myotherlinuxbox"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    47
6453
970dc585ab63 6953144: Tiered compilation
iveresov
parents: 6187
diff changeset
    48
# Along with VM, Serviceability Agent (SA) is built for SA/JDI binding.
970dc585ab63 6953144: Tiered compilation
iveresov
parents: 6187
diff changeset
    49
# JDI binding on SA produces two binaries:
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    50
#  1. sa-jdi.jar       - This is build before building libjvm[_g].so
489c9b5090e2 Initial load
duke
parents:
diff changeset
    51
#                        Please refer to ./makefiles/sa.make
489c9b5090e2 Initial load
duke
parents:
diff changeset
    52
#  2. libsa[_g].so     - Native library for SA - This is built after
489c9b5090e2 Initial load
duke
parents:
diff changeset
    53
#                        libjsig[_g].so (signal interposition library)
6453
970dc585ab63 6953144: Tiered compilation
iveresov
parents: 6187
diff changeset
    54
#                        Please refer to ./makefiles/vm.make
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    55
# If $(GAMMADIR)/agent dir is not present, SA components are not built.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    56
489c9b5090e2 Initial load
duke
parents:
diff changeset
    57
ifeq ($(GAMMADIR),)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    58
include ../../make/defs.make
489c9b5090e2 Initial load
duke
parents:
diff changeset
    59
else
489c9b5090e2 Initial load
duke
parents:
diff changeset
    60
include $(GAMMADIR)/make/defs.make
489c9b5090e2 Initial load
duke
parents:
diff changeset
    61
endif
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 223
diff changeset
    62
include $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    63
489c9b5090e2 Initial load
duke
parents:
diff changeset
    64
ifndef CC_INTERP
7119
fda8c40f4729 6997456: Not possible to build just compiler2
iveresov
parents: 6453
diff changeset
    65
  ifndef FORCE_TIERED
fda8c40f4729 6997456: Not possible to build just compiler2
iveresov
parents: 6453
diff changeset
    66
    FORCE_TIERED=1
fda8c40f4729 6997456: Not possible to build just compiler2
iveresov
parents: 6453
diff changeset
    67
  endif
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    68
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
    69
489c9b5090e2 Initial load
duke
parents:
diff changeset
    70
ifdef LP64
489c9b5090e2 Initial load
duke
parents:
diff changeset
    71
  ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
489c9b5090e2 Initial load
duke
parents:
diff changeset
    72
    _JUNK_ := $(shell echo >&2 \
489c9b5090e2 Initial load
duke
parents:
diff changeset
    73
       $(OSNAME) $(ARCH) "*** ERROR: this platform does not support 64-bit compilers!")
489c9b5090e2 Initial load
duke
parents:
diff changeset
    74
	@exit 1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    75
  endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
    76
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
    77
489c9b5090e2 Initial load
duke
parents:
diff changeset
    78
# we need to set up LP64 correctly to satisfy sanity checks in adlc
489c9b5090e2 Initial load
duke
parents:
diff changeset
    79
ifneq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
489c9b5090e2 Initial load
duke
parents:
diff changeset
    80
  MFLAGS += " LP64=1 "
489c9b5090e2 Initial load
duke
parents:
diff changeset
    81
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
    82
223
5c3b023117d9 6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents: 1
diff changeset
    83
# pass USE_SUNCC further, through MFLAGS
5c3b023117d9 6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents: 1
diff changeset
    84
ifdef USE_SUNCC
5c3b023117d9 6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents: 1
diff changeset
    85
  MFLAGS += " USE_SUNCC=1 "
5c3b023117d9 6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents: 1
diff changeset
    86
endif
5c3b023117d9 6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers
dcubed
parents: 1
diff changeset
    87
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    88
# The following renders pathnames in generated Makefiles valid on
489c9b5090e2 Initial load
duke
parents:
diff changeset
    89
# machines other than the machine containing the build tree.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    90
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    91
# For example, let's say my build tree lives on /files12 on
489c9b5090e2 Initial load
duke
parents:
diff changeset
    92
# exact.east.sun.com.  This logic will cause GAMMADIR to begin with
489c9b5090e2 Initial load
duke
parents:
diff changeset
    93
# /net/exact/files12/...
489c9b5090e2 Initial load
duke
parents:
diff changeset
    94
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    95
# We only do this on SunOS variants, for a couple of reasons:
489c9b5090e2 Initial load
duke
parents:
diff changeset
    96
#  * It is extremely rare that source trees exist on other systems
489c9b5090e2 Initial load
duke
parents:
diff changeset
    97
#  * It has been claimed that the Linux automounter is flakey, so
489c9b5090e2 Initial load
duke
parents:
diff changeset
    98
#    changing GAMMADIR in a way that exercises the automounter could
489c9b5090e2 Initial load
duke
parents:
diff changeset
    99
#    prove to be a source of unreliability in the build process.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   100
# Obviously, this Makefile is only relevant on SunOS boxes to begin
489c9b5090e2 Initial load
duke
parents:
diff changeset
   101
# with, but the SunOS conditionalization will make it easier to
489c9b5090e2 Initial load
duke
parents:
diff changeset
   102
# combine Makefiles in the future (assuming we ever do that).
489c9b5090e2 Initial load
duke
parents:
diff changeset
   103
489c9b5090e2 Initial load
duke
parents:
diff changeset
   104
ifeq ($(OSNAME),solaris)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   105
489c9b5090e2 Initial load
duke
parents:
diff changeset
   106
  #   prepend current directory to relative pathnames.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   107
  NEW_GAMMADIR :=                                    \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   108
    $(shell echo $(GAMMADIR) |                       \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   109
      sed -e "s=^\([^/].*\)=$(shell pwd)/\1="        \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   110
     )
489c9b5090e2 Initial load
duke
parents:
diff changeset
   111
  unexport NEW_GAMMADIR
489c9b5090e2 Initial load
duke
parents:
diff changeset
   112
489c9b5090e2 Initial load
duke
parents:
diff changeset
   113
  # If NEW_GAMMADIR doesn't already start with "/net/":
489c9b5090e2 Initial load
duke
parents:
diff changeset
   114
  ifeq ($(strip $(filter /net/%,$(NEW_GAMMADIR))),)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   115
    #   prepend /net/$(HOST)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   116
    #   remove /net/$(HOST) if name already began with /home/
489c9b5090e2 Initial load
duke
parents:
diff changeset
   117
    #   remove /net/$(HOST) if name already began with /java/
489c9b5090e2 Initial load
duke
parents:
diff changeset
   118
    #   remove /net/$(HOST) if name already began with /lab/
489c9b5090e2 Initial load
duke
parents:
diff changeset
   119
    NEW_GAMMADIR :=                                     \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   120
         $(shell echo $(NEW_GAMMADIR) |                 \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   121
                 sed -e "s=^\(.*\)=/net/$(HOST)\1="     \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   122
                     -e "s=^/net/$(HOST)/home/=/home/=" \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   123
                     -e "s=^/net/$(HOST)/java/=/java/=" \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   124
                     -e "s=^/net/$(HOST)/lab/=/lab/="   \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   125
          )
489c9b5090e2 Initial load
duke
parents:
diff changeset
   126
    # Don't use the new value for GAMMADIR unless a file with the new
489c9b5090e2 Initial load
duke
parents:
diff changeset
   127
    # name actually exists.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   128
    ifneq ($(wildcard $(NEW_GAMMADIR)),)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   129
      GAMMADIR := $(NEW_GAMMADIR)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   130
    endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   131
  endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   132
489c9b5090e2 Initial load
duke
parents:
diff changeset
   133
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   134
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   135
# BUILDARCH is set to "zero" for Zero builds.  VARIANTARCH
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   136
# is used to give the build directories meaningful names.
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   137
VARIANTARCH = $(subst i386,i486,$(ZERO_LIBARCH))
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   138
489c9b5090e2 Initial load
duke
parents:
diff changeset
   139
# There is a (semi-) regular correspondence between make targets and actions:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   140
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
   141
#       Target          Tree Type       Build Dir
489c9b5090e2 Initial load
duke
parents:
diff changeset
   142
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
   143
#       debug           compiler2       <os>_<arch>_compiler2/debug
489c9b5090e2 Initial load
duke
parents:
diff changeset
   144
#       fastdebug       compiler2       <os>_<arch>_compiler2/fastdebug
489c9b5090e2 Initial load
duke
parents:
diff changeset
   145
#       jvmg            compiler2       <os>_<arch>_compiler2/jvmg
489c9b5090e2 Initial load
duke
parents:
diff changeset
   146
#       optimized       compiler2       <os>_<arch>_compiler2/optimized
489c9b5090e2 Initial load
duke
parents:
diff changeset
   147
#       profiled        compiler2       <os>_<arch>_compiler2/profiled
489c9b5090e2 Initial load
duke
parents:
diff changeset
   148
#       product         compiler2       <os>_<arch>_compiler2/product
489c9b5090e2 Initial load
duke
parents:
diff changeset
   149
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
   150
#       debug1          compiler1       <os>_<arch>_compiler1/debug
489c9b5090e2 Initial load
duke
parents:
diff changeset
   151
#       fastdebug1      compiler1       <os>_<arch>_compiler1/fastdebug
489c9b5090e2 Initial load
duke
parents:
diff changeset
   152
#       jvmg1           compiler1       <os>_<arch>_compiler1/jvmg
489c9b5090e2 Initial load
duke
parents:
diff changeset
   153
#       optimized1      compiler1       <os>_<arch>_compiler1/optimized
489c9b5090e2 Initial load
duke
parents:
diff changeset
   154
#       profiled1       compiler1       <os>_<arch>_compiler1/profiled
489c9b5090e2 Initial load
duke
parents:
diff changeset
   155
#       product1        compiler1       <os>_<arch>_compiler1/product
489c9b5090e2 Initial load
duke
parents:
diff changeset
   156
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
   157
#       debugcore       core            <os>_<arch>_core/debug
489c9b5090e2 Initial load
duke
parents:
diff changeset
   158
#       fastdebugcore   core            <os>_<arch>_core/fastdebug
489c9b5090e2 Initial load
duke
parents:
diff changeset
   159
#       jvmgcore        core            <os>_<arch>_core/jvmg
489c9b5090e2 Initial load
duke
parents:
diff changeset
   160
#       optimizedcore   core            <os>_<arch>_core/optimized
489c9b5090e2 Initial load
duke
parents:
diff changeset
   161
#       profiledcore    core            <os>_<arch>_core/profiled
489c9b5090e2 Initial load
duke
parents:
diff changeset
   162
#       productcore     core            <os>_<arch>_core/product
489c9b5090e2 Initial load
duke
parents:
diff changeset
   163
#
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   164
#       debugzero       zero            <os>_<arch>_zero/debug
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   165
#       fastdebugzero   zero            <os>_<arch>_zero/fastdebug
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   166
#       jvmgzero        zero            <os>_<arch>_zero/jvmg
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   167
#       optimizedzero   zero            <os>_<arch>_zero/optimized
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   168
#       profiledzero    zero            <os>_<arch>_zero/profiled
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   169
#       productzero     zero            <os>_<arch>_zero/product
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   170
#
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   171
#       debugshark      shark           <os>_<arch>_shark/debug
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   172
#       fastdebugshark  shark           <os>_<arch>_shark/fastdebug
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   173
#       jvmgshark       shark           <os>_<arch>_shark/jvmg
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   174
#       optimizedshark  shark           <os>_<arch>_shark/optimized
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   175
#       profiledshark   shark           <os>_<arch>_shark/profiled
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   176
#       productshark    shark           <os>_<arch>_shark/product
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   177
#
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   178
#       fastdebugminimal1 minimal1      <os>_<arch>_minimal1/fastdebug
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   179
#       jvmgminimal1      minimal1      <os>_<arch>_minimal1/jvmg
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   180
#       productminimal1   minimal1      <os>_<arch>_minimal1/product
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   181
#
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   182
# What you get with each target:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   183
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
   184
# debug*     - "thin" libjvm_g - debug info linked into the gamma_g launcher
489c9b5090e2 Initial load
duke
parents:
diff changeset
   185
# fastdebug* - optimized compile, but with asserts enabled
489c9b5090e2 Initial load
duke
parents:
diff changeset
   186
# jvmg*      - "fat" libjvm_g - debug info linked into libjvm_g.so
489c9b5090e2 Initial load
duke
parents:
diff changeset
   187
# optimized* - optimized compile, no asserts
489c9b5090e2 Initial load
duke
parents:
diff changeset
   188
# profiled*  - gprof
489c9b5090e2 Initial load
duke
parents:
diff changeset
   189
# product*   - the shippable thing:  optimized compile, no asserts, -DPRODUCT
489c9b5090e2 Initial load
duke
parents:
diff changeset
   190
489c9b5090e2 Initial load
duke
parents:
diff changeset
   191
# This target list needs to be coordinated with the usage message
489c9b5090e2 Initial load
duke
parents:
diff changeset
   192
# in the build.sh script:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   193
TARGETS           = debug jvmg fastdebug optimized profiled product
489c9b5090e2 Initial load
duke
parents:
diff changeset
   194
12156
fb31de03f649 7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents: 10559
diff changeset
   195
ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   196
  SUBDIR_DOCS     = $(OSNAME)_$(VARIANTARCH)_docs
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   197
else
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   198
  SUBDIR_DOCS     = $(OSNAME)_$(BUILDARCH)_docs
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   199
endif
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   200
SUBDIRS_C1        = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS))
489c9b5090e2 Initial load
duke
parents:
diff changeset
   201
SUBDIRS_C2        = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS))
489c9b5090e2 Initial load
duke
parents:
diff changeset
   202
SUBDIRS_TIERED    = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS))
489c9b5090e2 Initial load
duke
parents:
diff changeset
   203
SUBDIRS_CORE      = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS))
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   204
SUBDIRS_ZERO      = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS))
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   205
SUBDIRS_SHARK     = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS))
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   206
SUBDIRS_MINIMAL1  = $(addprefix $(OSNAME)_$(BUILDARCH)_minimal1/,$(TARGETS))
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   207
489c9b5090e2 Initial load
duke
parents:
diff changeset
   208
TARGETS_C2        = $(TARGETS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   209
TARGETS_C1        = $(addsuffix 1,$(TARGETS))
489c9b5090e2 Initial load
duke
parents:
diff changeset
   210
TARGETS_TIERED    = $(addsuffix tiered,$(TARGETS))
489c9b5090e2 Initial load
duke
parents:
diff changeset
   211
TARGETS_CORE      = $(addsuffix core,$(TARGETS))
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   212
TARGETS_ZERO      = $(addsuffix zero,$(TARGETS))
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   213
TARGETS_SHARK     = $(addsuffix shark,$(TARGETS))
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   214
TARGETS_MINIMAL1 =  $(addsuffix minimal1,$(TARGETS))
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   215
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 223
diff changeset
   216
BUILDTREE_MAKE    = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
8107
78e5bd944384 7016023: Enable building ARM and PPC from src/closed repository
bobv
parents: 7119
diff changeset
   217
BUILDTREE_VARS    = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   218
BUILDTREE_VARS   += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
12501
ea7feae692ae 7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents: 10559
diff changeset
   219
BUILDTREE_VARS   += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   220
489c9b5090e2 Initial load
duke
parents:
diff changeset
   221
BUILDTREE         = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   222
489c9b5090e2 Initial load
duke
parents:
diff changeset
   223
#-------------------------------------------------------------------------------
489c9b5090e2 Initial load
duke
parents:
diff changeset
   224
489c9b5090e2 Initial load
duke
parents:
diff changeset
   225
# Could make everything by default, but that would take a while.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   226
all:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   227
	@echo "Try '$(MAKE) <target> ...'  where <target> is one or more of"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   228
	@echo "  $(TARGETS_C2)"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   229
	@echo "  $(TARGETS_C1)"
489c9b5090e2 Initial load
duke
parents:
diff changeset
   230
	@echo "  $(TARGETS_CORE)"
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   231
	@echo "  $(TARGETS_ZERO)"
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   232
	@echo "  $(TARGETS_SHARK)"
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   233
	@echo "  $(TARGETS_MINIMAL1)"
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   234
489c9b5090e2 Initial load
duke
parents:
diff changeset
   235
checks: check_os_version check_j2se_version
489c9b5090e2 Initial load
duke
parents:
diff changeset
   236
489c9b5090e2 Initial load
duke
parents:
diff changeset
   237
# We do not want people accidentally building on old systems (e.g. Linux 2.2.x,
489c9b5090e2 Initial load
duke
parents:
diff changeset
   238
# Solaris 2.5.1, 2.6).
489c9b5090e2 Initial load
duke
parents:
diff changeset
   239
# Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   240
10235
cb2283e51174 7072341: enable hotspot builds on Linux 3.0
andrew
parents: 9340
diff changeset
   241
SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3%
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   242
OS_VERSION := $(shell uname -r)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   243
EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
489c9b5090e2 Initial load
duke
parents:
diff changeset
   244
489c9b5090e2 Initial load
duke
parents:
diff changeset
   245
check_os_version:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   246
ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   247
	$(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1;
489c9b5090e2 Initial load
duke
parents:
diff changeset
   248
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   249
489c9b5090e2 Initial load
duke
parents:
diff changeset
   250
# jvmti.make requires XSLT (J2SE 1.4.x or newer):
489c9b5090e2 Initial load
duke
parents:
diff changeset
   251
XSLT_CHECK	= $(REMOTE) $(RUN.JAVAP) javax.xml.transform.TransformerFactory
489c9b5090e2 Initial load
duke
parents:
diff changeset
   252
# If not found then fail fast.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   253
check_j2se_version:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   254
	$(QUIETLY) $(XSLT_CHECK) > /dev/null 2>&1; \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   255
	if [ $$? -ne 0 ]; then \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   256
	  $(REMOTE) $(RUN.JAVA) -version; \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   257
	  echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   258
	  "to bootstrap this build" 1>&2; \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   259
	  exit 1; \
489c9b5090e2 Initial load
duke
parents:
diff changeset
   260
	fi
489c9b5090e2 Initial load
duke
parents:
diff changeset
   261
489c9b5090e2 Initial load
duke
parents:
diff changeset
   262
$(SUBDIRS_TIERED): $(BUILDTREE_MAKE)
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 223
diff changeset
   263
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   264
	$(BUILDTREE) VARIANT=tiered
489c9b5090e2 Initial load
duke
parents:
diff changeset
   265
489c9b5090e2 Initial load
duke
parents:
diff changeset
   266
$(SUBDIRS_C2): $(BUILDTREE_MAKE)
7119
fda8c40f4729 6997456: Not possible to build just compiler2
iveresov
parents: 6453
diff changeset
   267
ifeq ($(FORCE_TIERED),1)
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 223
diff changeset
   268
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   269
		$(BUILDTREE) VARIANT=tiered FORCE_TIERED=1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   270
else
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 223
diff changeset
   271
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   272
		$(BUILDTREE) VARIANT=compiler2
489c9b5090e2 Initial load
duke
parents:
diff changeset
   273
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   274
489c9b5090e2 Initial load
duke
parents:
diff changeset
   275
$(SUBDIRS_C1): $(BUILDTREE_MAKE)
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 223
diff changeset
   276
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   277
	$(BUILDTREE) VARIANT=compiler1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   278
489c9b5090e2 Initial load
duke
parents:
diff changeset
   279
$(SUBDIRS_CORE): $(BUILDTREE_MAKE)
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 223
diff changeset
   280
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   281
	$(BUILDTREE) VARIANT=core
489c9b5090e2 Initial load
duke
parents:
diff changeset
   282
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   283
$(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   284
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   285
	$(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH)
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   286
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   287
$(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   288
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   289
	$(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH)
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   290
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   291
$(SUBDIRS_MINIMAL1): $(BUILDTREE_MAKE)
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   292
	$(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   293
	$(BUILDTREE) VARIANT=minimal1
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   294
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   295
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   296
platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   297
	$(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   298
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   299
# Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME
489c9b5090e2 Initial load
duke
parents:
diff changeset
   300
489c9b5090e2 Initial load
duke
parents:
diff changeset
   301
$(TARGETS_C2):  $(SUBDIRS_C2)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   302
	cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS)
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   303
ifeq ($(TEST_IN_BUILD),true)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   304
	cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && ./test_gamma
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   305
endif
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   306
ifdef INSTALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
   307
	cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install
489c9b5090e2 Initial load
duke
parents:
diff changeset
   308
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   309
489c9b5090e2 Initial load
duke
parents:
diff changeset
   310
$(TARGETS_TIERED):  $(SUBDIRS_TIERED)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   311
	cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS)
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   312
ifeq ($(TEST_IN_BUILD),true)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   313
	cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && ./test_gamma
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   314
endif
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   315
ifdef INSTALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
   316
	cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install
489c9b5090e2 Initial load
duke
parents:
diff changeset
   317
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   318
489c9b5090e2 Initial load
duke
parents:
diff changeset
   319
$(TARGETS_C1):  $(SUBDIRS_C1)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   320
	cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS)
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   321
ifeq ($(TEST_IN_BUILD),true)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   322
	cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && ./test_gamma
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   323
endif
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   324
ifdef INSTALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
   325
	cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install
489c9b5090e2 Initial load
duke
parents:
diff changeset
   326
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   327
489c9b5090e2 Initial load
duke
parents:
diff changeset
   328
$(TARGETS_CORE):  $(SUBDIRS_CORE)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   329
	cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS)
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   330
ifeq ($(TEST_IN_BUILD),true)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   331
	cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && ./test_gamma
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   332
endif
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   333
ifdef INSTALL
489c9b5090e2 Initial load
duke
parents:
diff changeset
   334
	cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install
489c9b5090e2 Initial load
duke
parents:
diff changeset
   335
endif
489c9b5090e2 Initial load
duke
parents:
diff changeset
   336
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   337
$(TARGETS_ZERO):  $(SUBDIRS_ZERO)
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   338
	cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS)
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   339
ifeq ($(TEST_IN_BUILD),true)
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   340
	cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && ./test_gamma
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   341
endif
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   342
ifdef INSTALL
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   343
	cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   344
endif
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   345
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   346
$(TARGETS_SHARK):  $(SUBDIRS_SHARK)
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   347
	cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS)
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   348
ifeq ($(TEST_IN_BUILD),true)
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   349
	cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && ./test_gamma
13865
f9792c89bd9d 7172012: Make test-in-build an option (Queens)
ihse
parents: 12503
diff changeset
   350
endif
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   351
ifdef INSTALL
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   352
	cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   353
endif
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   354
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   355
$(TARGETS_MINIMAL1):  $(SUBDIRS_MINIMAL1)
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   356
	cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS)
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   357
ifeq ($(TEST_IN_BUILD),true)
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   358
	cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && ./test_gamma
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   359
endif
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   360
ifdef INSTALL
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   361
	cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) install
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   362
endif
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   363
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   364
# Just build the tree, and nothing else:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   365
tree:      $(SUBDIRS_C2)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   366
tree1:     $(SUBDIRS_C1)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   367
treecore:  $(SUBDIRS_CORE)
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   368
treezero:  $(SUBDIRS_ZERO)
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   369
treeshark: $(SUBDIRS_SHARK)
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   370
treeminimal1: $(SUBDIRS_MINIMAL1)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   371
489c9b5090e2 Initial load
duke
parents:
diff changeset
   372
# Doc target.  This is the same for all build options.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   373
#     Hence create a docs directory beside ...$(ARCH)_[...]
12502
a37189400e0d 7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents: 12501
diff changeset
   374
# We specify 'BUILD_FLAVOR=product' so that the proper
a37189400e0d 7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents: 12501
diff changeset
   375
# ENABLE_FULL_DEBUG_SYMBOLS value is used.
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   376
docs: checks
489c9b5090e2 Initial load
duke
parents:
diff changeset
   377
	$(QUIETLY) mkdir -p $(SUBDIR_DOCS)
12502
a37189400e0d 7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents: 12501
diff changeset
   378
	$(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   379
489c9b5090e2 Initial load
duke
parents:
diff changeset
   380
# Synonyms for win32-like targets.
489c9b5090e2 Initial load
duke
parents:
diff changeset
   381
compiler2:  jvmg product
489c9b5090e2 Initial load
duke
parents:
diff changeset
   382
489c9b5090e2 Initial load
duke
parents:
diff changeset
   383
compiler1:  jvmg1 product1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   384
489c9b5090e2 Initial load
duke
parents:
diff changeset
   385
core: jvmgcore productcore
489c9b5090e2 Initial load
duke
parents:
diff changeset
   386
4013
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   387
zero: jvmgzero productzero
b154310845de 6890308: integrate zero assembler hotspot changes
never
parents: 670
diff changeset
   388
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   389
shark: jvmgshark productshark
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   390
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   391
clean_docs:
489c9b5090e2 Initial load
duke
parents:
diff changeset
   392
	rm -rf $(SUBDIR_DOCS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   393
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   394
clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark clean_minimal1:
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   395
	rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@)
489c9b5090e2 Initial load
duke
parents:
diff changeset
   396
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   397
clean:  clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_minimal1 clean_docs
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   398
9340
713176cf2ca5 7037250: cscope.make database generation is silently broken
jcoomes
parents: 8921
diff changeset
   399
include $(GAMMADIR)/make/cscope.make
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   400
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   401
#
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   402
# Include alternate Makefile if it exists.
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   403
#
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   404
-include $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   405
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   406
#-------------------------------------------------------------------------------
489c9b5090e2 Initial load
duke
parents:
diff changeset
   407
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   408
.PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) $(TARGETS_MINIMAL1)
6187
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   409
.PHONY: tree tree1 treecore treezero treeshark
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   410
.PHONY: all compiler1 compiler2 core zero shark
4fa7845f7c14 6976186: integrate Shark HotSpot changes
twisti
parents: 5547
diff changeset
   411
.PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
   412
.PHONY: checks check_os_version check_j2se_version
13975
2f7431485cfa 7189254: Change makefiles for more flexibility to override defaults
jprovino
parents: 13865
diff changeset
   413
.PHONY: $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make