makefiles/BuildCorba.gmk

Thu, 10 Oct 2013 14:58:17 +0200

author
ihse
date
Thu, 10 Oct 2013 14:58:17 +0200
changeset 509
66fc1a749867
parent 431
ce106b6b7394
child 529
1c01208087b5
permissions
-rw-r--r--

8001931: The new build system whitespace cleanup
Reviewed-by: tbell, simonis, erikj

     1 #
     2 # Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4 #
     5 # This code is free software; you can redistribute it and/or modify it
     6 # under the terms of the GNU General Public License version 2 only, as
     7 # published by the Free Software Foundation.  Oracle designates this
     8 # particular file as subject to the "Classpath" exception as provided
     9 # by Oracle in the LICENSE file that accompanied this code.
    10 #
    11 # This code is distributed in the hope that it will be useful, but WITHOUT
    12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    14 # version 2 for more details (a copy is included in the LICENSE file that
    15 # accompanied this code).
    16 #
    17 # You should have received a copy of the GNU General Public License version
    18 # 2 along with this work; if not, write to the Free Software Foundation,
    19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    20 #
    21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    22 # or visit www.oracle.com if you need additional information or have any
    23 # questions.
    24 #
    26 #
    27 # Makefile for building the corba workspace.
    28 #
    30 # This must be the first rule
    31 default: all
    33 include $(SPEC)
    34 include MakeBase.gmk
    35 include JavaCompilation.gmk
    36 include IdlCompilation.gmk
    38 # The Corba sources are old and generates a LOT of warnings.
    39 # Disable these using Xlint, until someone cares to fix them.
    40 DISABLE_CORBA_WARNINGS := -Xlint:all,-deprecation,-unchecked,-serial,-fallthrough,-cast,-rawtypes,-static,-dep-ann
    42 # The "generate old bytecode" javac setup uses the new compiler to compile for the
    43 # boot jdk to generate tools that need to be run with the boot jdk.
    44 # Thus we force the target bytecode to the boot jdk bytecode.
    45 $(eval $(call SetupJavaCompiler,GENERATE_OLDBYTECODE, \
    46     JVM := $(JAVA), \
    47     JAVAC := $(NEW_JAVAC), \
    48     FLAGS := $(BOOT_JDK_SOURCETARGET) -bootclasspath $(BOOT_RTJAR) $(DISABLE_CORBA_WARNINGS), \
    49     SERVER_DIR := $(SJAVAC_SERVER_DIR), \
    50     SERVER_JVM := $(SJAVAC_SERVER_JAVA)))
    52 # The "generate new bytecode" uses the new compiler to generate bytecode
    53 # for the new jdk that is being built. The code compiled by this setup
    54 # cannot necessarily be run with the boot jdk.
    55 $(eval $(call SetupJavaCompiler,GENERATE_NEWBYTECODE, \
    56     JVM := $(JAVA), \
    57     JAVAC := $(NEW_JAVAC), \
    58     FLAGS := -cp $(BOOT_TOOLSJAR) -XDignore.symbol.file=true $(DISABLE_CORBA_WARNINGS), \
    59     SERVER_DIR := $(SJAVAC_SERVER_DIR), \
    60     SERVER_JVM := $(SJAVAC_SERVER_JAVA)))
    62 $(eval $(call SetupJavaCompilation,BUILD_STRIPPROP, \
    63     SETUP := GENERATE_OLDBYTECODE, \
    64     SRC := $(CORBA_TOPDIR)/make/tools/src, \
    65     BIN := $(CORBA_OUTPUTDIR)/btclasses/stripprop_classes))
    67 $(eval $(call SetupArchive,ARCHIVE_STRIPPROP, $(BUILD_STRIPPROP), \
    68     SRCS := $(CORBA_OUTPUTDIR)/btclasses/stripprop_classes, \
    69     JAR := $(CORBA_OUTPUTDIR)/btjars/stripproperties.jar, \
    70     JARMAIN := build.tools.stripproperties.StripPropertiesCorba))
    72 $(eval $(call SetupJavaCompilation,BUILD_IDLJ, \
    73     SETUP := GENERATE_OLDBYTECODE, \
    74     SRC := $(CORBA_TOPDIR)/src/share/classes, \
    75     BIN := $(CORBA_OUTPUTDIR)/btclasses/idlj_classes, \
    76     COPY := .prp, \
    77     INCLUDES := com/sun/tools/corba/se/idl, \
    78     EXCLUDE_FILES := ResourceBundleUtil.java))
    80 $(eval $(call SetupArchive,ARCHIVE_IDLJ, $(BUILD_IDLJ), \
    81     SRCS := $(CORBA_OUTPUTDIR)/btclasses/idlj_classes, \
    82     SUFFIXES := .class .prp, \
    83     JAR := $(CORBA_OUTPUTDIR)/btjars/idlj.jar, \
    84     JARMAIN := com.sun.tools.corba.se.idl.toJavaPortable.Compile))
    86 $(eval $(call SetupJavaCompilation,BUILD_LOGUTIL, \
    87     SETUP := GENERATE_OLDBYTECODE, \
    88     SRC := $(CORBA_TOPDIR)/src/share/classes, \
    89     BIN := $(CORBA_OUTPUTDIR)/btclasses/logutil_classes, \
    90     INCLUDES := com/sun/tools/corba/se/logutil))
    92 $(eval $(call SetupArchive,ARCHIVE_LOGUTIL, $(BUILD_LOGUTIL), \
    93     SRCS := $(CORBA_OUTPUTDIR)/btclasses/logutil_classes, \
    94     JAR := $(CORBA_OUTPUTDIR)/btjars/logutil.jar, \
    95     JARMAIN := com.sun.tools.corba.se.logutil.MC))
    97 # Generate LogWrapper classes
    98 $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/%SystemException.java: \
    99     $(CORBA_TOPDIR)/src/share/classes/com/sun/corba/se/spi/logging/data/%.mc \
   100     $(CORBA_OUTPUTDIR)/btjars/logutil.jar
   101 	$(MKDIR) -p $(@D)
   102 	$(RM) -f $(@D)/_the_wrappers.d
   103 	$(ECHO) $(LOG_INFO) Generating class file from $*.mc
   104 	$(JAVA) -jar $(CORBA_OUTPUTDIR)/btjars/logutil.jar make-class $< $(@D)
   106 # Generate LogWrapper properties file by concatening resource files
   107 $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/LogStrings.properties: \
   108     $(CORBA_OUTPUTDIR)/logwrappers/ActivationSystemException.resource \
   109     $(CORBA_OUTPUTDIR)/logwrappers/IORSystemException.resource \
   110     $(CORBA_OUTPUTDIR)/logwrappers/InterceptorsSystemException.resource \
   111     $(CORBA_OUTPUTDIR)/logwrappers/NamingSystemException.resource \
   112     $(CORBA_OUTPUTDIR)/logwrappers/OMGSystemException.resource \
   113     $(CORBA_OUTPUTDIR)/logwrappers/ORBUtilSystemException.resource \
   114     $(CORBA_OUTPUTDIR)/logwrappers/POASystemException.resource \
   115     $(CORBA_OUTPUTDIR)/logwrappers/UtilSystemException.resource
   116 	$(MKDIR) -p $(@D)
   117 	$(ECHO) $(LOG_INFO) Concatenating 8 resource files into $(@F)
   118 	$(CAT) $^ > $@
   120 # The resources files are generated from lisp-like .mc files.
   121 $(CORBA_OUTPUTDIR)/logwrappers/%SystemException.resource: $(CORBA_TOPDIR)/src/share/classes/com/sun/corba/se/spi/logging/data/%.mc $(CORBA_OUTPUTDIR)/btjars/logutil.jar
   122 	$(MKDIR) -p $(@D)
   123 	$(RM) -f $(@D)/_the_wrappers.d
   124 	$(ECHO) $(LOG_INFO) Generating resource file from $*.mc
   125 	$(JAVA) -jar $(CORBA_OUTPUTDIR)/btjars/logutil.jar make-resource $< $(@D)
   128 $(CORBA_OUTPUTDIR)/logwrappers/_the_wrappers.d: $(CORBA_OUTPUTDIR)/btjars/logutil.jar \
   129     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/ActivationSystemException.java \
   130     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/IORSystemException.java \
   131     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/InterceptorsSystemException.java \
   132     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/NamingSystemException.java \
   133     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/OMGSystemException.java \
   134     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/ORBUtilSystemException.java \
   135     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/POASystemException.java \
   136     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/UtilSystemException.java \
   137     $(CORBA_OUTPUTDIR)/logwrappers/com/sun/corba/se/impl/logging/LogStrings.properties
   138 	$(MKDIR) -p $(@D)
   139 	$(ECHO) LOGWRAPPERS_ARE_CREATED = yes > $@
   141 # Trigger the generation of the logwrappers. After the logwrapper classes and
   142 # resources have been created, then the makefile will restart and the newly
   143 # created java files will become part of the build further along in the makefile.
   144 -include $(CORBA_OUTPUTDIR)/logwrappers/_the_wrappers.d
   146 ifeq ($(LOGWRAPPERS_ARE_CREATED), yes)
   148   $(eval $(call SetupIdlCompilation,BUILD_IDLS, \
   149       IDLJ := $(JAVA) -jar $(CORBA_OUTPUTDIR)/btjars/idlj.jar, \
   150       SRC := $(CORBA_TOPDIR)/src/share/classes, \
   151       BIN := $(CORBA_OUTPUTDIR)/gensrc, \
   152       EXCLUDES := com/sun/tools/corba/se/idl/% \
   153           org/omg/CORBA/% \
   154           com/sun/corba/se/GiopIDL/% \
   155           org/omg/PortableServer/corba.idl, \
   156       INCLUDES := %, \
   157       OLDIMPLBASES := com/sun/corba/se/PortableActivationIDL/activation.idl \
   158           com/sun/corba/se/spi/activation/activation.idl, \
   159       DELETES := DYNANYDELETEFILES org/omg/DynamicAny/*POA* org/omg/DynamicAny/*Holder* org/omg/DynamicAny/DynValueBoxHelper.java org/omg/DynamicAny/DynValueCommonHelper.java org/omg/DynamicAny/_DynValueCommonStub.java org/omg/DynamicAny/_DynValueBoxStub.java org/omg/DynamicAny/DynAnyPackage/TypeMismatchHolder.java org/omg/DynamicAny/DynAnyPackage/InvalidValueHolder.java org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHolder.java IOPDELETEFILES org/omg/IOP/BI_DIR_IIOP.java org/omg/IOP/ChainBypassCheck.java org/omg/IOP/ChainBypassInfo.java org/omg/IOP/FORWARDED_IDENTITY.java org/omg/IOP/INVOCATION_POLICIES.java org/omg/IOP/LogicalThreadId.java org/omg/IOP/SendingContextRunTime.java org/omg/IOP/UnknownExceptionInfo.java org/omg/IOP/TaggedComponentSeqHolder.java POAHELHOLFILES org/omg/PortableServer/CurrentPackage/NoContextHolder.java org/omg/PortableServer/ForwardRequestHolder.java org/omg/PortableServer/IdAssignmentPolicyValueHelper.java org/omg/PortableServer/IdAssignmentPolicyValueHolder.java org/omg/PortableServer/IdUniquenessPolicyValueHelper.java org/omg/PortableServer/IdUniquenessPolicyValueHolder.java org/omg/PortableServer/ImplicitActivationPolicyValueHelper.java org/omg/PortableServer/ImplicitActivationPolicyValueHolder.java org/omg/PortableServer/LifespanPolicyValueHelper.java org/omg/PortableServer/LifespanPolicyValueHolder.java org/omg/PortableServer/ServantRetentionPolicyValueHelper.java org/omg/PortableServer/ServantRetentionPolicyValueHolder.java org/omg/PortableServer/ObjectIdHelper.java org/omg/PortableServer/ObjectIdHolder.java org/omg/PortableServer/POAListHelper.java org/omg/PortableServer/POAListHolder.java org/omg/PortableServer/POAManagerPackage/AdapterInactiveHolder.java org/omg/PortableServer/POAManagerPackage/StateHelper.java org/omg/PortableServer/POAManagerPackage/StateHolder.java org/omg/PortableServer/POAPackage/AdapterAlreadyExistsHolder.java org/omg/PortableServer/POAPackage/AdapterNonExistentHolder.java org/omg/PortableServer/POAPackage/InvalidPolicyHolder.java org/omg/PortableServer/POAPackage/NoServantHolder.java org/omg/PortableServer/POAPackage/ObjectAlreadyActiveHolder.java org/omg/PortableServer/POAPackage/ObjectNotActiveHolder.java org/omg/PortableServer/POAPackage/ServantAlreadyActiveHolder.java org/omg/PortableServer/POAPackage/ServantNotActiveHolder.java org/omg/PortableServer/POAPackage/WrongAdapterHolder.java org/omg/PortableServer/POAPackage/WrongPolicyHolder.java org/omg/PortableServer/RequestProcessingPolicyValueHelper.java org/omg/PortableServer/RequestProcessingPolicyValueHolder.java org/omg/PortableServer/ServantActivatorHolder.java org/omg/PortableServer/ServantLocatorHolder.java org/omg/PortableServer/ThreadPolicyValueHelper.java org/omg/PortableServer/ThreadPolicyValueHolder.java PIHELHOLFILES org/omg/PortableInterceptor/ClientRequestInfoHelper.java org/omg/PortableInterceptor/ClientRequestInterceptorHelper.java org/omg/PortableInterceptor/IORInfoHelper.java org/omg/PortableInterceptor/IORInterceptorHelper.java org/omg/PortableInterceptor/InterceptorHelper.java org/omg/PortableInterceptor/ORBInitInfoHelper.java org/omg/PortableInterceptor/ORBInitializerHelper.java org/omg/PortableInterceptor/PolicyFactoryHelper.java org/omg/PortableInterceptor/ReplyStatusHelper.java org/omg/PortableInterceptor/RequestInfoHelper.java org/omg/PortableInterceptor/ServerRequestInfoHelper.java org/omg/PortableInterceptor/ServerRequestInterceptorHelper.java org/omg/PortableInterceptor/SlotIdHelper.java org/omg/PortableInterceptor/ClientRequestInfoHolder.java org/omg/PortableInterceptor/ClientRequestInterceptorHolder.java org/omg/PortableInterceptor/CurrentHolder.java org/omg/PortableInterceptor/ForwardRequestHolder.java org/omg/PortableInterceptor/IORInfoHolder.java org/omg/PortableInterceptor/IORInterceptorHolder.java org/omg/PortableInterceptor/InterceptorHolder.java org/omg/PortableInterceptor/InvalidSlotHolder.java org/omg/PortableInterceptor/ORBInitInfoHolder.java org/omg/PortableInterceptor/ORBInitializerHolder.java org/omg/PortableInterceptor/PolicyFactoryHolder.java org/omg/PortableInterceptor/RequestInfoHolder.java org/omg/PortableInterceptor/ServerRequestInfoHolder.java org/omg/PortableInterceptor/ServerRequestInterceptorHolder.java org/omg/PortableInterceptor/TaggedComponentSeqHolder.java org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateNameHolder.java org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidNameHolder.java org/omg/IOP/CodecPackage/FormatMismatchHolder.java org/omg/IOP/CodecPackage/InvalidTypeForEncodingHolder.java org/omg/IOP/CodecPackage/TypeMismatchHolder.java org/omg/IOP/CodecHelper.java org/omg/IOP/EncodingFormatHelper.java org/omg/IOP/EncodingHelper.java org/omg/IOP/CodecFactoryPackage/UnknownEncodingHolder.java org/omg/IOP/CodecFactoryHolder.java org/omg/IOP/CodecHolder.java org/omg/IOP/EncodingHolder.java org/omg/IOP/TaggedComponentSeqHelper.java org/omg/Dynamic/ContextListHelper.java org/omg/Dynamic/ExceptionListHelper.java org/omg/Dynamic/ParameterHolder.java org/omg/Dynamic/ParameterListHolder.java org/omg/Dynamic/ExceptionListHolder.java org/omg/Dynamic/ParameterHelper.java org/omg/Dynamic/ParameterListHelper.java org/omg/Dynamic/RequestContextHelper.java CORBAX org/omg/CORBA/OctetSeqHelper.java org/omg/CORBA/OctetSeqHolder.java org/omg/CORBA/PolicyError.java org/omg/CORBA/RepositoryIdHelper.java))
   161   $(BUILD_IDLS): $(CORBA_OUTPUTDIR)/btjars/idlj.jar
   163   $(CORBA_OUTPUTDIR)/gensrc/_the_idls.d: $(BUILD_IDLS) $(CORBA_OUTPUTDIR)/btjars/idlj.jar
   164 	$(MKDIR) -p $(@D)
   165 	$(ECHO) IDLS_ARE_CREATED = yes > $@
   167   -include $(CORBA_OUTPUTDIR)/gensrc/_the_idls.d
   169   ifeq ($(IDLS_ARE_CREATED), yes)
   171     $(eval $(call SetupJavaCompilation,BUILD_CORBA, \
   172         SETUP := GENERATE_NEWBYTECODE, \
   173         SRC := $(CORBA_TOPDIR)/src/share/classes $(CORBA_OUTPUTDIR)/gensrc $(CORBA_OUTPUTDIR)/logwrappers, \
   174         EXCLUDES := com/sun/corba/se/PortableActivationIDL \
   175             com/sun/tools/corba/se/logutil, \
   176         EXCLUDE_FILES := com/sun/corba/se/impl/presentation/rmi/JNDIStateFactoryImpl.java \
   177             com/sun/corba/se/spi/presentation/rmi/StubWrapper.java \
   178             com/sun/org/omg/CORBA/IDLTypeOperations.java \
   179             com/sun/org/omg/CORBA/IRObjectOperations.java \
   180             org/omg/PortableInterceptor/UNKNOWN.java \
   181             com/sun/tools/corba/se/idl/ResourceBundleUtil.java \
   182             com/sun/corba/se/impl/presentation/rmi/jndi.properties, \
   183         COPY := .prp LogStrings.properties, \
   184         BIN := $(CORBA_OUTPUTDIR)/classes))
   186     # Separate src.zip call to include sources that were excluded in the build to
   187     # mimic behavior in old build system.
   188     $(eval $(call SetupZipArchive,ARCHIVE_BUILD_CORBA, \
   189         SRC := $(CORBA_TOPDIR)/src/share/classes $(CORBA_OUTPUTDIR)/gensrc $(CORBA_OUTPUTDIR)/logwrappers, \
   190         ZIP := $(CORBA_OUTPUTDIR)/dist/lib/src.zip))
   192     $(BUILD_CORBA): $(BUILD_IDLS) $(LOGWRAPPER_DEPENDENCIES)
   194     # Run stripproperties on all sunorb resource files.
   195     STRIP_PROP_SRC_FILES := $(shell $(FIND) $(CORBA_TOPDIR)/src/share/classes -name "sunorb*.properties")
   196     STRIP_PROP_FILES := $(patsubst $(CORBA_TOPDIR)/src/share/classes/%, $(CORBA_OUTPUTDIR)/classes/%, \
   197         $(STRIP_PROP_SRC_FILES))
   198     # Simple delivery of zh_HK properties files just copies zh_TW properties files
   199     STRIP_PROP_FILES += $(patsubst $(CORBA_TOPDIR)/src/share/classes/%_zh_TW.properties, \
   200         $(CORBA_OUTPUTDIR)/classes/%_zh_HK.properties, \
   201         $(shell $(FIND) $(CORBA_TOPDIR)/src/share/classes -name "sunorb_zh_TW.properties"))
   202     STRIP_PROP_SRC_FILES += $(shell $(FIND) $(CORBA_TOPDIR)/src/share/classes -name "sunorb_zh_TW.properties")
   203     STRIP_PROP_CMDLINE := $(subst _SPACE_, $(SPACE), \
   204         $(join $(addprefix -clean_SPACE_, $(STRIP_PROP_SRC_FILES)), \
   205         $(addprefix _SPACE_, $(STRIP_PROP_FILES))))
   207     $(CORBA_OUTPUTDIR)/_the.stripped_properties: $(STRIP_PROP_SRC_FILES) \
   208         $(CORBA_OUTPUTDIR)/btjars/stripproperties.jar
   209 		$(MKDIR) -p $(sort $(dir $(STRIP_PROP_FILES)))
   210 		$(call ListPathsSafely,STRIP_PROP_CMDLINE,\n, >> $(CORBA_OUTPUTDIR)/_the.strip_prop.cmdline)
   211 		$(JAVA) -jar $(CORBA_OUTPUTDIR)/btjars/stripproperties.jar \
   212 		    @$(CORBA_OUTPUTDIR)/_the.strip_prop.cmdline
   213 		$(TOUCH) $@
   215     $(eval $(call SetupArchive,ARCHIVE_CORBA, \
   216         $(BUILD_CORBA) $(CORBA_OUTPUTDIR)/_the.stripped_properties, \
   217         SRCS := $(CORBA_OUTPUTDIR)/classes, \
   218         SUFFIXES := .class .prp .properties, \
   219         JAR := $(CORBA_OUTPUTDIR)/dist/lib/classes.jar))
   221     # The created classes.jar now contains Corba compiled to run on the target JDK
   222     # and is ready for inclusion in jdk rt.jar.
   224     # The created src.zip now contains .java and .properties files used to create the classes in classes.jar
   225     # and is ready for inclusion into the jdk src.zip
   227     BIN_FILES := $(CORBA_TOPDIR)/src/share/classes/com/sun/tools/corba/se/idl/orb.idl \
   228         $(CORBA_TOPDIR)/src/share/classes/com/sun/tools/corba/se/idl/ir.idl
   230     $(CORBA_OUTPUTDIR)/dist/lib/bin.zip: $(BIN_FILES) $(CORBA_OUTPUTDIR)/dist/lib/classes.jar
   231 	$(MKDIR) -p $(CORBA_OUTPUTDIR)/dist/lib
   232 	$(MKDIR) -p $(CORBA_OUTPUTDIR)/lib
   233 	$(RM) -f $@
   234 	$(ECHO) Creating `basename $@`
   235 	$(CP) $(BIN_FILES) $(CORBA_OUTPUTDIR)/lib
   236 	$(CHMOD) ug+w $(CORBA_OUTPUTDIR)/lib/*
   237 	(cd $(CORBA_OUTPUTDIR); $(ZIP) -q $@ lib/orb.idl lib/ir.idl)
   239     # The created bin.zip now contains the corba specific binaries: orb.idl, ir.idl
   241     all: $(CORBA_OUTPUTDIR)/btjars/stripproperties.jar \
   242         $(CORBA_OUTPUTDIR)/btjars/idlj.jar \
   243         $(CORBA_OUTPUTDIR)/btjars/logutil.jar \
   244         $(CORBA_OUTPUTDIR)/dist/lib/classes.jar \
   245         $(CORBA_OUTPUTDIR)/dist/lib/src.zip \
   246         $(CORBA_OUTPUTDIR)/dist/lib/bin.zip
   247   endif
   248 endif
   250 clean:
   251 	$(RM) -rf $(CORBA_OUTPUTDIR)
   253 .PHONY: default all clean clobber

mercurial