#*******************************************************************************
#* Copyright (C) 2009-2010, International Business Machines Corporation and    *
#* others. All Rights Reserved.                                                *
#*******************************************************************************

# Version numbers, etc.
icu4j.spec.version = 4.4
icu4j.impl.version = 4.4
current.year = 2010

corp = IBM Corporation
copyright = Copyright 2000-${current.year}, International Business Machines Corporation and others.  All Rights Reserved.

# Standard directory structure
src.dir = src
out.dir = out
bin.dir = ${out.dir}/bin
jar.dir = ${out.dir}/lib

# Default java compiler options
javac.source = 1.5
javac.target = 1.5
javac.debug = on
javac.encoding = ascii
javac.compilerarg = -Xlint:none

# Manifest attributes
jar.spec.version = ${icu4j.spec.version}
jar.impl.version = ${icu4j.impl.version}
jar.copyright.info = ${copyright}

# Jar locations
icu4j.data.jar = ${shared.dir}/data/icudata.jar
icu4j.testdata.jar = ${shared.dir}/data/testdata.jar

icu4j.core.jar = ${icu4j.core.dir}/${jar.dir}/icu4j-core.jar
icu4j.collate.jar = ${icu4j.collate.dir}/${jar.dir}/icu4j-collate.jar
icu4j.charset.jar = ${icu4j.charset.dir}/${jar.dir}/icu4j-charsets.jar
icu4j.currdata.jar = ${icu4j.currdata.dir}/${jar.dir}/icu4j-currdata.jar
icu4j.langdata.jar = ${icu4j.langdata.dir}/${jar.dir}/icu4j-langdata.jar
icu4j.localespi.jar = ${icu4j.localespi.dir}/${jar.dir}/icu4j-localespi.jar
icu4j.regiondata.jar = ${icu4j.regiondata.dir}/${jar.dir}/icu4j-regiondata.jar
icu4j.translit.jar = ${icu4j.translit.dir}/${jar.dir}/icu4j-translit.jar

icu4j.test-framework.jar = ${icu4j.test-framework.dir}/${jar.dir}/icu4j-test-framework.jar
icu4j.core-tests.jar = ${icu4j.core-tests.dir}/${jar.dir}/icu4j-core-tests.jar
icu4j.collate-tests.jar = ${icu4j.collate-tests.dir}/${jar.dir}/icu4j-collate-tests.jar
icu4j.charset-tests.jar = ${icu4j.charset-tests.dir}/${jar.dir}/icu4j-charset-tests.jar
icu4j.localespi-tests.jar = ${icu4j.localespi-tests.dir}/${jar.dir}/icu4j-localespi-tests.jar
icu4j.packaging-tests.jar = ${icu4j.packaging-tests.dir}/${jar.dir}/icu4j-packaging-tests.jar
icu4j.translit-tests.jar = ${icu4j.translit-tests.dir}/${jar.dir}/icu4j-translit-tests.jar

icu4j.build-tools.jar = ${icu4j.build-tools.dir}/${jar.dir}/icu4j-build-tools.jar
icu4j.tools.jar = ${icu4j.tools.dir}/${jar.dir}/icu4j-tools.jar

icu4j.demos.jar = ${icu4j.demos.dir}/${jar.dir}/icu4jdemos.jar
