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

# Version numbers, etc.
icu4j.spec.version = 4.4
icu4j.impl.version = 4.4.2.1
icu4j.data.version = 44
current.year = 2011

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

# Misc
icu4j.data.path = com/ibm/icu/impl/data/icudt${icu4j.data.version}b
