blob: b9bfcc29074737ad7899e0dded42e388ad654bc2 [file] [log] [blame]
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project name="build-settings">
<property file="${user.home}/.harmony-drlvm.properties" />
<dirname property="prop.imported.basedir" file="${ant.file.build-settings}"/>
<property name="drlvm.base.dir" location="${prop.imported.basedir}/.." />
<property name="hy.test.vm.name" value="drl"/>
<property environment="env" />
<!-- pick up cfg from command line or env -->
<condition property="hy.cfg" value="${BUILD_CFG}">
<isset property="BUILD_CFG" />
</condition>
<condition property="hy.cfg" value="${env.BUILD_CFG}">
<isset property="env.BUILD_CFG" />
</condition>
<!-- pick up cpp compiler from command line or env -->
<condition property="hy.cpp.compiler" value="${CXX}">
<isset property="CXX" />
</condition>
<condition property="hy.cpp.compiler" value="${env.CXX}">
<isset property="env.CXX" />
</condition>
<condition property="hy.cpp.compiler" value="msvc">
<os family="windows"/>
</condition>
<property name="hy.cpp.compiler" value="gcc"/>
<!-- set the path root for the external resources -->
<property name="common.resources.loc" value="${drlvm.base.dir}/../common_resources" />
<property name="common.resources" location="${common.resources.loc}" />
<fail>
<condition>
<not><available file="${common.resources}/make/properties.xml"/></not>
</condition>
Primary dependency is missing: common_resources.
You need to check it out from SVN repository or specify it's location:
ant -Dcommon.resources.loc=path
</fail>
<import file="${common.resources}/make/properties.xml"/>
<import file="${common.resources}/make/depends.xml"/>
<!-- define drlvm-specific resources -->
<loadproperties srcfile="${prop.imported.basedir}/depends.properties">
<filterchain>
<filterreader classname="org.apache.tools.ant.filters.ReplaceTokens">
<param type="token" name="${hy.arch}" value=""/>
</filterreader>
</filterchain>
</loadproperties>
<!-- Harmony Development Kit (HDK) supports modular development mode
by providing all the header files and binaries required for building -->
<!-- By default, external classlib build partially substitutes the HDK -->
<property name="external.dep.CLASSLIB.loc" value="${drlvm.base.dir}/../working_classlib" />
<property name="external.dep.CLASSLIB" location="${external.dep.CLASSLIB.loc}" />
<condition property="import.hdk">
<isset property="hy.hdk"/>
</condition>
<property name="hy.hdk" value="${external.dep.CLASSLIB}/deploy"/>
<condition property="hy.hdk.shlibs"
value="${hy.hdk}/jdk/jre/bin"
else="${hy.hdk}/lib">
<isset property="shlib.is.linklib"/>
</condition>
<property name="vm.home" location="${drlvm.base.dir}/vm" />
<property name="drlvm.build.dir" location="${drlvm.base.dir}/build/${hy.os}_${hy.arch}_${hy.cpp.compiler}_${hy.cfg}" />
<property name="drlvm.deploy.dir" location="${drlvm.build.dir}/deploy" />
<property name="drlvm.semi.dir" location="${drlvm.build.dir}/semis" />
<property name="drlvm.bin.dir" location="${drlvm.deploy.dir}/jdk/jre/bin/default"/>
<property name="drlvm.lib.dir" location="${drlvm.deploy.dir}/lib"/>
<property name="drlvm.include.dir" location="${drlvm.deploy.dir}/include"/>
<condition property="drlvm.shlib.dir"
value="${drlvm.bin.dir}"
else="${drlvm.lib.dir}">
<isset property="shlib.is.linklib"/>
</condition>
<property name="base.test.dir" location="${drlvm.build.dir}/tests"/>
<target name="drlvm-echo" depends="svn-info">
<echo message="DRLVM build Configuration:" />
<echo message=" Hosting Java = ${java.version} (${java.vendor})" />
<echo message=" os = ${hy.os}" />
<echo message=" arch = ${hy.arch}" />
<echo message=" hy.cpp.compiler = ${hy.cpp.compiler}" />
<echo message=" cfg = ${hy.cfg}" />
<echo message=" svn revision = ${svn.revision}" />
<echo message=" hy.local.zlib = ${hy.local.zlib}" />
<echo message=" common resources = ${common.resources}" />
<echo message=" HDK root = ${hy.hdk}" />
<echo message=" target dir = ${drlvm.deploy.dir}" />
</target>
<target name="debug-echo">
<echoproperties>
<propertyset>
<propertyref prefix="build."/>
<propertyref prefix="hy."/>
</propertyset>
</echoproperties>
</target>
<target name="-plugin-ant-contrib">
<check-one-file dest="${ant-contrib.jar}" src="${ant-contrib.url}"/>
<!-- plug in the ANTCONTRIB -->
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="${ant-contrib.jar}" />
</classpath>
</taskdef>
</target>
<target name="-plugin-cpptasks" unless="is.cpptasks">
<check-one-file dest="${cpptasks.jar}" src="${cpptasks.url}"/>
<!-- plug in the CPPTASKS -->
<path id="cpptasks.path" path="${cpptasks.jar}"/>
<taskdef resource="cpptasks.tasks"
classpathref="cpptasks.path" loaderref="cpptasks.path.loader"/>
<typedef resource="cpptasks.types"
classpathref="cpptasks.path" loaderref="cpptasks.path.loader"/>
<property name="is.cpptasks" value="true"/>
</target>
</project>