0N/A#
5091N/A# Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
0N/A# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A#
0N/A# This code is free software; you can redistribute it and/or modify it
0N/A# under the terms of the GNU General Public License version 2 only, as
2362N/A# published by the Free Software Foundation. Oracle designates this
0N/A# particular file as subject to the "Classpath" exception as provided
2362N/A# by Oracle in the LICENSE file that accompanied this code.
0N/A#
0N/A# This code is distributed in the hope that it will be useful, but WITHOUT
0N/A# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A# version 2 for more details (a copy is included in the LICENSE file that
0N/A# accompanied this code).
0N/A#
0N/A# You should have received a copy of the GNU General Public License version
0N/A# 2 along with this work; if not, write to the Free Software Foundation,
0N/A# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0N/A#
2362N/A# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2362N/A# or visit www.oracle.com if you need additional information or have any
2362N/A# questions.
0N/A#
0N/A
0N/A#
0N/A# Makefile for building RMI stubs of JMX Remote
0N/A#
0N/A
0N/ABUILDDIR = ../../..
0N/APACKAGE = javax.management
0N/APRODUCT = sun
0N/Ainclude $(BUILDDIR)/common/Defs.gmk
0N/A
0N/A#
0N/A# Files to compile
0N/A#
0N/A
0N/A# NO java files to compile: already compiled in javax/management/Makefile
0N/A
0N/A# Note : some targets are double colon rules and some single colon rules
0N/A# within common included gmk files : that is why the following for loop
0N/A# has been duplicated.
955N/A
3259N/A# When building the openjdk, no snmp
3259N/Aifndef OPENJDK
955N/A SUBDIRS = snmp
955N/Aendif
0N/A
2157N/Ainclude $(BUILDDIR)/common/Subdirs.gmk
2157N/A
0N/Aall build:
0N/A $(SUBDIRS-loop)
0N/A
0N/Aclean clobber::
0N/A $(SUBDIRS-loop)
0N/A
0N/A#
0N/A# Rules
0N/A#
0N/Ainclude $(BUILDDIR)/common/Classes.gmk
0N/A
0N/Abuild: stubs
0N/A
0N/A#
0N/A# Clean up internal-use-only package.
0N/A#
0N/Aclean ::
0N/A $(RM) -r $(CLASSDESTDIR)/com/sun/jmx \
0N/A $(CLASSDESTDIR)/com/sun/management/jmx \
0N/A $(CLASSDESTDIR)/org/omg/stub/javax/management/remote/rmi \
0N/A
0N/A
0N/A#
0N/A# The remainder of this makefile contains defs and rules
0N/A# for generating RMI stubs.
0N/A# With inspiration from com/sun/jndi/rmi/registry
0N/A#
0N/A
0N/A#
0N/A# Full class names of implementations requiring stubs
0N/A#
0N/AREMOTE_impls = \
0N/A javax.management.remote.rmi.RMIConnectionImpl \
0N/A javax.management.remote.rmi.RMIServerImpl \
0N/A
0N/A
0N/AREMOTE_files = $(subst .,/,$(REMOTE_impls))
0N/AFILES_stubs = $(REMOTE_files:%=$(CLASSDESTDIR)/%_Stub.class)
0N/AFILES_ties = $(subst javax/management/remote/rmi/,javax/management/remote/rmi/_,$(REMOTE_files:%=$(CLASSDESTDIR)/%_Tie.class))
0N/A
0N/A
0N/A#
0N/A# Compile stubs and skeletons for remote implementations
0N/A#
0N/A# Keep generated RMI/JRMP Stub source files and copy them to GENSRCDIR
0N/A# so that javadoc can include them in the API (4997471)
0N/A#
0N/A# For RMI/IIOP call rmic a second time with -standardPackage option
0N/A# so that *_tie classes are generated in package without the prefix
0N/A# org.omg.stub (6375696)
0N/A#
5091N/A# To ensure the latest stub generator files are picked up from corba repo
5091N/A# when available, we need to run with latest rmic version available. rmic
5091N/A# launch tool not built at this stage but we can invoke via rmi class.
5091N/A
5091N/ARMIC_JAVA = $(OUTPUTDIR)/bin/java
5091N/A# need to treat 64bit solaris differently
5091N/Aifeq ($(PLATFORM)-$(LIBARCH), solaris-amd64)
5091N/ARMIC_JAVA = $(OUTPUTDIR)/bin/amd64/java
5091N/Aendif
5091N/Aifeq ($(PLATFORM)-$(LIBARCH), solaris-sparcv9)
5091N/ARMIC_JAVA = $(OUTPUTDIR)/bin/sparcv9/java
5091N/Aendif
5091N/A
5091N/Aifeq ($(CROSS_COMPILE_ARCH),)
5091N/ARMIC = $(RMIC_JAVA) $(JAVA_TOOLS_FLAGS) -cp $(OUTPUTDIR)/classes sun.rmi.rmic.Main
5091N/Aendif
5091N/A
0N/A$(CLASSDESTDIR)/%_Stub.class: $(CLASSDESTDIR)/%.class
0N/A $(prep-target)
0N/A $(RMIC) -classpath "$(CLASSDESTDIR)" \
0N/A -d $(CLASSDESTDIR) \
0N/A -v1.2 \
0N/A -keepgenerated \
0N/A $(subst /,.,$(<:$(CLASSDESTDIR)/%.class=%))
0N/A $(MKDIR) -p $(@D:$(CLASSDESTDIR)/%=$(GENSRCDIR)/%)
0N/A $(CP) $(@:%.class=%.java) \
0N/A $(@D:$(CLASSDESTDIR)/%=$(GENSRCDIR)/%)
0N/A $(RMIC) -classpath "$(CLASSDESTDIR)" \
0N/A -d $(CLASSDESTDIR) \
0N/A -iiop -v1.2 \
0N/A $(subst /,.,$(<:$(CLASSDESTDIR)/%.class=%))
0N/A $(RMIC) $(HOTSPOT_INTERPRETER_FLAG) -classpath "$(CLASSDESTDIR)" \
0N/A -d $(CLASSDESTDIR) \
0N/A -iiop -v1.2 \
0N/A -standardPackage \
0N/A $(subst /,.,$(<:$(CLASSDESTDIR)/%.class=%))
0N/A @$(java-vm-cleanup)
0N/A
0N/Astubs: $(FILES_stubs)