make/rmic/Rmic-java.management.rmi.gmk
author herrick
Sun, 18 Nov 2018 17:45:09 -0500
branchJDK-8200758-branch
changeset 57029 750a23664c11
parent 52065 dea8a62cdfc3
child 52804 28094715ae71
permissions -rw-r--r--
Merge

#
# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

default: all

include RmicCommon.gmk

##########################################################################################
#
# Generate RMI stubs
#

JMX_RMI_CLASSES := javax.management.remote.rmi.RMIConnectionImpl \
    javax.management.remote.rmi.RMIServerImpl

# Generate into gensrc dir where sources get picked up for javadoc, then move the classes
# into the stub classes dir.
$(eval $(call SetupRMICompilation,RMI_GEN, \
    CLASSES := $(JMX_RMI_CLASSES), \
    CLASSES_DIR := $(CLASSES_DIR)/java.management.rmi, \
    STUB_CLASSES_DIR := $(RMIC_GENSRC_DIR)/java.management.rmi, \
    RUN_V12 := true, \
    KEEP_GENERATED := true, \
))

# Find all classes generated and move them from the gensrc dir to the stub classes dir
$(RMIC_GENSRC_DIR)/_classes.moved: $(RMI_GEN)
	$(eval classfiles := $(shell $(FIND) $(RMIC_GENSRC_DIR) -name "*.class"))
	$(foreach src, $(classfiles), \
	    $(eval target := $(patsubst $(RMIC_GENSRC_DIR)/%, \
	        $(STUB_CLASSES_DIR)/%, $(src))) \
	    $(call MakeDir, $(dir $(target))) \
	    $(MV) $(src) $(target) $(NEWLINE))
	$(TOUCH) $@

##########################################################################################

all: $(RMIC_GENSRC_DIR)/_classes.moved $(RMI_GEN)

.PHONY: all