Makefile-classic revision 0
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence#
431a83fb29482c5170b3e4026e59bb14849a6707Tinderbox User# Copyright 2007 Sun Microsystems, Inc. All Rights Reserved.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence#
ec5347e2c775f027573ce5648b910361aa926c01Automatic Updater# This code is free software; you can redistribute it and/or modify it
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# under the terms of the GNU General Public License version 2 only, as
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# published by the Free Software Foundation. Sun designates this
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence# particular file as subject to the "Classpath" exception as provided
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# by Sun in the LICENSE file that accompanied this code.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews#
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# This code is distributed in the hope that it will be useful, but WITHOUT
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# version 2 for more details (a copy is included in the LICENSE file that
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# accompanied this code).
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence#
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# You should have received a copy of the GNU General Public License version
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein# 2 along with this work; if not, write to the Free Software Foundation,
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence#
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# CA 95054 USA or visit www.sun.com if you need additional information or
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# have any questions.
6b7257f756eb0530cdf54df9a7fab8d51a5001c3David Lawrence#
6b7257f756eb0530cdf54df9a7fab8d51a5001c3David Lawrence
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence#
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# Makefile for building the langtools workspace.
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington#
ce2be9b7211ab5bacaa10fe74ef35def3a3f6089David Lawrence
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence#
73a691c373488e4f70387a62462cd8ce0d991705David Lawrence# On Solaris, the 'make' utility from Sun will not work with these makefiles.
8f66dad9393ae0724f758c4a51e06ff55c2d1219Brian Wellington# This little rule is only understood by Sun's make, and is harmless
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews# when seen by the GNU make tool. If using Sun's make, this causes the
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence# make command to fail.
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews#
f96b41064bcd427d8125a096fd646c1f068d8ed7David LawrenceSUN_MAKE_TEST:sh = @echo "ERROR: PLEASE USE GNU VERSION OF MAKE"; exit 33
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence#----- cancel implicit rules
f96b41064bcd427d8125a096fd646c1f068d8ed7David Lawrence
e19501436a92cd48eba2ff47d90fa49c661ec8d8Brian Wellington%: %.o
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence%: %.obj
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence%: %.dll
669e9657c731176df235832367f61435f7b83ddfAndreas Gustafsson%: %.c
3db78e0855a8dfc162180880cd70d9c1a03d9301David Lawrence%: %.cc
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.C
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.p
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.f
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.s
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.F
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.r
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.S
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.mod
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington%: %.sh
d32b13e0be7f01020365c83a0bd36483ace4d7c3Mark Andrews%: %,v
d32b13e0be7f01020365c83a0bd36483ace4d7c3Mark Andrews%: RCS/%,v
b493dfe8bce94b05efc0f161238d32f1234c5670Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington#----- imports
b493dfe8bce94b05efc0f161238d32f1234c5670Brian Wellington
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrenceifdef ALT_BOOT_JAVA_HOME
3f96cf3e4f96b36cc1ad2ec7edc5b8e285fced8fBrian Wellington BOOT_JAVA_HOME = $(ALT_BOOT_JAVA_HOME)
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellingtonelse
7318a964ece83f748bc7e9814d8c3a61c2b4d946Mark Andrews ifdef ALT_BOOTDIR
4cd765650776027d05fe7fca248478918e02e63bDavid Lawrence BOOT_JAVA_HOME = $(ALT_BOOTDIR)
4cd765650776027d05fe7fca248478918e02e63bDavid Lawrence else
80b67b3a4f2d9fc7fdd32a50edc67ff189894da2Danny Mayer BOOT_JAVA_HOME=/java/re/jdk/1.5.0/archive/fcs/binaries/solaris-sparc
326bcfa0e2a6b924cb829a0bcc3bf9590ce21ad6Mark Andrews endif
87983da955bf63128de85d180359bdc418516c3cDavid Lawrenceendif
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian WellingtonBOOT_JAVA=$(BOOT_JAVA_HOME)/bin/java
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark AndrewsBOOT_JAVAC=$(BOOT_JAVA_HOME)/bin/javac
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark AndrewsBOOTJAR=$(BOOT_JAVA_HOME)/bin/jar
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellingtonifdef ALT_TESTJAVA_HOME
326bcfa0e2a6b924cb829a0bcc3bf9590ce21ad6Mark Andrews TESTJAVA_HOME = $(ALT_TESTJAVA_HOME)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtonelse
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington TESTJAVA_HOME=/java/re/jdk/1.6.0/archive/fcs/binaries/solaris-sparc
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtonendif
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian WellingtonTESTJAVA=$(TESTJAVA_HOME)/bin/java
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
4144efb39046963989ad002cf88a0c195401100aJeremy Reedifdef ALT_FINDBUGS_HOME
30a4d5b0c23eb7a73d9635a98250560437a42d59David Lawrence FINDBUGS_HOME = $(ALT_FINDBUGS_HOME)
71ca6e64b4d208a090d255eb64c24f945e615ea0Brian Wellingtonelse
73a691c373488e4f70387a62462cd8ce0d991705David Lawrence FINDBUGS_HOME = /java/devtools/share/findbugs/1.1.2-rc4
73a691c373488e4f70387a62462cd8ce0d991705David Lawrenceendif
bfafdac0616107ff32389532e7040567cd84b8aaBrian Wellington
2ba574f329c14376d26d7c0f22c89d7a978a2625Mark AndrewsFINDBUGS = $(FINDBUGS_HOME)/bin/findbugs
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
e7c0d42b11358f08e04316d31c67c23261dcdf36Evan Hunt#----- commands
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian WellingtonCHMOD = chmod
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian WellingtonCP = cp
debd489a44363870f96f75818e89ec27d3cab736Francis DupontECHO = echo # FIXME
debd489a44363870f96f75818e89ec27d3cab736Francis DupontFIND = find
debd489a44363870f96f75818e89ec27d3cab736Francis DupontMKDIR = mkdir
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David LawrenceSED = sed
73a691c373488e4f70387a62462cd8ce0d991705David LawrenceZIP = zip
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence
5b79d154014f87b6c54b1ec2d3912c35b02042a1Mark Andrews#----- locations and deliverables
1d16cf8bb8596c3e4dc1123a5bdf360bf24a272bAutomatic Updater
94b166ffa58ef0ff263563c0550d0b30eb9f7772David LawrenceTOPDIR = ..
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas GustafssonSRC_BIN_DIR = $(TOPDIR)/src/share/bin
94b166ffa58ef0ff263563c0550d0b30eb9f7772David LawrenceSRC_CLASSES_DIR = $(TOPDIR)/src/share/classes
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas Gustafsson
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas GustafssonBUILD_DIR = $(TOPDIR)/build
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas Gustafsson
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas GustafssonCLASSES_DIR = $(BUILD_DIR)/classes
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas GustafssonGENSRC_DIR = $(BUILD_DIR)/gensrc
5fe21da364d4397c9a413fe689ce82dea36a7b29Mark Andrews
5fe21da364d4397c9a413fe689ce82dea36a7b29Mark AndrewsDIST_DIR = $(TOPDIR)/dist
7502c6600645f120434d84d0ce3df7c3585cfe43Mark AndrewsBIN_DIR = $(DIST_DIR)/bin
f29583dca7dc33d6fad6942a6eb4457c694a3974Brian WellingtonLIB_DIR = $(DIST_DIR)/lib
1d16cf8bb8596c3e4dc1123a5bdf360bf24a272bAutomatic Updater
7502c6600645f120434d84d0ce3df7c3585cfe43Mark AndrewsJAVAC_JAR = $(LIB_DIR)/javac.jar
817a7fb62d05222fb287bbcde910ab3669f6d237Mark AndrewsJAVADOC_JAR = $(LIB_DIR)/javadoc.jar
1d16cf8bb8596c3e4dc1123a5bdf360bf24a272bAutomatic UpdaterJAVAH_JAR = $(LIB_DIR)/javah.jar
adfc3ad3ce5db585fdb29d3d6000aa05ba077f13Evan HuntJAVAP_JAR = $(LIB_DIR)/javap.jar
d965c91f959bb31302e0ec4f2012bf332befc150Evan HuntAPT_JAR = $(LIB_DIR)/apt.jar
adfc3ad3ce5db585fdb29d3d6000aa05ba077f13Evan Hunt
d965c91f959bb31302e0ec4f2012bf332befc150Evan HuntCLASSES_JAR = $(DIST_DIR)/classes.jar
d965c91f959bb31302e0ec4f2012bf332befc150Evan HuntSRC_ZIP = $(DIST_DIR)/src.zip
2a71a21346ce6a098b7daf98358d5bdced8e6eb6Mark Andrews
2a71a21346ce6a098b7daf98358d5bdced8e6eb6Mark AndrewsBUILDTOOLSRC_DIR = tools
8b3fb4bded905d65153678f48a006eed5c13b27eAndreas GustafssonBUILDTOOLCLASSES_DIR = $(BUILD_DIR)/toolclasses
0da859c5a7f17298577616577197cc6c857e4579Evan Hunt
0da859c5a7f17298577616577197cc6c857e4579Evan Hunt#-----
7659fdb3aab0a96e10aac67669b6c8d79faef44fjohnd
7659fdb3aab0a96e10aac67669b6c8d79faef44fjohndifndef JDK_MAJOR_VERSION
2855e2772342e369cc8962659beac7b3001b4ec6Evan Hunt JDK_MAJOR_VERSION = 1
2855e2772342e369cc8962659beac7b3001b4ec6Evan Huntendif
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas Gustafsson
f550b4b104d2859539b2ec287600f1dd2215d9fbEvan Huntifndef JDK_MINOR_VERSION
f550b4b104d2859539b2ec287600f1dd2215d9fbEvan Hunt JDK_MINOR_VERSION = 7
b326d7e3a3a50eb65dd06db007d2fddc62606bbfMark Andrewsendif
b326d7e3a3a50eb65dd06db007d2fddc62606bbfMark Andrews
bf13e709db49bb19e0c2e73f0a964fe9d7bea4dfMark Andrewsifndef JDK_MICRO_VERSION
bf13e709db49bb19e0c2e73f0a964fe9d7bea4dfMark Andrews JDK_MICRO_VERSION = 0
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas Gustafssonendif
cf300e03de3df3ff422db922520bf07c686c86daMark Andrews
cf300e03de3df3ff422db922520bf07c686c86daMark Andrewsifndef JDK_VERSION
f7c21e46c4b5fdae516b91374c24a87671f83ea3Andreas Gustafsson JDK_VERSION = $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION)
cf300e03de3df3ff422db922520bf07c686c86daMark Andrewsendif
cf300e03de3df3ff422db922520bf07c686c86daMark Andrews
9e560b59a722d06a62b5aed761e71fec72638a7cBrian Wellingtonifndef MILESTONE
dfceef7e68b56f6970dd2e8eea9980ad16bcc653Brian Wellington MILESTONE = internal
9e560b59a722d06a62b5aed761e71fec72638a7cBrian Wellingtonendif
5455f30a7532738d750252c00e649890c694ee30Brian Wellington
5455f30a7532738d750252c00e649890c694ee30Brian Wellington# RELEASE is JDK_VERSION and -MILESTONE if MILESTONE is set
60213f2815a7e6584a2285546d05633fa7b6f5b4Mark Andrewsifneq ($(MILESTONE),fcs)
c30d291128e099a284fa6272b91b2bd64519a209Mark Andrews RELEASE = $(JDK_VERSION)-$(MILESTONE)$(BUILD_VARIANT_RELEASE)
6150d3cb666a58d5e3a15275562c9fc5c5b6b2d8Evan Huntelse
6150d3cb666a58d5e3a15275562c9fc5c5b6b2d8Evan Hunt RELEASE = $(JDK_VERSION)$(BUILD_VARIANT_RELEASE)
b7ce2258cab8eadbd834de8ca9d0b6f4c71f8c48Brian Wellingtonendif
79da8302e8d78f51db5243ba6b2f7de87e667132Mark Andrews
6150d3cb666a58d5e3a15275562c9fc5c5b6b2d8Evan Hunt# FULL_VERSION is RELEASE and -BUILD_NUMBER if BUILD_NUMBER is set
6150d3cb666a58d5e3a15275562c9fc5c5b6b2d8Evan Huntifdef BUILD_NUMBER
6150d3cb666a58d5e3a15275562c9fc5c5b6b2d8Evan Hunt FULL_VERSION = $(RELEASE)-$(BUILD_NUMBER)
6150d3cb666a58d5e3a15275562c9fc5c5b6b2d8Evan Huntelse
d2ef84e07b67e72a4bd9c729c6b8228067d17584Mark Andrews BUILD_NUMBER = b00
d2ef84e07b67e72a4bd9c729c6b8228067d17584Mark Andrews USER_RELEASE_SUFFIX := $(shell echo $(USER)_`date '+%d_%b_%Y_%H_%M' | tr "A-Z" "a-z"`)
5f1dc0d505d7f53f1e89a1a41e4c2415af4934feEvan Hunt FULL_VERSION = $(RELEASE)-$(USER_RELEASE_SUFFIX)-$(BUILD_NUMBER)
86dcc4005887f91d23d970d4574a8f6afa7e28d2Evan Huntendif
5f1dc0d505d7f53f1e89a1a41e4c2415af4934feEvan Hunt
86dcc4005887f91d23d970d4574a8f6afa7e28d2Evan Hunt#----- useful macros
62ec9fd1681ffae7d6b0d54618599ecf650e3100Mark Andrews
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan HuntTOOLS = javac javadoc javah javap apt
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan Hunt
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan HuntSOURCE_LEVEL = 5
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan HuntBOOTSTRAP_TARGET_LEVEL = 5
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan HuntTARGET_LEVEL = 6
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan Hunt
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan Huntifndef TARGET_JAVA
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan Hunt TARGET_JAVA = java
9c03f13e18c1b0c32f62391a17300378605bbc7bEvan Huntendif
9bd876a683709be588f6fac6781a76fdd57b2f08Mark Andrews
9bd876a683709be588f6fac6781a76fdd57b2f08Mark AndrewsNO_PROPRIETARY_API_WARNINGS = -XDignore.symbol.file=true
9bd876a683709be588f6fac6781a76fdd57b2f08Mark Andrews
9bd876a683709be588f6fac6781a76fdd57b2f08Mark AndrewsSELF = $(lastword $(MAKEFILE_LIST))
9bd876a683709be588f6fac6781a76fdd57b2f08Mark Andrews
6150d3cb666a58d5e3a15275562c9fc5c5b6b2d8Evan Hunt#-----
94b166ffa58ef0ff263563c0550d0b30eb9f7772David Lawrence
87983da955bf63128de85d180359bdc418516c3cDavid Lawrence# the default is to generate the following:
87983da955bf63128de85d180359bdc418516c3cDavid Lawrence# dist/{bin,lib}:
87983da955bf63128de85d180359bdc418516c3cDavid Lawrence# lang tools compiled to run on the target JDK
73a691c373488e4f70387a62462cd8ce0d991705David Lawrence
73a691c373488e4f70387a62462cd8ce0d991705David Lawrencedefault:
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence $(MAKE) -f $(SELF) \
20bd7b4bbf2437ef2f9109edca168ab0ce8445b3David Lawrence MILESTONE=bootstrap \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington TARGET_LEVEL=$(BOOTSTRAP_TARGET_LEVEL) \
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington TARGET_JAVA=$(BOOT_JAVA_HOME)/bin/java \
b493dfe8bce94b05efc0f161238d32f1234c5670Brian Wellington GENSRC_DIR=$(BUILD_DIR)/bootstrap/gensrc \
7389e8330d62a059b8923fb8ca6f933caeb559d9Mark Andrews CLASSES_DIR=$(BUILD_DIR)/bootstrap/classes \
b493dfe8bce94b05efc0f161238d32f1234c5670Brian Wellington BIN_DIR=$(BUILD_DIR)/bootstrap/bin \
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews LIB_DIR=$(BUILD_DIR)/bootstrap/lib \
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews $(BUILD_DIR)/bootstrap/lib/javac.jar \
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews $(BUILD_DIR)/bootstrap/bin/javac
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews $(MAKE) -f $(SELF) \
1d16cf8bb8596c3e4dc1123a5bdf360bf24a272bAutomatic Updater BOOT_JAVAC=$(BUILD_DIR)/bootstrap/bin/javac \
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews tools
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews# for jdk, we generate the following:
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews# dist/bootstrap/{bin,lib}:
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews# lang tools compiled to run on the boot JDK
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews# dist/lib/classes.jar:
4423c99613db1399dbb5c51e86ef0d351a1418c2Mark Andrews# lang tools recompiled to run on the target JDK,
b493dfe8bce94b05efc0f161238d32f1234c5670Brian Wellington# ready for inclusion in rt.jar and tools.jar
b493dfe8bce94b05efc0f161238d32f1234c5670Brian Wellington# dist/lib/src.zip
b493dfe8bce94b05efc0f161238d32f1234c5670Brian Wellington# .properties and .java files for classes in classes.jar,
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington# ready for jdk src.zip
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtonjdk:
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(MAKE) -f $(SELF) \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington MILESTONE=bootstrap \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington TARGET_LEVEL=$(BOOTSTRAP_TARGET_LEVEL) \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington TARGET_JAVA=$(BOOT_JAVA_HOME)/bin/java \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington GENSRC_DIR=$(BUILD_DIR)/bootstrap/gensrc \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington CLASSES_DIR=$(BUILD_DIR)/bootstrap/classes \
71ca6e64b4d208a090d255eb64c24f945e615ea0Brian Wellington BIN_DIR=$(DIST_DIR)/bootstrap/bin \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington LIB_DIR=$(DIST_DIR)/bootstrap/lib \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington tools
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(MAKE) -f $(SELF) \
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews BOOT_JAVAC=$(DIST_DIR)/bootstrap/bin/javac \
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews LIB_DIR=$(BUILD_DIR)/jdk/lib \
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews $(DIST_DIR)/lib/classes.jar \
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews $(DIST_DIR)/lib/src.zip
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtontools: $(TOOLS:%=$(LIB_DIR)/%.jar) $(TOOLS:%=$(BIN_DIR)/%)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtonclean:
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(RM) -r $(BUILD_DIR)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtonreally-clean: clean
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(RM) -r $(DIST_DIR)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
e4cd5a1e5d0358abeee7618b02b4592c055d957fBrian Wellingtonjprt_product_build \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtonjprt_debug_build \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellingtonjprt_fastdebug_build: lib
71ca6e64b4d208a090d255eb64c24f945e615ea0Brian Wellington
71ca6e64b4d208a090d255eb64c24f945e615ea0Brian Wellington#----- javac
73a691c373488e4f70387a62462cd8ce0d991705David Lawrence
e1d05d323526e7e65df13a6d3dfbec30f6ddb500Brian WellingtonJAVAC_DIRS = \
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews javax/annotation/processing \
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews javax/lang/model \
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews javax/tools \
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews com/sun/source \
287910778c57d4836a52b03b697c2ef342d0eaa9Francis Dupont com/sun/tools/javac
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian WellingtonJAVAC_RESOURCE_FILES = \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVAC_DIRS)) -name SCCS -prune -o -name \*.properties -print )
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian WellingtonJAVAC_JAVA_FILES = \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVAC_DIRS)) -name SCCS -prune -o -name \*.java -print ) \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(JAVAC_RESOURCE_FILES)) \
73a691c373488e4f70387a62462cd8ce0d991705David Lawrence $(GENSRC_DIR)/com/sun/tools/javac/resources/version.java
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt$(JAVAC_JAR): $(JAVAC_JAVA_FILES)
73a691c373488e4f70387a62462cd8ce0d991705David Lawrence $(MKDIR) -p $(CLASSES_DIR) $(@D)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(BOOT_JAVAC) -d $(CLASSES_DIR) -target $(TARGET_LEVEL) $(NO_PROPRIETARY_API_WARNINGS) $(JAVAC_JAVA_FILES)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington ( $(ECHO) Main-Class: com.sun.tools.javac.Main ) > $(BUILD_DIR)/javac.mf
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(BOOTJAR) -cfm $@ $(BUILD_DIR)/javac.mf $(patsubst %,-C $(CLASSES_DIR) %, $(JAVAC_DIRS))
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington#----- javadoc
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington### FIXME -- javadoc has a couple of extra non-property resource files
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington### that need to be included
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian WellingtonJAVADOC_DIRS = \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington com/sun/javadoc \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington com/sun/tools/doclets \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington com/sun/tools/javadoc
e4cd5a1e5d0358abeee7618b02b4592c055d957fBrian Wellington
927e4c9fecf448bf3894c68fcaf9dc2f89557f3aEvan HuntJAVADOC_RESOURCE_FILES = \
e7c0d42b11358f08e04316d31c67c23261dcdf36Evan Hunt $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVADOC_DIRS)) -name SCCS -prune -o -name \*.properties -print )
e7c0d42b11358f08e04316d31c67c23261dcdf36Evan Hunt
927e4c9fecf448bf3894c68fcaf9dc2f89557f3aEvan HuntJAVADOC_JAVA_FILES = \
e4cd5a1e5d0358abeee7618b02b4592c055d957fBrian Wellington $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVADOC_DIRS)) -name SCCS -prune -o -name \*.java -print ) \
e4cd5a1e5d0358abeee7618b02b4592c055d957fBrian Wellington $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(JAVADOC_RESOURCE_FILES))
e4cd5a1e5d0358abeee7618b02b4592c055d957fBrian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington$(JAVADOC_JAR): $(JAVADOC_JAVA_FILES) $(JAVAC_JAR)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(MKDIR) -p $(CLASSES_DIR) $(@D)
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews $(BOOT_JAVAC) -sourcepath "" -classpath $(JAVAC_JAR) -d $(CLASSES_DIR) -target $(TARGET_LEVEL) $(JAVADOC_JAVA_FILES)
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews ( $(ECHO) Main-Class: com.sun.tools.javadoc.Main ; $(ECHO) Class-Path: javac.jar ) > $(BUILD_DIR)/javadoc.mf
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews $(BOOTJAR) -cfm $@ $(BUILD_DIR)/javadoc.mf $(patsubst %,-C $(CLASSES_DIR) %, $(JAVADOC_DIRS))
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews
f07fe5a1ac9d1345eb7a36a0bc38716a03e25f61Mark Andrews#----- javah
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian WellingtonJAVAH_DIRS = \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews com/sun/tools/javah
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark AndrewsJAVAH_RESOURCE_FILES = \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVAH_DIRS)) -name SCCS -prune -o -name \*.properties -print )
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark AndrewsJAVAH_JAVA_FILES = \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVAH_DIRS)) -name SCCS -prune -o -name \*.java -print ) \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(JAVAH_RESOURCE_FILES))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(JAVAH_JAR): $(JAVAH_JAVA_FILES) $(JAVADOC_JAR)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(MKDIR) -p $(CLASSES_DIR) $(@D)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOT_JAVAC) -sourcepath "" -classpath $(CLASSES_DIR) -d $(CLASSES_DIR) -target $(TARGET_LEVEL) $(JAVAH_JAVA_FILES)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews ( $(ECHO) Main-Class: com.sun.tools.javah.Main ; $(ECHO) Class-Path: javadoc.jar ) > $(BUILD_DIR)/javah.mf
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOTJAR) -cfm $@ $(BUILD_DIR)/javah.mf $(patsubst %,-C $(CLASSES_DIR) %, $(JAVAH_DIRS))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews#----- javap
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark AndrewsJAVAP_DIRS = \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews sun/tools/javap
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark AndrewsJAVAP_RESOURCE_FILES = \
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVAP_DIRS)) -name SCCS -prune -o -name \*.properties -print )
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews
4eb998928b9aef0ceda42d7529980d658138698aEvan HuntJAVAP_JAVA_FILES = \
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(JAVAP_DIRS)) -name SCCS -prune -o -name \*.java -print ) \
c4f9e613e12f03795bee18cf2ca8e6a9d39d6468Mark Andrews $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(JAVAP_RESOURCE_FILES))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(JAVAP_JAR): $(JAVAP_JAVA_FILES) \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(JAVAP_RESOURCE_FILES))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(MKDIR) -p $(CLASSES_DIR)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOT_JAVAC) -sourcepath "" -classpath $(CLASSES_DIR) -d $(CLASSES_DIR) -target $(TARGET_LEVEL) $(JAVAP_JAVA_FILES)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews ( $(ECHO) Main-Class: sun.tools.javap.Main ) > $(BUILD_DIR)/javap.mf
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOTJAR) -cfm $@ $(BUILD_DIR)/javap.mf $(patsubst %,-C $(CLASSES_DIR) %, $(JAVAP_DIRS))
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt#----- apt
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark AndrewsAPT_DIRS = \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews com/sun/mirror \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews com/sun/tools/apt
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark AndrewsAPT_RESOURCE_FILES = \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(APT_DIRS)) -name SCCS -prune -o -name \*.properties -print )
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark AndrewsAPT_JAVA_FILES = \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(shell find $(patsubst %,$(SRC_CLASSES_DIR)/%,$(APT_DIRS)) -name SCCS -prune -o -name \*.java -print ) \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(APT_RESOURCE_FILES))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(APT_JAR): $(APT_JAVA_FILES) $(JAVAC_JAR) \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(APT_RESOURCE_FILES))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(MKDIR) -p $(CLASSES_DIR) $(@D)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOT_JAVAC) -sourcepath "" -classpath $(CLASSES_DIR) -d $(CLASSES_DIR) -target $(TARGET_LEVEL) $(NO_PROPRIETARY_API_WARNINGS) \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(APT_JAVA_FILES) \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(patsubst $(SRC_CLASSES_DIR)/%.properties,$(GENSRC_DIR)/%.java,$(APT_RESOURCE_FILES))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews ( $(ECHO) Main-Class: com.sun.tools.apt.Main ; $(ECHO) Class-Path: javac.jar ) > $(BUILD_DIR)/apt.mf
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOTJAR) -cfm $@ $(BUILD_DIR)/apt.mf $(patsubst %,-C $(CLASSES_DIR) %, $(APT_DIRS))
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews#-----
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrewsbuild-tools: $(BUILDTOOLCLASSES_DIR)/CompileProperties/CompileProperties.class
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(GENSRC_DIR)/%.java: $(SRC_CLASSES_DIR)/%.properties $(BUILDTOOLCLASSES_DIR)/CompileProperties/CompileProperties.class
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt $(MKDIR) -p $(@D)
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt $(BOOT_JAVA) -cp $(BUILDTOOLCLASSES_DIR)/CompileProperties CompileProperties $< $(patsubst $(CLASSES_DIR)/%.class,$(GENSRC_DIR)/%.java,$@)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(GENSRC_DIR)/%.java: $(GENSRC_DIR)/%.properties $(BUILDTOOLCLASSES_DIR)/CompileProperties/CompileProperties.class
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(MKDIR) -p $(@D)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOT_JAVA) -cp $(BUILDTOOLCLASSES_DIR)/CompileProperties CompileProperties $< $(patsubst $(CLASSES_DIR)/%.class,$(GENSRC_DIR)/%.java,$@)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(GENSRC_DIR)/%.properties: $(SRC_CLASSES_DIR)/%.properties-template
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(MKDIR) -p $(@D)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(SED) -e 's/$$(JDK_VERSION)/$(JDK_VERSION)/' \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews -e 's/$$(FULL_VERSION)/$(FULL_VERSION)/' \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews -e 's/$$(RELEASE)/$(RELEASE)/' \
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews < $< > $@
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(BUILDTOOLCLASSES_DIR)/%.class : $(BUILDTOOLSRC_DIR)/%.java
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(MKDIR) -p $(@D)
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews $(BOOT_JAVAC) -d $(@D) $<
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews#----- all classes
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews$(DIST_DIR)/%/classes.jar: $(JAVAC_JAR) $(JAVADOC_JAR) $(JAVAH_JAR) $(JAVAP_JAR) $(APT_JAR)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(MKDIR) -p $(@D)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(BOOTJAR) -cf $@ -C $(CLASSES_DIR) .
bcdf37e0ff7d73310b7bf247d755194a5718ba38Mark Andrews
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington#----- src.zip
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian WellingtonSRC_ZIP_FILES = $(shell $(FIND) $(SRC_CLASSES_DIR) \( -name SCCS -o -name \*-template \) -prune -o -type f -print )
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington$(DIST_DIR)/%/src.zip: $(SRC_ZIP_FILES)
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington abs_src_zip=`cd $(@D) ; pwd`/$(@F) ; \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington ( cd $(SRC_CLASSES_DIR) ; $(FIND) . \( -name SCCS -o -name \*-template \) -prune -o -type f -print | $(ZIP) -q $$abs_src_zip -@ ) ; \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington ( cd $(SRC_CLASSES_DIR) ; $(FIND) . -name SCCS -prune -o -name \*-template -print | $(SED) -e 's/-template//' ) | ( cd $(GENSRC_DIR) ; $(ZIP) -q $$abs_src_zip -@ )
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington#----- bin files
71ca6e64b4d208a090d255eb64c24f945e615ea0Brian Wellington
71ca6e64b4d208a090d255eb64c24f945e615ea0Brian Wellington$(BIN_DIR)/%: $(SRC_BIN_DIR)/launcher.sh-template
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington $(MKDIR) -p $(@D)
bcdf37e0ff7d73310b7bf247d755194a5718ba38Mark Andrews $(SED) -e 's|#PROGRAM#|$(@F)|' -e 's|#TARGET_JAVA#|$(TARGET_JAVA)|' $< > $@
bcdf37e0ff7d73310b7bf247d755194a5718ba38Mark Andrews $(CHMOD) +x $@
420e5e1022ff5ca4697ed5286462eeaf03614e53Brian Wellington
bcdf37e0ff7d73310b7bf247d755194a5718ba38Mark Andrews#-----
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington
bcdf37e0ff7d73310b7bf247d755194a5718ba38Mark Andrewsfindbugs: $(BUILD_DIR)/findbugs.txt
420e5e1022ff5ca4697ed5286462eeaf03614e53Brian Wellington
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington$(BUILD_DIR)/findbugs.txt: $(CLASSES_JAR)
420e5e1022ff5ca4697ed5286462eeaf03614e53Brian Wellington $(MKDIR) -p $(@D)
bcdf37e0ff7d73310b7bf247d755194a5718ba38Mark Andrews $(FINDBUGS) -textui -javahome $(BOOT_JAVA_HOME) -high -emacs -outputFile $@ $<
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington#-----
bcdf37e0ff7d73310b7bf247d755194a5718ba38Mark Andrews
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellingtonquick-check: $(patsubst %, $(DIST_LIB_DIR)/%.jar, $(TOOLS))
b6b9d8b8434e4eaab74b69cd14fcacf448055ca5Brian Wellington $(TESTJAVA) -jar $(JAVAC_JAR) -version
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington - $(TESTJAVA) -jar $(JAVADOC_JAR) -version
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(TESTJAVA) -jar $(JAVAH_JAR) -version
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews - $(TESTJAVA) -jar $(JAVAP_JAR) -version
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington $(TESTJAVA) -jar $(APT_JAR) -version
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington#-----
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews.PHONY: \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington all \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington build \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington build-tools \
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt clean \
4eb998928b9aef0ceda42d7529980d658138698aEvan Hunt default \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington findbugs \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington jprt_product_build \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington jprt_debug_build \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington jprt_fastdebug_build \
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington tools
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington
1d92d8a2456b23842a649b6104c60a9d6ea25333Brian Wellington