diff options
author | Volkmar W. Pogatzki <gentoo@pogatzki.net> | 2024-09-12 08:30:14 +0200 |
---|---|---|
committer | Miroslav Šulc <fordfrog@gentoo.org> | 2024-09-26 09:19:02 +0200 |
commit | 8b89ef5368a9ea7980f2afff2684885af574180b (patch) | |
tree | 72219ab995267f92707ad070e6d89af5d54cc324 /dev-java/snappy-java | |
parent | media-video/ffmpeg: drop legacy workaround / message about amf (diff) | |
download | gentoo-8b89ef5368a9ea7980f2afff2684885af574180b.tar.gz gentoo-8b89ef5368a9ea7980f2afff2684885af574180b.tar.bz2 gentoo-8b89ef5368a9ea7980f2afff2684885af574180b.zip |
dev-java: Rename dev-java/{snappy -> snappy-java}
according to MAVEN_ID and SRC_URI
Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/38562/commits/1291545e8f0077c1b4db46a32f3f17c0ad190cef
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
Diffstat (limited to 'dev-java/snappy-java')
9 files changed, 331 insertions, 0 deletions
diff --git a/dev-java/snappy-java/Manifest b/dev-java/snappy-java/Manifest new file mode 100644 index 000000000000..40c322428f65 --- /dev/null +++ b/dev-java/snappy-java/Manifest @@ -0,0 +1,2 @@ +DIST hadoop-common-3.3.5.jar 4535144 BLAKE2B 66582661a1832cc54493fc9dcea9076eb0e3f4e974a7d24d593e8fff2b9e2a3a82ed6eb4587f23523473aecc35d2a15de2ad81b2617c1bdac50847149cdeb6a8 SHA512 f1fb439a5853b04e9e771ec4e80e1ed078494ecfaa741abe065936fc1c26b5369fdd4e8082f4da59c1a3a7a5c025beaa14a68c38dc772e81499f83a3cb91717b +DIST snappy-java-1.1.10.5.tar.gz 3917442 BLAKE2B 0632fa7ba4d0a863801e88ced22098c3bc228c1f3e188c67cb9ff62807f9454b580b49fff15c7deee1e790db51f4664c50a6546259439eda18597097a5128329 SHA512 f84778f59635eb97c0072489766904a16208be4f41b28151b14eecd0fe84f3f04a44c18d452b9d79e752b22d5e5b9ab5b36064cc8aeec8de655d7635132093ea diff --git a/dev-java/snappy-java/files/1.1.7.8-gentoo.patch b/dev-java/snappy-java/files/1.1.7.8-gentoo.patch new file mode 100644 index 000000000000..b4a58e6482be --- /dev/null +++ b/dev-java/snappy-java/files/1.1.7.8-gentoo.patch @@ -0,0 +1,28 @@ +--- a/Makefile ++++ b/Makefile +@@ -124,11 +124,7 @@ + $(CXX) $(CXXFLAGS) -c $< -o $@ + + $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ) +- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy -lbitshuffle +- # Workaround for strip Protocol error when using VirtualBox on Mac +- cp $@ /tmp/$(@F) +- $(STRIP) /tmp/$(@F) +- cp /tmp/$(@F) $@ ++ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy -lbitshuffle $(LDFLAGS) + + clean-native: + rm -rf $(SNAPPY_OUT) +--- a/Makefile.common ++++ b/Makefile.common +@@ -274,8 +274,8 @@ + + CXX := $($(os_arch)_CXX) + STRIP := $($(os_arch)_STRIP) +-CXXFLAGS := $($(os_arch)_CXXFLAGS) +-LINKFLAGS := $($(os_arch)_LINKFLAGS) ++CXXFLAGS := $($(os_arch)_CXXFLAGS) $(CXXFLAGS) ++LINKFLAGS := $($(os_arch)_LINKFLAGS) $(LDFLAGS) + LIBNAME := $($(os_arch)_LIBNAME) + SNAPPY_FLAGS := $($(os_arch)_SNAPPY_FLAGS) + diff --git a/dev-java/snappy-java/files/1.1.7.8-java-version-target.patch b/dev-java/snappy-java/files/1.1.7.8-java-version-target.patch new file mode 100644 index 000000000000..a852d0bdb807 --- /dev/null +++ b/dev-java/snappy-java/files/1.1.7.8-java-version-target.patch @@ -0,0 +1,47 @@ +From e7d1d0167426790ba9b1d28ffa11e0d0c523f3b5 Mon Sep 17 00:00:00 2001 +From: Yuan Liao <liaoyuan@gmail.com> +Date: Sun, 6 Feb 2022 08:29:20 -0800 +Subject: [PATCH] Allow Java version target to be specified using variable + +Signed-off-by: Yuan Liao <liaoyuan@gmail.com> +--- + Makefile | 4 ++-- + Makefile.common | 2 ++ + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 1d82a8a..8eaa319 100644 +--- a/Makefile ++++ b/Makefile +@@ -92,13 +92,13 @@ snappy-header: $(SNAPPY_CMAKE_CACHE) + + $(TARGET)/jni-classes/org/xerial/snappy/SnappyNative.class: $(SRC)/org/xerial/snappy/SnappyNative.java + @mkdir -p $(TARGET)/jni-classes +- $(JAVAC) -source 1.7 -target 1.7 -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $< ++ $(JAVAC) -source $(JAVA_SOURCE) -target $(JAVA_TARGET) -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $< + + $(SRC)/org/xerial/snappy/SnappyNative.h: $(TARGET)/jni-classes/org/xerial/snappy/SnappyNative.class + + $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class: $(SRC)/org/xerial/snappy/BitShuffleNative.java + @mkdir -p $(TARGET)/jni-classes +- $(JAVAC) -source 1.7 -target 1.7 -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $< ++ $(JAVAC) -source $(JAVA_SOURCE) -target $(JAVA_TARGET) -h $(SRC)/org/xerial/snappy/ -d $(TARGET)/jni-classes -sourcepath $(SRC) $< + + $(SRC)/org/xerial/snappy/BitShuffleNative.h: $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class + +diff --git a/Makefile.common b/Makefile.common +index 534bc4f..86d839b 100755 +--- a/Makefile.common ++++ b/Makefile.common +@@ -10,6 +10,8 @@ endif + JAVA := "$$JAVA_HOME/bin/java" + JAVAC := "$$JAVA_HOME/bin/javac" + JAVAH := "$$JAVA_HOME/bin/javah" ++JAVA_SOURCE := 1.8 ++JAVA_TARGET := 1.8 + + LITTLE_ENDIAN := "Little Endian" + BIG_ENDIAN := "Big Endian" +-- +2.34.1 + diff --git a/dev-java/snappy-java/files/1.1.7.8-unbundle-bitshuffle.patch b/dev-java/snappy-java/files/1.1.7.8-unbundle-bitshuffle.patch new file mode 100644 index 000000000000..e4f699ad123e --- /dev/null +++ b/dev-java/snappy-java/files/1.1.7.8-unbundle-bitshuffle.patch @@ -0,0 +1,26 @@ +--- a/Makefile ++++ b/Makefile +@@ -36,11 +36,11 @@ + + $(SNAPPY_OUT)/%.o: $(BITSHUFFLE_SRC_DIR)/%.c + @mkdir -p $(@D) +- $(CXX) $(CXXFLAGS) $(CXXFLAGS_BITSHUFFLE) -c $< -o $@ ++ $(CXX) $(CXXFLAGS) -c $< -o $@ + +-SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/,$(patsubst %.cc,%.o,$(SNAPPY_CC)) $(patsubst %.c,%.o,$(BITSHUFFLE_C)) SnappyNative.o BitShuffleNative.o) ++SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/,$(patsubst %.cc,%.o,$(SNAPPY_CC)) SnappyNative.o BitShuffleNative.o) + +-CXXFLAGS:=$(CXXFLAGS) -I$(SNAPPY_SRC_DIR) -I$(SNAPPY_OUT) -I$(BITSHUFFLE_SRC_DIR) ++CXXFLAGS:=$(CXXFLAGS) -I$(SNAPPY_SRC_DIR) -I$(SNAPPY_OUT) + + ifndef CXXFLAGS_BITSHUFFLE + ifeq ($(OS_NAME)-$(OS_ARCH),Linux-x86_64) +@@ -124,7 +124,7 @@ + $(CXX) $(CXXFLAGS) -c $< -o $@ + + $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ) +- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy ++ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy -lbitshuffle + # Workaround for strip Protocol error when using VirtualBox on Mac + cp $@ /tmp/$(@F) + $(STRIP) /tmp/$(@F) diff --git a/dev-java/snappy-java/files/snappy-1.1.10.1-commons-lang3.patch b/dev-java/snappy-java/files/snappy-1.1.10.1-commons-lang3.patch new file mode 100644 index 000000000000..064482eabb7f --- /dev/null +++ b/dev-java/snappy-java/files/snappy-1.1.10.1-commons-lang3.patch @@ -0,0 +1,11 @@ +--- a/src/test/java/org/xerial/snappy/SnappyHadoopCompatibleOutputStreamTest.java ++++ b/src/test/java/org/xerial/snappy/SnappyHadoopCompatibleOutputStreamTest.java +@@ -2,7 +2,7 @@ package org.xerial.snappy; + + import org.apache.commons.io.FileUtils; + import org.apache.commons.io.IOUtils; +-import org.apache.commons.lang.SystemUtils; ++import org.apache.commons.lang3.SystemUtils; + import org.apache.hadoop.conf.Configuration; + import org.apache.hadoop.io.compress.SnappyCodec; + import org.junit.AfterClass; diff --git a/dev-java/snappy-java/files/snappy-1.1.10.1-unbundle-snappy.patch b/dev-java/snappy-java/files/snappy-1.1.10.1-unbundle-snappy.patch new file mode 100644 index 000000000000..d516495bb6a7 --- /dev/null +++ b/dev-java/snappy-java/files/snappy-1.1.10.1-unbundle-snappy.patch @@ -0,0 +1,51 @@ +--- a/Makefile ++++ b/Makefile +@@ -10,7 +10,7 @@ all: snappy + + SNAPPY_OUT:=$(TARGET)/snappy-$(SNAPPY_VERSION)-$(os_arch) + SNAPPY_ARCHIVE:=$(TARGET)/snappy-$(SNAPPY_VERSION).tar.gz +-SNAPPY_CC:=snappy-sinksource.cc snappy-stubs-internal.cc snappy-c.cc snappy.cc ++SNAPPY_CC:= + SNAPPY_SRC_DIR:=$(TARGET)/snappy-$(SNAPPY_VERSION) + SNAPPY_SRC:=$(addprefix $(SNAPPY_SRC_DIR)/,$(SNAPPY_CC)) + SNAPPY_GIT_REPO_URL:=https://github.com/google/snappy +@@ -102,7 +102,8 @@ $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class: $(SRC)/org/xeria + + $(SRC)/org/xerial/snappy/BitShuffleNative.h: $(TARGET)/jni-classes/org/xerial/snappy/BitShuffleNative.class + +-$(SNAPPY_SRC): $(SNAPPY_GIT_UNPACKED) ++$(SNAPPY_SRC): ++# $(SNAPPY_GIT_UNPACKED) + + # aarch64 can use big-endian optimzied code + ifeq ($(OS_ARCH),aarch64) +@@ -124,7 +125,7 @@ $(SNAPPY_OUT)/BitShuffleNative.o: $(SRC)/org/xerial/snappy/BitShuffleNative.cpp + $(CXX) $(CXXFLAGS) -c $< -o $@ + + $(SNAPPY_OUT)/$(LIBNAME): $(SNAPPY_OBJ) +- $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) ++ $(CXX) $(CXXFLAGS) -o $@ $+ $(LINKFLAGS) -lsnappy + # Workaround for strip Protocol error when using VirtualBox on Mac + cp $@ /tmp/$(@F) + $(STRIP) /tmp/$(@F) +@@ -145,9 +146,9 @@ snappy-jar-version:=snappy-java-$(shell ./script/dynver.sh | cut -d'=' -f2 | sed + jar-version: + echo $(snappy-jar-version) + +-native: jni-header snappy-header $(NATIVE_DLL) +-native-nocmake: jni-header $(NATIVE_DLL) +-snappy: native $(TARGET)/$(snappy-jar-version).jar ++native: $(NATIVE_DLL) ++native-nocmake: $(NATIVE_DLL) ++snappy: native + + native-all: native native-arm clean-docker mac64 win32 win64 linux32 linux64 linux-ppc64le linux-riscv64 linux-s390x + +@@ -166,6 +167,7 @@ $(NATIVE_DLL): $(SNAPPY_OUT)/$(LIBNAME) + cp $(SNAPPY_OUT)/$(LIBNAME) $@ + @mkdir -p $(NATIVE_TARGET_DIR) + cp $(SNAPPY_OUT)/$(LIBNAME) $(NATIVE_TARGET_DIR)/$(LIBNAME) ++ cp $< $(TARGET)/ + + package: $(TARGET)/$(snappy-jar-version).jar + diff --git a/dev-java/snappy-java/files/snappy-1.1.10.5-SnappyOutputStreamTest.patch b/dev-java/snappy-java/files/snappy-1.1.10.5-SnappyOutputStreamTest.patch new file mode 100644 index 000000000000..43272e9d4a7f --- /dev/null +++ b/dev-java/snappy-java/files/snappy-1.1.10.5-SnappyOutputStreamTest.patch @@ -0,0 +1,30 @@ +There was 1 failure: +1) batchingOfWritesShouldNotAffectCompressedDataSize(org.xerial.snappy.SnappyOutputStreamTest) +java.lang.AssertionError: expected:<91080> but was:<91051> + at org.junit.Assert.fail(Assert.java:89) + at org.junit.Assert.failNotEquals(Assert.java:835) + at org.junit.Assert.assertEquals(Assert.java:647) + at org.junit.Assert.assertEquals(Assert.java:633) + at org.xerial.snappy.SnappyOutputStreamTest.batchingOfWritesShouldNotAffectCompressedDataSize(SnappyOutputStreamTest.java:183) + +FAILURES!!! +Tests run: 104, Failures: 1 +--- a/src/test/java/org/xerial/snappy/SnappyOutputStreamTest.java ++++ b/src/test/java/org/xerial/snappy/SnappyOutputStreamTest.java +@@ -34,6 +34,7 @@ import java.lang.ref.WeakReference; + import java.nio.ByteOrder; + + import org.junit.Test; ++import org.junit.Ignore; + import org.junit.Assert; + import org.xerial.snappy.buffer.BufferAllocatorFactory; + import org.xerial.snappy.buffer.CachedBufferAllocator; +@@ -165,7 +166,7 @@ public class SnappyOutputStreamTest + return b.toByteArray(); + } + +- @Test ++ @Test @Ignore + public void batchingOfWritesShouldNotAffectCompressedDataSize() + throws Exception + { diff --git a/dev-java/snappy-java/metadata.xml b/dev-java/snappy-java/metadata.xml new file mode 100644 index 000000000000..db7de7da5a64 --- /dev/null +++ b/dev-java/snappy-java/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>java@gentoo.org</email> + <name>Java</name> + </maintainer> + <upstream> + <remote-id type="github">xerial/snappy-java</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-java/snappy-java/snappy-java-1.1.10.5-r1.ebuild b/dev-java/snappy-java/snappy-java-1.1.10.5-r1.ebuild new file mode 100644 index 000000000000..a1b198e8cf62 --- /dev/null +++ b/dev-java/snappy-java/snappy-java-1.1.10.5-r1.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.xerial.snappy:snappy-java:${PV}" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple toolchain-funcs check-reqs + +DESCRIPTION="Snappy compressor/decompressor for Java" +HOMEPAGE="https://github.com/xerial/snappy-java/" +# ::gentoo does not have hadoop-common packaged. Currently we bundle the binary version. +# It's used for testing only and does not get installed. +HCV="3.3.5" +SRC_URI="https://github.com/xerial/snappy-java/archive/v${PV}.tar.gz -> ${P}.tar.gz + test? ( https://repo1.maven.org/maven2/org/apache/hadoop/hadoop-common/${HCV}/hadoop-common-${HCV}.jar )" +S="${WORKDIR}/${P}" + +LICENSE="Apache-2.0" +SLOT="1.1" +KEYWORDS="amd64 ~arm arm64 ppc64 x86" + +CP_DEPEND="dev-java/osgi-core:0" + +CDEPEND=" + app-arch/snappy + >=dev-libs/bitshuffle-0.3.5-r1 +" + +DEPEND=">=virtual/jdk-1.8:* + ${CP_DEPEND} + ${CDEPEND} + test? ( + >=dev-java/ant-1.10.14:0[junit4] + dev-java/commons-io:1 + dev-java/commons-lang:3.6 + dev-java/plexus-classworlds:0 + dev-java/xerial-core:0 + )" + +RDEPEND=">=virtual/jre-1.8:* + ${CP_DEPEND} + ${CDEPEND}" + +PATCHES=( + "${FILESDIR}/1.1.7.8-java-version-target.patch" + "${FILESDIR}/snappy-1.1.10.1-unbundle-snappy.patch" + "${FILESDIR}/1.1.7.8-unbundle-bitshuffle.patch" + "${FILESDIR}/1.1.7.8-gentoo.patch" + "${FILESDIR}/snappy-1.1.10.5-SnappyOutputStreamTest.patch" + "${FILESDIR}/snappy-1.1.10.1-commons-lang3.patch" +) + +JAVA_RESOURCE_DIRS="src/main/resources" +JAVA_SRC_DIR="src/main/java" + +JAVA_TEST_GENTOO_CLASSPATH=" + commons-io-1 + commons-lang-3.6 + junit-4 + plexus-classworlds + xerial-core +" +JAVA_TEST_RESOURCE_DIRS="src/test/resources" +JAVA_TEST_SRC_DIR="src/test/java" + +check_env() { + if use test; then + # this is needed only for tests + CHECKREQS_MEMORY="2560M" + check-reqs_pkg_pretend + fi +} + +pkg_pretend() { + check_env +} + +pkg_setup() { + check_env + java-pkg-2_pkg_setup +} + +src_prepare() { + default + java-pkg-2_src_prepare + # remove pre-compiled sofiles + rm -r src/main/resources/org/xerial/snappy/native || die + rm -r src/test/resources/lib || die +} + +src_compile() { + emake \ + CXX="$(tc-getCXX)" \ + JAVA_SOURCE="$(java-pkg_get-source)" \ + JAVA_TARGET="$(java-pkg_get-target)" + + java-pkg-simple_src_compile +} + +src_test() { + JAVA_GENTOO_CLASSPATH_EXTRA="${DISTDIR}/hadoop-common-${HCV}.jar" + JAVA_TEST_EXTRA_ARGS=( -Xmx${CHECKREQS_MEMORY} ) + local vm_version="$(java-config -g PROVIDES_VERSION)" + if ver_test "${vm_version}" -ge 17; then + java-pkg-simple_src_test + else + einfo "Tests need jdk-17 to pass." + fi +} + +src_install() { + java-pkg-simple_src_install + + local jniext=.so + if [[ ${CHOST} == *-darwin* ]] ; then + jniext=.jnilib + # avoid install_name check failure + install_name_tool -id "@loader_path/libsnappyjava${jniext}" \ + "target/libsnappyjava${jniext}" + fi + java-pkg_doso "target/libsnappyjava${jniext}" +} |