| # |
| # Copyright (c) 2007, 2010, 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. |
| # |
| |
| # |
| # Makefile for building the corba workspace. |
| # |
| |
| BUILDDIR=. |
| include $(BUILDDIR)/common/Defs.gmk |
| include $(BUILDDIR)/common/CancelImplicits.gmk |
| |
| #----- commands |
| |
| CHMOD = chmod |
| CP = cp |
| ECHO = echo # FIXME |
| FIND = find |
| MKDIR = mkdir |
| SED = sed |
| ZIP = zip |
| |
| #----- locations and deliverables |
| |
| TOPDIR=.. |
| SRC_BIN_DIR = $(TOPDIR)/src/share/bin |
| SRC_CLASSES_DIR = $(TOPDIR)/src/share/classes |
| |
| ifdef ALT_OUTPUTDIR |
| OUTPUTDIR = $(ALT_OUTPUTDIR) |
| BUILD_DIR = $(ALT_OUTPUTDIR) |
| DIST_DIR = $(ALT_OUTPUTDIR)/dist |
| else |
| OUTPUTDIR = .. |
| BUILD_DIR = $(TOPDIR)/build/$(PLATFORM)-$(ARCH) |
| DIST_DIR = $(TOPDIR)/dist |
| endif |
| ABS_OUTPUTDIR = $(call FullPath,$(OUTPUTDIR)) |
| |
| CLASSES_DIR = $(BUILD_DIR)/classes |
| GENSRC_DIR = $(BUILD_DIR)/gensrc |
| |
| LIB_DIR = $(DIST_DIR)/lib |
| |
| #----- |
| |
| ifndef JDK_MAJOR_VERSION |
| JDK_MAJOR_VERSION = 1 |
| endif |
| |
| ifndef JDK_MINOR_VERSION |
| JDK_MINOR_VERSION = 7 |
| endif |
| |
| ifndef JDK_MICRO_VERSION |
| JDK_MICRO_VERSION = 0 |
| endif |
| |
| ifndef JDK_VERSION |
| JDK_VERSION = $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION) |
| endif |
| |
| ifndef MILESTONE |
| MILESTONE = internal |
| endif |
| |
| # RELEASE is JDK_VERSION and -MILESTONE if MILESTONE is set |
| ifneq ($(MILESTONE),fcs) |
| RELEASE = $(JDK_VERSION)-$(MILESTONE)$(BUILD_VARIANT_RELEASE) |
| else |
| RELEASE = $(JDK_VERSION)$(BUILD_VARIANT_RELEASE) |
| endif |
| |
| # FULL_VERSION is RELEASE and -BUILD_NUMBER if BUILD_NUMBER is set |
| ifdef BUILD_NUMBER |
| FULL_VERSION = $(RELEASE)-$(BUILD_NUMBER) |
| else |
| BUILD_NUMBER = b00 |
| USER_RELEASE_SUFFIX := $(shell echo $(USER)_`date '+%d_%b_%Y_%H_%M' | tr "A-Z" "a-z"`) |
| FULL_VERSION = $(RELEASE)-$(USER_RELEASE_SUFFIX)-$(BUILD_NUMBER) |
| endif |
| |
| #----- useful macros |
| |
| SOURCE_LEVEL = 5 |
| BOOTSTRAP_TARGET_LEVEL = 5 |
| |
| ifdef TARGET_CLASS_VERSION |
| TARGET_LEVEL = $(TARGET_CLASS_VERSION) |
| else |
| TARGET_LEVEL = 7 |
| endif |
| |
| ifndef TARGET_JAVA |
| TARGET_JAVA = java |
| endif |
| |
| SELF = $(lastword $(MAKEFILE_LIST)) |
| |
| # for jdk, we generate the following: |
| # dist/lib/classes.jar: |
| # corba recompiled to run on the target JDK, |
| # ready for inclusion in rt.jar |
| # dist/lib/src.zip |
| # .properties and .java files for classes in classes.jar, |
| # ready for jdk src.zip |
| # dist/lib/bin.zip |
| # corba specific binaries: orb.idl, ir.idl |
| |
| # Default target |
| default: all |
| |
| #----- classes.jar |
| |
| CLASSES_JAR = $(LIB_DIR)/classes.jar |
| $(CLASSES_JAR): |
| $(MKDIR) -p $(@D) |
| $(BOOT_JAR_CMD) -cf $@ -C $(CLASSES_DIR) . |
| |
| #----- src.zip |
| |
| SRC_ZIP_FILES = $(shell $(FIND) $(SRC_CLASSES_DIR) \( -name \*-template \) -prune -o -type f -print ) |
| |
| SRC_ZIP = $(LIB_DIR)/src.zip |
| $(SRC_ZIP): $(SRC_ZIP_FILES) |
| abs_src_zip=`cd $(@D) ; pwd`/$(@F) ; \ |
| ( cd $(SRC_CLASSES_DIR) ; $(FIND) . \( -name \*-template \) -prune -o -type f -print | $(ZIP) -q $$abs_src_zip -@ ) ; \ |
| ( cd $(GENSRC_DIR) ; $(FIND) . -type f -print | $(ZIP) -q $$abs_src_zip -@ ) ; |
| |
| #----- bin.zip |
| |
| BIN_ZIP_FILES = $(BUILD_DIR/lib/orb.idl $(BUILD_DIR)/lib/ir.idl |
| |
| BIN_ZIP = $(LIB_DIR)/bin.zip |
| $(BIN_ZIP): $(BIN_ZIP_FILES) |
| abs_bin_zip=`cd $(@D) ; pwd`/$(@F) ; \ |
| ( cd $(BUILD_DIR) ; $(FIND) lib -name "*.idl" -print | $(ZIP) -q $$abs_bin_zip -@ ) ; |
| |
| # |
| # CORBA |
| # |
| SUBDIRS = tools javax org sun com |
| |
| build: |
| $(SUBDIRS-loop) |
| |
| all : build $(CLASSES_JAR) $(SRC_ZIP) $(BIN_ZIP) |
| |
| clean clobber: |
| $(RM) -r $(BUILD_DIR) |
| $(RM) -r $(DIST_DIR) |
| |
| #------------------------------------------------------------------- |
| # |
| # Targets for Sun's internal JPRT build system |
| |
| CD = cd |
| ZIP = zip |
| |
| JPRT_ARCHIVE_BUNDLE=$(ABS_OUTPUTDIR)/$(JPRT_BUILD_FLAVOR)-bundle.zip |
| |
| jprt_build_product jprt_build_debug jprt_build_fastdebug: all |
| ( $(CD) $(OUTPUTDIR) && \ |
| $(ZIP) -q -r $(JPRT_ARCHIVE_BUNDLE) build dist ) |
| |
| #------------------------------------------------------------------- |
| |
| |
| # |
| # Phonies to avoid accidents. |
| # |
| .PHONY: all build clean clobber debug jprt_build_product jprt_build_debug jprt_build_fastdebug |