Name: twitter4j
Version: 2.2.6
Release: 1%{?dist}
Summary: A Java library for the Twitter API
Group: Development/Libraries
License: ASL 2.0
Url: http://twitter4j.org/en/index.html
# git clone git://github.com/yusuke/twitter4j.git twitter4j-2.2.6
# (cd twitter4j-2.2.6/ && git archive --format=tar --prefix=twitter4j-2.2.6/ 2.2.6 | xz > ../twitter4j-2.2.6-src-git.tar.xz)
Source0: %{name}-%{version}-src-git.tar.xz
# fix log4j version
Patch0: %{name}-%{version}-core-pom.patch
BuildRequires: java-devel
BuildRequires: jpackage-utils
BuildRequires: apache-commons-logging
BuildRequires: httpcomponents-client
BuildRequires: log4j
BuildRequires: slf4j
BuildRequires: maven
BuildRequires: maven-compiler-plugin
BuildRequires: maven-install-plugin
BuildRequires: maven-jar-plugin
BuildRequires: maven-javadoc-plugin
BuildRequires: maven-resources-plugin
BuildRequires: maven-source-plugin
BuildRequires: maven-surefire-plugin
BuildRequires: maven-surefire-provider-junit4
# test deps
BuildRequires: junit
Requires: apache-commons-logging
Requires: httpcomponents-client
Requires: log4j
Requires: slf4j
Requires: java
Requires: jpackage-utils
BuildArch: noarch
%description
Twittetr4J is a Twitter Aw binding library for the Java language.
With Twitter4J, you can easily integrate your Java application
with the Twitter service. Twitter4J is an unofficial library.
Twitter4J is featuring:
* 100% Pure Java
* Android platform and Google APP Engine ready
* Built-in OAuth support
* Out-of-the-box GZIP support
%package javadoc
Group: Documentation
Summary: Javadoc for %{name}
Requires: jpackage-utils
%description javadoc
This package contains javadoc for %{name}.
%prep
%setup -q
find -name '*.class' -delete
find -name '*.jar' -delete
find -name '*.cmd' -delete
find . -name "*.java" -exec native2ascii {} {} \;
%patch0 -p0
sed -i "s,jsr14,1.6,;s,,," $(find . -name "pom.xml")
%pom_disable_module twitter4j-appengine
# remove unavailable test deps
%pom_remove_dep org.springframework:spring twitter4j-stream
rm twitter4j-stream/src/test/java/twitter4j/SpringCompatibilityTest.java
%pom_remove_dep com.googlecode:kryo twitter4j-core
rm twitter4j-core/src/test/java/twitter4j/internal/KryoSerializationTest.java
chmod 644 readme.txt
%build
# test fail OAuth authorization is required
# unavailable test deps com.googlecode kryo 1.04
mvn-rpmbuild -Dmaven.test.failure.ignore=true install javadoc:aggregate
%install
mkdir -p %{buildroot}%{_mavenpomdir}
install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}.pom
%add_maven_depmap JPP.%{name}-%{name}.pom
mkdir -p %{buildroot}%{_javadir}/%{name}
for m in async core examples httpclient-support media-support stream; do
install -m 644 %{name}-${m}/target/%{name}-${m}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}-${m}.jar
install -pm 644 %{name}-${m}/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-${m}.pom
%add_maven_depmap JPP.%{name}-%{name}-${m}.pom %{name}/%{name}-${m}.jar
done
mkdir -p %{buildroot}%{_javadocdir}/%{name}
cp -rp target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
%files
%dir %{_javadir}/%{name}
%{_javadir}/%{name}/%{name}-*.jar
%{_mavenpomdir}/JPP.%{name}-%{name}*.pom
%{_mavendepmapfragdir}/%{name}
%doc LICENSE.txt readme-annotations.txt readme-libs.txt readme.txt
%files javadoc
%{_javadocdir}/%{name}
%doc LICENSE.txt
%changelog
* Mon Oct 15 2012 gil cattaneo 2.2.6-1
- update to 2.2.6
* Tue Apr 17 2012 gil cattaneo 2.2.5-1
- initial rpm