make/CompileInterimRmic.gmk
author kbarrett
Wed, 02 May 2018 19:24:52 -0400
changeset 49957 746229cc1ab0
parent 48841 0937e5f799df
permissions -rw-r--r--
8179887: Build failure with glibc >= 2.24: error: 'int readdir_r(DIR*, dirent*, dirent**)' is deprecated Summary: Use readir rather than readdir_r on Linux. Reviewed-by: kbarrett, stuefe, andrew Contributed-by: Michal Vala <mvala@redhat.com>
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
25859
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     1
#
48841
0937e5f799df 8190378: Removal of CORBA and Java EE modules
lancea
parents: 48068
diff changeset
     2
# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
25859
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     4
#
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     7
# published by the Free Software Foundation.  Oracle designates this
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     8
# particular file as subject to the "Classpath" exception as provided
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
     9
# by Oracle in the LICENSE file that accompanied this code.
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    10
#
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    11
# This code is distributed in the hope that it will be useful, but WITHOUT
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    13
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    14
# version 2 for more details (a copy is included in the LICENSE file that
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    15
# accompanied this code).
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    16
#
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    17
# You should have received a copy of the GNU General Public License version
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    18
# 2 along with this work; if not, write to the Free Software Foundation,
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    20
#
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    21
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    22
# or visit www.oracle.com if you need additional information or have any
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    23
# questions.
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    24
#
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    25
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    26
default: all
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    27
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    28
include $(SPEC)
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    29
include MakeBase.gmk
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    30
include JavaCompilation.gmk
26191
a0ff4b39d34b 8055188: General cleanup of minor issues from source restructure
erikj
parents: 25859
diff changeset
    31
include SetupJavaCompilers.gmk
25859
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    32
47364
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    33
################################################################################
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    34
# Generate interim versions of the module-info.java files for the interim
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    35
# langtools modules. Each interim module has ".interim" added as suffix to the
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    36
# original module name.
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    37
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    38
INTERIM_MODULEINFO_PATTERN := \
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    39
    $(foreach m, $(INTERIM_RMIC_BASE_MODULES), -e 's/$m\([,; ]\)/$m.interim\1/g') \
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    40
    -e '/ToolProvider[,; ]/d'
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    41
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    42
$(BUILDTOOLS_OUTPUTDIR)/gensrc/%.interim/module-info.java: \
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    43
    $(TOPDIR)/src/%/share/classes/module-info.java
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    44
	$(call LogInfo, Generating module-info.java for $*.interim)
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    45
	$(call MakeDir, $(@D))
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    46
	$(SED) $(INTERIM_MODULEINFO_PATTERN) $< > $@
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    47
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    48
TARGETS += $(patsubst %, $(BUILDTOOLS_OUTPUTDIR)/gensrc/%/module-info.java, \
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    49
    $(INTERIM_RMIC_MODULES))
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    50
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    51
################################################################################
25859
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    52
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    53
RMIC_PKGS := \
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    54
    sun/rmi/rmic \
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    55
    sun/tools/asm \
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    56
    sun/tools/java \
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    57
    sun/tools/javac \
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    58
    sun/tools/tree \
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    59
    sun/tools/util \
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    60
    #
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    61
47364
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    62
$(eval $(call SetupJavaCompilation, BUILD_jdk.rmic.interim, \
25859
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    63
    SETUP := GENERATE_OLDBYTECODE, \
47217
72e3ae9a25eb 8187444: Forest Consolidation: Make build work
erikj
parents: 47216
diff changeset
    64
    SRC := $(TOPDIR)/src/jdk.rmic/share/classes, \
47364
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    65
    EXCLUDE_FILES := $(TOPDIR)/src/jdk.rmic/share/classes/module-info.java, \
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    66
    EXTRA_FILES := $(BUILDTOOLS_OUTPUTDIR)/gensrc/jdk.rmic.interim/module-info.java, \
25859
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    67
    INCLUDES := $(RMIC_PKGS), \
48068
7c08e9f96916 8191439: Race in building jdk.rmic.interim
erikj
parents: 47364
diff changeset
    68
    BIN := $(BUILDTOOLS_OUTPUTDIR)/interim_rmic_modules/jdk.rmic.interim, \
47364
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    69
    COPY := .properties, \
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    70
    ADD_JAVAC_FLAGS := \
48068
7c08e9f96916 8191439: Race in building jdk.rmic.interim
erikj
parents: 47364
diff changeset
    71
        --module-path $(BUILDTOOLS_OUTPUTDIR)/interim_rmic_modules \
47364
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    72
        $(INTERIM_RMIC_ADD_EXPORTS), \
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    73
))
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    74
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    75
TARGETS += $(BUILD_jdk.rmic.interim)
25859
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    76
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    77
##########################################################################################
3317bb8137f4 8054834: Modular Source Code
chegar
parents:
diff changeset
    78
47364
6b3389375f31 8189094: Change required boot jdk to JDK 9
erikj
parents: 47217
diff changeset
    79
all: $(TARGETS)