jdk/makefiles/Profiles.gmk
author duke
Wed, 05 Jul 2017 18:46:58 +0200
changeset 16416 bcebd3fdefc9
parent 15681 8ca785029fe2
child 16478 52ea0de470fd
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15681
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     1
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     2
# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     4
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     7
# published by the Free Software Foundation.  Oracle designates this
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     8
# particular file as subject to the "Classpath" exception as provided
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
     9
# by Oracle in the LICENSE file that accompanied this code.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    10
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    11
# This code is distributed in the hope that it will be useful, but WITHOUT
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    13
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    14
# version 2 for more details (a copy is included in the LICENSE file that
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    15
# accompanied this code).
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    16
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    17
# You should have received a copy of the GNU General Public License version
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    18
# 2 along with this work; if not, write to the Free Software Foundation,
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    20
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    21
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    22
# or visit www.oracle.com if you need additional information or have any
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    23
# questions.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    24
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    25
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    26
include ProfileNames.gmk
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    27
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    28
# This defines the include lists for each profile, categorized as lib, bin
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    29
# and other. We can use these to define the file lists for each profile
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    30
# directly, rather than constructing a set of files to exclude from the
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    31
# set of all files. But initially we will stick with generating exclude lists
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    32
# as that is how the main build process already works.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    33
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    34
include profile-includes.txt
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    35
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    36
###############################################################################
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    37
# Per profile Jar lists
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    38
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    39
# These are the jar files to be built. In some builds these have to be
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    40
# imported (signed jars) rather than built.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    41
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    42
# The incoming lists, eg PROFILE_1_JRE_JARS_FILES, are the jars to be
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    43
# included in this profile. They have the jar name relative to the lib 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    44
# directory. We have to turn these into targets by adding the 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    45
# $(IMAGES_OUTPUTDIR)/lib prefix
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    46
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    47
# Note that some jars may be optional depending on the type of build (jdk vs.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    48
# openjdk) and the platform.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    49
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    50
# WARNING: incoming lists are currently validated for linux only!
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    51
###############################################################################
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    52
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    53
# These are jar files for which the contents vary depending on the profile
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    54
CUSTOM_JARS := rt.jar resources.jar
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    55
# This is used in Images.gmk
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    56
CUSTOM_PROFILE_JARS := $(addprefix $(IMAGES_OUTPUTDIR)/lib$(PROFILE)/, $(CUSTOM_JARS))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    57
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    58
# These are the common jar files built for and included with this profile
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    59
# Filter out the custom jars and turn them into targets.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    60
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    61
PROFILE_1_JARS :=  \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    62
    $(addprefix $(IMAGES_OUTPUTDIR)/lib/, $(filter-out $(CUSTOM_JARS), $(PROFILE_1_JRE_JAR_FILES)))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    63
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    64
PROFILE_2_JARS := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    65
    $(if $(PROFILE_2_JRE_JAR_FILES), $(addprefix $(IMAGES_OUTPUTDIR)/lib/, $(PROFILE_2_JRE_JAR_FILES))) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    66
    $(PROFILE_1_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    67
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    68
ifneq ($(ENABLE_JFR), true)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    69
  PROFILE_3_JRE_JAR_FILES :=  $(filter-out jfr.jar, $(PROFILE_3_JRE_JAR_FILES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    70
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    71
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    72
PROFILE_3_JARS := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    73
    $(addprefix $(IMAGES_OUTPUTDIR)/lib/, $(PROFILE_3_JRE_JAR_FILES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    74
    $(PROFILE_2_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    75
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    76
ifdef OPENJDK
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    77
  PROFILE_4_JRE_JAR_FILES := $(filter-out alt-rt.jar, $(PROFILE_4_JRE_JAR_FILES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    78
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    79
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    80
PROFILE_4_JARS := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    81
    $(addprefix $(IMAGES_OUTPUTDIR)/lib/, $(PROFILE_4_JRE_JAR_FILES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    82
    $(PROFILE_3_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    83
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    84
# The full set of "jar" files needed for a complete JDK (ct.sym and src.zip
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    85
# are also included.)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    86
# Note we need to add back the regular form of all the custom profile jars e.g.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    87
# rt.jar and resources.jar
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    88
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    89
ALL_JARS := $(PROFILE_4_JARS) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    90
        $(IMAGES_OUTPUTDIR)/lib/rt.jar \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    91
        $(IMAGES_OUTPUTDIR)/lib/resources.jar \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    92
        $(IMAGES_OUTPUTDIR)/lib/jconsole.jar \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    93
        $(IMAGES_OUTPUTDIR)/lib/dt.jar \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    94
        $(IMAGES_OUTPUTDIR)/lib/tools.jar \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    95
        $(IMAGES_OUTPUTDIR)/lib/ct.sym \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    96
        $(IMAGES_OUTPUTDIR)/src.zip \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    97
        $(IMAGES_OUTPUTDIR)/lib/ext/cldrdata.jar \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    98
        $(IMAGES_OUTPUTDIR)/lib/sa-jdi.jar
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
    99
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   100
ifeq ($(OPENJDK_TARGET_OS),solaris)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   101
    ifndef OPENJDK
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   102
        ALL_JARS += $(IMAGES_OUTPUTDIR)/lib/ext/ucrypto.jar
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   103
    endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   104
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   105
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   106
ifeq ($(OPENJDK_TARGET_OS),windows)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   107
    ALL_JARS += $(IMAGES_OUTPUTDIR)/lib/ext/sunmscapi.jar
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   108
endif 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   109
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   110
ifeq ($(OPENJDK_TARGET_OS),macosx)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   111
    ALL_JARS += $(IMAGES_OUTPUTDIR)/lib/JObjC.jar
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   112
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   113
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   114
ifeq ($(PROFILE), profile_1)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   115
    PROFILE_JARS := $(PROFILE_1_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   116
else ifeq ($(PROFILE), profile_2)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   117
    PROFILE_JARS := $(PROFILE_2_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   118
else ifeq ($(PROFILE), profile_3)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   119
    PROFILE_JARS := $(PROFILE_3_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   120
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   121
ifneq ($(PROFILE),)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   122
    JARS := $(CUSTOM_PROFILE_JARS) $(PROFILE_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   123
else
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   124
    JARS := $(ALL_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   125
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   126
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   127
###############################################################################
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   128
# JRE contents
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   129
###############################################################################
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   130
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   131
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   132
# we don't need to do anything if not building a profile
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   133
ifneq ($(PROFILE),)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   134
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   135
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   136
# Need all files to generate the exclude lists
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   137
NEW_ALL_BIN_LIST := $(patsubst $(JDK_OUTPUTDIR)/bin/%,%,$(shell $(FIND) $(JDK_OUTPUTDIR)/bin \( -type f -o -type l \) ! -name "sjavac"))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   138
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   139
ALL_JRE_BIN_FILES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   140
   $(PROFILE_1_JRE_BIN_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   141
   $(PROFILE_2_JRE_BIN_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   142
   $(PROFILE_3_JRE_BIN_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   143
   $(PROFILE_4_JRE_BIN_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   144
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   145
NOT_JRE_BIN_FILES := $(filter-out $(ALL_JRE_BIN_FILES), $(NEW_ALL_BIN_LIST))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   146
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   147
# Additional exclusions for profile JRE
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   148
ifeq ($(PROFILE), profile_1)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   149
    NOT_JRE_BIN_FILES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   150
        $(PROFILE_2_JRE_BIN_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   151
        $(PROFILE_3_JRE_BIN_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   152
        $(PROFILE_4_JRE_BIN_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   153
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   154
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   155
ifeq ($(PROFILE), profile_2)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   156
    NOT_JRE_BIN_FILES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   157
        $(PROFILE_3_JRE_BIN_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   158
        $(PROFILE_4_JRE_BIN_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   159
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   160
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   161
ifeq ($(PROFILE), profile_3)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   162
    NOT_JRE_BIN_FILES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   163
        $(PROFILE_4_JRE_BIN_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   164
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   165
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   166
NOT_JRE_BIN_FILES := $(addprefix $(JDK_OUTPUTDIR)/bin/, $(NOT_JRE_BIN_FILES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   167
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   168
# Need all files to generate the exclude lists
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   169
NEW_ALL_LIB_LIST := $(patsubst $(JDK_OUTPUTDIR)/lib/%,%,$(shell $(FIND) $(JDK_OUTPUTDIR)/lib \( -type f -o -type l \) -a ! \( -name "_the*" -o -name "javac_state " \) ))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   170
NEW_ALL_LIB_LIST += $(patsubst $(IMAGES_OUTPUTDIR)/lib/%,%,$(shell $(FIND) $(IMAGES_OUTPUTDIR)/lib \( -type f -o -type l \) -a ! \( -name "_the*" -o -name "javac_state " \) ))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   171
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   172
ALL_JRE_LIB_FILES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   173
   $(PROFILE_1_JRE_LIB_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   174
   $(PROFILE_2_JRE_LIB_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   175
   $(PROFILE_3_JRE_LIB_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   176
   $(PROFILE_4_JRE_LIB_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   177
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   178
NOT_JRE_LIB_FILES := $(filter-out $(ALL_JRE_LIB_FILES), $(NEW_ALL_LIB_LIST))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   179
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   180
# Although these are NOT JRE lib files we have to filter them from the list
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   181
# (ie cause them to be added them back in here) because the logic in
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   182
# Images.gmk expects them to be there and handles them differently.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   183
# If we don't, they end up in the wrong place in the JDK image.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   184
# This needs fixing.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   185
NOT_JRE_LIB_FILES := $(filter-out $(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX) $(OPENJDK_TARGET_CPU_LEGACY_LIB)/$(SALIB_NAME), $(NOT_JRE_LIB_FILES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   186
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   187
# Additional exclusions for profile JREs
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   188
ifeq ($(PROFILE), profile_1)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   189
    NOT_JRE_LIB_FILES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   190
        $(PROFILE_2_JRE_LIB_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   191
        $(PROFILE_3_JRE_LIB_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   192
        $(PROFILE_4_JRE_LIB_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   193
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   194
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   195
ifeq ($(PROFILE), profile_2)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   196
    NOT_JRE_LIB_FILES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   197
        $(PROFILE_3_JRE_LIB_FILES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   198
        $(PROFILE_4_JRE_LIB_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   199
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   200
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   201
ifeq ($(PROFILE), profile_3)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   202
    NOT_JRE_LIB_FILES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   203
        $(PROFILE_4_JRE_LIB_FILES) 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   204
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   205
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   206
# Exclude the custom jar files as these will be added back via a special rule
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   207
NOT_JRE_LIB_FILES += $(CUSTOM_JARS)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   208
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   209
###############################################################################
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   210
# Customization of rt.jar file contents
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   211
# These are expressed as exclusions from everything found in the 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   212
# JDK_OUTPUTDIR/classes directory
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   213
###############################################################################
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   214
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   215
# The main set of excluded types/packages (ie everything not destined to be
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   216
# part of rt.jar or resources.jar is captured in the CreateJars.gmk RT_JAR_EXCLUDES
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   217
# variable. We add to that for the per-profile exclusion lists
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   218
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   219
# For each profile we have four variables:
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   220
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   221
# - PROFILE_n_RTJAR_INCLUDE_PACKAGES
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   222
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   223
# This is a package prefix indicating that all classes in that package
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   224
# and conditionally its subpackages are included in rt.jar for this profile.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   225
# The subpackages will be included as long as they do not appear in the
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   226
# include list of a higher profile
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   227
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   228
# - PROFILE_n_RTJAR_INCLUDE_TYPES
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   229
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   230
# These are specific types that must be included within a package.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   231
# There are two cases:
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   232
# - individual types in a package that is otherwise excluded at this 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   233
#   profile level. The only arises if there are split packages. 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   234
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   235
# - A higher-level package is included in a high profile where a subpackage
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   236
# is included in a lower profile. Including the package in the high profile
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   237
# would exclude it and all subpackages from the lower profile, so instead
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   238
# the classes in the package are listed for that higher profile (as *.class)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   239
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   240
# These types are explicitly added back into the rt.jar content lists.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   241
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   242
# - PROFILE_n_RTJAR_EXCLUDE_TYPES
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   243
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   244
# These are specific types that must be excluded even though most of the
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   245
# containing package is include. Again this occurs with split packges.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   246
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   247
# So the exclude list for each profile consists of the include lists
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   248
# for all profiles above it, together with any explicitly excluded types. 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   249
# This is then combined with the overall RT_JAR_EXCLUDES list (which covers
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   250
# things that go into other jar files).
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   251
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   252
# We also have to define the types to be explicitly included. This
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   253
# accumulates up the profiles ie profile 3 has to include the types
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   254
# that profiles 1 and 2 had to include. This is unnecessary if, for example,
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   255
# profile 3 includes the entire package, but it is harmless to add them
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   256
# explicitly, and complex to determine if we still need to include them.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   257
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   258
# Need a way to express: 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   259
#  for (int i = profile+1; i < 4; i++)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   260
#     RT_JAR_EXCLUDES += PROFILE_$i_RTJAR_INCLUDE_PACKAGES
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   261
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   262
# Do it the long way for now
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   263
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   264
# - PROFILE_n_INCLUDE_METAINF_SERVICES
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   265
#
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   266
# These are META-INF/services/ entries found in resources.jar. Together
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   267
# resources.jar and rt.jar hold the contents of the classes directory, (the
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   268
# classes in rt.jar and everything else in resources.jar).Hence the 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   269
# include/exclude information for resources.jar is tied to that of rt.jar
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   270
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   271
include profile-rtjar-includes.txt
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   272
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   273
# Function to expand foo/*.class into the set of classes
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   274
# NOTE: Classfiles with $ in their name are problematic as that is the
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   275
# meta-character for both make and the shell! Hence the \$$$$ substitution.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   276
# But note that if you echo these values they will NOT display as expected.
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   277
class_list =  $(patsubst $(JDK_OUTPUTDIR)/classes/%,%,\
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   278
     $(foreach i,$(1), $(subst $$,\$$$$, $(wildcard $(JDK_OUTPUTDIR)/classes/$i))))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   279
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   280
ifeq ($(PROFILE), profile_1)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   281
  RT_JAR_EXCLUDES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   282
    $(PROFILE_1_RTJAR_EXCLUDE_TYPES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   283
    $(PROFILE_2_RTJAR_INCLUDE_PACKAGES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   284
    $(call class_list, $(PROFILE_2_RTJAR_INCLUDE_TYPES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   285
    $(PROFILE_3_RTJAR_INCLUDE_PACKAGES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   286
    $(call class_list, $(PROFILE_3_RTJAR_INCLUDE_TYPES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   287
    $(PROFILE_4_RTJAR_INCLUDE_PACKAGES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   288
    $(call class_list, $(PROFILE_4_RTJAR_INCLUDE_TYPES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   289
  RT_JAR_INCLUDE_TYPES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   290
	$(call class_list, $(PROFILE_1_RTJAR_INCLUDE_TYPES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   291
  PROFILE_INCLUDE_METAINF_SERVICES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   292
    $(PROFILE_1_INCLUDE_METAINF_SERVICES)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   293
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   294
ifeq ($(PROFILE), profile_2)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   295
  RT_JAR_EXCLUDES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   296
    $(PROFILE_2_RTJAR_EXCLUDE_TYPES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   297
    $(PROFILE_3_RTJAR_INCLUDE_PACKAGES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   298
    $(call class_list, $(PROFILE_3_RTJAR_INCLUDE_TYPES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   299
    $(PROFILE_4_RTJAR_INCLUDE_PACKAGES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   300
    $(call class_list, $(PROFILE_4_RTJAR_INCLUDE_TYPES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   301
  RT_JAR_INCLUDE_TYPES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   302
	$(call class_list, $(PROFILE_1_RTJAR_INCLUDE_TYPES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   303
	$(call class_list, $(PROFILE_2_RTJAR_INCLUDE_TYPES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   304
  PROFILE_INCLUDE_METAINF_SERVICES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   305
    $(PROFILE_1_INCLUDE_METAINF_SERVICES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   306
    $(PROFILE_2_INCLUDE_METAINF_SERVICES)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   307
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   308
ifeq ($(PROFILE), profile_3)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   309
  RT_JAR_EXCLUDES += \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   310
    $(PROFILE_3_RTJAR_EXCLUDE_TYPES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   311
    $(PROFILE_4_RTJAR_INCLUDE_PACKAGES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   312
    $(call class_list, $(PROFILE_4_RTJAR_INCLUDE_TYPES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   313
  RT_JAR_INCLUDE_TYPES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   314
	$(call class_list, $(PROFILE_1_RTJAR_INCLUDE_TYPES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   315
	$(call class_list, $(PROFILE_2_RTJAR_INCLUDE_TYPES)) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   316
	$(call class_list, $(PROFILE_3_RTJAR_INCLUDE_TYPES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   317
  PROFILE_INCLUDE_METAINF_SERVICES := \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   318
    $(PROFILE_1_INCLUDE_METAINF_SERVICES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   319
    $(PROFILE_2_INCLUDE_METAINF_SERVICES) \
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   320
    $(PROFILE_3_INCLUDE_METAINF_SERVICES)
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   321
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   322
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   323
# Filter out non-OpenJDK services
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   324
ifdef OPENJDK
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   325
  EXCLUDED_SERVICES := META-INF/services/javax.script.ScriptEngineFactory 
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   326
  PROFILE_INCLUDE_METAINF_SERVICES := $(filter-out $(EXCLUDED_SERVICES),$(PROFILE_INCLUDE_METAINF_SERVICES))
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   327
endif
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   328
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   329
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   330
endif # profile
8ca785029fe2 8004265: Add build support for Compact Profiles
dholmes
parents:
diff changeset
   331