#!/bin/sh
# scaladoc for Scala 3. This command is in scala3, so the scaladoc slave of
# the scala alternative always has its target; the tool itself is in
# scala3-scaladoc. As upstream's bin/scaladoc, the class path that runs
# scaladoc is also the default documentation class path
# (-Dscala.usejavacp=true), so the Scala 3 standard library is found;
# -classpath adds to it. JVM options can be given in JAVA_OPTS (default, as
# upstream: -Xmx768m -Xms768m).
J=/usr/share/java
if [ ! -e $J/scaladoc-3.jar ]; then
    echo "scaladoc for Scala 3 is in the scala3-scaladoc package, which is not installed." >&2
    exit 1
fi
CP=$J/scaladoc-3.jar:$J/scala3-tasty-inspector-3.jar
CP=$CP:$J/scala3-compiler-3.jar:$J/scala3-interfaces-3.jar:$J/tasty-core-3.jar:$J/scala-library-3.jar
CP=$CP:/usr/share/maven-repo/org/scala-lang/modules/scala-asm/debian/scala-asm-debian.jar
CP=$CP:$J/sbt-compiler-interface.jar:$J/sbt-util-interface.jar
# scaladoc's own dependencies (flexmark, Liqp, jsoup, Jackson 3, and theirs)
CP=$CP:/usr/share/java/flexmark.jar:/usr/share/java/flexmark-ext-anchorlink.jar:/usr/share/java/flexmark-ext-autolink.jar:/usr/share/java/flexmark-ext-emoji.jar:/usr/share/java/flexmark-ext-gfm-strikethrough.jar:/usr/share/java/flexmark-ext-gfm-tasklist.jar:/usr/share/java/flexmark-ext-ins.jar:/usr/share/java/flexmark-ext-superscript.jar:/usr/share/java/flexmark-ext-tables.jar:/usr/share/java/flexmark-ext-wikilink.jar:/usr/share/java/flexmark-ext-yaml-front-matter.jar:/usr/share/java/flexmark-jira-converter.jar:/usr/share/java/flexmark-util.jar:/usr/share/java/flexmark-util-ast.jar:/usr/share/java/flexmark-util-builder.jar:/usr/share/java/flexmark-util-collection.jar:/usr/share/java/flexmark-util-data.jar:/usr/share/java/flexmark-util-dependency.jar:/usr/share/java/flexmark-util-format.jar:/usr/share/java/flexmark-util-html.jar:/usr/share/java/flexmark-util-misc.jar:/usr/share/java/flexmark-util-options.jar:/usr/share/java/flexmark-util-sequence.jar:/usr/share/java/flexmark-util-visitor.jar:/usr/share/java/autolink.jar:/usr/share/java/liqp.jar:/usr/share/java/strftime4j.jar:/usr/share/java/antlr4-runtime.jar:/usr/share/java/jackson-core.jar:/usr/share/java/jackson-databind.jar:/usr/share/java/jackson-datatype-jsr310.jar:/usr/share/java/jsoup.jar:/usr/share/java/jackson3-core.jar:/usr/share/java/jackson3-databind.jar:/usr/share/java/jackson3-dataformat-yaml.jar:/usr/share/java/jackson-annotations.jar:/usr/share/java/snakeyaml-engine.jar:/usr/share/java/fastdoubleparser.jar
# shellcheck disable=SC2086
exec java ${JAVA_OPTS:--Xmx768m -Xms768m} -cp "$CP" -Dscala.usejavacp=true -Dscala.expandjavacp=true \
  dotty.tools.scaladoc.Main "$@"
