httpcomponents-client/httpcomponents-client.spec
starlet-dx b245a439b1 Modify invalid Source
(cherry picked from commit dc8318b32d9dc2461b0dd0d1215af63bea792d82)
2022-11-17 09:16:05 +08:00

156 lines
5.6 KiB
RPMSpec

Name: httpcomponents-client
Version: 4.5.5
Release: 7
License: ASL 2.0
Summary: A library of components for building client side HTTP services
URL: http://hc.apache.org/
Source0: https://archive.apache.org/dist/httpcomponents/httpclient/source/%{name}-%{version}-src.tar.gz
Patch0001: 0001-Use-system-copy-of-effective_tld_names.dat.patch
BuildArch: noarch
BuildRequires: maven-local mvn(commons-codec:commons-codec) mvn(commons-logging:commons-logging)
BuildRequires: mvn(junit:junit) mvn(net.sf.ehcache:ehcache-core) mvn(net.spy:spymemcached)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) mvn(org.apache.httpcomponents:httpcore)
BuildRequires: mvn(org.apache.httpcomponents:project:pom:) mvn(org.mockito:mockito-core) publicsuffix-list
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) mvn(org.easymock:easymock)
Requires: publicsuffix-list
Obsoletes: %{name}-tests < 4.4
%description
HttpClient is an HTTP proxy implementation of HTTP / 1.1 extended by
httpcomponents HttpCore,which provides reusable components for
HTTP state management, HTTP connection management, and client-side
authentication. HttpComponents Client is almost equalto Commons
HttpClient 3.x. Users of Commons HttpClient strongly support it.
%package cache
Summary: Module used to cache for %{name}
%description cache
This package can be known as a client side, providing client side caching for %{name}.
%package help
Summary: Help documents javadoc for httpcomponents-client
Provides: %{name}-javadoc = %{version}-%{release}
Obsoletes: %{name}-javadoc < %{version}-%{release}
%description help
Man pages and other related help documents for httpcomponents-client.
%prep
%autosetup -n %{name}-%{version} -p1
%mvn_package :httpclient-cache cache
%pom_disable_module httpclient-osgi
%pom_disable_module httpclient-win
%pom_remove_plugin :docbkx-maven-plugin
%pom_remove_plugin :clirr-maven-plugin
%pom_remove_plugin :maven-checkstyle-plugin
%pom_remove_plugin :apache-rat-plugin
%pom_remove_plugin :maven-source-plugin
%pom_remove_plugin :maven-javadoc-plugin
rm httpclient/src/test/java/org/apache/http/conn/ssl/TestSSLSocketFactory.java
%pom_remove_plugin org.apache.maven.plugins:maven-jar-plugin httpclient-cache
%pom_remove_dep org.easymock:easymockclassextension
for dep in org.easymock:easymockclassextension org.slf4j:slf4j-jcl; do
%pom_remove_dep $dep httpclient-cache
done
rm -rf httpclient-cache/src/test
%pom_remove_plugin :download-maven-plugin httpclient
for module in httpclient httpmime httpclient-cache fluent-hc; do
%pom_xpath_remove "pom:project/pom:packaging" $module
%pom_xpath_inject "pom:project" "<packaging>bundle</packaging>" $module
done
%pom_xpath_inject pom:build "
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
</plugin>
</plugins>" fluent-hc
%pom_xpath_inject pom:build/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
</plugin>" httpmime
%pom_xpath_inject pom:reporting/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<configuration>
<instructions>
<Export-Package>*</Export-Package>
<Private-Package></Private-Package>
<Import-Package>!org.apache.avalon.framework.logger,!org.apache.log,!org.apache.log4j,*</Import-Package>
</instructions>
</configuration>
</plugin>" httpclient
%pom_xpath_inject pom:build/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Export-Package>org.apache.http.*,!org.apache.http.param</Export-Package>
<Private-Package></Private-Package>
<_nouses>true</_nouses>
<Import-Package>!org.apache.avalon.framework.logger,!org.apache.log,!org.apache.log4j,*</Import-Package>
</instructions>
<excludeDependencies>true</excludeDependencies>
</configuration>
</plugin>" httpclient
%pom_xpath_inject pom:build/pom:plugins "
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Export-Package>*</Export-Package>
<Import-Package>net.sf.ehcache;resolution:=optional,net.spy.memcached;resolution:=optional,*</Import-Package>
<Private-Package></Private-Package>
<_nouses>true</_nouses>
</instructions>
<excludeDependencies>true</excludeDependencies>
</configuration>
</plugin>" httpclient-cache
rm httpclient/src/test/java/org/apache/http/client/config/TestRequestConfig.java
%build
%mvn_file ":{*}" httpcomponents/@1
%mvn_build -f
%install
%mvn_install
find %{_buildrootdir} -name "httpcomponents-client.xml" | xargs sed -i \
's/<uuid>[[:alnum:]]\{8\}-[[:alnum:]]\{4\}-[[:alnum:]]\{4\}-[[:alnum:]]\{4\}-[[:alnum:]]\{12\}<\/uuid>/<uuid>12345678-1234-1234-1234-123456789012<\/uuid>/g'
%files -f .mfiles
%doc LICENSE.txt NOTICE.txt README.txt RELEASE_NOTES.txt
%files cache -f .mfiles-cache
%files help -f .mfiles-javadoc
%changelog
* Wed Nov 16 2022 yaoxin <yaoxin30@h-partners.com> - 4.5.5-7
- Modify invalid Source
* Sun Dec 1 2019 wangzhishun <wangzhishun1@huawei.com> - 4.5.5-6
- Package init