From Fedora Project Wiki

This page outlines the effort involved to package autoqa, and it's dependencies, for Fedora.

Key

The following table details the different icons and states used through this page.

Unknown unknown Unknown
Unknown status, needs investigation
Inprogress inprogress Inprogress
Currently assigned and inprogress, see Notes for details
Pass pass Complete
This means it is packaged for Fedora or is considered not an issue, see Notes for details
Warning warn Warning
Needs further review, see Notes for details
Fail fail Failure
Not packaged for Fedora, or unable to package for Fedora, see Notes for details.

Bundled JAR files

The gwt package has many runtime and build requirements. As currently distributed, the requirements are bundled with the source code. This practice if forbidden according to the Fedora Java packaging guidelines (see Packaging:Java#Pre-built_JAR_files_.2F_Other_bundled_software). To address this issue, the gwt.spec should be updated as follows:

  1. Add package relationship dependencies (%Requires for run-time or %Buildrequires for build-time)
  2. In the %build phase, replace the bundled JAR file with a symlink to the system JAR file

For each of the JAR files listed below, the goal is to identify the Fedora package that provides the JAR file. Some steps to help locate the package.

  1. Identify whether it is a build or run-time requirement for gwt
  2. Determine whether the JAR file is provided by an existing package
    # Obtain a list of packages that contain a file matching the glob: *xerces*.jar
    $ repoquery -q -f "*xerces*jar"
    
  3. If not available in Fedora, determine whether the JAR file is available in a JPackage rpm
  4. If not available in JPackage, locate upstream and start packaging for Fedora

A build option is provided to assist with packaging gwt. To build gwt with all bundled JAR files, use rpmbuild option --with bundled_jars. To build gwt without the bundled JAR files (default), use rpmbuild option --without bundled_jars.

File Required by Status Notes
tools/api-checker/reference/gwt-user-modified.jar gwt
Pass pass
I believe this is provided by gwt and acceptable
tools/api-checker/reference/gwt-dev-modified.jar gwt
Pass pass
I believe this is provided by gwt and acceptable
tools/lib/htmlunit/htmlunit-core-js-r5070.jar gwt
Inprogress inprogress
packaged for jpackage, see #RPM dependencies below for packaging status
tools/lib/htmlunit/htmlunit-core-js-2.5.jar gwt
Inprogress inprogress
packaged for jpackage, see #RPM dependencies below for packaging status
tools/lib/htmlunit/htmlunit-r5070.jar gwt
Inprogress inprogress
packaged for jpackage, see #RPM dependencies below for packaging status
tools/lib/htmlunit/htmlunit-core-js-r5070-sources.jar gwt
Pass pass
packaged for jpackage, see #RPM dependencies below for packaging status. However, not a true build requirement. Safe to ignore.
tools/lib/htmlunit/htmlunit-2.5.jar gwt
Inprogress inprogress
packaged for jpackage, see #RPM dependencies below for packaging status
tools/lib/htmlunit/htmlunit-2.5-sources.jar gwt
Pass pass
packaged for jpackage, see #RPM dependencies below for packaging status. However, not a true build requirement. Safe to ignore.
tools/lib/htmlunit/htmlunit-r5070-sources.jar gwt
Pass pass
packaged for jpackageA, see #RPM dependencies below for packaging status. However, not a true build requirement. Safe to ignore.
tools/lib/htmlunit/htmlunit-core-js-2.5-sources.jar gwt
Pass pass
packaged for jpackage, see #RPM dependencies below for packaging status. However, not a true build requirement. Safe to ignore.
tools/lib/jetty/jetty-6.1.11.jar gwt
Pass pass
jetty
tools/lib/nekohtml/nekohtml-1.9.12.jar gwt
Warning warn
Available as nekohtml-0.9.5-6.2 - may need a newer build. nekohtml-1.9.14-1 is being packaged for rawhide.
tools/lib/nekohtml/nekohtml-1.9.13.jar gwt
Warning warn
Available as nekohtml-0.9.5-6.2 - may need a newer build. nekohtml-1.9.14-1 is being packaged for rawhide.
tools/lib/selenium/selenium-java-client-driver-sources.jar gwt
Pass pass
Can't find this specific JAR file in selenium-java-client-driver. However, not a true build requirement. Safe to ignore.
tools/lib/selenium/1.0.1/selenium-java-client-driver-sources.jar gwt
Pass pass
Can't find this specific JAR file in selenium-java-client-driver. However, not a true build requirement. Safe to ignore.
tools/lib/selenium/1.0.1/selenium-java-client-driver.jar gwt
Pass pass
selenium-java-client-driver
tools/lib/selenium/1.0.1/selenium-server-sources.jar gwt
Pass pass
Can't find the sources.jar file anywhere. However, not a true build requirement. Safe to ignore.
tools/lib/selenium/1.0.1/selenium-server.jar gwt
Pass pass
selenium-server is probably what we want, although perl-Alien-SeleniumRC also provides this file.
tools/lib/selenium/selenium-java-client-driver.jar gwt
Pass pass
selenium-java-client-driver
tools/lib/selenium/selenium-server-sources.jar gwt
Pass pass
Can't find the sources.jar file anywhere. However, not a true build requirement. Safe to ignore.
tools/lib/selenium/selenium-server.jar gwt
Pass pass
selenium-server is probably what we want, although perl-Alien-SeleniumRC also provides this file.
tools/lib/protobuf/protobuf-2.2.0/protobuf-java-2.2.0.jar gwt
Pass pass
protobuf is available, but does not build the protobuf-java subpackage containing the .jar file. I have reached out to protobuf maintainers, and listed protobuf below in #RPM dependencies as packaging work will be required. protobuf-2.3.0-3.fc14 is now available.
tools/lib/protobuf/protobuf-2.2.0/protobuf-java-rebased-2.2.0.jar gwt
Pass pass
Not packaged, see project page, see #RPM dependencies below for packaging status. This should be covered by protobuf-2.3.0-3.fc14, which is now available.
tools/lib/eclipse/jdt-3.1.1.jar gwt
Pass pass
eclipse-jdt
tools/lib/eclipse/org.eclipse.swt.win32-win32-3.2.1.jar gwt
Pass pass
windows jar file not needed in fedora
tools/lib/eclipse/org.eclipse.swt.carbon-macosx-3.2.1.jar gwt
Pass pass
osx jar file not needed in fedora
tools/lib/eclipse/org.eclipse.swt.gtk-linux-3.2.1.jar gwt
Pass pass
eclipse-swt
tools/lib/eclipse/jdt-3.3.1.jar gwt
Pass pass
eclipse-jdt
tools/lib/eclipse/jdt-3.4.2.jar gwt
Pass pass
eclipse-jdt
tools/lib/cssparser/cssparser-0.9.5.jar gwt
Pass pass
cssparser is only available in rawhide at the moment. This is fine for now. Will handle rebasing older releases at a later time.
tools/lib/tomcat/commons-logging-1.0.jar gwt
Pass pass
ant-commons-logging or jakarta-commons-logging
tools/lib/tomcat/tomcat-util-5.1.jar gwt
Pass pass
tomcat5-server-lib
tools/lib/tomcat/jasper-compiler-1.0.jar gwt
Pass pass
tomcat5-jasper
tools/lib/tomcat/catalina-1.0.jar gwt
Pass pass
tomcat5-server-lib or tomcat6-lib
tools/lib/tomcat/ant-launcher-1.6.5.jar gwt
Pass pass
ant
tools/lib/tomcat/naming-resources-1.0.jar gwt
Pass pass
tomcat5-common-lib or directory-naming
tools/lib/tomcat/tomcat-jk2-2.1.jar gwt
Fail fail
Cannot find tomcat-jk2 in any Fedora packages. This may not be a problem since mod_jk2 has been deprecated upstream (according to tomcat5 %changelog).
tools/lib/tomcat/tomcat-coyote-1.0.jar gwt
Pass pass
tomcat5-server-lib or tomcat6-lib
tools/lib/tomcat/naming-java-1.0.jar gwt
Pass pass
directory-naming
tools/lib/tomcat/servlet-api-2.4.jar gwt
Pass pass
tomcat5-servlet-2.4-api
tools/lib/tomcat/mx4j-jmx-1.1.jar gwt
Pass pass
mx4j
tools/lib/tomcat/commons-el-1.0.jar gwt
Pass pass
jakarta-commons-el
tools/lib/tomcat/tomcat-http11-1.0.jar gwt
Pass pass
Can't find this packaged, but inspecting the JAR file, I believe this is provided by tomcat5-server-lib or tomcat6-lib
tools/lib/tomcat/servlets-common-1.0.jar gwt
Pass pass
tomcat5-server-lib
tools/lib/tomcat/jsp-api-2.0.jar gwt
Pass pass
tomcat5-jsp-2.0-api
tools/lib/tomcat/commons-modeler-1.1.jar gwt
Pass pass
jakarta-commons-modeler
tools/lib/tomcat/commons-beanutils-1.6.jar gwt
Pass pass
jakarta-commons-beanutils
tools/lib/tomcat/jsp-api-2.1.jar gwt
Pass pass
tomcat6-jsp-2.1-api
tools/lib/tomcat/commons-collections-3.1.jar gwt
Pass pass
jakarta-commons-collections
tools/lib/tomcat/servlets-invoker-1.0.jar gwt
Pass pass
tomcat5-server-lib
tools/lib/tomcat/servlets-default-1.0.jar gwt
Pass pass
tomcat5-server-lib
tools/lib/tomcat/catalina-optional-1.0.jar gwt
Pass pass
tomcat5-server-lib
tools/lib/tomcat/jakarta-regexp-1.3.jar gwt
Pass pass
eclipse-quickrex or ant-apache-regexp
tools/lib/tomcat/servlet-api-2.5.jar gwt
Pass pass
tomcat6-servlet-2.5-api
tools/lib/tomcat/naming-common-1.0.jar gwt
Pass pass
I think this is provided by tomcat5-common-lib
tools/lib/tomcat/jasper-runtime-1.0.jar gwt
Pass pass
tomcat5-jasper
tools/lib/tomcat/commons-digester-1.5.jar gwt
Pass pass
jakarta-commons-digester
tools/lib/tomcat/ant-launcher-1.7.1.jar gwt
Pass pass
ant
tools/lib/tomcat/naming-factory-1.0.jar gwt
Pass pass
tomcat5-common-lib or directory-naming
tools/lib/junit/junit-3.8.1.jar gwt
Pass pass
junit
tools/lib/jfreechart/jcommon-1.0.6.jar gwt
Pass pass
jcommon
tools/lib/jfreechart/jfreechart-1.0.3.jar gwt
Pass pass
jfreechart
tools/lib/jfreechart/itext-1.4.6.jar gwt
Pass pass
itext
tools/lib/sun/swingworker/swing-worker-1.1.jar gwt
Pass pass
netbeans-java
tools/lib/javaswf/javaswf-20050404.jar gwt
Fail fail
Not packaged anywhere and I question whether this is needed. There has been no activity on this project since 2003. See project page.
tools/lib/cglib/cglib-2.2.jar gwt
Pass pass
cglib
tools/lib/cglib/cglib-src-2.2.jar gwt
Pass pass
not provided by cglib. However, not a true build requirement. Safe to ignore.
tools/lib/xerces/xerces-2_9_1/xml-apis.jar gwt
Warning warn
can't find this, perhaps xml-commons-apis?
tools/lib/xerces/xerces-2_9_1/xercesimpl-nometainf.jar gwt
Warning warn
can't find this in fedora package
tools/lib/xerces/xerces-2_9_1/serializer.jar gwt
Warning warn
can't find this in fedora package
tools/lib/xerces/xerces-2_9_1/xercesimpl.jar gwt
Warning warn
can't find this in fedora package
tools/lib/xerces/xerces-2.0.2.jar gwt
Pass pass
xerces-j2
tools/lib/xerces/xml-apis-2.0.2.jar gwt
Warning warn
is this the same as xml-commons-apis?
tools/lib/xalan/xalan-2.7.1.jar gwt
Pass pass
xalan-x2
tools/lib/apache/tapestry-util-text-4.0.2.jar gwt
Fail fail
Packaged for jpackage, see #RPM dependencies below for packaging status
tools/lib/apache/commons/commons-codec-1.3.jar gwt
Pass pass
jakarta-commons-codec
tools/lib/apache/commons/commons-logging-1.1.1.jar gwt
Pass pass
jakarta-commons-logging
tools/lib/apache/commons/commons-io-1.4.jar gwt
Pass pass
jakarta-commons-io
tools/lib/apache/commons/commons-httpclient-3.1.jar gwt
Pass pass
jakarta-commons-httpclient
tools/lib/apache/commons/commons-collections-3.2.1.jar gwt
Pass pass
jakarta-commons-collections
tools/lib/apache/commons/commons-lang-2.4.jar gwt
Pass pass
jakarta-commons-lang
tools/lib/apache/ant-1.6.5.jar gwt
Pass pass
ant
tools/lib/apache/ant-1.6.1.jar gwt
Pass pass
ant
tools/lib/apache/ant-1.7.1.jar gwt
Pass pass
ant
tools/lib/w3c/sac/sac-1.3.jar gwt
Pass pass
sac
tools/lib/w3c/sac/sac-1.3-src.jar gwt
Pass pass
not provided by sac, not a true build requirement. Safe to ignore.
tools/lib/w3c/flute/flute-1.3-gg1.jar gwt
Pass pass
Seems to be a hand-patched version of flute to add a new file (see commit log). Inspecting the flute.jar provided by flute shows it also contains the missing encoding.properties file
tools/lib/w3c/flute/flute-1.3.jar gwt
Pass pass
flute
tools/lib/w3c/flute/flute-1.3-gg1-src.jar gwt
Pass pass
Not provided in flute, not a true build requirement. Safe to ignore.
tools/lib/w3c/flute/flute-1.3-src.jar gwt
Pass pass
not provided in flute, not a true build requirement. Safe to ignore.
tools/lib/tonicsystems/jarjar-1.0rc8.jar gwt
Warning warn
jarjar-0.9-5 is available, but may require an update.
tools/lib/objectweb/asm-util-3.1.jar gwt
Pass pass
objectweb-asm
tools/lib/objectweb/asm-tree-3.1.jar gwt
Pass pass
objectweb-asm
tools/lib/objectweb/asm-commons-3.1.jar gwt
Pass pass
objectweb-asm
tools/lib/objectweb/asm-xml-3.1.jar gwt
Pass pass
objectweb-asm
tools/lib/objectweb/asm-analysis-3.1.jar gwt
Pass pass
objectweb-asm
tools/lib/objectweb/asm-3.1.jar gwt
Pass pass
objectweb-asm
tools/lib/easymock/easymock.jar gwt
Pass pass
easymock
tools/lib/easymock/easymockclassextension.jar gwt
Pass pass
easymock
dev/core/test/com/google/gwt/dev/resource/impl/testdata/cpe2.jar gwt
Pass pass
Thsi is built and provided by the gwt package itself. This is fine.
dev/core/test/com/google/gwt/dev/resource/impl/testdata/cpe1.jar gwt
Pass pass
This is built and provided by the gwt package itself. This is fine.
eclipse/settings/code-style/gwt-customchecks.jar gwt
Pass pass
According to the svn log, this provides a file used for gwt development within eclipse. Safe to ignore.

RPM dependencies

The following table lists the package dependencies required to build autoqa and their Fedora package review status. Unless otherwise stated, builds for these packages should be available in Fedora 14. At some point, building packages into Fedora 13, or EPEL5, may be desired, but starting with Fedora 14 is ideal.

Package Required by Status Notes
autoqa-0.3.5-pre2.fc13 QA
Unknown unknown
autotest-0.12.0-1.fc13 autoqa
Unknown unknown
Django-1.0.4-1.fc13 autotest
Unknown unknown
A newer version of Django is available in Fedora, but Django-1.0.4-1 is needed. A contrib package will be required so that Django and contrib-Django-1.0.4 can coexist
gwt-2.0.3-0.1.fc13 autotest
Unknown unknown
htmlunit-2.7-1 gwt
Inprogress inprogress jlaska
Preliminary dist-f14 package available at http://jlaska.fedorapeople.org/autoqa/rpms/htmlunit/. Next step ... Fedora package review.
maven-checkstyle-plugin htmlunit
Pass pass spike
maven-checkstyle-plugin-2.5-1.fc14 is now available in rawhide (see review request RHBZ #614836).
xalan-js htmlunit
Inprogress inprogress jlaska
xalan-j2-2.7.1-1.fc14 is available but missing the required .pom files. With heavy lifting from dbhole. Proposed xalan-j2 package updates are available at http://jlaska.fedorapeople.org/autoqa/rpms/xalan-j2/. I have contacted the xalan-j2 maintainer requesting a rebuild.
nekohtml-1.9.14 htmlunit
Pass pass jlaska
nekohtml-1.9.14-2 is now available in rawhide.
htmlunit-core-js-2.7-1 htmlunit
Inprogress inprogress jlaska
Preliminary dist-f14 package available at http://jlaska.fedorapeople.org/autoqa/rpms/htmlunit-core-js/. Next step ... Fedora package review.
tapestry-4.0.2-3.jpp5 gwt
Unknown unknown
protobuf-2.3.0 gwt
Pass pass jlaska
protobuf-java is now available in rawhide (see protobuf)
ecj-3.4.2-7.el5 gwt
Pass pass jlaska
ecj is available in rawhide (an el5).
cssparser gwt
Pass pass jlaska
cssparser is currently available in rawhide, but not in fc13 or el5. According to User:Akurtakov, rebuilding cssparser requires javacc-maven-plugin in Fedora 13, and building anything *maven* in F13 is broken+problematic.
sac-1.3-8 cssparser
Pass pass jlaska
A newer version of sac is needed in Fedora 13. Requested CVS tagging to build into fc13. Currently, sac-1.3-8 is now available in fc14 and fc13.