[Git][java-team/dita-ot][master] 21 commits: d/compat: update to v12

Andreas Tille (@tille) gitlab at salsa.debian.org
Mon Aug 18 20:44:10 BST 2025



Andreas Tille pushed to branch master at Debian Java Maintainers / dita-ot


Commits:
10c233ca by Tj at 2025-08-18T15:41:57+00:00
d/compat: update to v12

- - - - -
6980f541 by Tj at 2025-08-18T17:01:44+00:00
d/control: update B-D, Standards, Homepage

Since the removal of binary JARs from the source rely on external
packages that provide same.

For libsaxon-java impose a version restriction. This is due to current
libsaxon-java v6.6.5 only supporting XSLT version 1.0. Due to this
several maintainer patches are applied to remove XSLT version 2.0
constructs that break the build. When libsaxon-java is updated to
v8.9 or later it supports XSLT version 2.0 these patches and the version
restriction can be removed.

Update compat and standards levels.

Homepage moved from sourceforge to its own domain.

- - - - -
f19d1051 by Tj at 2025-08-18T18:01:58+00:00
docs: register with doc-base

- - - - -
fbd7d9ea by Tj at 2025-08-18T18:07:29+00:00
lintian: fix or silence warnings

- - - - -
f5195c42 by Tj at 2025-08-18T18:07:29+00:00
d/rules: update for debhelper and v1.5.4 changes

= Update build commands

"package-binary-minimum" on its own causes a circular dependency because
it calls 'demo/fo/buildPackage.xml package-java' to build
'demo/fo/lib/fo.jar' but that expects './lib/dost.jar' to exist but it
does not.
Call './buildPackage.xml package-java' first to build '/lib/dost.jar'
and then build the package last.

= Other overrides

installdocs:
Needed to ensure the docs are in the 'main' package doc directory of
'/usr/share/doc/dita-ot/' according to policy 3.9.7 in §12.3 and the
main package still installs the standard files (copyright, etc.).

clean:
The package's own clean-package target should be used. Avoid deleting
files that are in upstream source.

- - - - -
93ad5a0e by Tj at 2025-08-18T18:07:29+00:00
d/docs: update path to docs

- - - - -
ffba986e by Tj at 2025-08-18T18:07:29+00:00
d/README.source patching and build notes

- - - - -
047e655e by Tj at 2025-08-18T18:07:29+00:00
d/p/101 remove unsupported jvmArchFlag

- - - - -
e6495567 by Tj at 2025-08-18T18:07:29+00:00
d/p/111 use external libsaxon-java

- - - - -
ad191ea5 by Tj at 2025-08-18T18:07:29+00:00
d/p/121 use current JAVA SDK version

- - - - -
176b0dce by Tj at 2025-08-18T18:07:29+00:00
d/p/131 Use libfop-java

The source package included a binary: demo/legacypdf/lib/fop.jar
that has been removed via d/copyright Files-Excluded.

Use the version from libfop-java.

- - - - -
3a701a12 by Tj at 2025-08-18T18:07:29+00:00
d/p/141 add fo.jar to classpath

- - - - -
d071ca5a by Tj at 2025-08-18T18:07:29+00:00
d/p/151 remove XPATH XSLT version 2.0 constructs

dita-ot v1.5.4 expects to use XPATH constructs from XSLT version 2.0 but
current libsaxon-java v6.6.5 only supports version 1.0.

Modify or remove version 2.0 constructs that cause build to fail.

This can be reverted if libsaxon-java updates to v8.9+ since that
supports XSLT version 2.0.

- - - - -
5ff22231 by Tj at 2025-08-18T18:07:29+00:00
d/p/161 fully delete build artifacts

- - - - -
d51db937 by Tj at 2025-08-18T18:07:29+00:00
d/p/171 fix null attributes causing IllegalArgumentException

- - - - -
6d1b3c1a by Tj at 2025-08-18T18:07:29+00:00
d/p/181 fix Java symbol deprecated/removal warnings

- - - - -
76525081 by Tj at 2025-08-18T18:07:29+00:00
d/p/191 fix release notes location

- - - - -
d7ded8ac by Tj at 2025-08-18T18:59:47+00:00
d/p/201 Do not include remote content

Remote server no longer responds but we do not want to fetch remote
content during builds.

- - - - -
4549ef51 by Tj at 2025-08-18T19:00:17+00:00
d/p/* silence lintian patch-not-forwarded-upstream

- - - - -
e56e3e1c by Tj at 2025-08-18T19:01:02+00:00
d/changelog: record changes for v1.5.4

- - - - -
1b5fdbed by Andreas Tille at 2025-08-18T21:44:04+02:00
Merge branch 'fix_build_1.5.4_v6' into 'master'

Update to v1.5.4

See merge request java-team/dita-ot!4
- - - - -


26 changed files:

- + debian/README.source
- debian/changelog
- debian/compat
- debian/control
- debian/dita-ot-doc.docs
- + debian/dita-ot-doc.install
- + debian/dita-ot-doc.lintian-overrides
- + debian/dita-ot-user-guide
- debian/dita-ot.lintian-overrides
- + debian/patches/101_remove_jvmArchFlag.patch
- + debian/patches/111_use_external_saxon.patch
- + debian/patches/121_fix_java_version_target.patch
- + debian/patches/131_fix-fop.jar-location.patch
- + debian/patches/141_classpath-add-fo.jar.patch
- + debian/patches/151_remove-xpath-xslt-version-2.0-constructs.patch
- + debian/patches/161_delete-build-artifacts.patch
- + debian/patches/171_fix-null-attributes-causing-IllegalArgumentException.patch
- + debian/patches/181_fix-java-deprecated-removal-warnings.patch
- + debian/patches/191_correct-release-notes-location.patch
- + debian/patches/201_imported_wiki_frontpage.patch
- debian/patches/distribution-saxon-compat.patch
- debian/patches/same-loader-for-tasks.patch
- debian/patches/series
- debian/patches/unmappable_character.patch
- debian/rules
- + debian/source/lintian-overrides


Changes:

=====================================
debian/README.source
=====================================
@@ -0,0 +1,34 @@
+# Build notes
+
+## 2025-08-16 Reproducible builds (Tj <debian at 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 at 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 at 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)


=====================================
debian/changelog
=====================================
@@ -13,7 +13,28 @@ dita-ot (1.5.4+dfsg-1) UNRELEASED; urgency=low
      * Secure URI
   * d/copyright: Fix URL
 
- -- Andreas Tille <tille at debian.org>  Tue, 12 Aug 2025 08:40:39 +0200
+  [ Tj ]
+  * d/compat: update to v12
+  * d/control: update B-D, Standards, Homepage
+  * docs: register with doc-base
+  * lintian: fix or silence warnings
+  * d/rules: update for debhelper and v1.5.4 changes
+  * d/docs: update path to docs
+  * d/README.source patching and build notes
+  * d/p/101 remove unsupported jvmArchFlag
+  * d/p/111 use external libsaxon-java
+  * d/p/121 use current JAVA SDK version
+  * d/p/131 Use libfop-java
+  * d/p/141 add fo.jar to classpath
+  * d/p/151 remove XPATH XSLT version 2.0 constructs
+  * d/p/161 fully delete build artifacts
+  * d/p/171 fix null attributes causing IllegalArgumentException
+  * d/p/181 fix Java symbol deprecated/removal warnings
+  * d/p/191 fix release notes location
+  * d/p/201 Do not include remote content
+  * d/p/* silence lintian patch-not-forwarded-upstream
+
+ -- Tj <debian at iam.tj>  Mon, 18 Aug 2025 18:19:13 +0000
 
 dita-ot (1.5.3-1) unstable; urgency=low
 


=====================================
debian/compat
=====================================
@@ -1 +1 @@
-8
+12


=====================================
debian/control
=====================================
@@ -3,17 +3,17 @@ Section: java
 Priority: optional
 Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs at lists.alioth.debian.org>
 Uploaders: Jakub Adam <jakub.adam at ktknet.cz>
-Build-Depends: debhelper (>= 8~), ant, javahelper,
+Build-Depends: debhelper (>= 12~), ant, javahelper, fop,
 Build-Depends-Indep: default-jdk, libcommons-codec-java, libxerces2-java,
- libsaxon-java, libicu4j-4.4-java, libxml-commons-resolver1.1-java
-Standards-Version: 3.9.3
+ libicu4j-4.4-java, libxml-commons-resolver1.1-java,
+ libfop-java, libsaxon-java (<< 1:8.9), libicu4j-java, libxalan2-java,
+Standards-Version: 4.7.2
 Vcs-Browser: https://salsa.debian.org/java-team/dita-ot
 Vcs-Git: https://salsa.debian.org/java-team/dita-ot.git
-Homepage: http://dita-ot.sourceforge.net
+Homepage: https://www.dita-ot.org/
 
 Package: dita-ot
 Architecture: all
-Section: java
 Depends: ${java:Depends}, ${misc:Depends}
 Suggests: dita-ot-doc
 Description: transforms DITA content (maps and topics) into deliverable formats


=====================================
debian/dita-ot-doc.docs
=====================================
@@ -1 +1,2 @@
-out/doc/*
+temp/*/out/doc/*
+


=====================================
debian/dita-ot-doc.install
=====================================
@@ -0,0 +1 @@
+debian/dita-ot-user-guide usr/share/doc-base/


=====================================
debian/dita-ot-doc.lintian-overrides
=====================================
@@ -0,0 +1 @@
+dita-ot-doc: image-file-has-conflicting-name (is JPEG) [usr/share/doc/dita-ot/html/quickstartguide/images/DITA-OTCommandPrompt.gif]


=====================================
debian/dita-ot-user-guide
=====================================
@@ -0,0 +1,11 @@
+Document: dita-ot
+Title: Darwin Information Typing (DITA) Open Toolkit (OT)
+Section: Data Management
+Abstract: transforms DITA content (maps and topics) into deliverable formats
+ an independent, open source implementation of the OASIS owned and developed
+ Darwin Information Typing Architecture (DITA) standard XML data model for
+ authoring and publishing.
+
+Format: HTML
+Index: /usr/share/doc/dita-ot/html/index.html
+Files: /usr/share/doc/dita-ot/html/*


=====================================
debian/dita-ot.lintian-overrides
=====================================
@@ -1 +1,11 @@
-dita-ot: extra-license-file usr/share/dita-ot/demo/tocjs/sample/concepts/license.xml
+dita-ot: extra-license-file [usr/share/dita-ot/demo/tocjs/sample/concepts/license.xml]
+
+dita-ot: privacy-breach-generic [*yahoo*] (*yahoo*) [usr/share/dita-ot/demo/tocjs/sample/concepts/*.xml]
+dita-ot: privacy-breach-generic [<link href="http://wsa.sophos.com/docs/ws1000/" scope="external" format="html">] (http://wsa.sophos.com/docs/ws1000/) [usr/share/dita-ot/demo/tocjs/sample/concepts/about.xml]
+
+dita-ot: package-contains-documentation-outside-usr-share-doc [usr/share/dita-ot/demo/fo/*]
+dita-ot: package-contains-documentation-outside-usr-share-doc [usr/share/dita-ot/catalog-dita.txt]
+dita-ot: package-contains-documentation-outside-usr-share-doc [usr/share/dita-ot/demo/h2d/samples/*]
+dita-ot: package-contains-documentation-outside-usr-share-doc [usr/share/dita-ot/demo/tocjs/*]
+dita-ot: package-contains-documentation-outside-usr-share-doc [usr/share/dita-ot/relnotes.html]
+dita-ot: package-contains-documentation-outside-usr-share-doc [usr/share/dita-ot/resource/index.html]


=====================================
debian/patches/101_remove_jvmArchFlag.patch
=====================================
@@ -0,0 +1,18 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-16
+Forwarded: not-needed
+Description: Remove unsupported javac option
+
+diff --git a/build_init.xml b/build_init.xml
+index 3680148d7..163d8111e 100644
+--- a/build_init.xml
++++ b/build_init.xml
+@@ -113,7 +113,7 @@
+ 	       ...
+ 	     </java>
+ 	  -->
+-	<property name="baseJVMArgLine" value="${jvmArchFlag} -Xmx${maxJavaMemory}"/>
++	<property name="baseJVMArgLine" value="-Xmx${maxJavaMemory}"/>
+ 
+   <path id="dost.jar.path">
+     <pathelement


=====================================
debian/patches/111_use_external_saxon.patch
=====================================
@@ -0,0 +1,74 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-15
+Forwarded: not-needed
+Description: use libsaxon-java to provide saxon
+
+--- a/demo/fo/buildPackage.xml
++++ b/demo/fo/buildPackage.xml
+@@ -16,6 +16,7 @@
+   <property name="resolver.jar" location="${lib.dir}/resolver.jar" />
+   <property name="icu4j.jar" location="/usr/share/java/com.ibm.icu-4.4.jar" />
+   <property name="xep.jar" location="${lib.dir}/xep/lib/xep.jar" />
++  <property name="saxon.jar" location="/usr/share/java/saxon.jar" />
+ 
+   <path id="build.class.path">
+     <pathelement location="${basedir}/../../lib/dost.jar" />
+@@ -23,6 +24,7 @@
+     <pathelement location="${resolver.jar}" />
+     <pathelement location="${icu4j.jar}" />
+     <pathelement location="${xep.jar}" />
++    <pathelement location="${saxon.jar}" />
+   </path>
+ 
+   <!--We will only build the XEP classes if XEP is in the build.class.path-->
+--- a/demo/fo/build_template.xml
++++ b/demo/fo/build_template.xml
+@@ -103,17 +103,19 @@
+     
+     <path id="project.class.path">
+       <pathelement path="${java.class.path}"/>
+-      <fileset dir="${lib.dir}/saxon">
++      <pathelement location="/usr/share/java/saxon.jar"/>
++      <!--fileset dir="${lib.dir}/saxon">
+         <include name="**/*.jar"/>
+-      </fileset>
++      </fileset-->
+       <!--
+         <pathelement location="${lib.dir}/xml-apis.jar"/>
+         <pathelement location="${lib.dir}/xercesImpl.jar"/>
+       -->
+       <pathelement location="${lib.dir}/resolver.jar"/>
+       <pathelement location="${lib.dir}/icu4j.jar"/>
+-      <pathelement location="${fo.lib.dir}/fo.jar"/>
+     </path>
++    <echo level="info" message="lib.dir ${lib.dir}"/>
++    <echo level="info" message="project.class.path ${toString:project.class.path}"/>
+   </target>
+ 
+   <target name="topic2pdf2" if="noMap">
+@@ -162,7 +164,11 @@
+     
+   <target name="transform.topic2fo.init">
+     <taskdef name="dita-version" classname="com.idiominc.ws.opentopic.xsl.extension.DitaVersion"
+-             classpathref="project.class.path"/>
++             classpathref="project.class.path">
++      <classpath>
++        <pathelement location="${fo.jar}"/>
++      </classpath>
++    </taskdef>
+     <taskdef name="detect-lang" classname="com.suite.sol.ditaot.DetectLang"
+              classpathref="project.class.path"/>
+ 
+@@ -288,7 +294,11 @@
+ 
+   <target name="transform.topic2fo.index">
+     <taskdef classname="com.idiominc.ws.opentopic.fo.index2.IndexPreprocessorTask"
+-             name="index-preprocess" classpathref="project.class.path"/>
++             name="index-preprocess" classpathref="project.class.path">
++      <classpath>
++        <pathelement location="${bin.dir}"/>
++      </classpath>
++    </taskdef>
+     
+     <condition property="index.config.file" value="${customization.dir}/common/index/${document.locale}.xml">
+       <and>


=====================================
debian/patches/121_fix_java_version_target.patch
=====================================
@@ -0,0 +1,35 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-15
+Forwarded: not-needed
+Description: build against the installed Java SDK version
+
+--- a/buildPackage.xml
++++ b/buildPackage.xml
+@@ -80,7 +80,7 @@
+       value="${version}"/>
+     <javac srcdir="${build.dir}" destdir="${bin.dir}"
+       excludes="com/**,org/dita/dost/junit/**, org/dita/dost/invoker/JavaInvoker.java" debug="on"
+-      source="1.5" target="1.5">
++      >
+       <classpath>
+         <pathelement location="${lib.dir}/resolver.jar"/>
+         <pathelement location="${lib.dir}/commons-codec-1.4.jar"/>
+--- a/demo/fo/buildPackage.xml
++++ b/demo/fo/buildPackage.xml
+@@ -51,7 +51,7 @@
+   <target name="build-java" depends="init-java, check-icu4j, build-xep-java">
+     <javac srcdir="${src.dir}" destdir="${bin.dir}"
+       debug="on" excludes="com/idiominc/ws/opentopic/fo/xep/**"
+-      source="1.5" target="1.5">
++      >
+       <classpath refid="build.class.path"/>
+     </javac>
+   </target>
+@@ -59,7 +59,6 @@
+   <target name="build-xep-java" depends="init-java" if="xep-available">
+     <javac srcdir="${src.dir}/com/idiominc/ws/opentopic/fo/xep/"
+            destdir="${bin.dir}"
+-           source="1.5" target="1.5"
+       debug="on">
+       <classpath refid="build.class.path"/>
+     </javac>


=====================================
debian/patches/131_fix-fop.jar-location.patch
=====================================
@@ -0,0 +1,53 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-15
+Forwarded: not-needed
+Description: Use libfop-java not internal
+
+--- a/build_init.xml
++++ b/build_init.xml
+@@ -237,7 +237,7 @@
+     <available classname="net.sf.saxon.Transform" property="hasSaxon" />
+     <available classname="org.apache.fop.tools.anttasks.Fop" property="hasFOP">
+       <classpath>
+-        <pathelement location="${dita.dir}/demo/legacypdf/lib/fop.jar"/>
++        <pathelement location="/usr/share/java/fop.jar"/>
+       </classpath>
+     </available>
+   </target>
+--- a/demo/fo/build_fop.xml
++++ b/demo/fo/build_fop.xml
+@@ -11,6 +11,7 @@
+   <condition property="hasFopLib">
+     <available classname="org.apache.fop.tools.anttasks.Fop">
+       <classpath id="project.classpath">
++        <pathelement location="/usr/share/java/fop.jar"/>
+         <fileset dir="${fop.home}">
+           <include name="build/fop.jar"/>
+           <include name="lib/*.jar"/>
+@@ -44,7 +45,7 @@
+       <equals arg1="${pdf.formatter}" arg2="fop"/>
+     </condition>
+     
+-    <condition property="args.fo.userconfig" value="${fop.home}/conf/fop.xconf">
++		<condition property="args.fo.userconfig" value="/usr/share/doc/fop/fop.xconf">
+       <not>
+         <isset property="args.fo.userconfig"/>
+       </not>
+@@ -159,13 +160,15 @@
+     <antcall target="checkFOPLib"/>
+     <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop">
+       <classpath>
+-        <fileset dir="${fop.home}/lib">
++        <pathelement location="/usr/share/java/fop.jar"/>
++        <pathelement location="/usr/share/java/fop-hyph.jar"/>
++        <!--fileset dir="${fop.home}/lib">
+           <include name="*.jar"/>
+         </fileset>
+         <fileset dir="${fop.home}/build">
+           <include name="fop.jar"/>
+           <include name="fop-hyph.jar"/>
+-        </fileset>
++        </fileset-->
+       </classpath>
+     </taskdef>
+     


=====================================
debian/patches/141_classpath-add-fo.jar.patch
=====================================
@@ -0,0 +1,17 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-16
+Forwarded: not-needed
+Description: Ensure fo.jar is available to targets
+
+diff --git a/demo/fo/build_template.xml b/demo/fo/build_template.xml
+index bae54e952..7b8a08ab0 100644
+--- a/demo/fo/build_template.xml
++++ b/demo/fo/build_template.xml
+@@ -103,6 +103,7 @@ with those set forth herein.
+     
+     <path id="project.class.path">
+       <pathelement path="${java.class.path}"/>
++      <pathelement location="${fo.lib.dir}/fo.jar"/>
+       <pathelement location="/usr/share/java/saxon.jar"/>
+       <!--fileset dir="${lib.dir}/saxon">
+         <include name="**/*.jar"/>


=====================================
debian/patches/151_remove-xpath-xslt-version-2.0-constructs.patch
=====================================
@@ -0,0 +1,167 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-16
+Forwarded: not-needed
+Description: Remove XSLT version 2.0 constructs due to libsaxon-java 
+ < v8.9 only supporting version 1.0
+
+diff --git a/demo/fo/cfg/fo/attrs/layout-masters-attr.xsl b/demo/fo/cfg/fo/attrs/layout-masters-attr.xsl
+index d30bd9aae..3c35553c2 100644
+--- a/demo/fo/cfg/fo/attrs/layout-masters-attr.xsl
++++ b/demo/fo/cfg/fo/attrs/layout-masters-attr.xsl
+@@ -26,7 +26,7 @@
+     <xsl:attribute name="margin-bottom">
+       <xsl:value-of select="$page-margin-bottom"/>
+     </xsl:attribute>
+-    <xsl:attribute name="{if ($writing-mode = 'lr') then 'margin-left' else 'margin-right'}">
++    <xsl:attribute name="margin-left"><!--{if ($writing-mode = 'lr') then 'margin-left' else 'margin-right'}"-->
+       <xsl:choose>
+         <!-- support legacy parameter -->
+         <xsl:when test="normalize-space($page-margin-left)">
+@@ -40,7 +40,7 @@
+         </xsl:otherwise>
+       </xsl:choose>
+     </xsl:attribute>
+-    <xsl:attribute name="{if ($writing-mode = 'lr') then 'margin-right' else 'margin-left'}">
++    <xsl:attribute name="margin-right"><!--{if ($writing-mode = 'lr') then 'margin-right' else 'margin-left'}"-->
+       <xsl:choose>
+         <!-- support legacy parameter -->
+         <xsl:when test="normalize-space($page-margin-right)">
+@@ -63,7 +63,7 @@
+     <xsl:attribute name="margin-bottom">
+       <xsl:value-of select="$page-margin-bottom"/>
+     </xsl:attribute>
+-    <xsl:attribute name="{if ($writing-mode = 'lr') then 'margin-left' else 'margin-right'}">
++    <xsl:attribute name="margin-left"><!--{if ($writing-mode = 'lr') then 'margin-left' else 'margin-right'}"-->
+       <xsl:choose>
+         <!-- support legacy parameter -->
+         <xsl:when test="normalize-space($page-margin-left)">
+@@ -77,7 +77,7 @@
+         </xsl:otherwise>
+       </xsl:choose>
+     </xsl:attribute>
+-    <xsl:attribute name="{if ($writing-mode = 'lr') then 'margin-right' else 'margin-left'}">
++    <xsl:attribute name="margin-right"><!--{if ($writing-mode = 'lr') then 'margin-right' else 'margin-left'}"-->
+       <xsl:choose>
+         <!-- support legacy parameter -->
+         <xsl:when test="normalize-space($page-margin-right)">
+diff --git a/demo/fo/xsl/fo/bookmarks_1.0.xsl b/demo/fo/xsl/fo/bookmarks_1.0.xsl
+index a9a5d08ea..b6bd9d474 100644
+--- a/demo/fo/xsl/fo/bookmarks_1.0.xsl
++++ b/demo/fo/xsl/fo/bookmarks_1.0.xsl
+@@ -119,7 +119,7 @@ See the accompanying license.txt file for applicable licenses.
+           </xsl:otherwise>
+         </xsl:choose>
+       </xsl:variable>
+-      <xsl:if test="exists($bookmarks)">
++      <xsl:if test="boolean($bookmarks)">
+         <fo:bookmark-tree>
+           <xsl:copy-of select="$bookmarks"/>
+         </fo:bookmark-tree>
+@@ -199,4 +199,4 @@ See the accompanying license.txt file for applicable licenses.
+     <!--<xsl:template match="*[contains(@class, ' topic/topic ')][opentopic-func:determineTopicType() = 'topicIndexList']" mode="bookmark" priority="10"/>-->
+ 
+ 
+-</xsl:stylesheet>
+\ No newline at end of file
++</xsl:stylesheet>
+diff --git a/demo/fo/xsl/fo/root-processing.xsl b/demo/fo/xsl/fo/root-processing.xsl
+index 490ed49f7..9ef4dab9d 100644
+--- a/demo/fo/xsl/fo/root-processing.xsl
++++ b/demo/fo/xsl/fo/root-processing.xsl
+@@ -40,16 +40,16 @@ See the accompanying license.txt file for applicable licenses.
+     exclude-result-prefixes="opentopic-index opentopic opentopic-i18n opentopic-func"
+     version="2.0">
+     
+-    <xsl:param name="bookmap-order" select="'discard'"/>
++    <!--xsl:param name="bookmap-order" select="'discard'"/-->
+   
+-    <xsl:variable name="retain-bookmap-order" select="*[contains(@class,' bookmap/bookmap ')] and $bookmap-order eq 'retain'"/>
+-    <xsl:variable name="writing-mode">
+-      <xsl:variable name="lang" select="if (contains($locale, '_')) then substring-before($locale, '_') else $locale"/>
++    <xsl:variable name="retain-bookmap-order" select="*[contains(@class,' bookmap/bookmap ')]"/><!-- "and $bookmap-order eq 'retain'"-->
++    <xsl:variable name="writing-mode" select="'lr'"/>
++      <!--xsl:variable name="lang" select="if (contains($locale, '_')) then substring-before($locale, '_') else $locale"/>
+       <xsl:choose>
+         <xsl:when test="some $l in ('ar', 'fa', 'he', 'ps', 'ur') satisfies $l eq $lang">rl</xsl:when>
+         <xsl:otherwise>lr</xsl:otherwise>
+       </xsl:choose>
+-    </xsl:variable>
++    </xsl:variable-->
+     
+     <xsl:variable name="layout-masters">
+         <xsl:value-of select="'cfg:fo/layout-masters.xml'"/>
+@@ -139,19 +139,19 @@ See the accompanying license.txt file for applicable licenses.
+ 
+             <xsl:call-template name="createFrontMatter"/>
+ 
+-            <xsl:if test="not($retain-bookmap-order)">
++            <!--xsl:if test="not($retain-bookmap-order)"-->
+                 <xsl:call-template name="createToc"/>
+-            </xsl:if>
++            <!--/xsl:if-->
+ 
+ <!--            <xsl:call-template name="createPreface"/>-->
+ 
+             <xsl:apply-templates/>
+ 
+-            <xsl:if test="not($retain-bookmap-order)">
++            <!--xsl:if test="not($retain-bookmap-order)"-->
+                 <xsl:call-template name="createIndex"/>
+-            </xsl:if>
++            <!--/xsl:if-->
+ 
+         </fo:root>
+     </xsl:template>
+ 
+-</xsl:stylesheet>
+\ No newline at end of file
++</xsl:stylesheet>
+diff --git a/demo/fo/xsl/fo/toc.xsl b/demo/fo/xsl/fo/toc.xsl
+index a76cfc764..54660b9d8 100644
+--- a/demo/fo/xsl/fo/toc.xsl
++++ b/demo/fo/xsl/fo/toc.xsl
+@@ -219,7 +219,7 @@ See the accompanying license.txt file for applicable licenses.
+     <xsl:template match="text()[. = 'topicChapter']" mode="toc-topic-text">
+         <xsl:param name="tocItemContent"/>
+         <xsl:param name="currentNode"/>
+-        <xsl:for-each select="$currentNode">
++        <xsl:for-each select="saxon:node-set($currentNode)" xmlns:saxon="http://icl.com/saxon">
+         <fo:block xsl:use-attribute-sets="__toc__chapter__content">
+             <xsl:copy-of select="$tocItemContent"/>
+         </fo:block>
+@@ -229,7 +229,7 @@ See the accompanying license.txt file for applicable licenses.
+     <xsl:template match="text()[. = 'topicAppendix']" mode="toc-topic-text">
+         <xsl:param name="tocItemContent"/>
+         <xsl:param name="currentNode"/>
+-        <xsl:for-each select="$currentNode">
++        <xsl:for-each select="saxon:node-set($currentNode)" xmlns:saxon="http://icl.com/saxon">
+         <fo:block xsl:use-attribute-sets="__toc__appendix__content">
+             <xsl:copy-of select="$tocItemContent"/>
+         </fo:block>
+@@ -239,7 +239,7 @@ See the accompanying license.txt file for applicable licenses.
+     <xsl:template match="text()[. = 'topicPart']" mode="toc-topic-text">
+         <xsl:param name="tocItemContent"/>
+         <xsl:param name="currentNode"/>
+-        <xsl:for-each select="$currentNode">
++        <xsl:for-each select="saxon:node-set($currentNode)" xmlns:saxon="http://icl.com/saxon">
+         <fo:block xsl:use-attribute-sets="__toc__part__content">
+             <xsl:copy-of select="$tocItemContent"/>
+         </fo:block>
+@@ -249,7 +249,7 @@ See the accompanying license.txt file for applicable licenses.
+     <xsl:template match="text()[. = 'topicPreface']" mode="toc-topic-text">
+         <xsl:param name="tocItemContent"/>
+         <xsl:param name="currentNode"/>
+-        <xsl:for-each select="$currentNode">
++        <xsl:for-each select="saxon:node-set($currentNode)" xmlns:saxon="http://icl.com/saxon">
+         <fo:block xsl:use-attribute-sets="__toc__preface__content">
+             <xsl:copy-of select="$tocItemContent"/>
+         </fo:block>
+@@ -267,7 +267,7 @@ See the accompanying license.txt file for applicable licenses.
+     <xsl:template match="node()" mode="toc-topic-text">
+         <xsl:param name="tocItemContent"/>
+         <xsl:param name="currentNode"/>
+-        <xsl:for-each select="$currentNode">
++        <xsl:for-each select="saxon:node-set($currentNode)" xmlns:saxon="http://icl.com/saxon">
+         <fo:block xsl:use-attribute-sets="__toc__topic__content">
+             <xsl:copy-of select="$tocItemContent"/>
+         </fo:block>


=====================================
debian/patches/161_delete-build-artifacts.patch
=====================================
@@ -0,0 +1,27 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-16
+Forwarded: not-needed
+Description: delete all build artifacts
+
+diff --git a/buildPackage.xml b/buildPackage.xml
+index 09a9f5524..16a52404a 100644
+--- a/buildPackage.xml
++++ b/buildPackage.xml
+@@ -55,6 +55,8 @@
+ 
+   <target name="clean-package">
+     <delete dir="${package.output.dir}"/>
++    <delete dir="${top.work.dir}/output2"/>
++    <delete dir="${top.work.dir}/temp"/>
+   </target>
+ 
+   <target name="init-java" depends="clean-java">
+@@ -63,7 +65,7 @@
+   </target>
+ 
+   <target name="clean-java">
+-    <delete dir="${lib.dir}/dost.jar"/>
++    <delete file="${lib.dir}/dost.jar"/>
+     <delete dir="${bin.dir}"/>
+   </target>
+ 


=====================================
debian/patches/171_fix-null-attributes-causing-IllegalArgumentException.patch
=====================================
@@ -0,0 +1,34 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-16
+Forwarded: not-needed
+Description: Fix IllegalArgumentExceptions due to null values
+
+diff --git a/demo/fo/cfg/fo/attrs/commons-attr.xsl b/demo/fo/cfg/fo/attrs/commons-attr.xsl
+index 820c0af80..96ff4232b 100644
+--- a/demo/fo/cfg/fo/attrs/commons-attr.xsl
++++ b/demo/fo/cfg/fo/attrs/commons-attr.xsl
+@@ -646,8 +646,8 @@ See the accompanying license.txt file for applicable licenses.
+ 
+     <xsl:attribute-set name="__fo__root" use-attribute-sets="base-font">
+         <xsl:attribute name="font-family">serif</xsl:attribute>
+-        <xsl:attribute name="xml:lang" select="translate($locale, '_', '-')"/>
+-        <xsl:attribute name="writing-mode" select="$writing-mode"/>
++        <xsl:attribute name="xml:lang"><xsl:value-of select="translate($locale, '_', '-')"/></xsl:attribute>
++        <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
+     </xsl:attribute-set>
+ 
+     <xsl:attribute-set name="__force__page__count">
+diff --git a/demo/fo/xsl/fo/root-processing.xsl b/demo/fo/xsl/fo/root-processing.xsl
+index 4c5751452..7fe3ccf6e 100644
+--- a/demo/fo/xsl/fo/root-processing.xsl
++++ b/demo/fo/xsl/fo/root-processing.xsl
+@@ -43,7 +43,8 @@ See the accompanying license.txt file for applicable licenses.
+     <!--xsl:param name="bookmap-order" select="'discard'"/-->
+   
+     <xsl:variable name="retain-bookmap-order" select="*[contains(@class,' bookmap/bookmap ')]"/><!-- "and $bookmap-order eq 'retain'"-->
+-    <xsl:variable name="writing-mode" select="'lr'"/>
++    <xsl:variable name="writing-mode">lr</xsl:variable>
++    <xsl:variable name="lang" select="substring($locale, 1, 2)"/>
+       <!--xsl:variable name="lang" select="if (contains($locale, '_')) then substring-before($locale, '_') else $locale"/>
+       <xsl:choose>
+         <xsl:when test="some $l in ('ar', 'fa', 'he', 'ps', 'ur') satisfies $l eq $lang">rl</xsl:when>


=====================================
debian/patches/181_fix-java-deprecated-removal-warnings.patch
=====================================
@@ -0,0 +1,66 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-16
+Forwarded: not-needed
+Description: Fix Java symbol deprecation/removal warnings
+
+diff --git a/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Alphabet.java b/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Alphabet.java
+index 3dd4e7ec2..b09456132 100644
+--- a/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Alphabet.java
++++ b/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Alphabet.java
+@@ -54,7 +54,7 @@ public class Alphabet {
+ 
+ 
+     public boolean isContain(final char theChar) {
+-        return this.charset.contains(new Character(theChar));
++        return this.charset.contains(Character.valueOf(theChar));
+     }
+ 
+ 
+diff --git a/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Configuration.java b/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Configuration.java
+index dc97c9d89..c2f615b26 100644
+--- a/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Configuration.java
++++ b/demo/fo/src/com/idiominc/ws/opentopic/fo/i18n/Configuration.java
+@@ -123,7 +123,7 @@ public class Configuration {
+                 if (aChars.length != 1) {
+                     throw new ConfigurationException(BAD_CONF_MESSAGE);
+                 }
+-                characterList.add(new Character(aChars[0]));
++                characterList.add(Character.valueOf(aChars[0]));
+             } else if ("character-range".equals(node.getNodeName())) {
+                 Node start = null;
+                 Node end = null;
+@@ -154,7 +154,7 @@ public class Configuration {
+                 final char endChar = endChars[0];
+ 
+                 for (char ch = startChar; ch <= endChar; ch++) {
+-                    characterList.add(new Character(ch));
++                    characterList.add(Character.valueOf(ch));
+                 }
+             } else {
+                 //                System.out.println("Unprocessed element [" + node + "]");
+diff --git a/demo/fo/src/com/idiominc/ws/opentopic/xsl/extension/CompareStrings.java b/demo/fo/src/com/idiominc/ws/opentopic/xsl/extension/CompareStrings.java
+index b71b95881..549cbddc6 100644
+--- a/demo/fo/src/com/idiominc/ws/opentopic/xsl/extension/CompareStrings.java
++++ b/demo/fo/src/com/idiominc/ws/opentopic/xsl/extension/CompareStrings.java
+@@ -37,7 +37,7 @@ See the accompanying license.txt file for applicable licenses.
+ public class CompareStrings {
+     public static Integer compare(final String theS1, final String theS2, final String theLanguage, final String theCountry) {
+         final Collator collator = Collator.getInstance(new Locale(theLanguage, theCountry));
+-        return new Integer(collator.compare(theS1, theS2));
++        return Integer.valueOf(collator.compare(theS1, theS2));
+     }
+ 
+ 
+diff --git a/src/org/dita/dost/writer/DitaWriter.java b/src/org/dita/dost/writer/DitaWriter.java
+index ce4870f98..3373198ca 100644
+--- a/src/org/dita/dost/writer/DitaWriter.java
++++ b/src/org/dita/dost/writer/DitaWriter.java
+@@ -984,7 +984,7 @@ public final class DitaWriter extends AbstractXMLWriter {
+     private int getStartNumber(final Attributes atts, final int previousEnd) {
+         int ret;
+         if (atts.getValue(ATTRIBUTE_NAME_COLNUM) != null){
+-            return new Integer(atts.getValue(ATTRIBUTE_NAME_COLNUM)).intValue();
++            return Integer.valueOf(atts.getValue(ATTRIBUTE_NAME_COLNUM)).intValue();
+         }else if(atts.getValue(ATTRIBUTE_NAME_NAMEST) != null){
+             ret = colSpec.indexOf(atts.getValue(ATTRIBUTE_NAME_NAMEST)) + 1;
+             if(ret == 0){


=====================================
debian/patches/191_correct-release-notes-location.patch
=====================================
@@ -0,0 +1,16 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-15
+Forwarded: not-needed
+Description: Fix more Java SDK source version targets
+
+--- a/buildPackage.xml
++++ b/buildPackage.xml
+@@ -450,7 +450,7 @@
+       <property name="transtype" value="xhtml"/>
+       <property name="base.temp.dir" location="${work.dir}"/>
+     </ant-->
+-    <copy file="${work.dir}/relnotes/rel1.5.4.html" tofile="${out.dir}/relnotes.html"/>
++    <copy file="${doc.dir}/html/readme/changes/rel1.5.4.html" tofile="${out.dir}/relnotes.html"/>
+     
+     <delete failonerror="yes" includeemptydirs="true">
+       <fileset dir="${doc.out.dir}">


=====================================
debian/patches/201_imported_wiki_frontpage.patch
=====================================
@@ -0,0 +1,20 @@
+Author: Tj <debian at iam.tj>
+Last-Update: 2025-08-16
+Forwarded: not-needed
+Description: Remove reference to remote wiki page
+ The remote server no longer responds and remote content during build is a no-no.
+
+diff --git a/doc/userguide.ditamap b/doc/userguide.ditamap
+index 0037b1d52..bdab9d362 100644
+--- a/doc/userguide.ditamap
++++ b/doc/userguide.ditamap
+@@ -18,9 +18,6 @@
+     <topicref href="admin/BugFixGuidelines-NoCLA.xml" toc="no"/>
+   </topichead>
+   <topichead navtitle="Resources">
+-    <topicref format="html" href="http://dita.xml.org/wiki/the-dita-open-toolkit" navtitle="Project page at dita.xml.org" scope="external"/>
+-    <topicref format="html" href="http://groups.yahoo.com/group/dita-users/" navtitle="Yahoo! Group: dita-users" scope="external"/>
+-    <topicref format="html" href="http://www.oasis-open.org/committees/dita/" navtitle="OASIS DITA Technical Committee " scope="external"/>
+     <topicref href="articles/DITA-dWarticles.xml"/>
+   </topichead>
+   <mapref href="keyrefs.ditamap" processing-role="resource-only"/>


=====================================
debian/patches/distribution-saxon-compat.patch
=====================================
@@ -1,6 +1,7 @@
 From: Jakub Adam <jakub.adam at ktknet.cz>
 Date: Sat, 10 Dec 2011 23:24:51 +0100
 Subject: distribution-saxon-compat
+Forwarded: not-needed
 
 ---
  demo/fo/build_template.xml |   28 ++++++++++++++++++++++------


=====================================
debian/patches/same-loader-for-tasks.patch
=====================================
@@ -1,6 +1,7 @@
 From: Jakub Adam <jakub.adam at ktknet.cz>
 Date: Sat, 10 Dec 2011 19:28:54 +0100
 Subject: same-loader-for-tasks
+Forwarded: not-needed
 
 ---
  build_init.xml |   45 ++++++++++++++++++---------------------------


=====================================
debian/patches/series
=====================================
@@ -2,3 +2,14 @@ debian-custom-build.patch
 same-loader-for-tasks.patch
 distribution-saxon-compat.patch
 unmappable_character.patch
+101_remove_jvmArchFlag.patch
+111_use_external_saxon.patch
+121_fix_java_version_target.patch
+131_fix-fop.jar-location.patch
+141_classpath-add-fo.jar.patch
+151_remove-xpath-xslt-version-2.0-constructs.patch
+161_delete-build-artifacts.patch
+171_fix-null-attributes-causing-IllegalArgumentException.patch
+181_fix-java-deprecated-removal-warnings.patch
+191_correct-release-notes-location.patch
+201_imported_wiki_frontpage.patch


=====================================
debian/patches/unmappable_character.patch
=====================================
@@ -1,6 +1,7 @@
 Author: Andreas Tille <tille at debian.org>
 Last-Update: 2025-08-12
 Description: Fix unmappable characters
+Forwarded: not-needed
 
 --- a/src/org/dita/dost/platform/Integrator.java
 +++ b/src/org/dita/dost/platform/Integrator.java


=====================================
debian/rules
=====================================
@@ -2,28 +2,33 @@
 
 JAVA_HOME := /usr/lib/jvm/default-java
 
-export CLASSPATH=/usr/share/java/xml-resolver.jar:/usr/share/java/commons-codec.jar:/usr/share/java/xercesImpl.jar:/usr/share/java/xalan2.jar:/usr/share/java/commons-logging.jar:/usr/share/java/icu4j.jar:/usr/share/java/saxon.jar
-
-# you need to replace or remove this
-DEB_ANT_BUILDFILE := buildPackage.xml
-DEB_ANT_BUILD_TARGET := package-java update-doc package-binary-minimum
-DEB_ANT_CLEAN_TARGET := clean-package clean-java cleanup
+export CLASSPATH=/usr/share/java/xml-resolver.jar:/usr/share/java/commons-codec.jar:/usr/share/java/xercesImpl.jar:/usr/share/java/xalan2.jar:/usr/share/java/commons-logging.jar:/usr/share/java/icu4j.jar:/usr/share/java/saxon.jar:/usr/share/java/fop.jar
 
 %:
-	dh $@ --with javahelper
+	dh $@ --with javahelper --buildsystem=ant
 
 # Minimal version does not install fo.jar
 override_dh_auto_build:
-	cd demo/fo && CLASSPATH=$(DEB_CLASSPATH) ant -f buildPackage.xml package-java
+	ant -propertyfile debian/ant.properties -f buildPackage.xml package-java
+	ant -propertyfile debian/ant.properties -f demo/fo/buildPackage.xml package-java
+	ant -propertyfile debian/ant.properties -f buildPackage.xml package-binary-minimum doc
 
 DITA_OT_DIR=debian/dita-ot/usr/share/dita-ot
 override_dh_auto_install:
 	mkdir -p $(DITA_OT_DIR)
 	tar xf build/dita-minimal.tar.gz --directory=$(DITA_OT_DIR) --strip-components=1
 	rm -rf $(DITA_OT_DIR)/demo/fo/src
+	rm -f  $(DITA_OT_DIR)/demo/fo/cfg/catalog_template.xml
+	rm -f  $(DITA_OT_DIR)/xsl/dita2html-base_template.xsl
 	cp -r demo/fo/lib $(DITA_OT_DIR)/demo/fo
 
+override_dh_installdocs:
+	dh_installdocs -p dita-ot
+	dh_installdocs -p dita-ot-doc --doc-main-package=dita-ot
+
+override_dh_clean:
+	dh_clean -X'*.orig'
+
 override_dh_auto_clean:
-	rm -rf build.xml demo/fo/build.xml demo/fo/bin demo/fo/lib lib/dost.jar out \
-		xsl/preprocess/maplink.xsl xsl/preprocess/mappull.xsl \
-		xsl/preprocess/mapref.xsl xsl/map2plugin.xsl catalog-dita.xml
+	ant -propertyfile debian/ant.properties -f buildPackage.xml clean-java clean-package
+	ant -propertyfile debian/ant.properties -f demo/fo/buildPackage.xml clean-java clean-package


=====================================
debian/source/lintian-overrides
=====================================
@@ -0,0 +1 @@
+dita-ot source: source-contains-prebuilt-ms-help-file [doc/userguide.chm]



View it on GitLab: https://salsa.debian.org/java-team/dita-ot/-/compare/fb3f536c912f1baf2a1b355db65ed5a54c5e9a44...1b5fdbed9b8cb923f2100f63da876131c981fc73

-- 
View it on GitLab: https://salsa.debian.org/java-team/dita-ot/-/compare/fb3f536c912f1baf2a1b355db65ed5a54c5e9a44...1b5fdbed9b8cb923f2100f63da876131c981fc73
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-java-commits/attachments/20250818/5bcdce99/attachment.htm>


More information about the pkg-java-commits mailing list