#
# build.properties
#
# Author: Lasse Collin <lasse.collin@tukaani.org>
#
# This file has been put into the public domain.
# You can do whatever you want with this file.
#

title = XZ data compression
homepage = https://tukaani.org/xz/java.html
version = 1.9
debug = false

# sourcever sets --release for javac 9 (or later) or -source and -target for
# older javac versions which don't support --release. The main source code is
# Java 5 compatible but the oldest -source/-target pair (and also --release)
# that OpenJDK 15 supports is 7 (Java 7).
#
# sourcever9 does the same as sourcever but for files that require Java 9 or
# later. The resulting classes are packaged as multi-release JAR, including
# module-info.java. If sourcever9 is commented out, these files won't be
# built but the package will still work.
#
# If you need to build this on an older JDK:
#   - Set sourcever appropriately (5 or higher)
#   - Comment the sourcever9 line below to disable building Java 9 files.
#   - Adjust extdoc_url and extdoc_file to point to older documentation.
sourcever = 7
sourcever9 = 9

src_dir = src
src9_dir = src9
build_dir = build
dist_dir = ${build_dir}/dist
dist_file = ${dist_dir}/xz-java-${version}.zip
classes_dir = ${build_dir}/classes
classes9_dir = ${build_dir}/classes9
jar_dir = ${build_dir}/jar
doc_dir = ${build_dir}/doc

# extdoc_url and extdoc_file must be modified as a pair.
#
# Possible values for extdoc_url:
#     https://docs.oracle.com/javase/7/docs/api
#     https://docs.oracle.com/javase/8/docs/api
#     https://docs.oracle.com/javase/9/docs/api
#     https://docs.oracle.com/en/java/javase/11/docs/api
#     ...
#     https://docs.oracle.com/en/java/javase/15/docs/api
#
# Possible values for extdoc_file:
#   - Java 7, 8, and 9: package-list
#   - Java 11 and later: element-list
extdoc_url = https://docs.oracle.com/en/java/javase/15/docs/api
extdoc_file = element-list
extdoc_dir = extdoc

pom_template = maven/pom_template.xml
maven_dir = ${build_dir}/maven
