diff --git a/.cvsignore b/.cvsignore index e69de29..fecd385 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +findbugs-1.3.7-source.zip diff --git a/findbugs-1.3.7-build.patch b/findbugs-1.3.7-build.patch new file mode 100644 index 0000000..d2ca869 --- /dev/null +++ b/findbugs-1.3.7-build.patch @@ -0,0 +1,122 @@ +diff -dur findbugs-1.3.7.ORIG/build.xml findbugs-1.3.7/build.xml +--- findbugs-1.3.7.ORIG/build.xml 2008-12-30 10:32:30.000000000 -0700 ++++ findbugs-1.3.7/build.xml 2009-01-02 16:18:23.000000000 -0700 +@@ -18,6 +18,8 @@ + + + ++ ++ + + + +@@ -57,17 +59,18 @@ + + + +- +- +- +- +- +- +- +- +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -972,7 +975,7 @@ + + + : reindents a Java file +* edu.umd.cs.findbugs.tools.FilterPropertyDatabase : filters a property + database, only passing through the annotations on public or protected + methods +* edu.umd.cs.findbugs.tools.html.PlainPrintBugDescriptions [docTitle]: + prints findbugs bug descriptions as plain text +* edu.umd.cs.findbugs.tools.html.PrettyPrintBugDescriptions [-unabridged] + [docTitle]: prints findbugs bug descriptions as HTML. If the -unabridged + option is given, then warnings from disabled detectors are also printed. +* edu.umd.cs.findbugs.tools.junit.JUnitJarRunner [-textui|-swingui] + []: run all of the JUnit + tests in a jar file. +* edu.umd.cs.findbugs.tools.xml.CheckMessages + [ ...]: check the XML message + files in a findbugs plugin for validity and completeness. diff --git a/findbugs.spec b/findbugs.spec new file mode 100644 index 0000000..75d726f --- /dev/null +++ b/findbugs.spec @@ -0,0 +1,201 @@ +# GCJ note: findbugs currenly cannot be compiled with GCJ. There are several +# problems, most of which could be fixed with a little effort. However, +# findbugs uses java.util.regex.Pattern.LITERAL, which is part of the Java 5 +# specification, but Classpath does not support it. This is a fatal problem. + +Name: findbugs +Version: 1.3.7 +Release: 4%{?dist} +Summary: Find bugs in Java code + +Group: Development/Languages +License: LGPLv2+ +URL: http://findbugs.sourceforge.net/ +Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}-source.zip +Source1: findbugs-ant +Source2: findbugs-tools-README +# This patch has not been submitted upstream, as it contains Fedora-specific +# changes. It looks in /usr/share/java for jar files at both compile time and +# run time, instead of in findbugs' lib directory. +Patch0: findbugs-1.3.7-build.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildArch: noarch + +BuildRequires: findbugs-bcel +BuildRequires: ant +BuildRequires: docbook-style-xsl +BuildRequires: jakarta-commons-lang +BuildRequires: java-devel +BuildRequires: jaxen +BuildRequires: jcip-annotations +BuildRequires: jFormatString +BuildRequires: jpackage-utils +BuildRequires: jsr-305 +BuildRequires: junit4 +BuildRequires: objectweb-asm +BuildRequires: perl +BuildRequires: tex(latex) +Requires: findbugs-bcel +Requires: jakarta-commons-lang +Requires: java +Requires: jaxen +Requires: jcip-annotations +Requires: jFormatString +Requires: jpackage-utils +Requires: jsr-305 +Requires: junit4 +Requires: objectweb-asm + +%description +Findbugs is a program which uses static analysis to look for bugs in Java code. +It can check for null pointer exceptions, multithreaded code errors, and other +bugs. + +%package -n ant-findbugs +Group: Development/Build Tools +Summary: Ant task for findbugs +Requires: %{name} = %{version}-%{release} +Requires: ant + +%description -n ant-findbugs +This package defines an ant task for findbugs for easy integration of findbugs +into your ant-controlled project. + +%package javadoc +Group: Development/Documentation +Summary: Javadoc documentation for findbugs +Requires: %{name} = %{version}-%{release} + +%description javadoc +Javadoc documentation for findbugs. + +%package tools +Group: Development/Languages +Summary: Addon tools for findbugs +Requires: %{name} = %{version}-%{release} +Requires: junit4 + +%description tools +This package contains additional tools for use with findbugs. See +README.fedora for more information. + +%prep +%setup -q +%patch0 -p1 + +cp -p %{SOURCE2} README.fedora + +# Make sure we don't accidentally use any existing JAR files +rm -f lib/*.jar + +# Use the system jcip-annotations instead of building it in +rm -fr src/java5/net + +# Get rid of code for Mac OS X that depends on a jar from Apple +rm -f src/java/edu/umd/cs/findbugs/gui/OSXAdapter.java +rm -f src/java5/edu/umd/cs/findbugs/gui2/OSXAdapter.java + +# Turn on the executable bits for some auxiliary scripts +chmod a+x etc/summarizeBugs etc/diffBugSummaries design/architecture/mkdep.pl + +%build +# Build the class files +ant + +# Build the javadocs +ant apiJavadoc + +# Build the architecture PDF +pushd design/architecture +make depend +make +popd + +# Package up the tools +cd build/classes +jar cf ../../lib/findbugs-tools.jar edu/umd/cs/findbugs/tools + +%install +rm -rf $RPM_BUILD_ROOT + +# Install the jars +mkdir -p $RPM_BUILD_ROOT%{_javadir} +cp -p lib/annotations.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-annotations-%{version}.jar +ln -s %{name}-annotations-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-annotations.jar +cp -p lib/%{name}-tools.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-tools-%{version}.jar +ln -s %{name}-tools-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-tools.jar +cp -p lib/%{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar +ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar + +# Install the ant task +mkdir -p $RPM_BUILD_ROOT%{_javadir}/ant +cp -p lib/%{name}-ant.jar $RPM_BUILD_ROOT%{_javadir}/ant/ant-%{name}-%{version}.jar +ln -s ant-%{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/ant/ant-%{name}.jar +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ant.d +cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/ant.d/%{name} + +# Install the javadocs +mkdir -p $RPM_BUILD_ROOT%{_javadocdir} +cp -a apiJavaDoc $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} +ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} + +# Install the scripts +mkdir -p $RPM_BUILD_ROOT%{_bindir} +for f in $(find bin -maxdepth 1 -type f \! -name '*.bat'); do + cp -p $f $RPM_BUILD_ROOT%{_bindir} +done + +# Install the shared files +mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name} +cp -a etc plugin $RPM_BUILD_ROOT%{_datadir}/%{name} + +# Remove now unnecessary build-only manual files so %%doc doesn't get them +rm -f doc/manual*.xml doc/manual*.xsl + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root,-) +%doc LICENSE.txt design/DecouplingFromBCEL.txt design/VisitingAndCaching.txt +%doc README.txt design/eclipse\ findbugs\ plugin\ features.sxw +%doc design/architecture/architecture.pdf doc +%{_bindir}/* +%{_datadir}/%{name} +%{_javadir}/findbugs-annotations* +%{_javadir}/findbugs-%{version}.jar +%{_javadir}/findbugs.jar + +%files -n ant-findbugs +%defattr(-,root,root,-) +%doc LICENSE.txt +%{_javadir}/ant/* +%config(noreplace) %{_sysconfdir}/ant.d/%{name} + +%files javadoc +%defattr(-,root,root,-) +%{_javadocdir}/* + +%files tools +%defattr(-,root,root,-) +%doc LICENSE.txt README.fedora +%{_javadir}/findbugs-tools* + +%changelog +* Fri Mar 6 2009 Jerry James - 1.3.7-4 +- Add README.fedora to the -tools package + +* Thu Mar 5 2009 Jerry James - 1.3.7-3 +- Minor spec file cleanups from review + +* Tue Feb 10 2009 Jerry James - 1.3.7-2 +- Rebuild for dependencies + +* Fri Jan 2 2009 Jerry James - 1.3.7-1 +- Update to 1.3.7 + +* Tue Dec 9 2008 Jerry James - 1.3.6-1 +- Update to 1.3.6 + +* Fri Sep 19 2008 Jerry James - 1.3.5-1 +- Initial RPM diff --git a/import.log b/import.log new file mode 100644 index 0000000..70f2db4 --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +findbugs-1_3_7-4_fc10:HEAD:findbugs-1.3.7-4.fc10.src.rpm:1236736044 diff --git a/sources b/sources index e69de29..cb54c67 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +ae5ee33e7c07031cdec22c1da5e59b93 findbugs-1.3.7-source.zip