Hi all,

I wrote a small tool that updates the changelog within both spec files and 
files related to Debian packages. This tool, bpa (binary package 
abstraction), is based on a XML changelog; therefore only one changelog has 
to be maintained for all binary package formats. Such a changelog has to be 
named 'package.xml' and need to be at the same location than the spec file 
and the debian repository for Debian packages. A package.xml file looks like:
<?xml version='1.0'?>
 <package>
        <name>test</name>
        <changelog>
            <release version="0.2">
                <packager>me</packager>
                <logs>
                    <date>Wed May 10 2006</date>
                    <item>modif6</item>
                    <item>modif7</item>
                </logs>
            </release>
            <release version="0.0.1-2">
                <packager>toto</packager>
                <logs>
                    <date>Thu Apr 9 2006</date>
                    <item>modif5</item>
                    <item>modif4</item>
                </logs>
            </release>
            <release version="0.0.1-1">
                <packager>titi</packager>
                <logs>
                    <date>Mon Feb 1 2006</date>
                    <item>modif3</item>
                    <item>modif2</item>
                    <item>modif1</item>
                </logs>
            </release>
        </changelog>
 </package>

bpa is a Perl binary but also a Perl library. The Perl binary currently 
supports different options:
- update changelogs of both RPMs and Debs,
- update changelog of the spec file,
- update changelog for the Debian package.

To illustrate how bpa works, i will take a small example based on the XML 
changelog previously presented. If you execute 'perl 
bpa.pl --update-changelogs' at the location where you have the package.xml 
file, the local 'test.spec' file will be open, old changelogs removed and new 
changelogs added. Same thing with the Debian changelog.
Note that the name of the spec file must match the package name in the XML 
file.

Currently the RPM support is finished whereas the Debian support is not yet 
fully implemented. Actually i want to know if all OSCAR developers are 
interested in using such a tool to federate data between RPMs and Debs before 
to continue to implement that tool.

If we decide to use that tool, i also plan to handle the package version 
available in the spec file. I also plan to extend the bpa API in order to be 
able to use bpa in other scripts/tools. For instance it may be nice to use 
such a tool in Makefiles for OPKG available via pkgsrc, i think it is a good 
first step for the automatic creation of both RPMs and Debs packages.

Let me know what you think about that but i really think this kind of tools 
eases the creation of both RPMs and Debs.

Regards,
-- 
Geoff

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Oscar-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oscar-devel

Reply via email to