README.md

project object model model (and parser)

This project contains a model definition of maven POM files, with it an easy way to parse pom.xml files into data structures using serde / serde-xml-rs.

mvn-genbr

The mvn-genbr binary can be used to generate BuildRequires for RPM builds.

It's now available in rawhide as an experimental feature. To use it for your package, BuildRequires for maven-local (as usual) and mvn-genbr are necessary.

Do your usual processing in %prep (all pom.xml modifications, like modifying dependencies and enabling/disabling plugins). Then, to use automatically generated BuildRequires:

%generate_buildrequires
mvn-genbr .

To enable dependencies for tests (with the test scope in maven), use the -t parameter. To use additional (or different) root directories (instead of .), just add those as arguments. The program will look for pom.xml files in those paths, parse them, and print the corresponding BuildRequires in the format that rpm / mock expect them.