# Makefile.in generated by automake 1.12.6 from Makefile.am.
# @configure_input@

# Copyright (C) 1994-2012 Free Software Foundation, Inc.

# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

@SET_MAKE@

# Dependencies
VPATH = @srcdir@
am__make_dryrun = \
  { \
    am__dry=no; \
    case $$MAKEFLAGS in \
      *\\[\ \	]*) \
        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
      *) \
        for am__flg in $$MAKEFLAGS; do \
          case $$am__flg in \
            *=*|--*) ;; \
            *n*) am__dry=yes; break;; \
          esac; \
        done;; \
    esac; \
    test $$am__dry = yes; \
  }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@

#PR43148 - javac fails due to missing java.util.regex.Matcher.quoteReplacement
@LACKS_JAVA_UTIL_REGEX_MATCHER_QUOTEREPLACEMENT_TRUE@am__append_1 = \
@LACKS_JAVA_UTIL_REGEX_MATCHER_QUOTEREPLACEMENT_TRUE@	$(SHARE)/java/util/regex/Matcher.java


#PR48033 - Missing javax.management.remote.JMXServiceURL
@LACKS_JAVAX_MANAGEMENT_REMOTE_JMXSERVICEURL_TRUE@am__append_2 = \
@LACKS_JAVAX_MANAGEMENT_REMOTE_JMXSERVICEURL_TRUE@	$(SHARE)/javax/management/remote/JMXServiceURL.java


#PR48034 - javax.management.modelmbean.ModelMBeanInfo
@LACKS_JAVAX_MANAGEMENT_MODELMBEAN_MODELMBEANINFO_TRUE@am__append_3 = \
@LACKS_JAVAX_MANAGEMENT_MODELMBEAN_MODELMBEANINFO_TRUE@	$(SHARE)/javax/management/modelmbean/ModelMBeanInfo.java


#PR42003 - Missing javax.swing.plaf.basic.BasicDirectoryModel methods cause OpenJDK build failure 
@LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_TRUE@am__append_4 = \
@LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_TRUE@	$(SHARE)/javax/swing/plaf/basic/BasicDirectoryModel.java


#PR56553 - SSLParameters support missing
@LACKS_JAVAX_NET_SSL_SSLCONTEXT_GETDEFAULTSSLPARAMETERS_TRUE@am__append_5 = \
@LACKS_JAVAX_NET_SSL_SSLCONTEXT_GETDEFAULTSSLPARAMETERS_TRUE@	$(SHARE)/javax/net/ssl/SSLContext.java

@LACKS_JAVAX_NET_SSL_SSLENGINE_SETSSLPARAMETERS_TRUE@am__append_6 = \
@LACKS_JAVAX_NET_SSL_SSLENGINE_SETSSLPARAMETERS_TRUE@	$(SHARE)/javax/net/ssl/SSLEngine.java


#PR57008 - Add missing SslRMIServerSocketFactory constructor from 7
@LACKS_JAVAX_RMI_SSL_SSLRMISERVERSOCKETFACTORY_7_TRUE@am__append_7 = \
@LACKS_JAVAX_RMI_SSL_SSLRMISERVERSOCKETFACTORY_7_TRUE@	$(SHARE)/javax/rmi/ssl/SslRMIServerSocketFactory.java


# Conditional patches
@WITH_RHINO_TRUE@am__append_8 = \
@WITH_RHINO_TRUE@	patches/rhino.patch

@BUILD_CACAO_TRUE@am__append_9 = \
@BUILD_CACAO_TRUE@	patches/cacao/launcher.patch \
@BUILD_CACAO_TRUE@	patches/cacao/memory.patch

@BUILD_CACAO_FALSE@@USING_CACAO_TRUE@am__append_10 = \
@BUILD_CACAO_FALSE@@USING_CACAO_TRUE@	patches/cacao/memory.patch

@ENABLE_CACAO_TRUE@am__append_11 = \
@ENABLE_CACAO_TRUE@	patches/cacao/ignore-tests.patch

@ENABLE_PULSE_JAVA_TRUE@am__append_12 = \
@ENABLE_PULSE_JAVA_TRUE@	patches/pulse-soundproperties.patch

@ENABLE_SYSTEMTAP_TRUE@am__append_13 = \
@ENABLE_SYSTEMTAP_TRUE@	patches/systemtap_gc.patch

@ENABLE_NSS_TRUE@am__append_14 = patches/nss-config.patch
@WITH_PAX_TRUE@am__append_15 = patches/test_gamma.patch
@DISABLE_BOOTSTRAP_TOOLS_FALSE@am__append_16 = \
@DISABLE_BOOTSTRAP_TOOLS_FALSE@	patches/boot/bootstrap-tools.patch

@VM_SUPPORTS_XBOOTCLASSPATH_FALSE@am__append_17 = \
@VM_SUPPORTS_XBOOTCLASSPATH_FALSE@	patches/boot/xbootclasspath.patch

@WITH_PAX_FALSE@am__append_18 = patches/boot/test_gamma.patch
@CP39408_JAVAH_TRUE@am__append_19 = patches/boot/pr39408.patch
@CP40188_JAVAH_TRUE@am__append_20 = patches/boot/pr40188.patch \
@CP40188_JAVAH_TRUE@	patches/boot/javah.patch

@CP45526_JAVAH_TRUE@am__append_21 = patches/boot/explicit-inner-class-headers.patch
@CP40616_TRUE@am__append_22 = patches/boot/pr40616.patch
@LACKS_JAVA_UTIL_SCANNER_TRUE@am__append_23 = $(SCANNER_PATCHES)
@CP40630_TRUE@@LACKS_JAVA_UTIL_SCANNER_FALSE@am__append_24 = $(SCANNER_PATCHES)
@JAVAC_LACKS_DIAMOND_TRUE@am__append_25 = patches/boot/ecj-diamond.patch
@JAVAC_LACKS_DIAMOND_FALSE@@USING_CACAO_TRUE@am__append_26 = patches/boot/compile-for-7-cacao-mem.patch
@BUILD_CACAO_TRUE@@JAVAC_LACKS_DIAMOND_FALSE@@USING_CACAO_FALSE@am__append_27 = patches/boot/compile-for-7-cacao-mem.patch
@BUILD_CACAO_FALSE@@JAVAC_LACKS_DIAMOND_FALSE@@USING_CACAO_FALSE@am__append_28 = patches/boot/compile-for-7.patch
@DTDTYPE_QNAME_TRUE@am__append_29 = patches/boot/jaxws-getdtdtype.patch
@NO_BYTECODE7_TRUE@am__append_30 = patches/boot/use_target_6_for_bootstrap_classes.patch 
@ENABLE_CACAO_TRUE@am__append_31 = \
@ENABLE_CACAO_TRUE@	ALT_HOTSPOT_IMPORT_PATH="$(CACAO_IMPORT_PATH)"

@ENABLE_JAMVM_TRUE@am__append_32 = \
@ENABLE_JAMVM_TRUE@	ALT_HOTSPOT_IMPORT_PATH="$(JAMVM_IMPORT_PATH)"

@DISABLE_OPTIMIZATIONS_TRUE@am__append_33 = \
@DISABLE_OPTIMIZATIONS_TRUE@	NO_OPTIMIZATIONS="true" \
@DISABLE_OPTIMIZATIONS_TRUE@	CC_NO_OPT="-O0 -g"

@ENABLE_DOCS_FALSE@am__append_34 = \
@ENABLE_DOCS_FALSE@	NO_DOCS="true"

@USE_ALT_JAR_TRUE@am__append_35 = \
@USE_ALT_JAR_TRUE@	ALT_JAR_CMD="$(ALT_JAR_CMD)"

@HAS_HOTSPOT_REVISION_TRUE@am__append_36 = \
@HAS_HOTSPOT_REVISION_TRUE@	HOTSPOT_BUILD_VERSION="$(HOTSPOT_REVISION)"

@WITH_RHINO_TRUE@am__append_37 = \
@WITH_RHINO_TRUE@	RHINO_JAR="$(abs_top_builddir)/rhino/rhino.jar"

@USE_SYSTEM_ZLIB_TRUE@am__append_38 = \
@USE_SYSTEM_ZLIB_TRUE@	SYSTEM_ZLIB="true" \
@USE_SYSTEM_ZLIB_TRUE@	ZLIB_LIBS="${ZLIB_LIBS}" \
@USE_SYSTEM_ZLIB_TRUE@	ZLIB_CFLAGS="${ZLIB_CFLAGS}"

@USE_SYSTEM_LCMS_TRUE@am__append_39 = \
@USE_SYSTEM_LCMS_TRUE@	USE_SYSTEM_LCMS="true" \
@USE_SYSTEM_LCMS_TRUE@	LCMS_LIBS="${LCMS2_LIBS}" \
@USE_SYSTEM_LCMS_TRUE@	LCMS_CFLAGS="${LCMS2_CFLAGS}"

@USE_SYSTEM_JPEG_TRUE@am__append_40 = \
@USE_SYSTEM_JPEG_TRUE@	USE_SYSTEM_JPEG="true" \
@USE_SYSTEM_JPEG_TRUE@	JPEG_LIBS="${JPEG_LIBS}" \
@USE_SYSTEM_JPEG_TRUE@	JPEG_CFLAGS="${JPEG_CFLAGS}"

@USE_SYSTEM_PNG_TRUE@am__append_41 = \
@USE_SYSTEM_PNG_TRUE@	USE_SYSTEM_PNG="true" \
@USE_SYSTEM_PNG_TRUE@	PNG_LIBS="${PNG_LIBS}" \
@USE_SYSTEM_PNG_TRUE@	PNG_CFLAGS="${PNG_CFLAGS}"

@USE_SYSTEM_GIF_TRUE@am__append_42 = \
@USE_SYSTEM_GIF_TRUE@	USE_SYSTEM_GIF="true" \
@USE_SYSTEM_GIF_TRUE@	GIF_LIBS="${GIF_LIBS}" \
@USE_SYSTEM_GIF_TRUE@	GIF_CFLAGS="${GIF_CFLAGS}"

@USE_SYSTEM_GTK_TRUE@am__append_43 = \
@USE_SYSTEM_GTK_TRUE@	USE_SYSTEM_GTK="true" \
@USE_SYSTEM_GTK_TRUE@	GTK_LIBS="${GTK_LIBS}" \
@USE_SYSTEM_GTK_TRUE@	GTK_CFLAGS="${GTK_CFLAGS}"

@USE_SYSTEM_GIO_TRUE@am__append_44 = \
@USE_SYSTEM_GIO_TRUE@	USE_SYSTEM_GIO="true" \
@USE_SYSTEM_GIO_TRUE@	GIO_LIBS="${GIO_LIBS}" \
@USE_SYSTEM_GIO_TRUE@	GIO_CFLAGS="${GIO_CFLAGS}"

@USE_SYSTEM_FONTCONFIG_TRUE@am__append_45 = \
@USE_SYSTEM_FONTCONFIG_TRUE@	USE_SYSTEM_FONTCONFIG="true" \
@USE_SYSTEM_FONTCONFIG_TRUE@	FONTCONFIG_LIBS="${FONTCONFIG_LIBS}" \
@USE_SYSTEM_FONTCONFIG_TRUE@	FONTCONFIG_CFLAGS="${FONTCONFIG_CFLAGS}"

@USE_SYSCALL_COMPILATION_TRUE@am__append_46 = \
@USE_SYSCALL_COMPILATION_TRUE@	COMPILE_AGAINST_SYSCALLS="true"

@ENABLE_JAR_COMPRESSION_TRUE@am__append_47 = \
@ENABLE_JAR_COMPRESSION_TRUE@	COMPRESS_JARS="true"

@ADD_SHARK_BUILD_TRUE@am__append_48 = \
@ADD_SHARK_BUILD_TRUE@	--enable-shark

subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
	$(srcdir)/Makefile.in $(srcdir)/javac.in $(srcdir)/javah.in \
	$(srcdir)/javap.in $(srcdir)/nss.cfg.in \
	$(srcdir)/pax-mark-vm.in \
	$(srcdir)/remove-intree-libraries.sh.in \
	$(srcdir)/tz.properties.in $(top_srcdir)/configure \
	$(top_srcdir)/tapset/hotspot.stp.in \
	$(top_srcdir)/tapset/hotspot_gc.stp.in \
	$(top_srcdir)/tapset/hotspot_jni.stp.in \
	$(top_srcdir)/tapset/jstack.stp.in AUTHORS COPYING ChangeLog \
	INSTALL NEWS config.guess config.sub install-sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
	$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
 configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES = nss.cfg javac javap javah tz.properties \
	pax-mark-vm remove-intree-libraries.sh tapset/hotspot.stp \
	tapset/hotspot_jni.stp tapset/jstack.stp tapset/hotspot_gc.stp
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
  case $$AM_UPDATE_INFO_DIR in \
    n|no|NO) false;; \
    *) (install-info --version) >/dev/null 2>&1;; \
  esac
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
  if test -d "$(distdir)"; then \
    find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
      && rm -rf "$(distdir)" \
      || { sleep 5 && rm -rf "$(distdir)"; }; \
  else :; fi
am__post_remove_distdir = $(am__remove_distdir)
DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best
DIST_TARGETS = dist-gzip
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
  | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ABS_CLIENT_LIBJVM_SO = @ABS_CLIENT_LIBJVM_SO@
ABS_JAVA_HOME_DIR = @ABS_JAVA_HOME_DIR@
ABS_SERVER_LIBJVM_SO = @ABS_SERVER_LIBJVM_SO@
ACLOCAL = @ACLOCAL@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
ALT_CACAO_SRC_DIR = @ALT_CACAO_SRC_DIR@
ALT_CACAO_SRC_ZIP = @ALT_CACAO_SRC_ZIP@
ALT_CORBA_SRC_ZIP = @ALT_CORBA_SRC_ZIP@
ALT_HOTSPOT_SRC_ZIP = @ALT_HOTSPOT_SRC_ZIP@
ALT_JAMVM_SRC_ZIP = @ALT_JAMVM_SRC_ZIP@
ALT_JAR_CMD = @ALT_JAR_CMD@
ALT_JAXP_SRC_ZIP = @ALT_JAXP_SRC_ZIP@
ALT_JAXWS_SRC_ZIP = @ALT_JAXWS_SRC_ZIP@
ALT_JDK_SRC_ZIP = @ALT_JDK_SRC_ZIP@
ALT_LANGTOOLS_SRC_ZIP = @ALT_LANGTOOLS_SRC_ZIP@
ALT_OPENJDK_SRC_ZIP = @ALT_OPENJDK_SRC_ZIP@
AMTAR = @AMTAR@
ANT = @ANT@
ARCHFLAG = @ARCHFLAG@
ARCH_PREFIX = @ARCH_PREFIX@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BUILD_ARCH_DIR = @BUILD_ARCH_DIR@
BUILD_OS_DIR = @BUILD_OS_DIR@
CACAO_IMPORT_PATH = @CACAO_IMPORT_PATH@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CHMOD = @CHMOD@

# configure script arguments, quoted in single quotes
CONFIGURE_ARGS = @CONFIGURE_ARGS@
CPIO = @CPIO@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CUPS_LIBS = @CUPS_LIBS@
CXX = @CXX@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFAULT_LIBDIR = @DEFAULT_LIBDIR@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DIST_ID = @DIST_ID@
DIST_NAME = @DIST_NAME@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
ECJ = @ECJ@
ECJ_JAR = @ECJ_JAR@
EGREP = @EGREP@
ENABLE_CACAO = @ENABLE_CACAO@
ENABLE_JAMVM = @ENABLE_JAMVM@
ENABLE_SYSCALL_COMPILATION = @ENABLE_SYSCALL_COMPILATION@
ENABLE_SYSTEM_FONTCONFIG = @ENABLE_SYSTEM_FONTCONFIG@
ENABLE_SYSTEM_GIF = @ENABLE_SYSTEM_GIF@
ENABLE_SYSTEM_GIO = @ENABLE_SYSTEM_GIO@
ENABLE_SYSTEM_GTK = @ENABLE_SYSTEM_GTK@
ENABLE_SYSTEM_JPEG = @ENABLE_SYSTEM_JPEG@
ENABLE_SYSTEM_LCMS = @ENABLE_SYSTEM_LCMS@
ENABLE_SYSTEM_PNG = @ENABLE_SYSTEM_PNG@
ENABLE_SYSTEM_ZLIB = @ENABLE_SYSTEM_ZLIB@
ENABLE_WARNINGS = @ENABLE_WARNINGS@
EXEEXT = @EXEEXT@
FASTJAR = @FASTJAR@
FILE = @FILE@
FIND = @FIND@
FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@
FONTCONFIG_LIBS = @FONTCONFIG_LIBS@
FREETYPE2_CFLAGS = @FREETYPE2_CFLAGS@
FREETYPE2_LIBS = @FREETYPE2_LIBS@
GAWK = @GAWK@
GCJ = @GCJ@
GETCONF = @GETCONF@
GIF_LIBS = @GIF_LIBS@
GIO_CFLAGS = @GIO_CFLAGS@
GIO_LIBS = @GIO_LIBS@
GREP = @GREP@
GTK_CFLAGS = @GTK_CFLAGS@
GTK_LIBS = @GTK_LIBS@
GZIP = @GZIP@
HG = @HG@
HGREV = @HGREV@
HOTSPOT_REVISION = @HOTSPOT_REVISION@
HSBUILD = @HSBUILD@
ICEDTEA_REVISION = @ICEDTEA_REVISION@
INSTALL = @INSTALL@
INSTALL_ARCH_DIR = @INSTALL_ARCH_DIR@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JAR = @JAR@
JAR_ACCEPTS_STDIN_LIST = @JAR_ACCEPTS_STDIN_LIST@
JAR_KNOWS_ATFILE = @JAR_KNOWS_ATFILE@
JAR_KNOWS_J_OPTIONS = @JAR_KNOWS_J_OPTIONS@
JAVA = @JAVA@
JAVAC = @JAVAC@
JAVAH = @JAVAH@
JDK_REVISION = @JDK_REVISION@
JPEG_LIBS = @JPEG_LIBS@
JRE_ARCH_DIR = @JRE_ARCH_DIR@
LCMS2_CFLAGS = @LCMS2_CFLAGS@
LCMS2_LIBS = @LCMS2_LIBS@
LDD = @LDD@
LDFLAGS = @LDFLAGS@
LIBFFI_CFLAGS = @LIBFFI_CFLAGS@
LIBFFI_LIBS = @LIBFFI_LIBS@
LIBOBJS = @LIBOBJS@
LIBPULSE_CFLAGS = @LIBPULSE_CFLAGS@
LIBPULSE_LIBS = @LIBPULSE_LIBS@
LIBS = @LIBS@
LINUX32 = @LINUX32@
LLVM_CFLAGS = @LLVM_CFLAGS@
LLVM_CONFIG = @LLVM_CONFIG@
LLVM_LDFLAGS = @LLVM_LDFLAGS@
LLVM_LIBS = @LLVM_LIBS@
LSB_RELEASE = @LSB_RELEASE@
LTLIBOBJS = @LTLIBOBJS@
MAKE = @MAKE@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
NATIVE2ASCII = @NATIVE2ASCII@
NSS_CFLAGS = @NSS_CFLAGS@
NSS_LIBDIR = @NSS_LIBDIR@
NSS_LIBS = @NSS_LIBS@
OBJEXT = @OBJEXT@
OPENJDK_BUILD_DIR = @OPENJDK_BUILD_DIR@
OPENJDK_SRC_DIR = @OPENJDK_SRC_DIR@
OS_PATH = @OS_PATH@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PARALLEL_JOBS = @PARALLEL_JOBS@
PATCH = @PATCH@
PATH_SEPARATOR = @PATH_SEPARATOR@
PAX_COMMAND = @PAX_COMMAND@
PAX_COMMAND_ARGS = @PAX_COMMAND_ARGS@
PKGVERSION = @PKGVERSION@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PNG_CFLAGS = @PNG_CFLAGS@
PNG_LIBS = @PNG_LIBS@
PROJECT_NAME = @PROJECT_NAME@
RHINO_JAR = @RHINO_JAR@
RMIC = @RMIC@
SET_MAKE = @SET_MAKE@
SHA256SUM = @SHA256SUM@
SHELL = @SHELL@
STRIP = @STRIP@
SYSTEM_JDK_DIR = @SYSTEM_JDK_DIR@
TAR = @TAR@
TZDATA_DIR = @TZDATA_DIR@
UNZIP = @UNZIP@
USING_CACAO = @USING_CACAO@
USING_ECJ = @USING_ECJ@
VERSION = @VERSION@
VERSION_SUFFIX = @VERSION_SUFFIX@
WGET = @WGET@
X11_CFLAGS = @X11_CFLAGS@
X11_LIBS = @X11_LIBS@
XINERAMA_CFLAGS = @XINERAMA_CFLAGS@
XINERAMA_LIBS = @XINERAMA_LIBS@
XPROTO_CFLAGS = @XPROTO_CFLAGS@
XPROTO_LIBS = @XPROTO_LIBS@
XRENDER_CFLAGS = @XRENDER_CFLAGS@
XRENDER_LIBS = @XRENDER_LIBS@
XSLTPROC = @XSLTPROC@
XTST_CFLAGS = @XTST_CFLAGS@
XTST_LIBS = @XTST_LIBS@
XT_CFLAGS = @XT_CFLAGS@
XT_LIBS = @XT_LIBS@
XVFB_RUN_CMD = @XVFB_RUN_CMD@
ZERO_ARCHDEF = @ZERO_ARCHDEF@
ZERO_BITSPERWORD = @ZERO_BITSPERWORD@
ZERO_ENDIANNESS = @ZERO_ENDIANNESS@
ZERO_LIBARCH = @ZERO_LIBARCH@
ZIP = @ZIP@
ZLIB_CFLAGS = @ZLIB_CFLAGS@
ZLIB_LIBS = @ZLIB_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_FASTJAR = @ac_ct_FASTJAR@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
enable_downloading = @enable_downloading@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
OPENJDK_VERSION = b20
JDK_UPDATE_VERSION = 40
COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(OPENJDK_VERSION)
CORBA_CHANGESET = 71d5ec2f3dfb
JAXP_CHANGESET = 5eaf3bca7f68
JAXWS_CHANGESET = 9d2007a13c02
JDK_CHANGESET = 29ce11184945
LANGTOOLS_CHANGESET = ffb1b6bc4750
OPENJDK_CHANGESET = 9c74cb4a3ae8
CORBA_SHA256SUM = 0191c678935dac77c0ad085bedb59e6bcc93e0712c3a4ef2b7171562e129807c
JAXP_SHA256SUM = 25bb13db8a426c2d84e13eed0d598c88c447af41de3f678a70680897c38083fd
JAXWS_SHA256SUM = 4cff8300b4c23e9327607f7c09295a99ef7d1032d8397429c7879ba489d14456
JDK_SHA256SUM = 13024c623bb37c4d44cb3b724876d7827924868fb8f94428faa87ddb11492352
LANGTOOLS_SHA256SUM = 80cbe75f7c268e97619e8007f8d29ecbbb7584062c1286c8b470f875526028f3
OPENJDK_SHA256SUM = 4adfde4b056ea8f35b639156c7cad8bac140ba7957ea8ce49b440089babc6579
CACAO_VERSION = e215e36be9fc
CACAO_SHA256SUM = 4966514c72ee7ed108b882d9b6e65c3adf8a8f9c2dccb029f971b3c8cb4870ab
CACAO_BASE_URL = http://icedtea.classpath.org/download/drops/cacao
CACAO_URL = $(CACAO_BASE_URL)/$(CACAO_VERSION).tar.gz
CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.gz
JAMVM_VERSION = 7c8dceb90880616b7dd670f257961a1f5f371ec3
JAMVM_SHA256SUM = 1584d8599bfd799a71baac0694bb3ed9b9fcd14a8548234b24266571e0acfc97
JAMVM_BASE_URL = http://icedtea.classpath.org/download/drops/jamvm
JAMVM_URL = $(JAMVM_BASE_URL)/jamvm-$(JAMVM_VERSION).tar.gz
JAMVM_SRC_ZIP = jamvm-$(JAMVM_VERSION).tar.gz
ICEDTEA_PREFIX = icedtea7-forest-2.4
ICEDTEA_HG_URL = http://icedtea.classpath.org/hg/release/$(ICEDTEA_PREFIX)
OPENJDK_HG_URL = http://hg.openjdk.java.net/jdk7/jdk7
CVMI_HG_URL = http://hg.openjdk.java.net/cvmi/cvmi/
CLOSURES_HG_URL = http://hg.openjdk.java.net/closures/closures/
CACIOCAVALLO_HG_URL = http://hg.openjdk.java.net/caciocavallo/jdk7/
BSD_HG_URL = http://hg.openjdk.java.net/bsd-port/bsd-port
NIO2_HG_URL = http://hg.openjdk.java.net/nio/nio/
OPENJDK_URL = $(ICEDTEA_HG_URL)
CORBA_URL = $(ICEDTEA_HG_URL)/corba
JAXP_URL = $(ICEDTEA_HG_URL)/jaxp
JAXWS_URL = $(ICEDTEA_HG_URL)/jaxws
JDK_URL = $(ICEDTEA_HG_URL)/jdk
LANGTOOLS_URL = $(ICEDTEA_HG_URL)/langtools
HS_SHA256SUM = "`$(AWK) 'version==$$1 {print $$4}' version=$(HSBUILD) $(abs_top_srcdir)/hotspot.map`"
HS_CHANGESET = "`$(AWK) 'version==$$1 {print $$3}' version=$(HSBUILD) $(abs_top_srcdir)/hotspot.map`"
HS_URL = "`$(AWK) 'version==$$1 {print $$2}' version=$(HSBUILD) $(abs_top_srcdir)/hotspot.map`"

# Build directories
BUILD_DIR = @OPENJDK_BUILD_DIR@
BUILD_OUTPUT_DIR = $(abs_top_builddir)/$(BUILD_DIR)
DEBUG_BUILD_OUTPUT_DIR = $(BUILD_OUTPUT_DIR)-debug
BOOT_BUILD_OUTPUT_DIR = $(BUILD_OUTPUT_DIR)-boot
BOOT_DIR = $(abs_top_builddir)/bootstrap/jdk1.6.0
RUNTIME = $(BOOT_DIR)/jre/lib/rt.jar
CLS_DIR_BOOT = $(BOOT_BUILD_OUTPUT_DIR)/classes
SERVER_DIR = hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server
BUILD_JRE_ARCH_DIR = $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
BUILD_DEBUG_JRE_ARCH_DIR = $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
REWRITER_BUILD_DIR = $(abs_top_builddir)/rewriter.build
STAGE1_BOOT_DIR = $(abs_top_builddir)/bootstrap/boot
STAGE2_BOOT_DIR = $(abs_top_builddir)/bootstrap/icedtea
JAMVM_IMPORT_PATH = $(abs_top_builddir)/jamvm/install/hotspot
CRYPTO_CHECK_BUILD_DIR = $(abs_top_builddir)/cryptocheck.build

# Source directories
SHARE = openjdk-boot/jdk/src/share/classes
SOLARIS = openjdk-boot/jdk/src/solaris/classes
LANGTOOLS = openjdk-boot/langtools/src/share/classes
CORBA = openjdk-boot/corba/src/share/classes
JAXWS = openjdk-boot/jaxws/src/share/jaxws_classes:openjdk-boot/jaxws/src/share/jaf_classes
PULSE_JAVA_DIR = $(abs_top_srcdir)/pulseaudio
PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native
PULSE_JAVA_NATIVE_SRCS = $(wildcard $(PULSE_JAVA_NATIVE_SRCDIR)/*.c)
PULSE_JAVA_BUILDDIR = $(abs_top_builddir)/pulseaudio.build
PULSE_JAVA_NATIVE_BUILDDIR = $(PULSE_JAVA_BUILDDIR)/native
PULSE_JAVA_NATIVE_OBJECTS = \
	$(subst $(PULSE_JAVA_NATIVE_SRCDIR),$(PULSE_JAVA_NATIVE_BUILDDIR),$(patsubst %.c,%.o,$(PULSE_JAVA_NATIVE_SRCS)))

PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java
PULSE_JAVA_CLASS_DIR = $(PULSE_JAVA_BUILDDIR)/classes
OPENJDK_SOURCEPATH_DIRS = \
        $(SHARE):$(SOLARIS):$(LANGTOOLS):$(CORBA):$(JAXWS)

SOURCEPATH_DIRS = $(abs_top_srcdir)/generated:$(OPENJDK_SOURCEPATH_DIRS)

# Sources used from OpenJDK.
ICEDTEA_BOOTSTRAP_CLASSES = $(am__append_1) $(am__append_2) \
	$(am__append_3) $(am__append_4) $(am__append_5) \
	$(am__append_6) $(am__append_7)
@NO_BYTECODE7_FALSE@IT_LANGUAGE_SOURCE_VERSION = 7

# Settings for javac
@NO_BYTECODE7_TRUE@IT_LANGUAGE_SOURCE_VERSION = 6
@NO_BYTECODE7_FALSE@IT_CLASS_TARGET_VERSION = 7
@NO_BYTECODE7_TRUE@IT_CLASS_TARGET_VERSION = 6
IT_JAVAC_SETTINGS = -g -encoding utf-8 $(JAVACFLAGS) $(MEMORY_LIMIT) $(PREFER_SOURCE)
IT_JAVACFLAGS = $(IT_JAVAC_SETTINGS) -source $(IT_LANGUAGE_SOURCE_VERSION) -target $(IT_CLASS_TARGET_VERSION)

# Flags
IT_CFLAGS = $(CFLAGS) $(ARCHFLAG)
@USE_HG_FALSE@OPENJDK_SRC_ZIP = openjdk.tar.gz

# Conditional defintions
@USE_HG_TRUE@OPENJDK_SRC_ZIP = 
@USE_HG_FALSE@CORBA_SRC_ZIP = corba.tar.gz
@USE_HG_TRUE@CORBA_SRC_ZIP = 
@USE_HG_FALSE@JAXP_SRC_ZIP = jaxp.tar.gz
@USE_HG_TRUE@JAXP_SRC_ZIP = 
@USE_HG_FALSE@JAXWS_SRC_ZIP = jaxws.tar.gz
@USE_HG_TRUE@JAXWS_SRC_ZIP = 
@USE_HG_FALSE@JDK_SRC_ZIP = jdk.tar.gz
@USE_HG_TRUE@JDK_SRC_ZIP = 
@USE_HG_FALSE@LANGTOOLS_SRC_ZIP = langtools.tar.gz
@USE_HG_TRUE@LANGTOOLS_SRC_ZIP = 
@USE_HG_FALSE@HOTSPOT_SRC_ZIP = hotspot.tar.gz
@USE_HG_TRUE@HOTSPOT_SRC_ZIP = 
@ENABLE_PULSE_JAVA_TRUE@PULSE_JAVA_TARGET = stamps/pulse-java.stamp
@BOOTSTRAPPING_FALSE@MEMORY_LIMIT = -J-Xmx1024m

# This should not depend on bootstrapping
# but on whether MEMORY_LIMIT is accepted
# as an argument to javac
@BOOTSTRAPPING_TRUE@MEMORY_LIMIT = 
@BOOTSTRAPPING_FALSE@PREFER_SOURCE = -Xprefer:source
@BOOTSTRAPPING_TRUE@PREFER_SOURCE = 
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_TRUE@ICEDTEA_BUILD_TARGET = jdk_only
@ENABLE_CACAO_TRUE@ICEDTEA_BUILD_TARGET = jdk_only
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@ICEDTEA_DEBUG_BUILD_TARGET = debug_build
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_TRUE@ICEDTEA_DEBUG_BUILD_TARGET = jdk_fastdebug_only
@ENABLE_CACAO_TRUE@ICEDTEA_DEBUG_BUILD_TARGET = jdk_fastdebug_only
@BOOTSTRAPPING_FALSE@BOOTSTRAP_DIRECTORY_STAMP = 
@BOOTSTRAPPING_TRUE@BOOTSTRAP_DIRECTORY_STAMP = stamps/bootstrap-directory-stage2.stamp
@BOOTSTRAPPING_FALSE@ICEDTEA_HOME = $(SYSTEM_JDK_DIR)
@BOOTSTRAPPING_TRUE@ICEDTEA_HOME = $(STAGE2_BOOT_DIR)
@BOOTSTRAPPING_FALSE@INITIAL_BOOTSTRAP_LINK_STAMP = stamps/bootstrap-directory-symlink-stage2.stamp
@BOOTSTRAPPING_TRUE@INITIAL_BOOTSTRAP_LINK_STAMP = stamps/bootstrap-directory-symlink-stage1.stamp
@CP_SUPPORTS_REFLINK_TRUE@REFLINK = --reflink=auto
@OPENJDK_SRC_DIR_HARDLINKABLE_FALSE@OPENJDK_SRC_DIR_LINK = $(REFLINK)
@OPENJDK_SRC_DIR_HARDLINKABLE_TRUE@OPENJDK_SRC_DIR_LINK = -l
@SRC_DIR_HARDLINKABLE_FALSE@SRC_DIR_LINK = $(REFLINK)
@SRC_DIR_HARDLINKABLE_TRUE@SRC_DIR_LINK = -l
@DISABLE_HOTSPOT_TESTS_FALSE@HOTSPOT_TEST_SUITE = hotspot
@DISABLE_JDK_TESTS_FALSE@JDK_TEST_SUITE = jdk
@DISABLE_LANGTOOLS_TESTS_FALSE@LANGTOOLS_TEST_SUITE = langtools
@DISABLE_TESTS_FALSE@TEST_SUITES = $(HOTSPOT_TEST_SUITE) $(JDK_TEST_SUITE) $(LANGTOOLS_TEST_SUITE)
@DISABLE_TESTS_FALSE@TESTS_TO_RUN = jtreg $(addprefix check-,$(TEST_SUITES))

# Target to ensure a patched OpenJDK tree containing Zero & Shark
# and any overlays is available in $(abs_top_builddir)/openjdk
OPENJDK_TREE = stamps/overlay.stamp stamps/add-nss.stamp

# Target to ensure a patched OpenJDK bootstrap tree containing
# Zero & Shark, any other overlays and the bootstrapping patches
# is available in $(abs_top_builddir)/openjdk-boot
OPENJDK_BOOT_TREE = stamps/patch-boot.stamp

# Sources list
REWRITER_SRCS = $(top_srcdir)/rewriter/com/redhat/rewriter/ClassRewriter.java
CRYPTO_CHECK_SRCS = $(top_srcdir)/TestCryptoLevel.java

# Patch list
ICEDTEA_PATCHES = $(am__append_8) $(am__append_9) $(am__append_10) \
	$(am__append_11) $(am__append_12) $(am__append_13) \
	$(am__append_14) $(am__append_15) $(DISTRIBUTION_PATCHES)

# Bootstrapping patches
ICEDTEA_BOOT_PATCHES = patches/boot/javafiles.patch \
	patches/boot/ant-javac.patch patches/boot/corba-idlj.patch \
	patches/boot/corba-no-gen.patch patches/boot/corba-orb.patch \
	patches/boot/demos.patch patches/boot/fphexconstants.patch \
	patches/boot/fontconfig.patch \
	patches/boot/generated-comments.patch \
	patches/boot/icedteart.patch patches/boot/jar.patch \
	patches/boot/symbols.patch patches/boot/tobin.patch \
	patches/boot/tools.jar.patch patches/boot/jopt.patch \
	patches/boot/jaxp-dependency.patch \
	patches/boot/genstubs-nofork.patch \
	patches/boot/getannotation-cast.patch \
	patches/boot/break-processbuilder-dependency.patch \
	patches/boot/revert-6973616.patch \
	patches/boot/revert-6941137.patch \
	patches/boot/ecj-stringswitch.patch \
	patches/boot/langtools-force-old-jdk.patch \
	patches/boot/corba-dependencies.patch \
	patches/boot/jaxws-langtools-dependency.patch \
	patches/boot/jaxws-jdk-dependency.patch \
	patches/boot/hotspot/${HSBUILD}/jdk-dependency.patch \
	patches/boot/ecj-multicatch.patch \
	patches/boot/ecj-trywithresources.patch \
	patches/boot/ecj-autoboxing.patch patches/boot/xsltproc.patch \
	patches/boot/ecj-odd.patch $(am__append_16) $(am__append_17) \
	$(am__append_18) $(am__append_19) $(am__append_20) \
	$(am__append_21) $(am__append_22) $(am__append_23) \
	$(am__append_24) $(am__append_25) $(am__append_26) \
	$(am__append_27) $(am__append_28) $(am__append_29) \
	$(am__append_30) $(DISTRIBUTION_BOOT_PATCHES)

# Patches for when java.util.Scanner is missing
# or has the bug #40630 (all these classes rely
# on Scanner#hasNextLine() looping behaviour)
SCANNER_PATCHES = patches/boot/scanner-spp.patch \
	patches/boot/scanner-sbcs.patch \
	patches/boot/scanner-dbcs.patch \
	patches/boot/scanner-charsets.patch


# OpenJDK build environment.
@ZERO_BUILD_TRUE@ICEDTEA_ZERO_BUILD = true
@SHARK_BUILD_TRUE@ICEDTEA_SHARK_BUILD = true
ICEDTEA_NAME = IcedTea
@HAS_ICEDTEA_REVISION_TRUE@ICEDTEA_REV = +${ICEDTEA_REVISION}
@HAS_PKGVERSION_TRUE@ICEDTEA_PKG = $(EMPTY) (${PKGVERSION})
@ENABLE_WERROR_FALSE@WERROR_STATUS = false
@ENABLE_WERROR_TRUE@WERROR_STATUS = true
ICEDTEA_ENV = ALT_JDK_IMPORT_PATH="$(BOOT_DIR)" ANT="$(ANT)" \
	BUILD_NUMBER="$(OPENJDK_VERSION)" \
	JDK_UPDATE_VERSION="$(JDK_UPDATE_VERSION)" \
	JRE_RELEASE_VERSION="1.7.0_$(COMBINED_VERSION)" \
	MILESTONE="fcs" LANG="C" \
	PATH="$(BOOT_DIR)/bin:$(OS_PATH):$$PATH" \
	ALT_BOOTDIR="$(BOOT_DIR)" BUILD_ARCH_DIR="$(BUILD_ARCH_DIR)" \
	ICEDTEA_RT="$(RUNTIME)" CLASSPATH="" LD_LIBRARY_PATH="" \
	ZERO_BUILD="$(ICEDTEA_ZERO_BUILD)" \
	SHARK_BUILD="$(ICEDTEA_SHARK_BUILD)" \
	ZERO_LIBARCH="$(ZERO_LIBARCH)" \
	ARCH_DATA_MODEL="$(ZERO_BITSPERWORD)" \
	ZERO_ENDIANNESS="$(ZERO_ENDIANNESS)" \
	ZERO_ARCHDEF="$(ZERO_ARCHDEF)" ZERO_ARCHFLAG="$(ARCHFLAG)" \
	LIBFFI_CFLAGS="$(LIBFFI_CFLAGS)" LIBFFI_LIBS="$(LIBFFI_LIBS)" \
	LLVM_CFLAGS="$(LLVM_CFLAGS)" LLVM_LDFLAGS="$(LLVM_LDFLAGS)" \
	LLVM_LIBS="$(LLVM_LIBS)" FT2_CFLAGS="$(FREETYPE2_CFLAGS)" \
	FT2_LIBS="$(FREETYPE2_LIBS)" \
	ALT_PARALLEL_COMPILE_JOBS="$(PARALLEL_JOBS)" \
	HOTSPOT_BUILD_JOBS="$(PARALLEL_JOBS)" JAVAC="" JAVA_HOME="" \
	JDK_HOME="" QUIETLY="" ANT_RESPECT_JAVA_HOME="TRUE" \
	DISTRIBUTION_ID="$(DIST_ID)" DERIVATIVE_ID="$(ICEDTEA_NAME) \
	$(PACKAGE_VERSION)$(ICEDTEA_REV)" \
	ALT_JIBX_LIBS_PATH="$(JIBX_DEPS_DIR)" DEBUG_CLASSFILES="true" \
	DEBUG_BINARIES="true" DISABLE_INTREE_EC="true" \
	ALT_OUTPUTDIR="$(BUILD_OUTPUT_DIR)" VERBOSE="$(VERBOSE)" \
	STATIC_CXX="false" BUILD_GCC="$(CC)" BUILD_CXX="$(CXX)" \
	USE_SYSTEM_CUPS="true" CUPS_LIBS="${CUPS_LIBS}" \
	CUPS_CFLAGS="${CUPS_CFLAGS}" STRIP_POLICY=no_strip \
	JAVAC_WARNINGS_FATAL="$(WERROR_STATUS)" \
	COMPILER_WARNINGS_FATAL="$(WERROR_STATUS)" \
	UNLIMITED_CRYPTO="true" $(am__append_31) $(am__append_32) \
	$(am__append_33) $(am__append_34) $(am__append_35) \
	$(am__append_36) $(am__append_37) $(am__append_38) \
	$(am__append_39) $(am__append_40) $(am__append_41) \
	$(am__append_42) $(am__append_43) $(am__append_44) \
	$(am__append_45) $(am__append_46) $(am__append_47)

# OpenJDK boot build environment.
ICEDTEA_ENV_BOOT = $(ICEDTEA_ENV) \
	BOOTCLASSPATH_CLS_RT="-bootclasspath $(CLS_DIR_BOOT):$(RUNTIME)" \
	BOOTCLASSPATH_CLS="-bootclasspath $(CLS_DIR_BOOT)" \
	BOOTCLASSPATH_RT_LIBGCJ="-bootclasspath $(RUNTIME)" \
	GENSRCDIR="$(abs_top_builddir)/generated.build" \
	JAR_KNOWS_ATFILE="$(JAR_KNOWS_ATFILE)" \
	JAR_KNOWS_J_OPTIONS="$(JAR_KNOWS_J_OPTIONS)" \
	JAR_ACCEPTS_STDIN_LIST="$(JAR_ACCEPTS_STDIN_LIST)" \
	DISABLE_NIMBUS="true" \
	NO_DOCS="true" \
	ALT_OUTPUTDIR="$(BOOT_BUILD_OUTPUT_DIR)" \
	XSLT="$(XSLTPROC)"


# Source files
GENERATED_FILES = $(top_srcdir)/generated/com/sun/java/swing/plaf/gtk/resources/gtk*.java \
	$(top_srcdir)/generated/com/sun/java/swing/plaf/motif/resources/motif*.java \
	$(top_srcdir)/generated/com/sun/java/swing/plaf/windows/resources/windows*.java \
	$(top_srcdir)/generated/com/sun/corba/se/spi/activation/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/spi/activation/LocatorPackage/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/spi/activation/RepositoryPackage/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/impl/logging/*.resource \
	$(top_srcdir)/generated/com/sun/corba/se/impl/logging/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/impl/logging/*.properties \
	$(top_srcdir)/generated/com/sun/corba/se/PortableActivationIDL/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/*.java \
	$(top_srcdir)/generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/*.java \
	$(top_srcdir)/generated/com/sun/swing/internal/plaf/basic/resources/basic*.java \
	$(top_srcdir)/generated/com/sun/swing/internal/plaf/metal/resources/metal*.java \
	$(top_srcdir)/generated/com/sun/swing/internal/plaf/synth/resources/synth*.java \
	$(top_srcdir)/generated/com/sun/tools/apt/resources/apt*.java \
	$(top_srcdir)/generated/com/sun/tools/jdi/*.java \
	$(top_srcdir)/generated/com/sun/tools/jdi/resources/jdi*.java \
	$(top_srcdir)/generated/com/sun/tools/javac/resources/*.java \
	$(top_srcdir)/generated/com/sun/tools/doclets/formats/html/resources/standard*.java \
	$(top_srcdir)/generated/com/sun/tools/doclets/internal/toolkit/resources/doclets*.java \
	$(top_srcdir)/generated/com/sun/tools/javadoc/resources/javadoc*.java \
	$(top_srcdir)/generated/com/sun/accessibility/internal/resources/accessibility*.java \
	$(top_srcdir)/generated/org/omg/IOP/*.java \
	$(top_srcdir)/generated/org/omg/IOP/CodecPackage/*.java \
	$(top_srcdir)/generated/org/omg/IOP/CodecFactoryPackage/*.java \
	$(top_srcdir)/generated/org/omg/CORBA/*.java \
	$(top_srcdir)/generated/org/omg/PortableInterceptor/*.java \
	$(top_srcdir)/generated/org/omg/PortableInterceptor/ORBInitInfoPackage/*.java \
	$(top_srcdir)/generated/org/omg/CosNaming/*.java \
	$(top_srcdir)/generated/org/omg/CosNaming/NamingContextPackage/*.java \
	$(top_srcdir)/generated/org/omg/CosNaming/NamingContextExtPackage/*.java \
	$(top_srcdir)/generated/org/omg/Messaging/*.java \
	$(top_srcdir)/generated/org/omg/Dynamic/*.java \
	$(top_srcdir)/generated/org/omg/DynamicAny/*.java \
	$(top_srcdir)/generated/org/omg/DynamicAny/DynAnyPackage/*.java \
	$(top_srcdir)/generated/org/omg/DynamicAny/DynAnyFactoryPackage/*.java \
	$(top_srcdir)/generated/org/omg/PortableServer/*.java \
	$(top_srcdir)/generated/org/omg/PortableServer/CurrentPackage/*.java \
	$(top_srcdir)/generated/org/omg/PortableServer/POAManagerPackage/*.java \
	$(top_srcdir)/generated/org/omg/PortableServer/POAPackage/*.java \
	$(top_srcdir)/generated/sun/awt/X11/*.java \
	$(top_srcdir)/generated/sun/awt/resources/awt*.java \
	$(top_srcdir)/generated/sun/nio/ch/*.java \
	$(top_srcdir)/generated/sun/nio/cs/*.java \
	$(top_srcdir)/generated/sun/nio/cs/ext/*.java \
	$(top_srcdir)/generated/sun/nio/fs/*.java \
	$(top_srcdir)/generated/sun/misc/*.java \
	$(top_srcdir)/generated/sun/util/*.java \
	$(top_srcdir)/generated/sun/util/logging/resources/logging*.java \
	$(top_srcdir)/generated/sun/util/resources/*.java \
	$(top_srcdir)/generated/sun/print/resources/serviceui*.java \
	$(top_srcdir)/generated/sun/tools/jar/resources/jar*.java \
	$(top_srcdir)/generated/sun/management/resources/agent*.java \
	$(top_srcdir)/generated/java/nio/*.java \
	$(top_srcdir)/generated/java/nio/channels/*.java \
	$(top_srcdir)/generated/java/lang/*.java \
	$(top_srcdir)/generated/java/util/*.java \
	$(top_srcdir)/generated/javax/management/remote/rmi/*.java \
	$(top_srcdir)/generated/fontconfig/fontconfig*.bfc

JTREG_SRCS = $(top_srcdir)/test/jtreg/com/sun/javatest/cof/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/cof/COF2_0_2.xsd \
	$(top_srcdir)/test/jtreg/com/sun/javatest/cof/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/lib/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/diff/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/diff/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/exec/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/exec/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/exec/images/*.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/mrep/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/mrep/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/mrep/images/dotdotdot.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/mrep/images/Forward16.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/mrep/images/Back16.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/mrep/images/Home16.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/tool/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/tool/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/tool/images/*.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/tool/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/util/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/util/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/util/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/regtest/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/regtest/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/agent/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/agent/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/agent/jticon.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/agent/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/batch/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/batch/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/batch/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/audit/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/audit/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/audit/images/dotdotdot.gif \
	$(top_srcdir)/test/jtreg/com/sun/javatest/audit/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/httpd/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/httpd/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/stylesheet.css \
	$(top_srcdir)/test/jtreg/com/sun/javatest/logging/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/logging/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/finder/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/finder/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/finder/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/report/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/report/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/report/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/interview/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/javatest/interview/*.java \
	$(top_srcdir)/test/jtreg/com/sun/javatest/interview/package.html \
	$(top_srcdir)/test/jtreg/com/sun/javatest/package.html \
	$(top_srcdir)/test/jtreg/com/sun/interview/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/interview/*.java \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/*.java \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/i18n.properties \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/done.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/blank.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/history.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/find.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/check.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/arrow.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/back.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/next.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/info.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/package.html \
	$(top_srcdir)/test/jtreg/com/sun/interview/wizard/cancel.gif \
	$(top_srcdir)/test/jtreg/com/sun/interview/package.html \
	$(top_srcdir)/test/jtreg/JavaTest.toolMgrs.lst \
	$(top_srcdir)/test/jtreg/legal/license.txt \
	$(top_srcdir)/test/jtreg/legal/copyright.txt \
	$(top_srcdir)/test/jtreg/README \
	$(top_srcdir)/test/jtreg/META-INF/MANIFEST.MF \
	$(top_srcdir)/test/jtreg/excludelist.jdk.jtx \
	$(top_srcdir)/test/jtreg/excludelist.jdk.cacao.jtx \
	$(top_srcdir)/test/jtreg/JavaTest.cmdMgrs.lst \
	$(top_srcdir)/test/jtreg/excludelist.langtools.jtx 

PULSEAUDIO_SRCS = $(top_srcdir)/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/*.java \
	$(top_srcdir)/pulseaudio/src/java/META-INF/services/javax.sound.sampled.spi.MixerProvider \
	$(top_srcdir)/pulseaudio/src/native/*.h \
	$(top_srcdir)/pulseaudio/src/native/*.c \
	$(top_srcdir)/pulseaudio/TODO \
	$(top_srcdir)/pulseaudio/README \
	$(top_srcdir)/pulseaudio/testsounds/README \
	$(top_srcdir)/pulseaudio/testsounds/startup.wav \
	$(top_srcdir)/pulseaudio/testsounds/logout.wav \
	$(top_srcdir)/pulseaudio/testsounds/error.wav \
	$(top_srcdir)/pulseaudio/unittests/org/classpath/icedtea/pulseaudio/*.java \
	$(top_srcdir)/pulseaudio/COPYING

EXTRA_DIST = $(GENERATED_FILES) $(top_srcdir)/patches/*.patch \
	$(top_srcdir)/patches/boot/*.patch \
	$(top_srcdir)/patches/cacao/*.patch \
	$(top_srcdir)/patches/boot/hotspot/*/*.patch \
	tools-copy contrib overlays \
	javaws.png javaws.desktop \
	jconsole.desktop policytool.desktop \
	$(JTREG_SRCS) \
	HACKING $(PULSEAUDIO_SRCS) fsg.sh \
	hotspot.map autogen.sh \
	tapset/hotspot.stp.in \
	tapset/hotspot_jni.stp.in \
	tapset/jstack.stp.in \
	tapset/hotspot_gc.stp.in \
	scripts/jni_create_stap.c \
	scripts/jni_desc \
	rewriter/agpl-3.0.txt \
	$(REWRITER_SRCS) \
	test/tapset \
	$(CRYPTO_CHECK_SRCS)

ADD_ZERO_CONFIGURE_ARGS =  \
	--with-jdk-home=$(BUILD_OUTPUT_DIR)/j2sdk-image \
	--disable-bootstrap --enable-zero $(am__append_48) \
	--disable-docs $(filter-out '--with-jdk-home=% '--with-ecj=% \
	'--with-java=% '--with-javah=% '--with-javac=% '--with-javac=% \
	'--with-rmic=% '--with-additional-vms=% '--disable-bootstrap% \
	'--enable-bootstrap% , $(CONFIGURE_ARGS)) $(foreach i, openjdk \
	hotspot corba jaxp jaxws jdk langtools, $(if $(findstring \
	--with-$(i)-src-zip=, $(CONFIGURE_ARGS)),, \
	--with-$(i)-src-zip=$(abs_top_builddir)/$(i).tar.gz))
ADD_ZERO_EXTRA_BUILD_ENV = \
	BUILD_LANGTOOLS=false ALT_LANGTOOLS_DIST=$(BUILD_OUTPUT_DIR)/langtools/dist \
	BUILD_JAXP=false      ALT_JAXP_DIST=$(BUILD_OUTPUT_DIR)/jaxp/dist \
	BUILD_JAXWS=false     ALT_JAXWS_DIST=$(BUILD_OUTPUT_DIR)/jaxws/dist \
	BUILD_CORBA=false     ALT_CORBA_DIST=$(BUILD_OUTPUT_DIR)/corba/dist \
	BUILD_JDK=false \
	DISTRIBUTION_PATCHES='$(foreach p,$(DISTRIBUTION_PATCHES),$(if $(findstring cacao,$(p)),,$(if $(findstring jamvm,$(p)),,$(p))))'


# FIXME: this might need some adjustment for other OS than Linux
jtreg_processes = ps x -ww -o pid,ppid,args \
	| awk '$$2 == 1 && $$3 ~ /^$(subst /,\/,/scratch)/' \
	| sed 's,$(CURDIR)/$(sdkimg),<sdkimg>,g;s,$(CURDIR),<pwd>,g'

jtreg_pids = ps x --no-headers -ww -o pid,ppid,args \
	| awk '$$2 == 1 && $$3 ~ /^$(subst /,\/,$(CURDIR)/$(sdkimg))/ {print $$1}'

all: all-am

.SUFFIXES:
am--refresh: Makefile
	@:
$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
	      $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
		&& exit 0; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --foreign Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    echo ' $(SHELL) ./config.status'; \
	    $(SHELL) ./config.status;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
	esac;

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	$(SHELL) ./config.status --recheck

$(top_srcdir)/configure:  $(am__configure_deps)
	$(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
	$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
nss.cfg: $(top_builddir)/config.status $(srcdir)/nss.cfg.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
javac: $(top_builddir)/config.status $(srcdir)/javac.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
javap: $(top_builddir)/config.status $(srcdir)/javap.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
javah: $(top_builddir)/config.status $(srcdir)/javah.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
tz.properties: $(top_builddir)/config.status $(srcdir)/tz.properties.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
pax-mark-vm: $(top_builddir)/config.status $(srcdir)/pax-mark-vm.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
remove-intree-libraries.sh: $(top_builddir)/config.status $(srcdir)/remove-intree-libraries.sh.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
tapset/hotspot.stp: $(top_builddir)/config.status $(top_srcdir)/tapset/hotspot.stp.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
tapset/hotspot_jni.stp: $(top_builddir)/config.status $(top_srcdir)/tapset/hotspot_jni.stp.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
tapset/jstack.stp: $(top_builddir)/config.status $(top_srcdir)/tapset/jstack.stp.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
tapset/hotspot_gc.stp: $(top_builddir)/config.status $(top_srcdir)/tapset/hotspot_gc.stp.in
	cd $(top_builddir) && $(SHELL) ./config.status $@
tags: TAGS
TAGS:

ctags: CTAGS
CTAGS:

cscope cscopelist:


distdir: $(DISTFILES)
	$(am__remove_distdir)
	test -d "$(distdir)" || mkdir "$(distdir)"
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	list='$(DISTFILES)'; \
	  dist_files=`for file in $$list; do echo $$file; done | \
	  sed -e "s|^$$srcdirstrip/||;t" \
	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
	case $$dist_files in \
	  */*) $(MKDIR_P) `echo "$$dist_files" | \
			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
			   sort -u` ;; \
	esac; \
	for file in $$dist_files; do \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  if test -d $$d/$$file; then \
	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
	    if test -d "$(distdir)/$$file"; then \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
	  else \
	    test -f "$(distdir)/$$file" \
	    || cp -p $$d/$$file "$(distdir)/$$file" \
	    || exit 1; \
	  fi; \
	done
	-test -n "$(am__skip_mode_fix)" \
	|| find "$(distdir)" -type d ! -perm -755 \
		-exec chmod u+rwx,go+rx {} \; -o \
	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
	  ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
	|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
	$(am__post_remove_distdir)

dist-bzip2: distdir
	tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
	$(am__post_remove_distdir)

dist-lzip: distdir
	tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
	$(am__post_remove_distdir)

dist-xz: distdir
	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
	$(am__post_remove_distdir)

dist-tarZ: distdir
	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
	$(am__post_remove_distdir)

dist-shar: distdir
	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
	$(am__post_remove_distdir)

dist-zip: distdir
	-rm -f $(distdir).zip
	zip -rq $(distdir).zip $(distdir)
	$(am__post_remove_distdir)

dist dist-all:
	$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
	$(am__post_remove_distdir)

# This target untars the dist file and tries a VPATH configuration.  Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
	case '$(DIST_ARCHIVES)' in \
	*.tar.gz*) \
	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
	*.tar.bz2*) \
	  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
	*.tar.lz*) \
	  lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
	*.tar.xz*) \
	  xz -dc $(distdir).tar.xz | $(am__untar) ;;\
	*.tar.Z*) \
	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
	*.shar.gz*) \
	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
	*.zip*) \
	  unzip $(distdir).zip ;;\
	esac
	chmod -R a-w $(distdir)
	chmod u+w $(distdir)
	mkdir $(distdir)/_build $(distdir)/_inst
	chmod a-w $(distdir)
	test -d $(distdir)/_build || exit 0; \
	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
	  && am__cwd=`pwd` \
	  && $(am__cd) $(distdir)/_build \
	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
	    $(AM_DISTCHECK_CONFIGURE_FLAGS) \
	    $(DISTCHECK_CONFIGURE_FLAGS) \
	  && $(MAKE) $(AM_MAKEFLAGS) \
	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
	  && $(MAKE) $(AM_MAKEFLAGS) check \
	  && $(MAKE) $(AM_MAKEFLAGS) install \
	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
	  && $(MAKE) $(AM_MAKEFLAGS) uninstall \
	  && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
	        distuninstallcheck \
	  && chmod -R a-w "$$dc_install_base" \
	  && ({ \
	       (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
	            distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
	      } || { rm -rf "$$dc_destdir"; exit 1; }) \
	  && rm -rf "$$dc_destdir" \
	  && $(MAKE) $(AM_MAKEFLAGS) dist \
	  && rm -rf $(DIST_ARCHIVES) \
	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
	  && cd "$$am__cwd" \
	  || exit 1
	$(am__post_remove_distdir)
	@(echo "$(distdir) archives ready for distribution: "; \
	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
	  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
	@test -n '$(distuninstallcheck_dir)' || { \
	  echo 'ERROR: trying to run $@ with an empty' \
	       '$$(distuninstallcheck_dir)' >&2; \
	  exit 1; \
	}; \
	$(am__cd) '$(distuninstallcheck_dir)' || { \
	  echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
	  exit 1; \
	}; \
	test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
	   || { echo "ERROR: files left after uninstall:" ; \
	        if test -n "$(DESTDIR)"; then \
	          echo "  (check DESTDIR support)"; \
	        fi ; \
	        $(distuninstallcheck_listfiles) ; \
	        exit 1; } >&2
distcleancheck: distclean
	@if test '$(srcdir)' = . ; then \
	  echo "ERROR: distcleancheck can only run from a VPATH build" ; \
	  exit 1 ; \
	fi
	@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
	  || { echo "ERROR: files left in build directory after distclean:" ; \
	       $(distcleancheck_listfiles) ; \
	       exit 1; } >&2
check-am: all-am
	$(MAKE) $(AM_MAKEFLAGS) check-local
check: check-am
all-am: Makefile all-local
installdirs:
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	if test -z '$(STRIP)'; then \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	      install; \
	else \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
	fi
mostlyclean-generic:

clean-generic:

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
clean: clean-am

clean-am: clean-generic clean-local mostlyclean-am

distclean: distclean-am
	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
	-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-local

dvi: dvi-am

dvi-am:

html: html-am

html-am:

info: info-am

info-am:

install-data-am:

install-dvi: install-dvi-am

install-dvi-am:

install-exec-am:

install-html: install-html-am

install-html-am:

install-info: install-info-am

install-info-am:

install-man:

install-pdf: install-pdf-am

install-pdf-am:

install-ps: install-ps-am

install-ps-am:

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
	-rm -rf $(top_srcdir)/autom4te.cache
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-generic

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am:

.MAKE: check-am install-am install-strip

.PHONY: all all-am all-local am--refresh check check-am check-local \
	clean clean-generic clean-local dist dist-all dist-bzip2 \
	dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
	distcheck distclean distclean-generic distclean-local \
	distcleancheck distdir distuninstallcheck dvi dvi-am html \
	html-am info info-am install install-am install-data \
	install-data-am install-dvi install-dvi-am install-exec \
	install-exec-am install-html install-html-am install-info \
	install-info-am install-man install-pdf install-pdf-am \
	install-ps install-ps-am install-strip installcheck \
	installcheck-am installdirs maintainer-clean \
	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
	pdf-am ps ps-am uninstall uninstall-am


# Top-Level Targets
# =================

all-local: icedtea-stage2

check-local: jtregcheck check-tapset

clean-tests: clean-jtreg clean-tapset-report clean-jtreg-reports
	if [ $(abs_top_srcdir) != $(abs_top_builddir) ] ; then \
	  if [ -e test ] ; then \
	    rmdir test ; \
	  fi \
	fi

clean-local: clean-tests clean-pulse-java \
 clean-icedtea clean-icedtea-boot clean-clone clean-clone-boot \
 clean-bootstrap-directory-stage1 clean-bootstrap-directory-stage2 \
 clean-bootstrap-directory-symlink-stage1 clean-bootstrap-directory-symlink-stage2 \
 clean-extract clean-generated clean-native-ecj clean-hgforest clean-icedtea-stage2 \
 clean-icedtea-debug-stage2 clean-icedtea-stage1 clean-add-zero clean-add-zero-debug \
 clean-add-cacao clean-add-cacao-debug clean-rt clean-rewrite-rhino clean-rewriter \
 clean-add-systemtap clean-add-systemtap-debug clean-add-pulseaudio clean-add-pulseaudio-debug \
 clean-add-nss clean-add-tzdata-support clean-add-tzdata-support-debug clean-cryptocheck
	if [ -e bootstrap ]; then \
	  rmdir bootstrap ; \
	fi
	if [ -e lib ]; then \
	  rmdir lib ; \
	fi

distclean-local: clean-local clean-download
	if [ $(abs_top_srcdir) != $(abs_top_builddir) ]; then \
	  if [ -e tapset ] ; then \
	    rmdir tapset ; \
	  fi ; \
	fi
	if [ -e stamps ] ; then \
	  rmdir stamps ; \
	fi

install:

.PHONY: \
	env env-boot snapshot clean-clone clean-patch \
	clean-clone-boot clean-patch-boot clean-bootstrap-directory-stage2 \
	clean-bootstrap-directory-symlink-stage2 clean-bootstrap-directory-stage1 \
	clean-bootstrap-directory-symlink-stage1 icedtea icedtea-debug \
	clean-icedtea icedtea-stage2 clean-icedtea-boot \
	clean-rt hotspot hotspot-helper clean-jtreg clean-jtreg-reports \
	jtregcheck clean-remove-intree-libraries \
	clean-jamvm clean-extract-jamvm clean-add-jamvm clean-add-jamvm-debug \
	clean-extract-hotspot clean-sanitise-openjdk \
	clean-tests clean-tapset-report clean-add-systemtap \
	clean-add-systemtap-debug clean-add-pulseaudio clean-add-pulseaudio-debug \
	clean-add-nss clean-add-tzdata-support clean-add-tzdata-support-debug \
	clean-add-systemtap-boot clean-add-pulseaudio-boot clean-add-tzdata-support-boot \
	clean-check-crypto clean-check-crypto-debug clean-check-crypto-boot \
	clean-add-archive clean-add-archive-debug clean-add-archive-boot clean-cryptocheck

env:
	@echo 'unset JAVA_HOME'
	@echo 'export $(ICEDTEA_ENV)'

env-boot:
	@echo 'unset JAVA_HOME'
	@echo 'export $(ICEDTEA_ENV_BOOT)'

# Mercurial snapshot.
snapshot: dist
	mv $(DIST_ARCHIVES) $(distdir)-`$(HG) tip --template '{node}'`.tar.gz

# Creates archive of openjdk.
dist-openjdk: stamps/extract-cacao.stamp
	find openjdk/ -name \\.hg* | xargs rm -rf	
	$(ZIP) -r openjdk-$(OPENJDK_VERSION) openjdk/

# Creates archive of openjdk that is compliant with Free Software guidelines.
dist-openjdk-fsg: stamps/patch-fsg.stamp
	$(ZIP) -r openjdk-fsg-$(OPENJDK_VERSION) openjdk/

# OpenJDK Source Preparation Targets
# ==================================

# Check for forest support

stamps/hgforest.stamp:
@USE_HG_TRUE@	if ! $(HG) fclone -h; \
@USE_HG_TRUE@          then \
@USE_HG_TRUE@          echo "No forest extension found. Please refer to" \
@USE_HG_TRUE@            "http://selenic.com/mercurial/wiki/index.cgi/ForestExtension"; \
@USE_HG_TRUE@          exit 1; \
@USE_HG_TRUE@        fi;
	mkdir -p stamps 
	touch $@

clean-hgforest:
	rm -f stamps/hgforest.stamp

# Download OpenJDK sources.

stamps/download.stamp: stamps/download-openjdk.stamp \
 stamps/download-cacao.stamp stamps/download-jamvm.stamp
	mkdir -p stamps
	touch $@

clean-download: clean-download-openjdk clean-download-cacao clean-download-jamvm
	rm -f stamps/download.stamp

stamps/download-openjdk.stamp: stamps/hgforest.stamp
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_CLOSURES_TRUE@	$(HG) fclone $(CLOSURES_HG_URL) openjdk; 
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_TRUE@	$(HG) fclone $(CVMI_HG_URL) openjdk; 
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_CACIOCAVALLO_TRUE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@	$(HG) fclone $(CACIOCAVALLO_HG_URL) openjdk;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_TRUE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@	$(HG) fclone $(BSD_HG_URL) openjdk;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_NIO2_TRUE@	hg fclone $(NIO2_HG_URL) openjdk;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_JDK7_TRUE@@USE_NIO2_FALSE@	hg fclone $(OPENJDK_HG_URL) openjdk;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_TRUE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@@WITH_HGREV_TRUE@	$(HG) fclone -r $(HGREV) $(ICEDTEA_HG_URL) openjdk;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_TRUE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@@WITH_HGREV_FALSE@	$(HG) fclone $(ICEDTEA_HG_URL) openjdk;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_ALT_OPENJDK_SRC_ZIP_TRUE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	ln -sf $(ALT_OPENJDK_SRC_ZIP) $(OPENJDK_SRC_ZIP)
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	if ! echo "$(OPENJDK_SHA256SUM)  $(OPENJDK_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  | $(SHA256SUM) --check ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  if test "x$(enable_downloading)" = "xyes"; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if [ -e $(OPENJDK_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      mv $(OPENJDK_SRC_ZIP) $(OPENJDK_SRC_ZIP).old ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    $(WGET) $(OPENJDK_URL)/archive/$(OPENJDK_CHANGESET).tar.gz -O $(OPENJDK_SRC_ZIP); \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if ! echo "$(OPENJDK_SHA256SUM)  $(OPENJDK_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      | $(SHA256SUM) --check ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      echo "ERROR: Bad download of OpenJDK root zip"; false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    echo "ERROR: No up-to-date OpenJDK root zip available"; exit -1; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	fi ;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_ALT_CORBA_SRC_ZIP_TRUE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	ln -sf $(ALT_CORBA_SRC_ZIP) $(CORBA_SRC_ZIP)
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	if ! echo "$(CORBA_SHA256SUM)  $(CORBA_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  | $(SHA256SUM) --check ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  if test "x$(enable_downloading)" = "xyes"; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if [ $(CORBA_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      mv $(CORBA_SRC_ZIP) $(CORBA_SRC_ZIP).old ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    $(WGET) $(CORBA_URL)/archive/$(CORBA_CHANGESET).tar.gz -O $(CORBA_SRC_ZIP); \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if ! echo "$(CORBA_SHA256SUM)  $(CORBA_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      | $(SHA256SUM) --check ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      echo "ERROR: Bad download of CORBA zip"; false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    echo "ERROR: No up-to-date OpenJDK CORBA zip available"; exit -1; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	fi ;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_ALT_JAXP_SRC_ZIP_TRUE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	ln -sf $(ALT_JAXP_SRC_ZIP) $(JAXP_SRC_ZIP)
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	if ! echo "$(JAXP_SHA256SUM)  $(JAXP_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  | $(SHA256SUM) --check ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  if test "x$(enable_downloading)" = "xyes"; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if [ $(JAXP_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      mv $(JAXP_SRC_ZIP) $(JAXP_SRC_ZIP).old ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    $(WGET) $(JAXP_URL)/archive/$(JAXP_CHANGESET).tar.gz -O $(JAXP_SRC_ZIP); \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if ! echo "$(JAXP_SHA256SUM)  $(JAXP_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      | $(SHA256SUM) --check ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      echo "ERROR: Bad download of JAXP zip"; false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    echo "ERROR: No up-to-date JAXP root zip available"; exit -1; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	fi ;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_ALT_JAXWS_SRC_ZIP_TRUE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	ln -sf $(ALT_JAXWS_SRC_ZIP) $(JAXWS_SRC_ZIP)
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	if ! echo "$(JAXWS_SHA256SUM)  $(JAXWS_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  | $(SHA256SUM) --check ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  if test "x$(enable_downloading)" = "xyes"; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if [ $(JAXWS_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      mv $(JAXWS_SRC_ZIP) $(JAXWS_SRC_ZIP).old ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    $(WGET) $(JAXWS_URL)/archive/$(JAXWS_CHANGESET).tar.gz -O $(JAXWS_SRC_ZIP); \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if ! echo "$(JAXWS_SHA256SUM)  $(JAXWS_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      | $(SHA256SUM) --check ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      echo "ERROR: Bad download of JAXWS zip"; false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    echo "ERROR: No up-to-date OpenJDK JAXWS zip available"; exit -1; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	fi ;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_ALT_JDK_SRC_ZIP_TRUE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	ln -sf $(ALT_JDK_SRC_ZIP) $(JDK_SRC_ZIP)
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	if ! echo "$(JDK_SHA256SUM)  $(JDK_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  | $(SHA256SUM) --check ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  if test "x$(enable_downloading)" = "xyes"; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if [ $(JDK_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      mv $(JDK_SRC_ZIP) $(JDK_SRC_ZIP).old ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    $(WGET) $(JDK_URL)/archive/$(JDK_CHANGESET).tar.gz -O $(JDK_SRC_ZIP); \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if ! echo "$(JDK_SHA256SUM)  $(JDK_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      | $(SHA256SUM) --check ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      echo "ERROR: Bad download of JDK zip"; false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    echo "ERROR: No up-to-date OpenJDK JDK zip available"; exit -1; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	fi ;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_ALT_LANGTOOLS_SRC_ZIP_TRUE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	ln -sf $(ALT_LANGTOOLS_SRC_ZIP) $(LANGTOOLS_SRC_ZIP)
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	if ! echo "$(LANGTOOLS_SHA256SUM)  $(LANGTOOLS_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  | $(SHA256SUM) --check ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  if test "x$(enable_downloading)" = "xyes"; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if [ $(LANGTOOLS_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      mv $(LANGTOOLS_SRC_ZIP) $(LANGTOOLS_SRC_ZIP).old ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    $(WGET) $(LANGTOOLS_URL)/archive/$(LANGTOOLS_CHANGESET).tar.gz -O $(LANGTOOLS_SRC_ZIP); \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if ! echo "$(LANGTOOLS_SHA256SUM)  $(LANGTOOLS_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      | $(SHA256SUM) --check ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      echo "ERROR: Bad download of langtools zip"; false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    echo "ERROR: No up-to-date OpenJDK langtools zip available"; exit -1; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	fi ;
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_ALT_HOTSPOT_SRC_ZIP_TRUE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	ln -sf $(ALT_HOTSPOT_SRC_ZIP) $(HOTSPOT_SRC_ZIP)
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	echo "Using HotSpot build: ${HSBUILD}"
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	if ! echo "$(HS_SHA256SUM)  $(HOTSPOT_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  | $(SHA256SUM) --check ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  if test "x$(enable_downloading)" = "xyes"; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if [ -e $(HOTSPOT_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      mv $(HOTSPOT_SRC_ZIP) $(HOTSPOT_SRC_ZIP).old ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    $(WGET) $(HS_URL)/archive/$(HS_CHANGESET).tar.gz -O $(HOTSPOT_SRC_ZIP) ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    if ! echo "$(HS_SHA256SUM)  $(HOTSPOT_SRC_ZIP)" \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      | $(SHA256SUM) --check ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	      echo "ERROR: Bad download of HotSpot zip"; false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	    echo "ERROR: No up-to-date OpenJDK HotSpot zip available"; exit -1; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_BSD_FALSE@@USE_CACIOCAVALLO_FALSE@@USE_CLOSURES_FALSE@@USE_CVMI_FALSE@@USE_HG_FALSE@@USE_JDK7_FALSE@@USE_NIO2_FALSE@	fi
	mkdir -p stamps
	touch $@

clean-download-openjdk:
	if [ ! -z $(OPENJDK_SRC_ZIP) ] ; then \
	  rm -f $(OPENJDK_SRC_ZIP) ; \
	fi
	if [ ! -z $(CORBA_SRC_ZIP) ] ; then \
	  rm -f $(CORBA_SRC_ZIP) ; \
	fi
	if [ ! -z $(JAXP_SRC_ZIP) ] ; then \
	  rm -f $(JAXP_SRC_ZIP) ; \
	fi
	if [ ! -z $(JAXWS_SRC_ZIP) ] ; then \
	  rm -f $(JAXWS_SRC_ZIP) ; \
	fi
	if [ ! -z $(JDK_SRC_ZIP) ] ; then \
	  rm -f $(JDK_SRC_ZIP) ; \
	fi
	if [ ! -z $(LANGTOOLS_SRC_ZIP) ] ; then \
	  rm -f $(LANGTOOLS_SRC_ZIP) ; \
	fi
	if [ ! -z $(HOTSPOT_SRC_ZIP) ] ; then \
	  rm -f $(HOTSPOT_SRC_ZIP) ; \
	fi
	rm -f stamps/download-openjdk.stamp

stamps/download-cacao.stamp:
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_ALT_CACAO_SRC_ZIP_TRUE@@USE_SYSTEM_CACAO_FALSE@	ln -sf $(ALT_CACAO_SRC_ZIP) $(CACAO_SRC_ZIP)
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	if ! echo "$(CACAO_SHA256SUM)  $(CACAO_SRC_ZIP)" \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	 | $(SHA256SUM) --check ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	then \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	 if test "x$(enable_downloading)" = "xyes"; then \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	   if [ -e $(CACAO_SRC_ZIP) ] ; then \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	     mv $(CACAO_SRC_ZIP) $(CACAO_SRC_ZIP).old ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	   fi ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	   $(WGET) $(CACAO_URL) -O $(CACAO_SRC_ZIP); \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	   if ! echo "$(CACAO_SHA256SUM)  $(CACAO_SRC_ZIP)" \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	     | $(SHA256SUM) --check ; then \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	     echo "ERROR: Bad download of CACAO zip"; false; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	   fi; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	 else \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	   echo "ERROR: No up-to-date CACAO zip available"; exit -1; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	 fi ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	fi
	mkdir -p stamps
	touch $@

clean-download-cacao:
	rm -f $(CACAO_SRC_ZIP)
	rm -f stamps/download-cacao.stamp

stamps/download-jamvm.stamp:
@BUILD_JAMVM_TRUE@@USE_ALT_JAMVM_SRC_ZIP_TRUE@	ln -sf $(ALT_JAMVM_SRC_ZIP) $(JAMVM_SRC_ZIP)
@BUILD_JAMVM_TRUE@	if ! echo "$(JAMVM_SHA256SUM)  $(JAMVM_SRC_ZIP)" \
@BUILD_JAMVM_TRUE@	 | $(SHA256SUM) --check ; \
@BUILD_JAMVM_TRUE@	then \
@BUILD_JAMVM_TRUE@	  if test "x$(enable_downloading)" = "xyes"; then \
@BUILD_JAMVM_TRUE@	    if [ -e $(JAMVM_SRC_ZIP) ] ; then \
@BUILD_JAMVM_TRUE@	      mv $(JAMVM_SRC_ZIP) $(JAMVM_SRC_ZIP).old ; \
@BUILD_JAMVM_TRUE@	    fi ; \
@BUILD_JAMVM_TRUE@	    $(WGET) $(JAMVM_URL) -O $(JAMVM_SRC_ZIP); \
@BUILD_JAMVM_TRUE@	    if ! echo "$(JAMVM_SHA256SUM)  $(JAMVM_SRC_ZIP)" \
@BUILD_JAMVM_TRUE@	      | $(SHA256SUM) --check ; then \
@BUILD_JAMVM_TRUE@	      echo "ERROR: Bad download of JamVM zip"; false; \
@BUILD_JAMVM_TRUE@	    fi; \
@BUILD_JAMVM_TRUE@	  else \
@BUILD_JAMVM_TRUE@	    echo "ERROR: No up-to-date JamVM zip available"; exit -1; \
@BUILD_JAMVM_TRUE@	  fi ; \
@BUILD_JAMVM_TRUE@	fi
	mkdir -p stamps
	touch $@

clean-download-jamvm:
	rm -f $(JAMVM_SRC_ZIP)
	rm -f stamps/download-jamvm.stamp

stamps/extract.stamp: stamps/extract-openjdk.stamp \
 stamps/extract-cacao.stamp stamps/remove-intree-libraries.stamp \
 stamps/extract-jamvm.stamp stamps/extract-hotspot.stamp stamps/sanitise-openjdk.stamp
	mkdir -p stamps
	touch $@

clean-extract: clean-extract-openjdk clean-extract-cacao clean-extract-jamvm
	rm -f stamps/extract.stamp

stamps/extract-openjdk.stamp: stamps/download-openjdk.stamp
@OPENJDK_SRC_DIR_FOUND_TRUE@	cp -pPR $(OPENJDK_SRC_DIR_LINK) $(OPENJDK_SRC_DIR) openjdk
@OPENJDK_SRC_DIR_FOUND_FALSE@	set -e ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	if ! test -d openjdk ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  if [ ! -z $(OPENJDK_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    case "$(OPENJDK_SRC_ZIP)" in \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      *.zip) $(UNZIP) -q $(OPENJDK_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      *.tar.*) $(TAR) xf $(OPENJDK_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    esac; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    mv `echo $(ICEDTEA_PREFIX)|sed 's#\.#-#'`-$(OPENJDK_CHANGESET) openjdk ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  else \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    echo "ERROR: Couldn't extract OpenJDK"; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    false; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  fi; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	fi; 
@OPENJDK_SRC_DIR_FOUND_FALSE@	set -e ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	if [ ! -z $(CORBA_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  if test -e ${CORBA_SRC_ZIP} ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    if ! test -d openjdk/corba ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      case "$(CORBA_SRC_ZIP)" in \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.zip) $(UNZIP) -q $(CORBA_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.tar.*) $(TAR) xf $(CORBA_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      esac; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      mv corba-$(CORBA_CHANGESET) openjdk/corba ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	fi
@OPENJDK_SRC_DIR_FOUND_FALSE@	set -e ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	if [ ! -z $(JAXP_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  if test -e ${JAXP_SRC_ZIP} ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    if ! test -d openjdk/jaxp ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      case "$(JAXP_SRC_ZIP)" in \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.zip) $(UNZIP) -q $(JAXP_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.tar.*) $(TAR) xf $(JAXP_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      esac; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      mv jaxp-$(JAXP_CHANGESET) openjdk/jaxp ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	fi
@OPENJDK_SRC_DIR_FOUND_FALSE@	set -e ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	if [ ! -z $(JAXWS_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  if test -e ${JAXWS_SRC_ZIP} ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    if ! test -d openjdk/jaxws ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      case "$(JAXWS_SRC_ZIP)" in \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.zip) $(UNZIP) -q $(JAXWS_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.tar.*) $(TAR) xf $(JAXWS_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      esac; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      mv jaxws-$(JAXWS_CHANGESET) openjdk/jaxws ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	fi
@OPENJDK_SRC_DIR_FOUND_FALSE@	set -e ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	if [ ! -z $(JDK_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  if test -e ${JDK_SRC_ZIP} ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    if ! test -d openjdk/jdk ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      case "$(JDK_SRC_ZIP)" in \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.zip) $(UNZIP) -q $(JDK_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.tar.*) $(TAR) xf $(JDK_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      esac; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      mv jdk-$(JDK_CHANGESET) openjdk/jdk ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	fi
@OPENJDK_SRC_DIR_FOUND_FALSE@	set -e ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	if [ ! -z $(LANGTOOLS_SRC_ZIP) ] ; then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  if test -e ${LANGTOOLS_SRC_ZIP} ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    if ! test -d openjdk/langtools ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    then \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      case "$(LANGTOOLS_SRC_ZIP)" in \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.zip) $(UNZIP) -q $(LANGTOOLS_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	        *.tar.*) $(TAR) xf $(LANGTOOLS_SRC_ZIP) ;; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      esac; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	      mv langtools-$(LANGTOOLS_CHANGESET) openjdk/langtools ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	    fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	  fi ; \
@OPENJDK_SRC_DIR_FOUND_FALSE@	fi
	touch stamps/extract-openjdk.stamp

clean-extract-openjdk: clean-overlay clean-versioning \
 clean-patch-fsg clean-remove-intree-libraries \
 clean-sanitise-openjdk clean-extract-hotspot
	rm -rf openjdk
	rm -f stamps/extract-openjdk.stamp

stamps/extract-hotspot.stamp: stamps/extract-openjdk.stamp
	set -e ; \
	if [ ! -z $(HOTSPOT_SRC_ZIP) ] ; then \
	  if test -e ${HOTSPOT_SRC_ZIP} ; \
	  then \
	    case "$(HOTSPOT_SRC_ZIP)" in \
	      *.zip) $(UNZIP) -q $(HOTSPOT_SRC_ZIP) ;; \
	      *.tar.*) $(TAR) xf $(HOTSPOT_SRC_ZIP) ;; \
	    esac; \
	    if test "x${HSBUILD}" != "xdefault"; then \
	      rm -rf openjdk/hotspot ; \
	    fi ; \
	    if ! test -d openjdk/hotspot ; \
	    then \
	      mv hotspot-$(HS_CHANGESET) openjdk/hotspot ; \
	    else \
	      rm -rf hotspot-$(HS_CHANGESET) ; \
	    fi ; \
	  fi ; \
	fi
	touch stamps/extract-hotspot.stamp

clean-extract-hotspot:
	rm -rf openjdk/hotspot
	rm -f stamps/extract-hotspot.stamp

stamps/sanitise-openjdk.stamp: stamps/extract-openjdk.stamp \
 stamps/extract-hotspot.stamp
	chmod -R ug+w openjdk 
	sh $(srcdir)/fsg.sh
	touch stamps/sanitise-openjdk.stamp

clean-sanitise-openjdk:
	rm -f stamps/sanitise-openjdk.stamp

stamps/extract-cacao.stamp: stamps/download-cacao.stamp
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_TRUE@@USE_SYSTEM_CACAO_FALSE@	if ! test -d cacao ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_TRUE@@USE_SYSTEM_CACAO_FALSE@	then \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_TRUE@@USE_SYSTEM_CACAO_FALSE@	  mkdir -p cacao/cacao ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_TRUE@@USE_SYSTEM_CACAO_FALSE@	  cp -r $(ALT_CACAO_SRC_DIR)/* cacao/cacao/ ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_TRUE@@USE_SYSTEM_CACAO_FALSE@	fi
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	set -e ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	if ! test -d cacao/cacao ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	then \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	  mkdir cacao ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	  $(TAR) xzf $(CACAO_SRC_ZIP) -C cacao ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	  dir=$$(basename cacao/cacao-*) ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	  ln -s $$dir cacao/cacao ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	  cd cacao/cacao ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	  cd .. ; \
@BUILD_CACAO_TRUE@@USE_ALT_CACAO_SRC_DIR_FALSE@@USE_SYSTEM_CACAO_FALSE@	fi
	mkdir -p stamps
	touch $@

clean-extract-cacao: clean-cacao
	rm -f stamps/extract-cacao.stamp

stamps/extract-jamvm.stamp: stamps/download-jamvm.stamp
@BUILD_JAMVM_TRUE@	set -e ; \
@BUILD_JAMVM_TRUE@	if ! test -d jamvm ; \
@BUILD_JAMVM_TRUE@	then \
@BUILD_JAMVM_TRUE@	  mkdir jamvm ; \
@BUILD_JAMVM_TRUE@	  $(TAR) xzf $(JAMVM_SRC_ZIP) -C jamvm ; \
@BUILD_JAMVM_TRUE@	  dir=$$(basename jamvm/jamvm-*) ; \
@BUILD_JAMVM_TRUE@	  ln -s $$dir jamvm/jamvm ; \
@BUILD_JAMVM_TRUE@	fi
	mkdir -p stamps
	touch stamps/extract-jamvm.stamp

clean-extract-jamvm: clean-jamvm
	rm -f stamps/extract-jamvm.stamp

stamps/remove-intree-libraries.stamp: stamps/sanitise-openjdk.stamp
	sh $(abs_top_builddir)/remove-intree-libraries.sh
	touch stamps/remove-intree-libraries.stamp

clean-remove-intree-libraries:
	rm -f stamps/remove-intree-libraries.stamp

stamps/generated.stamp:
	set -e ; \
	if [ ! -e $(abs_top_builddir)/generated.build ]; then \
	  cp -pPR $(abs_top_srcdir)/generated $(abs_top_builddir)/generated.build; \
	  chmod -R u+w $(abs_top_builddir)/generated.build ; \
	fi
	mkdir -p stamps
	touch $@

clean-generated:
	rm -rf $(abs_top_builddir)/generated.build
	rm -f stamps/generated.stamp

stamps/patch-fsg.stamp: stamps/extract.stamp
	mkdir -p stamps ; \
	rm -f stamps/patch-fsg.stamp.tmp ; \
	touch stamps/patch-fsg.stamp.tmp ; \
	all_patches_ok=yes; \
	for p in $(ICEDTEA_FSG_PATCHES) ; \
	do \
	  if test x$${all_patches_ok} = "xyes" \
	    && echo Checking $$p \
	    && $(PATCH) -l -p0 --dry-run -s -t -f \
	      -F 0 < $(abs_top_srcdir)/$$p ; \
	  then \
	    echo Applying $$p ; \
	    $(PATCH) -l -p0 < $(abs_top_srcdir)/$$p ; \
	    if ! grep "^\* $$(basename $$p)" $(abs_top_srcdir)/HACKING \
	      >> stamps/patch-fsg.stamp.tmp ; \
	    then \
	      echo "* $$(basename $$p): UNDOCUMENTED" \
	        >> stamps/patch-fsg.stamp.tmp ; \
	    fi ; \
	  else \
	    test x$${all_patches_ok} = "xyes" && all_patches_ok=$$p ; \
	  fi ; \
	done ; \
	mv stamps/patch-fsg.stamp.tmp stamps/patch-fsg.stamp ; \
	if ! test x$${all_patches_ok} = "xyes"; then \
	  echo ERROR patch $${all_patches_ok} FAILED! ; \
	  echo WARNING make clean-patch before retrying a fix ; \
	  exit 2; \
	fi ; 

clean-patch-fsg: clean-patch
	if [ -e stamps/patch-fsg.stamp ] ; then \
	  all_patches_ok=yes; \
	  for p in $(ICEDTEA_FSG_PATCHES) ; \
	  do \
	    echo Checking $$p ; \
	    if $(PATCH) -l -p0 -R --dry-run -s -t -f < $(abs_top_srcdir)/$$p ; \
	    then \
	      echo Reverting $$p ; \
	      $(PATCH) -l -p0 -R < $(abs_top_srcdir)/$$p ; \
	    else \
	      all_patches_ok=no ; \
	    fi ; \
	  done ; \
	  if ! test x$${all_patches_ok} = "xyes" ; then \
	    echo "WARNING Not all patches reverted cleanly" ; \
	  fi ; \
	  rm -f stamps/patch-fsg.stamp ; \
	fi

stamps/patch.stamp: stamps/patch-fsg.stamp
	mkdir -p stamps ; \
	rm -f stamps/patch.stamp.tmp ; \
	touch stamps/patch.stamp.tmp ; \
	all_patches_ok=yes; \
	cd $(abs_top_builddir)/openjdk/jdk; \
	for p in $(OPENJDK_PATCHES) ; \
	do \
	  if test x$${all_patches_ok} == "xyes" \
	     && echo Checking $$p \
	     && $(PATCH) -l -p1 --dry-run -s -t -f -F 0 < $(abs_top_srcdir)/$$p ; \
	  then \
	    echo Applying $$p ; \
	    $(PATCH) -l -p1 < $(abs_top_srcdir)/$$p ; \
	  else \
	    test x$${all_patches_ok} == "xyes" && all_patches_ok=$$p ; \
	  fi ; \
	done ; \
	cd $(abs_top_builddir) ; \
	for p in $(ICEDTEA_PATCHES) ; \
	do \
	  if test x$${all_patches_ok} = "xyes" \
	    && echo Checking $$p \
	    && $(PATCH) -l -p0 --dry-run -s -t -f \
	      -F 0 < $(abs_top_srcdir)/$$p ; \
	  then \
	    echo Applying $$p ; \
	    $(PATCH) -l -p0 < $(abs_top_srcdir)/$$p ; \
	    if ! grep "^\* $$(basename $$p)" $(abs_top_srcdir)/HACKING \
	      >> stamps/patch.stamp.tmp ; \
	    then \
	      echo "* $$(basename $$p): UNDOCUMENTED" \
	        >> stamps/patch.stamp.tmp ; \
	    fi ; \
	  else \
	    test x$${all_patches_ok} = "xyes" && all_patches_ok=$$p ; \
	  fi ; \
	done ; \
	if ! test x$${all_patches_ok} = "xyes"; then \
	  echo ERROR patch $${all_patches_ok} FAILED! ; \
	  echo WARNING make clean-patch before retrying a fix ; \
	  exit 2; \
	fi ; \
	mv stamps/patch.stamp.tmp stamps/patch.stamp 

clean-patch:
	if [ -e stamps/patch.stamp ] ; then \
	  all_patches_ok=yes; \
	  for p in $(ICEDTEA_PATCHES) ; \
	  do \
	    echo Checking $$p ; \
	    if $(PATCH) -l -p0 -R --dry-run -s -t -f < $(abs_top_srcdir)/$$p ; \
	    then \
	      echo Reverting $$p ; \
	      $(PATCH) -l -p0 -R < $(abs_top_srcdir)/$$p ; \
	    else \
	      all_patches_ok=no ; \
	    fi ; \
	  done ; \
	  cd $(abs_top_builddir)/openjdk/jdk; \
	  for p in $(OPENJDK_PATCHES) ; \
	  do \
	    echo Checking $$p ; \
	    if $(PATCH) -l -p1 -R --dry-run -s -t -f < $(abs_top_srcdir)/$$p ; \
	    then \
	      echo Reverting $$p ; \
	      $(PATCH) -l -p1 -R < $(abs_top_srcdir)/$$p ; \
	    else \
	      all_patches_ok=no ; \
	    fi ; \
	  done ; \
	  cd $(abs_top_builddir) ; \
	  if ! test x$${all_patches_ok} = "xyes" ; then \
	    echo "WARNING Not all patches reverted cleanly" ; \
	  fi ; \
	  rm -f stamps/patch.stamp ; \
	fi

stamps/versioning.stamp: stamps/patch.stamp
	mv openjdk/jdk/make/common/shared/Defs.gmk Defs.gmk.bak
	cat Defs.gmk.bak > openjdk/jdk/make/common/shared/Defs.gmk
	icedtea_version="$(PACKAGE_VERSION)$(ICEDTEA_REV)" ; \
	if test "x$(ENABLE_CACAO)" = "xyes" || \
	   test "x$(ENABLE_JAMVM)" = "xyes"; then \
	  echo "JDK_DERIVATIVE_NAME=$${icedtea_version}" \
	    >>openjdk/jdk/make/common/shared/Defs.gmk ; \
	  echo "PRODUCT_NAME=$(ICEDTEA_NAME)" \
	    >>openjdk/jdk/make/common/shared/Defs.gmk ; \
	else \
	  echo "JDK_DERIVATIVE_NAME=$(ICEDTEA_NAME) $${icedtea_version}" \
	    >>openjdk/jdk/make/common/shared/Defs.gmk ; \
	fi ; 

@HAS_JDK_REVISION_TRUE@	echo "JDK_REVID=$(JDK_REVISION)" >>openjdk/jdk/make/common/shared/Defs.gmk ;

	echo "DISTRO_NAME=$(DIST_NAME)" >>openjdk/jdk/make/common/shared/Defs.gmk ;
@HAS_PKGVERSION_TRUE@	  echo "DISTRO_PACKAGE_VERSION=$(PKGVERSION)" \
@HAS_PKGVERSION_TRUE@	    >>openjdk/jdk/make/common/shared/Defs.gmk ;
	if test x"$(PROJECT_NAME)" != "xjdk7" && test x"$(PROJECT_NAME)" != "xicedtea"; then \
	  proj_suffix="-$(PROJECT_NAME)"; \
	fi ; \
	if test x"$(VERSION_SUFFIX)" != "x"; then \
	  ver_suffix="-$(VERSION_SUFFIX)"; \
	fi ; \
	sed -i "s#BUILD_VARIANT_RELEASE)#BUILD_VARIANT_RELEASE)$${proj_suffix}$${ver_suffix}#" \
	  openjdk/jdk/make/common/shared/Defs.gmk;
	mkdir -p stamps
	touch $@

clean-versioning:
	if [ -e Defs.gmk.bak ] ; then \
	  mv Defs.gmk.bak openjdk/jdk/make/common/shared/Defs.gmk ; \
	fi
	rm -f stamps/versioning.stamp

stamps/overlay.stamp: stamps/versioning.stamp
	cp -r $(abs_top_srcdir)/overlays/openjdk/* openjdk/
	chmod -R ug+w openjdk
	mkdir -p stamps
	touch $@

clean-overlay:
	rm -f stamps/overlay.stamp

# OpenJDK boot Source Preparation Targets
# ======================================

# Copy over OpenJDK sources for bootstrap.
stamps/clone-boot.stamp: $(OPENJDK_TREE)
	if ! test -d openjdk-boot ; then \
	    cp -pPRl openjdk openjdk-boot ; \
	    if [ -e $(BUILD_OUTPUT_DIR) ] ; then \
	      cp -pPRl $(BUILD_OUTPUT_DIR) $(BOOT_BUILD_OUTPUT_DIR) ; \
	    fi ; \
	fi
	mkdir -p stamps
	touch $@

clean-clone-boot: 
	rm -rf openjdk-boot
	rm -f stamps/patch-boot.stamp
	rm -f stamps/clone-boot.stamp

stamps/patch-boot.stamp: stamps/clone-boot.stamp
	mkdir -p stamps; \
	rm -f stamps/patch-boot.stamp.tmp ; \
	touch stamps/patch-boot.stamp.tmp ; \
	all_patches_ok=yes; \
	for p in $(ICEDTEA_BOOT_PATCHES) ; \
	do \
	  if test x$${all_patches_ok} = "xyes" \
	    && echo Checking $$p \
	    && $(PATCH) -l -p0 --dry-run -s -t -f \
	      -F 0 < $(abs_top_srcdir)/$$p ; \
	  then \
	    echo Applying $$p ; \
	    $(PATCH) -l -p0 < $(abs_top_srcdir)/$$p ; \
	    if ! grep "^\* $$(basename $$p)" $(abs_top_srcdir)/HACKING \
	      >> stamps/patch-boot.stamp.tmp ; \
	    then \
	      echo "* $$(basename $$p): UNDOCUMENTED" \
	        >> stamps/patch-boot.stamp.tmp ; \
	    fi ; \
	  else \
	    test x$${all_patches_ok} = "xyes" && all_patches_ok=$$p ; \
	  fi ; \
	done ; \
	mv stamps/patch-boot.stamp.tmp stamps/patch-boot.stamp ; \
	if ! test x$${all_patches_ok} = "xyes"; then \
	  echo ERROR patch $${all_patches_ok} FAILED! ; \
	  echo WARNING make clean-patch before retrying a fix ; \
	  exit 2; \
	fi

clean-patch-boot:
	if [ -e stamps/patch-boot.stamp ] ; then \
	  all_patches_ok=yes; \
	  for p in $(ICEDTEA_BOOT_PATCHES) ; \
	  do \
	    echo Checking $$p ; \
	    if $(PATCH) -l -p0 -R --dry-run -s -t -f < $(abs_top_srcdir)/$$p ; \
	    then \
	      echo Reverting $$p ; \
	      $(PATCH) -l -p0 -R < $(abs_top_srcdir)/$$p ; \
	    else \
	      all_patches_ok=no ; \
	    fi ; \
	  done ; \
	  if ! test x$${all_patches_ok} = "xyes" ; then \
	    echo "WARNING Not all patches reverted cleanly" ; \
	  fi ; \
	  rm -f stamps/patch-boot.stamp ; \
	fi

# Bootstrap Directory Targets
# ===========================

# Optional native ecj
stamps/native-ecj.stamp:
	mkdir -p stamps 
@BUILD_NATIVE_ECJ_TRUE@	${GCJ} $(IT_CFLAGS) -Wl,-Bsymbolic -findirect-dispatch -o native-ecj \
@BUILD_NATIVE_ECJ_TRUE@	    --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR}
	touch $@

clean-native-ecj:
	rm -f native-ecj
	rm -rf stamps/native-ecj.stamp

# bootstrap/stage1
stamps/bootstrap-directory-stage1.stamp: stamps/native-ecj.stamp
	mkdir -p $(STAGE1_BOOT_DIR)/bin stamps/
	ln -sf $(JAVA) $(STAGE1_BOOT_DIR)/bin/java
@JAVAH_SUPPORTS_X_OPTIONS_TRUE@	ln -sf $(JAVAH) $(STAGE1_BOOT_DIR)/bin/javah
@JAVAH_SUPPORTS_X_OPTIONS_FALSE@	ln -sf ../../../javah $(STAGE1_BOOT_DIR)/bin/javah
	ln -sf $(RMIC) $(STAGE1_BOOT_DIR)/bin/rmic
	ln -sf $(JAR) $(STAGE1_BOOT_DIR)/bin/jar
	ln -sf $(NATIVE2ASCII) $(STAGE1_BOOT_DIR)/bin/native2ascii
	ln -sf ../../../javac $(STAGE1_BOOT_DIR)/bin/javac
	ln -sf ../../../javap $(STAGE1_BOOT_DIR)/bin/javap
	mkdir -p $(STAGE1_BOOT_DIR)/lib/modules
	mkdir -p $(STAGE1_BOOT_DIR)/jre/lib && \
	cp $(SYSTEM_JDK_DIR)/jre/lib/rt.jar \
	  $(STAGE1_BOOT_DIR)/jre/lib/rt.jar && \
	chmod u+w $(STAGE1_BOOT_DIR)/jre/lib/rt.jar
	mkdir -p $(STAGE1_BOOT_DIR)/lib && \
	if [ -e $(SYSTEM_JDK_DIR)/lib/tools.jar ] ; then \
	  ln -sf $(SYSTEM_JDK_DIR)/lib/tools.jar $(STAGE1_BOOT_DIR)/lib/tools.jar ; \
	else \
	  ln -sf $(STAGE1_BOOT_DIR)/jre/lib/rt.jar $(STAGE1_BOOT_DIR)/lib/tools.jar ; \
	fi
	ln -sf $(SYSTEM_JDK_DIR)/jre/lib/$(JRE_ARCH_DIR) \
	  $(STAGE1_BOOT_DIR)/jre/lib/ && \
	if ! test -d $(STAGE1_BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
	  then \
	  ln -sf ./$(JRE_ARCH_DIR) \
	    $(STAGE1_BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
	fi
	mkdir -p $(STAGE1_BOOT_DIR)/include && \
	for i in $(SYSTEM_JDK_DIR)/include/*; do \
	  test -r $$i | continue; \
	  i=`basename $$i`; \
	  rm -f $(STAGE1_BOOT_DIR)/include/$$i; \
	  ln -s $(SYSTEM_JDK_DIR)/include/$$i $(STAGE1_BOOT_DIR)/include/$$i; \
	done;
	mkdir -p stamps
	touch $@

clean-bootstrap-directory-stage1:
	rm -rf $(STAGE1_BOOT_DIR)
	rm -f stamps/bootstrap-directory-stage1.stamp

# bootstrap/stage2.
stamps/bootstrap-directory-stage2.stamp: stamps/icedtea-stage1.stamp
	rm -rf $(STAGE2_BOOT_DIR)
	ln -s $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/ $(STAGE2_BOOT_DIR)
	if ! test -d $(STAGE2_BOOT_DIR)/include; then \
	  ln -sf $(BOOT_BUILD_OUTPUT_DIR)/include $(STAGE2_BOOT_DIR)/include; \
	fi
	mkdir -p stamps
	touch $@

clean-bootstrap-directory-stage2:
	rm -rf $(STAGE2_BOOT_DIR)
	rm -f stamps/bootstrap-directory-stage2.stamp

# stage 1 symlink.
stamps/bootstrap-directory-symlink-stage1.stamp: stamps/bootstrap-directory-stage1.stamp
	rm -f $(BOOT_DIR)
	ln -sf $(STAGE1_BOOT_DIR) $(BOOT_DIR)
	mkdir -p stamps
	touch $@

clean-bootstrap-directory-symlink-stage1:
	rm -f $(BOOT_DIR)
	rm -f stamps/bootstrap-directory-symlink-stage1.stamp

# stage 2 symlink.
stamps/bootstrap-directory-symlink-stage2.stamp: $(BOOTSTRAP_DIRECTORY_STAMP)
	mkdir -p bootstrap
	rm -f $(BOOT_DIR)
	ln -sf $(ICEDTEA_HOME) $(BOOT_DIR); \
	if ! $(BOOT_DIR)/bin/java -version ; \
         then \
           echo "$(BOOT_DIR)/bin/java" \
               "cannot be found or is corrupted." ; \
           exit 1; \
        fi
	mkdir -p stamps
	touch $@

clean-bootstrap-directory-symlink-stage2:
	rm -f $(BOOT_DIR)
	rm -f stamps/bootstrap-directory-symlink-stage2.stamp

# OpenJDK Targets
# ===============

# If you change anything here in the icedtea target, please make sure
# you change it in the icedtea-debug target as well.
stamps/icedtea.stamp: stamps/bootstrap-directory-symlink-stage2.stamp \
 stamps/download.stamp stamps/extract.stamp $(OPENJDK_TREE) \
 stamps/cacao.stamp stamps/rewrite-rhino.stamp stamps/jamvm.stamp
	$(ARCH_PREFIX) $(MAKE) -j1 \
	  $(ICEDTEA_ENV) \
	  -C openjdk/ \
	  $(ICEDTEA_BUILD_TARGET)
	$(abs_top_builddir)/pax-mark-vm $(BUILD_OUTPUT_DIR)/j2sdk-image
	mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
	mkdir -p $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)
	mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext
	mkdir -p $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext 
@ZERO_BUILD_TRUE@	printf -- '-zero ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@SHARK_BUILD_TRUE@	printf -- '-shark ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ENABLE_CACAO_TRUE@	printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ENABLE_JAMVM_TRUE@	printf -- '-jamvm ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
	@echo "IcedTea is served:" $(BUILD_OUTPUT_DIR)
	mkdir -p stamps
	touch $@

stamps/add-systemtap.stamp: stamps/icedtea.stamp
@ENABLE_SYSTEMTAP_TRUE@	mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset ; \
@ENABLE_SYSTEMTAP_TRUE@	grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \
@ENABLE_SYSTEMTAP_TRUE@	if test $$? -eq 0; then \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot_jni.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot_gc.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
@ENABLE_SYSTEMTAP_TRUE@	else \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot_jni.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot_gc.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
@ENABLE_SYSTEMTAP_TRUE@	fi; \
@ENABLE_SYSTEMTAP_TRUE@	cp $(abs_top_builddir)/tapset/jstack.stp \
@ENABLE_SYSTEMTAP_TRUE@	  $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp
	touch stamps/add-systemtap.stamp

clean-add-systemtap:
	rm -rf $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset
	rm -f stamps/add-systemtap.stamp

stamps/add-pulseaudio.stamp: stamps/icedtea.stamp $(PULSE_JAVA_TARGET)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
@ENABLE_PULSE_JAVA_TRUE@	  $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
@ENABLE_PULSE_JAVA_TRUE@	  $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf pulse-java.jar \
@ENABLE_PULSE_JAVA_TRUE@	  $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf pulse-java.jar \
@ENABLE_PULSE_JAVA_TRUE@	  $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext
@ENABLE_PULSE_JAVA_TRUE@	(cd $(PULSE_JAVA_JAVA_SRCDIR) && \
@ENABLE_PULSE_JAVA_TRUE@	   $(ZIP) -qur $(BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org )
	touch stamps/add-pulseaudio.stamp

# Note: for simplicity, we don't revert the update of src.zip
clean-add-pulseaudio:
	rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so
	rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so
	rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext/pulse-java.jar
	rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext/pulse-java.jar
	rm -f stamps/add-pulseaudio.stamp

stamps/add-nss.stamp: stamps/extract-openjdk.stamp
	cp -v $(abs_top_builddir)/nss.cfg openjdk/jdk/src/share/lib/security;
	touch stamps/add-nss.stamp

clean-add-nss:
	rm -f openjdk/jdk/src/share/lib/security/nss.cfg
	rm -f stamps/add-nss.stamp

stamps/add-tzdata-support.stamp: stamps/icedtea.stamp
@WITH_TZDATA_DIR_TRUE@	if [ -e $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib ] ; then \
@WITH_TZDATA_DIR_TRUE@	  cp -v $(abs_top_builddir)/tz.properties \
@WITH_TZDATA_DIR_TRUE@	    $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib ; \
@WITH_TZDATA_DIR_TRUE@	fi
	touch stamps/add-tzdata-support.stamp

clean-add-tzdata-support:
	if [ -e $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties ] ; then \
	  rm -vf $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties ; \
	fi
	rm -f stamps/add-tzdata-support.stamp

stamps/check-crypto.stamp: stamps/cryptocheck.stamp stamps/icedtea.stamp
	if [ -e $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/java ] ; then \
	  $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/java -cp $(CRYPTO_CHECK_BUILD_DIR) TestCryptoLevel ; \
	fi
	mkdir -p stamps
	touch $@

clean-check-crypto:
	rm -f stamps/check-crypto.stamp

stamps/add-archive.stamp: stamps/icedtea.stamp
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	if [ -e $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/java ] ; then \
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	  $(BUILD_OUTPUT_DIR)/j2sdk-image/bin/java -Xshare:dump ; \
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	fi
	touch stamps/add-archive.stamp

clean-add-archive:
	rm -vf $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/*/*.jsa
	rm -f stamps/add-archive.stamp

stamps/icedtea-debug.stamp: stamps/bootstrap-directory-symlink-stage2.stamp \
 stamps/download.stamp stamps/extract.stamp $(OPENJDK_TREE) \
 stamps/cacao.stamp stamps/rewrite-rhino.stamp stamps/jamvm.stamp
	$(ARCH_PREFIX) $(MAKE) -j1 \
	  $(ICEDTEA_ENV) \
	  -C openjdk/ \
	  $(ICEDTEA_DEBUG_BUILD_TARGET)
	$(abs_top_builddir)/pax-mark-vm $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image
	mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
	mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)
	mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext
	mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext 
@ZERO_BUILD_TRUE@	printf -- '-zero ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@SHARK_BUILD_TRUE@	printf -- '-shark ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@ENABLE_CACAO_TRUE@	printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@ENABLE_JAMVM_TRUE@	printf -- '-jamvm ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
	@echo "IcedTea (debug build) is served:" \
	  $(DEBUG_BUILD_OUTPUT_DIR)
	mkdir -p stamps
	touch $@

clean-icedtea: 
	rm -rf $(BUILD_OUTPUT_DIR)
	rm -f stamps/icedtea.stamp stamps/icedtea-debug.stamp

stamps/add-systemtap-debug.stamp: stamps/icedtea-debug.stamp
@ENABLE_SYSTEMTAP_TRUE@	mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset ; \
@ENABLE_SYSTEMTAP_TRUE@	grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \
@ENABLE_SYSTEMTAP_TRUE@	if test $$? -eq 0; then \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot_jni.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot_gc.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
@ENABLE_SYSTEMTAP_TRUE@	else \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot_jni.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot_gc.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
@ENABLE_SYSTEMTAP_TRUE@	fi; \
@ENABLE_SYSTEMTAP_TRUE@	cp $(abs_top_builddir)/tapset/jstack.stp \
@ENABLE_SYSTEMTAP_TRUE@	  $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp
	touch stamps/add-systemtap-debug.stamp

clean-add-systemtap-debug:
	rm -rf $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset
	rm -f stamps/add-systemtap-debug.stamp

stamps/add-pulseaudio-debug.stamp: stamps/icedtea-debug.stamp $(PULSE_JAVA_TARGET)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
@ENABLE_PULSE_JAVA_TRUE@	  $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
@ENABLE_PULSE_JAVA_TRUE@	  $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf pulse-java.jar \
@ENABLE_PULSE_JAVA_TRUE@	  $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf pulse-java.jar \
@ENABLE_PULSE_JAVA_TRUE@	  $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext
@ENABLE_PULSE_JAVA_TRUE@	(cd $(PULSE_JAVA_JAVA_SRCDIR) && \
@ENABLE_PULSE_JAVA_TRUE@	   $(ZIP) -qur $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org )
	touch stamps/add-pulseaudio-debug.stamp

# Note: for simplicity, we don't revert the update of src.zip
clean-add-pulseaudio-debug:
	rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so
	rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so
	rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext/pulse-java.jar
	rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext/pulse-java.jar
	rm -f stamps/add-pulseaudio-debug.stamp

stamps/add-tzdata-support-debug.stamp: stamps/icedtea-debug.stamp
@WITH_TZDATA_DIR_TRUE@	if [ -e $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib ] ; then \
@WITH_TZDATA_DIR_TRUE@	  cp -v $(abs_top_builddir)/tz.properties \
@WITH_TZDATA_DIR_TRUE@	    $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib; \
@WITH_TZDATA_DIR_TRUE@	fi
	touch stamps/add-tzdata-support-debug.stamp

clean-add-tzdata-support-debug:
	if [ -e $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties ] ; then \
	  rm -vf $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties ; \
	fi
	rm -f stamps/add-tzdata-support-debug.stamp

stamps/check-crypto-debug.stamp: stamps/cryptocheck.stamp stamps/icedtea-debug.stamp
	if [ -e $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java ] ; then \
	  $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java -cp $(CRYPTO_CHECK_BUILD_DIR) TestCryptoLevel ; \
	fi
	mkdir -p stamps
	touch $@

clean-check-crypto-debug:
	rm -f stamps/check-crypto-debug.stamp

stamps/add-archive-debug.stamp: stamps/icedtea-debug.stamp
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	if [ -e $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java ] ; then \
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	  $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java -Xshare:dump ; \
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	fi
	touch stamps/add-archive-debug.stamp

clean-add-archive-debug:
	rm -vf $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/*/*.jsa
	rm -f stamps/add-archive-debug.stamp

stamps/icedtea-stage2.stamp: stamps/icedtea.stamp stamps/add-cacao.stamp \
 stamps/add-zero.stamp stamps/add-jamvm.stamp stamps/add-systemtap.stamp \
 stamps/add-pulseaudio.stamp stamps/add-tzdata-support.stamp stamps/check-crypto.stamp \
 stamps/add-archive.stamp
	mkdir -p stamps
	touch $@

clean-icedtea-stage2: clean-add-jamvm clean-check-crypto clean-add-archive
	rm -f stamps/icedtea-stage2.stamp

stamps/icedtea-debug-stage2.stamp: stamps/icedtea-debug.stamp \
 stamps/add-cacao-debug.stamp stamps/add-zero-debug.stamp stamps/add-jamvm-debug.stamp \
 stamps/add-systemtap-debug.stamp stamps/add-pulseaudio-debug.stamp \
 stamps/add/tzdata-support-debug.stamp stamps/check-crypto-debug.stamp \
 stamps/add-archive-debug.stamp
	mkdir -p stamps
	touch $@

clean-icedtea-debug-stage2: clean-add-jamvm-debug clean-check-crypto-debug \
 clean-add-archive-debug
	rm -f stamps/icedtea-debug-stage2.stamp

# OpenJDK boot Targets
# ===================

stamps/icedtea-boot.stamp: stamps/bootstrap-directory-symlink-stage1.stamp \
 stamps/download.stamp $(OPENJDK_BOOT_TREE) stamps/cacao.stamp \
 stamps/rewrite-rhino.stamp stamps/jamvm.stamp stamps/generated.stamp
	$(ARCH_PREFIX) $(MAKE) -j1 \
	  $(ICEDTEA_ENV_BOOT) \
	  -C openjdk-boot \
	  $(ICEDTEA_BUILD_TARGET)
	$(abs_top_builddir)/pax-mark-vm $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image
	@echo "Bootstrapped IcedTea is served:" \
	  $(BOOT_BUILD_OUTPUT_DIR)
	mkdir -p stamps
	touch $@

clean-icedtea-boot:
	rm -rf $(BOOT_BUILD_OUTPUT_DIR)
	rm -f stamps/icedtea-boot.stamp

stamps/add-systemtap-boot.stamp: stamps/icedtea-boot.stamp
@ENABLE_SYSTEMTAP_TRUE@	mkdir -p $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset ; \
@ENABLE_SYSTEMTAP_TRUE@	grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \
@ENABLE_SYSTEMTAP_TRUE@	if test $$? -eq 0; then \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot_jni.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  sed -e '/\/client\/libjvm.so/d' \
@ENABLE_SYSTEMTAP_TRUE@	    < $(abs_top_builddir)/tapset/hotspot_gc.stp \
@ENABLE_SYSTEMTAP_TRUE@	    > $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
@ENABLE_SYSTEMTAP_TRUE@	else \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot_jni.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
@ENABLE_SYSTEMTAP_TRUE@	  cp $(abs_top_builddir)/tapset/hotspot_gc.stp \
@ENABLE_SYSTEMTAP_TRUE@	    $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
@ENABLE_SYSTEMTAP_TRUE@	fi; \
@ENABLE_SYSTEMTAP_TRUE@	cp $(abs_top_builddir)/tapset/jstack.stp \
@ENABLE_SYSTEMTAP_TRUE@	  $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp
	touch stamps/add-systemtap-boot.stamp

clean-add-systemtap-boot:
	rm -rf $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/tapset
	rm -f stamps/add-systemtap-boot.stamp

stamps/add-pulseaudio-boot.stamp: stamps/icedtea-boot.stamp $(PULSE_JAVA_TARGET)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
@ENABLE_PULSE_JAVA_TRUE@	  $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
@ENABLE_PULSE_JAVA_TRUE@	  $(BOOT_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf pulse-java.jar \
@ENABLE_PULSE_JAVA_TRUE@	  $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext
@ENABLE_PULSE_JAVA_TRUE@	cp -pPRf pulse-java.jar \
@ENABLE_PULSE_JAVA_TRUE@	  $(BOOT_BUILD_OUTPUT_DIR)/j2re-image/lib/ext
@ENABLE_PULSE_JAVA_TRUE@	(cd $(PULSE_JAVA_JAVA_SRCDIR) && \
@ENABLE_PULSE_JAVA_TRUE@	   $(ZIP) -qur $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org )
	touch stamps/add-pulseaudio-boot.stamp

# Note: for simplicity, we don't revert the update of src.zip
clean-add-pulseaudio-boot:
	rm -f $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so
	rm -f $(BOOT_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so
	rm -f $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext/pulse-java.jar
	rm -f $(BOOT_BUILD_OUTPUT_DIR)/j2re-image/lib/ext/pulse-java.jar
	rm -f stamps/add-pulseaudio-boot.stamp

stamps/add-tzdata-support-boot.stamp: stamps/icedtea-boot.stamp
@WITH_TZDATA_DIR_TRUE@	if [ -e $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib ] ; then \
@WITH_TZDATA_DIR_TRUE@	  cp -v $(abs_top_builddir)/tz.properties \
@WITH_TZDATA_DIR_TRUE@	    $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib; \
@WITH_TZDATA_DIR_TRUE@	fi
	touch stamps/add-tzdata-support-boot.stamp

clean-add-tzdata-support-boot:
	if [ -e $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties ] ; then \
	  rm -vf $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties ; \
	fi
	rm -f stamps/add-tzdata-support-boot.stamp

stamps/check-crypto-boot.stamp: stamps/cryptocheck.stamp stamps/icedtea-boot.stamp
	if [ -e $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java ] ; then \
	  $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java -cp $(CRYPTO_CHECK_BUILD_DIR) TestCryptoLevel ; \
	fi
	mkdir -p stamps
	touch $@

clean-check-crypto-boot:
	rm -f stamps/check-crypto-boot.stamp

stamps/add-archive-boot.stamp: stamps/icedtea-boot.stamp
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	if [ -e $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java ] ; then \
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	  $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/bin/java -Xshare:dump ; \
@ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@	fi
	touch $@

clean-add-archive-boot:
	rm -vf $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/*/*.jsa
	rm -f stamps/add-archive-boot.stamp

stamps/icedtea-stage1.stamp: stamps/icedtea-boot.stamp \
 stamps/add-systemtap-boot.stamp stamps/add-pulseaudio-boot.stamp \
 stamps/add-tzdata-support-boot.stamp stamps/check-crypto-boot.stamp \
 stamps/add-archive-boot.stamp
	mkdir -p stamps
	touch $@

clean-icedtea-stage1: clean-add-systemtap-boot clean-add-pulseaudio-boot \
 clean-add-tzdata-support-boot clean-check-crypto-boot clean-add-archive-boot
	rm -f stamps/icedtea-stage1.stamp

# Rebuild targets

rebuild:
@BOOTSTRAPPING_TRUE@	rm -f stamps/icedtea-boot.stamp
@BOOTSTRAPPING_TRUE@	rm -f stamps/icedtea-stage1.stamp
@BOOTSTRAPPING_TRUE@	$(ARCH_PREFIX) $(MAKE) icedtea-stage1
@BOOTSTRAPPING_TRUE@	@echo "bootstrap-poured IcedTea is served (again):" $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image
@BOOTSTRAPPING_FALSE@	rm -f stamps/icedtea.stamp
@BOOTSTRAPPING_FALSE@	rm -f stamps/icedtea-stage2.stamp
@BOOTSTRAPPING_FALSE@	$(ARCH_PREFIX) $(MAKE) icedtea-stage2
@BOOTSTRAPPING_FALSE@	@echo "IcedTea is served (again):" $(BUILD_OUTPUT_DIR)/j2sdk-image

hotspot:
@BOOTSTRAPPING_TRUE@	rm -f stamps/icedtea-boot.stamp
@BOOTSTRAPPING_TRUE@	rm -f stamps/icedtea-stage1.stamp
@BOOTSTRAPPING_TRUE@	$(ARCH_PREFIX) $(MAKE) ICEDTEA_BUILD_TARGET=hotspot icedtea-stage1
@BOOTSTRAPPING_TRUE@	mkdir -p \
@BOOTSTRAPPING_TRUE@	   $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/server
@BOOTSTRAPPING_TRUE@	cp $(BOOT_BUILD_OUTPUT_DIR)/$(SERVER_DIR)/libjvm.so \
@BOOTSTRAPPING_TRUE@	   $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/server
@BOOTSTRAPPING_TRUE@	@echo "HotSpot is served:" $(BOOT_BUILD_OUTPUT_DIR)/j2sdk-image
@BOOTSTRAPPING_FALSE@	rm -f stamps/icedtea.stamp
@BOOTSTRAPPING_FALSE@	rm -f stamps/icedtea-stage2.stamp
@BOOTSTRAPPING_FALSE@	$(ARCH_PREFIX) $(MAKE) ICEDTEA_BUILD_TARGET=hotspot icedtea-stage2
@BOOTSTRAPPING_FALSE@	mkdir -p \
@BOOTSTRAPPING_FALSE@	   $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/server
@BOOTSTRAPPING_FALSE@	cp $(BUILD_OUTPUT_DIR)/$(SERVER_DIR)/libjvm.so \
@BOOTSTRAPPING_FALSE@	   $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/server
@BOOTSTRAPPING_FALSE@	@echo "HotSpot is served:" $(BUILD_OUTPUT_DIR)/j2sdk-image

# PulseAudio based mixer
# (pulse-java)

@ENABLE_PULSE_JAVA_TRUE@stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so
@ENABLE_PULSE_JAVA_TRUE@	mkdir -p stamps
@ENABLE_PULSE_JAVA_TRUE@	touch $@

@ENABLE_PULSE_JAVA_TRUE@stamps/pulse-java-class.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP)
@ENABLE_PULSE_JAVA_TRUE@	mkdir -p $(PULSE_JAVA_CLASS_DIR)
@ENABLE_PULSE_JAVA_TRUE@	(cd $(PULSE_JAVA_JAVA_SRCDIR); \
@ENABLE_PULSE_JAVA_TRUE@	 $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) -d $(PULSE_JAVA_CLASS_DIR) \
@ENABLE_PULSE_JAVA_TRUE@	 -bootclasspath $(RUNTIME) org/classpath/icedtea/pulseaudio/*.java \
@ENABLE_PULSE_JAVA_TRUE@	)
@ENABLE_PULSE_JAVA_TRUE@	cp  -r $(PULSE_JAVA_JAVA_SRCDIR)/META-INF $(PULSE_JAVA_CLASS_DIR)
@ENABLE_PULSE_JAVA_TRUE@	chmod -R ug+w $(PULSE_JAVA_CLASS_DIR)/META-INF
@ENABLE_PULSE_JAVA_TRUE@	mkdir -p stamps
@ENABLE_PULSE_JAVA_TRUE@	touch $@

@ENABLE_PULSE_JAVA_TRUE@stamps/pulse-java-jar.stamp: stamps/pulse-java-class.stamp
@ENABLE_PULSE_JAVA_TRUE@	$(BOOT_DIR)/bin/jar cf pulse-java.jar -C $(PULSE_JAVA_CLASS_DIR) .;
@ENABLE_PULSE_JAVA_TRUE@	mkdir -p stamps
@ENABLE_PULSE_JAVA_TRUE@	touch $@

@ENABLE_PULSE_JAVA_TRUE@stamps/pulse-java-headers.stamp: stamps/pulse-java-class.stamp
@ENABLE_PULSE_JAVA_TRUE@	mkdir -p $(PULSE_JAVA_NATIVE_BUILDDIR)
@ENABLE_PULSE_JAVA_TRUE@	$(BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
@ENABLE_PULSE_JAVA_TRUE@	  -J-Xbootclasspath/p:$(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.EventLoop ; \
@ENABLE_PULSE_JAVA_TRUE@	$(BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
@ENABLE_PULSE_JAVA_TRUE@	  -J-Xbootclasspath/p:$(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Stream ; \
@ENABLE_PULSE_JAVA_TRUE@	$(BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
@ENABLE_PULSE_JAVA_TRUE@	  -J-Xbootclasspath/p:$(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Operation; \
@ENABLE_PULSE_JAVA_TRUE@	$(BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
@ENABLE_PULSE_JAVA_TRUE@	  -J-Xbootclasspath/p:$(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \
@ENABLE_PULSE_JAVA_TRUE@	$(BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
@ENABLE_PULSE_JAVA_TRUE@	  -J-Xbootclasspath/p:$(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \
@ENABLE_PULSE_JAVA_TRUE@	$(BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
@ENABLE_PULSE_JAVA_TRUE@	  -J-Xbootclasspath/p:$(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.ContextEvent
@ENABLE_PULSE_JAVA_TRUE@	mkdir -p stamps
@ENABLE_PULSE_JAVA_TRUE@	touch $@

@ENABLE_PULSE_JAVA_TRUE@$(PULSE_JAVA_NATIVE_BUILDDIR)/%.o: $(PULSE_JAVA_NATIVE_SRCDIR)/%.c stamps/pulse-java-headers.stamp
@ENABLE_PULSE_JAVA_TRUE@	$(CC) $(IT_CFLAGS) -fPIC -I$(BOOT_DIR)/include/linux -I$(BOOT_DIR)/include \
@ENABLE_PULSE_JAVA_TRUE@	 -I$(PULSE_JAVA_NATIVE_BUILDDIR) -o $@ -c $<

@ENABLE_PULSE_JAVA_TRUE@$(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so: $(PULSE_JAVA_NATIVE_OBJECTS)
@ENABLE_PULSE_JAVA_TRUE@	$(CC) $(LDFLAGS) -shared $(PULSE_JAVA_NATIVE_OBJECTS) $(LIBPULSE_LIBS) \
@ENABLE_PULSE_JAVA_TRUE@	 -o $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so

clean-pulse-java:
	rm -rf $(PULSE_JAVA_NATIVE_BUILDDIR)
	rm -rf $(PULSE_JAVA_CLASS_DIR)
	rm -f pulse-java.jar
	if [ -e $(PULSE_JAVA_BUILDDIR) ]; then \
	  rmdir $(PULSE_JAVA_BUILDDIR) ; \
	fi
	rm -f stamps/pulse-java*.stamp

# end of pulse-java

# Rhino support

stamps/rewriter.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP)
@WITH_RHINO_TRUE@	mkdir -p $(REWRITER_BUILD_DIR)
@WITH_RHINO_TRUE@	$(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
@WITH_RHINO_TRUE@	 -d $(REWRITER_BUILD_DIR) $(REWRITER_SRCS)
	mkdir -p stamps
	touch stamps/rewriter.stamp

clean-rewriter:
	rm -rf $(REWRITER_BUILD_DIR)
	rm -f stamps/rewriter.stamp

stamps/rewrite-rhino.stamp: stamps/rewriter.stamp $(RHINO_JAR)
@WITH_RHINO_TRUE@	mkdir -p rhino/rhino.{old,new} && \
@WITH_RHINO_TRUE@	(cd rhino/rhino.old && $(BOOT_DIR)/bin/jar xf $(RHINO_JAR)) && \
@WITH_RHINO_TRUE@	$(BOOT_DIR)/bin/java -cp $(REWRITER_BUILD_DIR) \
@WITH_RHINO_TRUE@	  com.redhat.rewriter.ClassRewriter \
@WITH_RHINO_TRUE@	  $(abs_top_builddir)/rhino/rhino.old $(abs_top_builddir)/rhino/rhino.new \
@WITH_RHINO_TRUE@	  org.mozilla sun.org.mozilla && \
@WITH_RHINO_TRUE@	(cd rhino/rhino.old && \
@WITH_RHINO_TRUE@	 for files in `find -type f -not -name '*.class'` ; do \
@WITH_RHINO_TRUE@	   new_file=../rhino.new/`echo $$files|sed -e 's#org#sun/org#'` ; \
@WITH_RHINO_TRUE@	   mkdir -p `dirname $$new_file` ; \
@WITH_RHINO_TRUE@	   cp -v $$files $$new_file ; \
@WITH_RHINO_TRUE@	   sed -ie 's#org\.mozilla#sun.org.mozilla#g' $$new_file ; \
@WITH_RHINO_TRUE@	 done \
@WITH_RHINO_TRUE@	) && \
@WITH_RHINO_TRUE@	(cd rhino/rhino.new && \
@WITH_RHINO_TRUE@	 $(BOOT_DIR)/bin/jar cfm ../rhino.jar META-INF/MANIFEST.MF sun )
	mkdir -p stamps
	touch stamps/rewrite-rhino.stamp

clean-rewrite-rhino:
	rm -rf rhino/rhino.old
	rm -rf rhino/rhino.new
	rm -f rhino/rhino.jar
	if [ -e rhino ] ; then \
	  rmdir rhino ; \
	fi
	rm -f stamps/rewrite-rhino.stamp

# JamVM

stamps/jamvm.stamp: $(OPENJDK_TREE) stamps/rt.stamp
@BUILD_JAMVM_TRUE@	cd jamvm/jamvm && \
@BUILD_JAMVM_TRUE@	./autogen.sh --with-java-runtime-library=openjdk7 \
@BUILD_JAMVM_TRUE@	  --prefix=$(abs_top_builddir)/jamvm/install ; \
@BUILD_JAMVM_TRUE@	$(MAKE) ; \
@BUILD_JAMVM_TRUE@	$(MAKE) install
@BUILD_JAMVM_TRUE@	mkdir -p $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server
@BUILD_JAMVM_TRUE@	cp $(abs_top_builddir)/jamvm/install/lib/libjvm.so $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server
@BUILD_JAMVM_TRUE@	ln -sf server $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/client
@BUILD_JAMVM_TRUE@	touch $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server/Xusage.txt
@BUILD_JAMVM_TRUE@	ln -sf client/libjvm.so $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/libjsig.so
	mkdir -p stamps
	touch stamps/jamvm.stamp

clean-jamvm:
	rm -rf jamvm
	rm -f stamps/jamvm.stamp

# Targets for additional VMs

stamps/add-jamvm.stamp: stamps/icedtea.stamp stamps/jamvm.stamp
@ADD_JAMVM_BUILD_TRUE@	mkdir -p $(BUILD_JRE_ARCH_DIR)/jamvm
@ADD_JAMVM_BUILD_TRUE@	install -m 644 jamvm/install/lib/libjvm.so \
@ADD_JAMVM_BUILD_TRUE@		$(BUILD_JRE_ARCH_DIR)/jamvm/
@ADD_JAMVM_BUILD_TRUE@	printf -- '-jamvm KNOWN\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ADD_JAMVM_BUILD_FALSE@	printf -- '-jamvm ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
	touch $@

clean-add-jamvm:
	rm -rf $(BUILD_JRE_ARCH_DIR)/jamvm
	if [ -e $(BUILD_JRE_ARCH_DIR)/jvm.cfg ] ; then \
	  sed -i 's#-jamvm KNOWN#-jamvm ERROR#' $(BUILD_JRE_ARCH_DIR)/jvm.cfg ; \
	fi
	rm -f stamps/add-jamvm.stamp

stamps/add-jamvm-debug.stamp: stamps/icedtea-debug.stamp stamps/jamvm.stamp
@ADD_JAMVM_BUILD_TRUE@	mkdir -p $(BUILD_DEBUG_JRE_ARCH_DIR)/jamvm
@ADD_JAMVM_BUILD_TRUE@	install -m 644 jamvm/install/lib/libjvm.so \
@ADD_JAMVM_BUILD_TRUE@		$(BUILD_DEBUG_JRE_ARCH_DIR)/jamvm/
@ADD_JAMVM_BUILD_TRUE@	printf -- '-jamvm KNOWN\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@ADD_JAMVM_BUILD_FALSE@	printf -- '-jamvm ERROR\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
	touch $@

clean-add-jamvm-debug:
	rm -rf $(BUILD_DEBUG_JRE_ARCH_DIR)/jamvm
	if [ -e $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ] ; then \
	  sed -i 's#-jamvm KNOWN#-jamvm ERROR#' $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ; \
	fi
	rm -f stamps/add-jamvm-debug.stamp

# CACAO

stamps/cacao.stamp: stamps/rt.stamp
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	cd cacao/cacao && \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	./autogen.sh && \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	$(ARCH_PREFIX) ./configure \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --host=$(host_alias) \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --build=$(build_alias) \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --target=$(target_alias) \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --prefix=$(abs_top_builddir)/cacao/install \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --with-java-runtime-library=openjdk7 \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --with-java-runtime-library-prefix=$(abs_top_builddir)/openjdk \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --with-java-runtime-library-classes=$(RUNTIME) \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	  --enable-jre-layout $(CACAO_CONFIGURE_ARGS); \
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	$(ARCH_PREFIX) $(MAKE) -j$(PARALLEL_JOBS) install
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	ln -sf server $(abs_top_builddir)/cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/client
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	touch $(abs_top_builddir)/cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/server/Xusage.txt
@BUILD_CACAO_TRUE@@USE_SYSTEM_CACAO_FALSE@	ln -sf client/libjvm.so $(abs_top_builddir)/cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/libjsig.so
	mkdir -p stamps
	touch $@

clean-cacao:
	rm -rf cacao
	rm -f stamps/cacao.stamp

# targets for additional VMs

stamps/add-cacao.stamp: stamps/icedtea.stamp stamps/cacao.stamp
@ADD_CACAO_BUILD_TRUE@	mkdir -p $(BUILD_JRE_ARCH_DIR)/cacao
@ADD_CACAO_BUILD_TRUE@	install -m 644 cacao/install/lib/libjvm.so \
@ADD_CACAO_BUILD_TRUE@		$(BUILD_JRE_ARCH_DIR)/cacao/
@ADD_CACAO_BUILD_TRUE@	install -m 644 cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/libjsig.so \
@ADD_CACAO_BUILD_TRUE@		$(BUILD_JRE_ARCH_DIR)/cacao/
@ADD_CACAO_BUILD_TRUE@	install -m 644 cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/server/Xusage.txt \
@ADD_CACAO_BUILD_TRUE@		$(BUILD_JRE_ARCH_DIR)/cacao/
@ADD_CACAO_BUILD_TRUE@	printf -- '-cacao KNOWN\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ADD_CACAO_BUILD_FALSE@	printf -- '-cacao ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
	touch $@

clean-add-cacao:
	rm -rf $(BUILD_JRE_ARCH_DIR)/cacao
	if [ -e $(BUILD_JRE_ARCH_DIR)/jvm.cfg ] ; then \
	  sed -i 's#-cacao KNOWN#-cacao ERROR#' $(BUILD_JRE_ARCH_DIR)/jvm.cfg ; \
	fi
	rm -f stamps/add-cacao.stamp

stamps/add-cacao-debug.stamp: stamps/icedtea-debug.stamp stamps/cacao.stamp
@ADD_CACAO_BUILD_TRUE@	mkdir -p $(BUILD_DEBUG_JRE_ARCH_DIR)/cacao
@ADD_CACAO_BUILD_TRUE@	install -m 644 cacao/install/lib/libjvm.so \
@ADD_CACAO_BUILD_TRUE@		$(BUILD_DEBUG_JRE_ARCH_DIR)/cacao/
@ADD_CACAO_BUILD_TRUE@	install -m 644 cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/libjsig.so \
@ADD_CACAO_BUILD_TRUE@		$(BUILD_DEBUG_JRE_ARCH_DIR)/cacao/
@ADD_CACAO_BUILD_TRUE@	install -m 644 cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/server/Xusage.txt \
@ADD_CACAO_BUILD_TRUE@		$(BUILD_DEBUG_JRE_ARCH_DIR)/cacao/
@ADD_CACAO_BUILD_TRUE@	printf -- '-cacao KNOWN\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@ADD_CACAO_BUILD_FALSE@	printf -- '-cacao ERROR\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
	touch $@

clean-add-cacao-debug:
	rm -rf $(BUILD_DEBUG_JRE_ARCH_DIR)/cacao
	if [ -e $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ] ; then \
	  sed -i 's#-cacao KNOWN#-cacao ERROR#' $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ; \
	fi
	rm -f stamps/add-cacao-debug.stamp

stamps/add-zero.stamp: stamps/icedtea.stamp
	mkdir -p stamps
@ADD_ZERO_BUILD_TRUE@	mkdir -p zerovm

@ADD_ZERO_BUILD_TRUE@	cd zerovm && \
@ADD_ZERO_BUILD_TRUE@	    $(ADD_ZERO_EXTRA_BUILD_ENV) \
@ADD_ZERO_BUILD_TRUE@		$(ARCH_PREFIX) $(abs_top_srcdir)/configure $(ADD_ZERO_CONFIGURE_ARGS)

@ADD_ZERO_BUILD_TRUE@	$(ADD_ZERO_EXTRA_BUILD_ENV) \
@ADD_ZERO_BUILD_TRUE@		$(ARCH_PREFIX) $(MAKE) -C zerovm ICEDTEA_BUILD_TARGET=hotspot icedtea-stage2

@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@	mkdir -p $(BUILD_JRE_ARCH_DIR)/shark
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@	cp -a zerovm/$(BUILD_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@		$(BUILD_JRE_ARCH_DIR)/shark/
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@	printf -- '-shark KNOWN\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@	printf -- '-zero ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@	mkdir -p $(BUILD_JRE_ARCH_DIR)/zero
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@	cp -a zerovm/$(BUILD_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@		$(BUILD_JRE_ARCH_DIR)/zero/
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@	printf -- '-zero KNOWN\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@	printf -- '-shark ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_FALSE@	printf -- '-zero ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_FALSE@	printf -- '-shark ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
	touch $@

clean-add-zero:
	rm -rf $(BUILD_JRE_ARCH_DIR)/zero
	rm -rf $(BUILD_JRE_ARCH_DIR)/shark
	rm -rf zerovm
	if [ -e $(BUILD_JRE_ARCH_DIR)/jvm.cfg ] ; then \
	  sed -i 's#-zero KNOWN#-zero ERROR#' $(BUILD_JRE_ARCH_DIR)/jvm.cfg ; \
	  sed -i 's#-shark KNOWN#-shark ERROR#' $(BUILD_JRE_ARCH_DIR)/jvm.cfg ; \
	fi
	rm -f stamps/add-zero.stamp

stamps/add-zero-debug.stamp: stamps/icedtea-debug.stamp
	mkdir -p stamps
@ADD_ZERO_BUILD_TRUE@	mkdir -p zerovm

@ADD_ZERO_BUILD_TRUE@	cd zerovm && \
@ADD_ZERO_BUILD_TRUE@	    $(ADD_ZERO_EXTRA_BUILD_ENV) \
@ADD_ZERO_BUILD_TRUE@		$(ARCH_PREFIX) $(abs_top_srcdir)/configure $(ADD_ZERO_CONFIGURE_ARGS)

@ADD_ZERO_BUILD_TRUE@	$(ADD_ZERO_EXTRA_BUILD_ENV) \
@ADD_ZERO_BUILD_TRUE@		$(ARCH_PREFIX) $(MAKE) -C zerovm ICEDTEA_DEBUG_BUILD_TARGET=hotspot icedtea-stage2

@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@	mkdir -p $(BUILD_DEBUG_JRE_ARCH_DIR)/shark
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@	cp -a zerovm/$(BUILD_OUTPUT_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@		$(BUILD_DEBUG_JRE_ARCH_DIR)/shark/
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_TRUE@	printf -- '-shark KNOWN\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@	mkdir -p $(BUILD_DEBUG_JRE_ARCH_DIR)/zero
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@	cp -a zerovm/$(BUILD_OUTPUT_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@		$(BUILD_DEBUG_JRE_ARCH_DIR)/zero/
@ADD_ZERO_BUILD_TRUE@@ZERO_BUILD_FALSE@	printf -- '-zero KNOWN\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_FALSE@	printf -- '-zero ERROR\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
@ADD_ZERO_BUILD_FALSE@	printf -- '-shark ERROR\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
	touch $@

clean-add-zero-debug:
	rm -rf $(BUILD_DEBUG_JRE_ARCH_DIR)/zero
	rm -rf $(BUILD_DEBUG_JRE_ARCH_DIR)/shark
	rm -rf zerovm
	if [ -e $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ] ; then \
	  sed -i 's#-zero KNOWN#-zero ERROR#' $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ; \
	  sed -i 's#-shark KNOWN#-shark ERROR#' $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ; \
	fi
	rm -f stamps/add-zero-debug.stamp

# end additional VMs

# jtreg

stamps/jtreg.stamp: stamps/icedtea-stage2.stamp
	rm -rf test/jtreg/classes
	mkdir -p test/jtreg/classes
	$(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) -d test/jtreg/classes \
	   `find $(abs_top_srcdir)/test/jtreg/com -name '*.java'`
	(cd $(abs_top_srcdir)/test/jtreg; \
	 $(BOOT_DIR)/bin/jar cfm $(abs_top_builddir)/test/jtreg.jar \
	   META-INF/MANIFEST.MF \
	   legal  README JavaTest.cmdMgrs.lst JavaTest.toolMgrs.lst \
	   `find com -type f -a -not -name '*.java'` \
	   -C $(abs_top_builddir)/test/jtreg/classes com)
	mkdir -p stamps
	touch $@

clean-jtreg:
	rm -rf test/jtreg/classes
	if [ $(abs_top_srcdir) != $(abs_top_builddir) ] ; then \
	  if [ -e test/jtreg ] ; then \
	    rmdir test/jtreg ; \
	  fi ; \
	fi
	rm -f test/jtreg.jar
	rm -f stamps/jtreg.stamp

check-hotspot: stamps/jtreg.stamp
	mkdir -p test/hotspot/JTwork test/hotspot/JTreport
	$(BOOT_DIR)/bin/java -jar test/jtreg.jar -v1 -a -ignore:quiet \
		-w:test/hotspot/JTwork -r:test/hotspot/JTreport \
		-jdk:$(BUILD_OUTPUT_DIR)/j2sdk-image \
		$(ICEDTEA_JTREG_OPTIONS) \
		`pwd`/openjdk/hotspot/test \
	    | tee test/$@.log

check-langtools: stamps/jtreg.stamp
	mkdir -p test/langtools/JTwork test/langtools/JTreport
	$(BOOT_DIR)/bin/java -jar test/jtreg.jar -v1 -a -ignore:quiet \
		-w:test/langtools/JTwork -r:test/langtools/JTreport \
		$${ICEDTEA_JTREG_OTHERVM:--samevm} \
		-jdk:$(BUILD_OUTPUT_DIR)/j2sdk-image \
		$(ICEDTEA_JTREG_OPTIONS) \
		-exclude:$(abs_top_srcdir)/test/jtreg/excludelist.langtools.jtx \
		`pwd`/openjdk/langtools/test \
	    | tee test/$@.log

check-jdk: stamps/jtreg.stamp
	mkdir -p test/jdk/JTwork test/jdk/JTreport
@ENABLE_CACAO_TRUE@	CACAO_EXCLUDE="-exclude:$(abs_top_srcdir)/test/jtreg/excludelist.jdk.cacao.jtx"
	if test "x$${DISPLAY}" = "x"; then XVFB_RUN="@XVFB_RUN_CMD@"; fi; \
	if test "x$${DISPLAY}" = "x" && test "x$${XVFB_RUN}" = "x"; then \
		echo "WARNING: DISPLAY not set and xvfb-run not found"; \
	fi; \
	$${XVFB_RUN} \
	$(BOOT_DIR)/bin/java -jar test/jtreg.jar -v1 -a -ignore:quiet \
		-w:test/jdk/JTwork -r:test/jdk/JTreport \
		$${ICEDTEA_JTREG_OTHERVM:--samevm} \
		-jdk:$(BUILD_OUTPUT_DIR)/j2sdk-image \
		$(ICEDTEA_JTREG_OPTIONS) $(CACAO_EXCLUDE) \
		-exclude:$(abs_top_srcdir)/test/jtreg/excludelist.jdk.jtx \
		`pwd`/openjdk/jdk/test \
	    | tee test/$@.log

clean-jtreg-reports:
	rm -rf test/hotspot test/langtools test/jdk
	rm -f test/check-*.log test/jtreg-summary.log

jtregcheck: $(TESTS_TO_RUN)
	for i in $(TEST_SUITES); do \
	  echo "--------------- jtreg console summary for $$i ---------------"; \
	  egrep -v '^(Passed:|Directory|Re[a-z]+\ written\ to)' test/check-$$i.log; \
	done | tee test/jtreg-summary.log

	: # kill testsuite processes still hanging
	@pids=$$($(jtreg_pids)); \
	if [ -n "$$pids" ]; then \
	  echo "killing processes..."; \
	  $(jtreg_processes); \
	  kill -1 $$pids; \
	  sleep 2; \
	  pids=$$($(jtreg_pids)); \
	  if [ -n "$$pids" ]; then \
	    echo "try harder..."; \
	    $(jtreg_processes); \
	    kill -9 $$pids; \
	    sleep 2; \
	  fi; \
	else \
	  echo "nothing to cleanup"; \
	fi; \
	pids=$$($(jtreg_pids)); \
	if [ -n "$$pids" ]; then \
	  echo "leftover processes..."; \
	  $(jtreg_processes); \
	fi

check-tapset-probes: 
@ENABLE_SYSTEMTAP_TRUE@	$(abs_top_srcdir)/test/tapset/jstaptest.pl \
@ENABLE_SYSTEMTAP_TRUE@	  -B $(BUILD_OUTPUT_DIR) -A $(BUILD_ARCH_DIR) \
@ENABLE_SYSTEMTAP_TRUE@	  -S $(abs_top_srcdir)/test/tapset \
@ENABLE_SYSTEMTAP_TRUE@	  -a test/check-stap.log -p
check-tapset-jstack: 
@ENABLE_SYSTEMTAP_TRUE@	$(abs_top_srcdir)/test/tapset/jstaptest.pl \
@ENABLE_SYSTEMTAP_TRUE@	  -B $(BUILD_OUTPUT_DIR) -A $(BUILD_ARCH_DIR) \
@ENABLE_SYSTEMTAP_TRUE@	  -S $(abs_top_srcdir)/test/tapset \
@ENABLE_SYSTEMTAP_TRUE@	  -a test/check-stap.log -j
check-tapset: check-tapset-probes check-tapset-jstack

clean-tapset-report:
@ENABLE_SYSTEMTAP_TRUE@	rm -f test/check-stap.log

# Support classes for non-OpenJDK bootstraps

rt-source-files.txt: $(OPENJDK_BOOT_TREE)
	rm -f $@
	for files in $(ICEDTEA_BOOTSTRAP_CLASSES) ; \
	do \
	  echo $$files >> $@ ; \
	done
	touch $@

stamps/rt-class-files.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP) rt-source-files.txt
	mkdir -p lib/rt
	if echo $(ICEDTEA_BOOTSTRAP_CLASSES) | grep '\S' &> /dev/null ; then \
	  $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) -d lib/rt \
	    -classpath $(SYSTEM_JDK_DIR)/jre/lib/rt.jar \
            -sourcepath '$(SOURCEPATH_DIRS)' \
            -bootclasspath \'\' @rt-source-files.txt ; \
	fi
	mkdir -p stamps
	touch $@

stamps/rt.stamp: stamps/rt-class-files.stamp
	if echo $(ICEDTEA_BOOTSTRAP_CLASSES) | grep '\S' &> /dev/null ; then \
	  (set -e ; \
	   cd lib/rt ; \
	   for dirs in $(ICEDTEA_BOOTSTRAP_RESOURCES) ; \
	     do \
	     destpath=`echo $$dirs|sed -e 's#$(LANGTOOLS)/##' -e 's#$(SHARE)/##'` ; \
	     mkdir -p `dirname $$destpath` ; \
	     cp -a ../../$$dirs $$destpath ; \
	   done ; \
	   $(ZIP) -qur $(STAGE1_BOOT_DIR)/jre/lib/rt.jar \
	     com java javax sun ); \
	fi
	mkdir -p stamps
	touch $@

clean-rt:
	rm -rf lib/rt
	rm -f stamps/rt-class-files.stamp stamps/rt.stamp
	rm -f rt-source-files.txt
	if [ -e $(STAGE1_BOOT_DIR)/jre/lib ] ; then \
	  cp $(SYSTEM_JDK_DIR)/jre/lib/rt.jar $(STAGE1_BOOT_DIR)/jre/lib ; \
	fi

# Crypto Level Check

stamps/cryptocheck.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP)
	mkdir -p $(CRYPTO_CHECK_BUILD_DIR)
	$(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
	  -d $(CRYPTO_CHECK_BUILD_DIR) $(CRYPTO_CHECK_SRCS)
	mkdir -p stamps
	touch $@

clean-cryptocheck:
	rm -rf $(CRYPTO_CHECK_BUILD_DIR)
	rm -f stamps/cryptocheck.stamp

# Target Aliases
# ===============

add-archive: stamps/add-archive.stamp

add-archive-boot: stamps/add-archive-ecj.stamp

add-archive-debug: stamps/add-archive-debug.stamp

add-nss: stamps/add-nss.stamp

add-nss-debug: stamps/add-nss-debug.stamp

add-pulseaudio: stamps/add-pulseaudio.stamp

add-pulseaudio-debug: stamps/add-pulseaudio-debug.stamp

add-systemtap: stamps/add-systemtap.stamp

add-systemtap-debug: stamps/add-systemtap-debug.stamp

add-tzdata-support: stamps/add-tzdata-support.stamp

add-tzdata-support-debug: stamps/add-tzdata-support-debug.stamp

add-zero: stamps/add-zero.stamp

add-zero-debug: stamps/add-zero-debug.stamp

bootstrap-directory-stage1: stamps/bootstrap-directory-stage1.stamp

bootstrap-directory-stage2: stamps/bootstrap-directory-stage2.stamp

bootstrap-directory-symlink-stage1: stamps/bootstrap-directory-symlink-stage1.stamp

bootstrap-directory-symlink-stage2: stamps/bootstrap-directory-symlink-stage2.stamp

cacao: stamps/cacao.stamp

check-crypto: stamps/check-crypto.stamp

check-crypto-boot: stamps/check-crypto-boot.stamp

check-crypto-debug: stamps/check-crypto-debug.stamp

clone-boot: stamps/clone-boot.stamp

cryptocheck: stamps/cryptocheck.stamp

download: stamps/download.stamp

download-cacao: stamps/download-cacao.stamp

download-jamvm: stamps/download-jamvm.stamp

download-jaf-drop: stamps/download-jaf-drop.stamp

download-jaxp-drop: stamps/download-jaxp-drop.stamp

download-jaxws-drop: stamps/download-jaxws-drop.stamp

download-openjdk: stamps/download-openjdk.stamp

extract: stamps/extract.stamp

extract-cacao: stamps/extract-cacao.stamp

extract-openjdk: stamps/extract-openjdk.stamp

extract-hotspot: stamps/extract-hotspot.stamp

generated: stamps/generated.stamp

icedtea: stamps/icedtea.stamp

icedtea-boot: stamps/icedtea-boot.stamp

icedtea-debug: stamps/icedtea-debug.stamp

icedtea-debug-stage2: stamps/icedtea-debug-stage2.stamp

icedtea-stage1: stamps/icedtea-stage1.stamp

icedtea-stage2: stamps/icedtea-stage2.stamp

jamvm: stamps/jamvm.stamp

jtreg: stamps/jtreg.stamp

native-ecj: stamps/native-ecj.stamp

overlay: stamps/overlay.stamp

patch: stamps/patch.stamp

patch-boot: stamps/patch-boot.stamp

patch-fsg: stamps/patch-fsg.stamp

pulse-java: $(PULSE_JAVA_TARGET)

rewriter: stamps/rewriter.stamp

rewrite-rhino: stamps/rewrite-rhino.stamp

rt: stamps/rt.stamp

rt-class-files: stamps/rt-class-files.stamp

sanitise-openjdk: stamps/sanitise-openjdk.stamp

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
