# Build notes

## 2025-08-16 Reproducible builds (Tj <debian@iam.tj>)

In targets buildPackage.xml::compile and demo/fo/buildPackage::build-java is:

  "warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds"

Although desireable, adopting includeantruntime="false" causes builds to fail immediately.

## 2025-08-16 libsaxon-java (<<1:8.9) (Tj debian@iam.tj>)

Patches applied in 1.5.4+dfsg to some XSL files that declare themselves as XSLT version="2.0"
remove the 2.0 constructs because Saxon v6.6.5 (libsaxon-java 1:6.6.5*) only supports version 1.0.

If Saxon is upgraded to 8.9+ where it supports XSLT version 2.0 these patches can be removed.

See: https://xfront.com/xml-product-reviews/saxon/SAXON-product-description.html

## 2025-08-16 target checkFOPLib: org.apache.fop.fo.ValidationException (Tj <debian@iam.tj>

During this target this exception is generated with the message:

  "ID values must be unique within a document!"

It is not fatal for generating the PDF nor for the build.

There is a quite recent upstream fix in the new code-base but despite attempts I have been unable to map
all the changes into this old code-base; partially due to the newer code-base being XSLT version 2.0 or later
and also due to changes in the XSL code itself. The commits are:

 d03661899bda66177da28bf4670649a0b50401e6 "Facilitate overriding current topic header" (2015-12-01)
 68ade0d47ab532417e724209ec3cbe012d9044b1 "Drop duplicate IDs from topic.fo" (2018-06-02)
 69c4d28174d7c84a2f3caf2525e7a1e2f02a4538 "Drop duplicate ID for parm term" (2018-06-02)
