Compare commits
5 Commits
Author | SHA256 | Date | |
---|---|---|---|
374e7ec0c8 | |||
2ec9c743f2 | |||
7fa363cef1 | |||
5ab5acc5ba | |||
7114953726 |
BIN
xz-java-1.10.zip
(Stored with Git LFS)
Normal file
BIN
xz-java-1.10.zip
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
xz-java-1.9.zip
(Stored with Git LFS)
BIN
xz-java-1.9.zip
(Stored with Git LFS)
Binary file not shown.
37
xz-java-module-info.patch
Normal file
37
xz-java-module-info.patch
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
--- a/build.xml 2025-07-03 17:34:58.653124868 +0200
|
||||||
|
+++ b/build.xml 2025-07-03 17:50:13.872136109 +0200
|
||||||
|
@@ -68,6 +68,16 @@
|
||||||
|
includesfile="fileset-src9.txt">
|
||||||
|
<compilerarg compiler="modern" line="-Xlint"/>
|
||||||
|
<compilerarg compiler="modern" line="-implicit:none"/>
|
||||||
|
+ <exclude name="**/module-info.java"/>
|
||||||
|
+ </javac>
|
||||||
|
+ <javac unless:true="${java8only}"
|
||||||
|
+ srcdir="." sourcepath="${src9_dir}:${src_dir}"
|
||||||
|
+ destdir="${classes_dir}"
|
||||||
|
+ includeAntRuntime="false" debug="${debug}"
|
||||||
|
+ release="${sourcever9}">
|
||||||
|
+ <compilerarg compiler="modern" line="-Xlint"/>
|
||||||
|
+ <compilerarg compiler="modern" line="-implicit:none"/>
|
||||||
|
+ <include name="**/module-info.java"/>
|
||||||
|
</javac>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
@@ -102,7 +112,7 @@
|
||||||
|
|
||||||
|
<jar destfile="${jar_dir}/xz.jar" modificationtime="${timestamp}"
|
||||||
|
manifest="${manifest_base}">
|
||||||
|
- <fileset dir="${classes_dir}" includes="org/tukaani/xz/**"/>
|
||||||
|
+ <fileset dir="${classes_dir}" includes="org/tukaani/xz/**,**/module-info.class"/>
|
||||||
|
<zipfileset prefix="META-INF/versions/9/" dir="${classes9_dir}"
|
||||||
|
unless:true="${java8only}"/>
|
||||||
|
<manifest>
|
||||||
|
@@ -112,6 +122,8 @@
|
||||||
|
<attribute name="Sealed" value="true"/>
|
||||||
|
<attribute name="Multi-Release" value="true"
|
||||||
|
unless:true="${java8only}"/>
|
||||||
|
+ <attribute name="Automatic-Module-Name" value="org.tukaani.xz"
|
||||||
|
+ if:true="${java8only}"/>
|
||||||
|
<!-- Attributes for OSGi bundles: -->
|
||||||
|
<attribute name="Bundle-ManifestVersion" value="2"/>
|
||||||
|
<attribute name="Bundle-SymbolicName" value="org.tukaani.xz"/>
|
@@ -1,3 +1,89 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jul 3 15:55:06 UTC 2025 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Added patch:
|
||||||
|
* xz-java-module-info.patch
|
||||||
|
+ Do not put the module-info.class into multirelease directory
|
||||||
|
+ If building with Java 8 only, specify in the manifest the
|
||||||
|
Automatic-Module-Name, so that it can be recognized as
|
||||||
|
modular jar even in that configuration
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Aug 2 15:55:10 UTC 2024 - Anton Shvetz <shvetz.anton@gmail.com>
|
||||||
|
|
||||||
|
- Update to version 1.10
|
||||||
|
* Licensing change: From version 1.10 onwards, XZ for Java is
|
||||||
|
under the BSD Zero Clause License (0BSD). 1.9 and older are in
|
||||||
|
the public domain and obviously remain so; the change only
|
||||||
|
affects the new releases.
|
||||||
|
0BSD is an extremely permissive license which doesn't require
|
||||||
|
retaining or reproducing copyright or license notices when
|
||||||
|
distributing the code, thus in practice there is extremely
|
||||||
|
little difference to public domain.
|
||||||
|
* Mark copyright and license information in the source package so
|
||||||
|
that it is compliant to the REUSE Specification version 3.2.
|
||||||
|
* Improve LZMAInputStream.enableRelaxedEndCondition():
|
||||||
|
+ Error detection is slightly better.
|
||||||
|
+ The input position will always be at the end of the stream
|
||||||
|
after successful decompression.
|
||||||
|
* Support .lzma files that have both a known uncompressed size
|
||||||
|
and the end marker. Such files are uncommon but valid. The same
|
||||||
|
issue was fixed in XZ Utils 5.2.6 in 2022.
|
||||||
|
* Add ARM64 and RISC-V BCJ filters.
|
||||||
|
* Speed optimizations:
|
||||||
|
+ Delta filter
|
||||||
|
+ LZMA/LZMA2 decoder
|
||||||
|
+ LZMA/LZMA2 encoder (partially Java >= 9 only)
|
||||||
|
+ CRC64 (Java >= 9 only)
|
||||||
|
* Changes that affect API/ABI compatibility:
|
||||||
|
+ Change XZOutputStream constructors to not call the method
|
||||||
|
public void updateFilters(FilterOptions[] filterOptions).
|
||||||
|
+ In SeekableXZInputStream, change the method public void
|
||||||
|
seekToBlock(int blockNumber) to not call the method public
|
||||||
|
long getBlockPos(int blockNumber).
|
||||||
|
+ Make the filter options classes final:
|
||||||
|
~ ARM64Options
|
||||||
|
~ ARMOptions
|
||||||
|
~ ARMThumbOptions
|
||||||
|
~ DeltaOptions
|
||||||
|
~ IA64Options
|
||||||
|
~ LZMA2Options
|
||||||
|
~ PowerPCOptions
|
||||||
|
~ RISCVOptions
|
||||||
|
~ SPARCOptions
|
||||||
|
~ X86Options
|
||||||
|
* Add new system properties:
|
||||||
|
+ org.tukaani.xz.ArrayCache sets the default ArrayCache: Dummy
|
||||||
|
(default) or Basic. See the documentation of ArrayCache and
|
||||||
|
BasicArrayCache.
|
||||||
|
+ org.tukaani.xz.MatchLengthFinder (Java >= 9 only) sets the
|
||||||
|
byte array comparison method used for finding match lengths
|
||||||
|
in LZMA/LZMA2 encoder: UnalignedLongLE (default on x86-64 and
|
||||||
|
ARM64) or Basic (default on other systems). The former could
|
||||||
|
be worth testing on other 64-bit little endian systems that
|
||||||
|
support fast unaligned memory access.
|
||||||
|
* Build system (Apache Ant):
|
||||||
|
+ Building the documentation no longer downloads element-list
|
||||||
|
or package-list file; the build is now fully offline. Such
|
||||||
|
files aren't needed with OpenJDK >= 16 whose javadoc can
|
||||||
|
auto-link to platform documentation on docs.oracle.com. With
|
||||||
|
older OpenJDK versions, links to platform documentation
|
||||||
|
aren't generated anymore.
|
||||||
|
+ Don't require editing of build.properties to build with
|
||||||
|
OpenJDK 8. Now it's enough to use ant -Djava8only=true. Older
|
||||||
|
OpenJDK versions are no longer supported because the main
|
||||||
|
source tree uses Java 8 features.
|
||||||
|
+ Support reproducible builds. See the notes in README.md.
|
||||||
|
+ Add a new Ant target pom that only creates xz.pom.
|
||||||
|
+ Change ant dist to use git archive to create a .zip file.
|
||||||
|
* Convert the plain text documentation in the source tree to
|
||||||
|
Markdown (CommonMark).
|
||||||
|
* The binaries of 1.10 in the Maven Central require Java 8 and
|
||||||
|
contain optimized classes for Java >= 9 as multi-release JAR.
|
||||||
|
They were built with OpenJDK 21.0.4 on GNU/Linux using the
|
||||||
|
following command:
|
||||||
|
SOURCE_DATE_EPOCH=1722262226 TZ=UTC0 ant maven
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Sep 21 06:43:05 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
Thu Sep 21 06:43:05 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
20
xz-java.spec
20
xz-java.spec
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package xz-java
|
# spec file for package xz-java
|
||||||
#
|
#
|
||||||
# Copyright (c) 2023 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
# Copyright (c) 2013 Peter Conrad
|
# Copyright (c) 2013 Peter Conrad
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
@@ -18,17 +18,18 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: xz-java
|
Name: xz-java
|
||||||
Version: 1.9
|
Version: 1.10
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Pure Java implementation of XZ compression
|
Summary: Pure Java implementation of XZ compression
|
||||||
License: SUSE-Public-Domain
|
License: 0BSD
|
||||||
Group: Development/Libraries/Java
|
Group: Development/Libraries/Java
|
||||||
URL: https://tukaani.org/xz/java.html
|
URL: https://tukaani.org/xz/java.html
|
||||||
Source: http://tukaani.org/xz/xz-java-%{version}.zip
|
Source0: https://tukaani.org/xz/xz-java-%{version}.zip
|
||||||
|
Patch0: xz-java-module-info.patch
|
||||||
BuildRequires: ant
|
BuildRequires: ant
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: java-devel >= 1.8
|
BuildRequires: java-devel >= 1.8
|
||||||
BuildRequires: javapackages-local
|
BuildRequires: javapackages-local >= 6
|
||||||
BuildRequires: unzip
|
BuildRequires: unzip
|
||||||
Provides: java-xz
|
Provides: java-xz
|
||||||
Obsoletes: java-xz
|
Obsoletes: java-xz
|
||||||
@@ -48,10 +49,9 @@ This package contains the API documentation of xz-java.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -c -n %{name}
|
%setup -q -c -n %{name}
|
||||||
|
%patch -P 0 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
sed -i 's/linkoffline="[^"]*"//;/extdoc_/d' build.xml
|
|
||||||
sed -i 's/sourcever = 7/sourcever = 8/g' build.properties
|
|
||||||
ant -Dant.build.javac.{source,target}=8 clean jar doc maven
|
ant -Dant.build.javac.{source,target}=8 clean jar doc maven
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -61,16 +61,16 @@ install -pm 0644 build/maven/xz-%{version}.jar %{buildroot}%{_javadir}/%{name}.
|
|||||||
(cd %{buildroot}%{_javadir} && ln -s %{name}.jar xz.jar)
|
(cd %{buildroot}%{_javadir} && ln -s %{name}.jar xz.jar)
|
||||||
# pom
|
# pom
|
||||||
install -dm 0755 %{buildroot}%{_mavenpomdir}
|
install -dm 0755 %{buildroot}%{_mavenpomdir}
|
||||||
install -pm 0644 build/maven/xz-%{version}.pom %{buildroot}%{_mavenpomdir}/%{name}.pom
|
%{mvn_install_pom} build/maven/xz-%{version}.pom %{buildroot}%{_mavenpomdir}/%{name}.pom
|
||||||
%add_maven_depmap %{name}.pom %{name}.jar
|
%add_maven_depmap %{name}.pom %{name}.jar
|
||||||
# javadoc
|
# javadoc
|
||||||
mkdir -p %{buildroot}%{_javadocdir}/%{name}
|
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
|
||||||
cp -pr build/doc/* %{buildroot}%{_javadocdir}/%{name}
|
cp -pr build/doc/* %{buildroot}%{_javadocdir}/%{name}
|
||||||
%fdupes -s %{buildroot}%{_javadocdir}
|
%fdupes -s %{buildroot}%{_javadocdir}
|
||||||
|
|
||||||
%files -f .mfiles
|
%files -f .mfiles
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%doc NEWS README THANKS
|
%doc {NEWS,README,THANKS}.md
|
||||||
%{_javadir}/xz.jar
|
%{_javadir}/xz.jar
|
||||||
|
|
||||||
%files javadoc
|
%files javadoc
|
||||||
|
Reference in New Issue
Block a user