diff options
Diffstat (limited to 'netty.spec')
-rw-r--r-- | netty.spec | 295 |
1 files changed, 295 insertions, 0 deletions
diff --git a/netty.spec b/netty.spec new file mode 100644 index 0000000..8f01c11 --- /dev/null +++ b/netty.spec @@ -0,0 +1,295 @@ +%global debug_package %{nil} + +Name: netty +Version: 4.1.126 +Release: 2 +Summary: An asynchronous event-driven network application framework and tools for Java +License: Apache-2.0 +URL: https://netty.io/ +Source0: https://github.com/netty/netty/archive/netty-%{version}.Final.tar.gz +Source1: codegen.bash +Source2: https://repo1.maven.org/maven2/io/netty/netty-jni-util/0.0.9.Final/netty-jni-util-0.0.9.Final-sources.jar +Patch0000: 0001-Remove-optional-dep-Blockhound.patch +Patch0001: 0002-Remove-optional-dep-conscrypt.patch +Patch0002: 0003-Remove-optional-deps-jetty-alpn-and-npn.patch +Patch0003: 0004-Disable-Brotli-and-ZStd-compression.patch +Patch0004: no-werror.patch +Patch0005: reproducible.patch +Patch0006: fix-strip.patch + +BuildRequires: autoconf automake libtool gcc +BuildRequires: maven-local +BuildRequires: mvn(com.fasterxml:aalto-xml) +BuildRequires: mvn(com.jcraft:jzlib) +BuildRequires: mvn(commons-logging:commons-logging) +BuildRequires: mvn(io.netty:netty-tcnative) >= 2.0.60 +BuildRequires: mvn(io.netty:netty-tcnative-classes) >= 2.0.60 +BuildRequires: mvn(kr.motd.maven:os-maven-plugin) +BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) +BuildRequires: mvn(org.apache.logging.log4j:log4j-1.2-api) +BuildRequires: mvn(org.apache.logging.log4j:log4j-api) +BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin) +BuildRequires: mvn(org.apache.maven.plugins:maven-dependency-plugin) +BuildRequires: mvn(org.apache.maven.plugins:maven-remote-resources-plugin) +BuildRequires: mvn(org.bouncycastle:bcpkix-jdk15on) +BuildRequires: mvn(org.bouncycastle:bctls-jdk15on) +BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) +BuildRequires: mvn(org.codehaus.mojo:exec-maven-plugin) +BuildRequires: mvn(org.fusesource.hawtjni:hawtjni-maven-plugin) +BuildRequires: mvn(org.jctools:jctools-core) +BuildRequires: mvn(org.slf4j:slf4j-api) +BuildRequires: jurand fdupes + +%description +Netty is an asynchronous event-driven network application framework +for rapid development of maintainable high performance protocol servers & clients. + +%package bom +Summary: POM-only artifacts for %{name} +Obsoletes: %{name}-poms +BuildArch: noarch + +%description bom +%{summary}. + +%package parent +Summary: POM-only artifacts for %{name} +Obsoletes: %{name}-poms +BuildArch: noarch + +%description parent +%{summary}. + +%package help +Summary: Documents for %{name} +Buildarch: noarch +Requires: man info +Provides: %{name}-javadoc = %{version}-%{release} +Obsoletes: %{name}-javadoc < %{version}-%{release} +%description help +Man pages and other related documents for %{name}. + +%prep +%autosetup -p1 -n netty-netty-%{version}.Final + +# remove annotations for which we have no dependencies +# Graal annotations +%{java_remove_annotations} common -p "com.oracle.svm.core.annotate" +# Jetbrains annotation +%{java_remove_annotations} common -p "org.jetbrains.annotations" + +%pom_remove_parent . bom + +%pom_disable_module "example" +%pom_disable_module "microbench" + +%pom_remove_plugin :maven-antrun-plugin +%pom_remove_plugin :maven-dependency-plugin +%pom_remove_plugin :xml-maven-plugin +%pom_remove_plugin :japicmp-maven-plugin +%pom_remove_plugin -r :maven-checkstyle-plugin +%pom_remove_plugin -r :animal-sniffer-maven-plugin +%pom_remove_plugin -r :maven-enforcer-plugin +%pom_remove_plugin -r :maven-shade-plugin +%pom_remove_plugin -r :maven-release-plugin +%pom_remove_plugin -r :maven-clean-plugin +%pom_remove_plugin -r :maven-source-plugin +%pom_remove_plugin -r :maven-deploy-plugin +%pom_remove_plugin -r :maven-jxr-plugin +%pom_remove_plugin -r :maven-javadoc-plugin +%pom_remove_plugin -r :forbiddenapis +%pom_remove_plugin -r :revapi-maven-plugin +%pom_remove_plugin -r :bom-helper-maven-plugin +%pom_remove_plugin -r :central-publishing-maven-plugin +%pom_remove_plugin -r :nexus-staging-maven-plugin +%pom_remove_plugin -r :flatten-maven-plugin +%pom_remove_plugin :duplicate-finder-maven-plugin all + +cp %{SOURCE1} common/codegen.bash +chmod +x common/codegen.bash +%pom_add_plugin org.codehaus.mojo:exec-maven-plugin common ' +<executions> + <execution> + <id>generate-collections</id> + <phase>generate-sources</phase> + <goals> + <goal>exec</goal> + </goals> + <configuration> + <executable>common/codegen.bash</executable> + </configuration> + </execution> +</executions> +' +%pom_remove_plugin :groovy-maven-plugin common + +%pom_remove_dep "org.graalvm.nativeimage:" common +rm common/src/main/java/io/netty/util/internal/svm/* + +%pom_remove_dep -r "com.google.protobuf:protobuf-java" +%pom_remove_dep -r "com.google.protobuf.nano:protobuf-javanano" +rm codec/src/main/java/io/netty/handler/codec/protobuf/* +sed -i '/import.*protobuf/d' codec/src/main/java/io/netty/handler/codec/DatagramPacket*.java + +%pom_remove_dep -r "org.jboss.marshalling:jboss-marshalling" +rm codec/src/main/java/io/netty/handler/codec/marshalling/* + +%pom_remove_dep -r com.github.jponge:lzma-java +rm codec/src/*/java/io/netty/handler/codec/compression/Lzma*.java +%pom_remove_dep -r com.ning:compress-lzf +rm codec/src/*/java/io/netty/handler/codec/compression/Lzf*.java +%pom_remove_dep -r org.lz4:lz4-java +rm codec/src/*/java/io/netty/handler/codec/compression/Lz4*.java +%pom_remove_dep -r com.aayushatharva.brotli4j: +rm codec/src/*/java/io/netty/handler/codec/compression/Brotli*.java +%pom_remove_dep -r com.github.luben:zstd-jni +rm codec/src/*/java/io/netty/handler/codec/compression/Zstd*.java + +%pom_disable_module transport-rxtx +%pom_remove_dep -r :netty-transport-rxtx +%pom_disable_module transport-udt +%pom_remove_dep -r :netty-transport-udt + +%pom_remove_dep -r :netty-build-common +%pom_remove_dep :netty-dev-tools + +%pom_disable_module resolver-dns-native-macos +%pom_remove_dep -r :netty-resolver-dns-native-macos + +%pom_disable_module testsuite +%pom_disable_module testsuite-autobahn +%pom_disable_module testsuite-http2 +%pom_disable_module testsuite-native +%pom_disable_module testsuite-native-image +%pom_disable_module testsuite-native-image-client +%pom_disable_module testsuite-native-image-client-runtime-init +%pom_disable_module testsuite-osgi +%pom_disable_module testsuite-shading +%pom_disable_module transport-native-unix-common-tests + +%pom_remove_dep io.netty:netty-jni-util transport-native-unix-common +%pom_remove_plugin :maven-dependency-plugin transport-native-unix-common +mkdir -p transport-native-unix-common/target/netty-jni-util +unzip %{SOURCE2} -d transport-native-unix-common/target/netty-jni-util + +%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId = 'maven-bundle-plugin']/pom:executions/pom:execution[pom:id = 'generate-manifest']/pom:configuration/pom:instructions/pom:Import-Package" common/pom.xml + +%pom_xpath_inject "pom:project" ' +<properties><javaModuleName>io.netty.dev.tools</javaModuleName></properties> +' dev-tools + +%pom_remove_dep -r :annotations-java5 + +%pom_xpath_remove "pom:profiles/pom:profile[pom:id = 'staging']" all + +# Tell xmvn to install attached artifact, which it does not +# do by default. In this case install all attached artifacts with +# the linux classifier. +%mvn_package ":::linux*:" + +%mvn_package ":netty-parent" parent +%mvn_package ":netty-bom" bom + +%mvn_package ':*-tests' __noinstall + +%build +export CFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS" +%mvn_build -f + +%install +%mvn_install +%fdupes -s %{buildroot}%{_javadocdir} + +%files -f .mfiles +%doc LICENSE.txt NOTICE.txt + +%files parent -f .mfiles-parent +%license LICENSE.txt NOTICE.txt + +%files bom -f .mfiles-bom + +%files help -f .mfiles-javadoc + +%changelog +* Tue Sep 23 2025 chengsongyuxuan <chengsongyuxuan@cqsoftware.com.cn> - 4.1.126-2 +- Fix AR parameter order issue + +* Thu Sep 18 2025 yaoxin <1024769339@qq.com> - 4.1.126-1 +- Update to 4.1.126 for fix CVE-2025-58056 and CVE-2025-58057 + +* Thu Aug 14 2025 Yu Peng <yupeng@kylinos.cn> - 4.1.114-3 +- Fix CVE-2025-55163 + +* Tue Feb 11 2025 wangkai <13474090681@163.com> - 4.1.114-2 +- Fix CVE-2025-24970 + +* Thu Nov 14 2024 yaoxin <yao_xin001@hoperun.com> - 4.1.114-1 +- Update to 4.1.114 + * Validate HTTP Method (#14280) + * Release AdaptiveByteBuf when ownership could not be transfered. (#14285) + * Make arenas reuse their last chunk more aggressively (#14291) + * Only add Magazine to Set if we can ensure its removed again (#14292) + * Ensure Chunk will not leak if init of AdaptiveByteBuf fails for whatever reason (#14295) + * Correctly release one-off allocated chunks (#14302) + * Ensure pooled memory is released when AdaptivePoolingAllocator is GC'ed (#14304) + * Slices / duplicates of AdaptiveByteBuf must not escape the rootParent (#14310) + * Fix sizeBucket bug in AdaptivePoolingAllocator (#14311) + * AdaptiveByteBufAllocator: More strict reference counting for chunks (#14322) + * Ensure we not store the DnsQueryContext for later removal when we couldnt obtain a query id (#14326) + * Reduce memory fragmentation (#14333) + * Properly free magazine chunks and avoid orphaned magazines (#14334) + * Magazines must be freed under the expand lock (#14336) + * Release message before failing promise when multiple requests are written while upgrade is in progress. (#14342) + * Allow to reuse more then one session per host / port mapping (#14356) + * Ensure writes will not fail when triggered after receiving UpgradeEvent.UPGRADE_SUCCESSFUL (#14362) + * Refactor DnsNameResolver to be able to use different strategies when it comes to creating Channels for queries. (#14374) + * DnsNameResolver: allow users to skip bind() during bootstrap (#14375) + * DnsResolverBuilder methods should make it clear that these are for DatagramChannel (#14379) + +* Tue Nov 12 2024 yaoxin <yao_xin001@hoperun.com> - 4.1.13-22 +- Fix CVE-2024-29025 + +* Wed Dec 13 2023 yaoxin <yao_xin001@hoperun.com> - 4.1.13-21 +- Fix CVE-2022-41881 + +* Sun Mar 05 2023 wulei <wulei80@h-partners.com> - 4.1.13-20 +- Add strip + +* Wed Nov 9 2022 liyanan <liyanan32@h-partners.com> - 4.1.13-19 +- Change source + +* Mon Mar 07 2022 wangkai <wangkai385@huawei.com> - 4.1.13-18 +- Remove lz4-java dependency + +* Fri Dec 24 2021 wangkai <wangkai385@huawei.com> - 4.1.13-17 +- This package depends on log4j.After the log4j vulnerability CVE-2021-45105 is fixed,the version needs to be rebuild. + +* Fri Dec 17 2021 yaoxin <yaoxin30@huawei.com> - 4.1.13-16 +- Fix CVE-2021-43797 + +* Wed Oct 27 2021 wangkai <wangkai385@huawei.com> - 4.1.13-15 +- fix CVE-2021-37136 CVE-2021-37137 + +* Mon Aug 16 2021 wangyue <wangyue92@qq.com> - 4.1.13-14 +- fix build error + +* Sat Aug 14 2021 wangyue <wangyue92@qq.com> - 4.1.13-13 +- fix build error + +* Tue Apr 06 2021 wangxiao <wangxiao65@huawei.com> - 4.1.13-12 +- Fix CVE-2021-21295 CVE-2021-21409 + +* Tue Mar 09 2021 wangyue <wangyue92@huawei.com> - 4.1.13-11 +- fix CVE-2021-21290 + +* Thu Jan 28 2021 maminjie <maminjie1@huawei.com> - 4.1.13-10 +- remove the BuildRequires lzma-java that is deprecated + +* Fri Dec 04 2020 caodongxia <caodongxia@huawei.com> - 4.1.13-9 +- fix CVE-2019-16869 CVE-2019-20444 CVE-2019-20445 CVE-2020-11612 + +* Wed Aug 26 2020 yaokai <yaokai13@huawei.com> - 4.1.13-8 + - Disable support for protobuf in the codecs module + +* Mon Dec 23 2019 Shuaishuai Song <songshuaishuai2@huawei.com> - 4.1.13-7 +- package init |