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

# Version numbers, etc.
icu4j.spec.version = 50
icu4j.impl.version = 50.1.1
icu4j.data.version = 50
current.year = 2012
default.exec.env = J2SE-1.5

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.compilerarg = -Xlint:none
java.src.encoding = UTF-8

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

# Jar locations
icu4j.data.jar = ${shared.dir}/data/icudata.jar
icu4j.tzdata.jar = ${shared.dir}/data/icutzdata.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-charset.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}/icu4j-demos.jar
icu4j.samples.jar = ${icu4j.samples.dir}/${jar.dir}/icu4j-samples.jar

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

# Findbugs
findbugs.home = 
