| <?php |
| require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); |
| require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); |
| require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); |
| $App = new App(); |
| $Nav = new Nav(); |
| $Menu = new Menu(); |
| include ($App->getProjectCommon()); # All on the same line to unclutter the user's desktop' |
| $pageTitle = "Linux Tools Project - RPM Stubby"; |
| $pageKeywords = "linux, eclipse, downloads"; |
| $pageAuthor = "Alexander Kurtakov"; |
| |
| # Add page-specific Nav bars here |
| # Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3) |
| # $Nav->addNavSeparator("My Page Links", "downloads.php"); |
| # $Nav->addCustomNav("My Link", "mypage.php", "_self", 3); |
| # $Nav->addCustomNav("Google", "http://www.google.com/", "_blank", 3); |
| |
| # End: page-specific settings |
| # |
| |
| # Paste your HTML content between the EOHTML markers! |
| $html =<<<EOHTML |
| |
| <div id="midcolumn"> |
| <h1>$pageTitle</h1> |
| |
| <h2>Overview</h2> |
| Information needed for creating RPM specfile is present in a number of different files that are part of the upstream sources. Good examples are Eclipse feature.xml files and Maven pom.xml files. |
| And this plugin does exactly that - creates a RPM specfile from the information in these files. |
| This plugin have some small limitations like: |
| <ul><li>feature.xml - creates a specfile only for a plugin that contains a feature</li> |
| <li>pom.xml - creates a good specfile for poms without modules</li></ul> |
| |
| <h2>Current Status</h2> |
| RPM stubby is capable of creating good specfile when all the needed data is in the feature.xml. |
| Some of this data like the license, URL and other parts is not mandatory for the feature.xml files so your results |
| will vary depending on the completeness of the metadata in the feature.xml. |
| <br /> |
| It contains aditional features like: |
| <ul> |
| <li>Creating a fetch script for plugins that do not provide source tarballs - |
| The script needs tuning for plugins that use version control systems different from CVS.</li> |
| <li>Add GCJ support to specfile - It was a good practice to add GCJ support to the packages in the past. |
| With OpenJDK becoming more and more popular this is not the case anymore. </li> |
| <li>Use pdebuild for building - Pdebuild is a shell script shipped with Eclipse in some RPM based distributions (e.g. Fedora, Mandriva). |
| It reduces the number of things you need to setup manually by setting common values whenever this value is not overridden by a parameter |
| passed to the script. |
| </li> |
| </ul> |
| |
| <h2>Future Plans</h2> |
| <ul> |
| <li>Give warnings for missing data in the feature.xml/pom.xml needed for the specfile.</li> |
| <li>Provide interface for entering the missing data on generation time.</li> |
| <li>Mylyn integration for reporting missing parts to upstream projects. Pom.xml files can even contain an url to the upstream issue tracking.</li> |
| </ul> |
| |
| <h2>Screenshots</h2> |
| <h4>Specfile generated by rpmstubby</h4> |
| <img src="images/rpmstubby.png" alt="Spec file generated by rpmstubby" /> |
| |
| <h2>Try it out</h2> |
| <p> |
| Follow the <a href="http://wiki.eclipse.org/Linux_Tools_Project/PluginInstallHelp">instructions</a> . |
| </p> |
| </div> |
| |
| EOHTML; |
| |
| # Generate the web page |
| $App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html); |
| ?> |