On Fri, August 24, 2007 10:27 am, Trygve Laugstøl wrote: > For anything requiring Maven to build you can use the maven-ant-helper > package that is in the pkg-java Subversion repository. It includes an > Ant build.xml that mimics the normal Maven build process. > > The problem with that build.xml is that it can only build simple stuff, > not more complicated stuff like Maven plugins. Each Maven plugin is > processed by the "Maven Plugin Plugin" and other tools to generate the > proper XML files that will be included into the JAR. > > PS: download the proper jar file from repo1.maven.org/maven2 and compare > the contents of the files. > > The strategy that I'm fairly sure that has to be followed is to use > Michael's package to rebuild the plugins and once a full set of plugins > is built Maven can be rebuilt with itself.
I'm not sure if you meant Michael's maven2-binary package, or the DFSG-free one being prepared for main? I'm assuming you mean the DFSG-free one. Just to summarise your strategy to check my understanding (excuse me if this is obvious to everyone else): * Once the maven2 package is ready, we can upload it to main - all of its build-depends and runtime-depends are already in main. Users will then be able to "apt-get install maven2" and have a working system. It is perfectly acceptable for Maven to download extra software when it is run by a user. * It has been proposed that we create a Debian-specific Maven plugin, to handle Debian builds of software that is built by Maven. This will handle details such as the mapping of required Jars to /usr/share/java/*. I'm not sure how it will all work, but it sounds a good idea! * If we want to use Maven during the build of other Debian packages then we must make sure nothing is downloaded. Therefore we must package any plugins that might be used *when building a Debian package*. This will not be *all* of the Maven plugins (e.g. there does not seem to be a need to package the "changelog" or "eclipse" plugin). (We may also have to package other non-plugin stuff, of course). * Although these plugins could be packaged using ant and some [as yet unspecified] processing to generate the XML config files, it would be much easier to use Maven to generate them. * The Debian-plugin and other essential plugins will all build-depend on eachother (and on themselves). This circular dependency isn't nice, but is permissible as they will all be arch-independent (keeps the buildds happy). The only consideration is that we would have to upload all the packages at the same time (please correct me if I'm wrong here). * During development we could use any maven implementation to build the plugin packages. But by the time we upload we must be able to rebuild them all using only the packages we are uploading (plus any packages that are already in Debian main, which will include maven2). A classic bootstrapping approach. Any comments on this? I guess we should have some sort of plan before we start packaging... Does this sound like the way to go, or should we try to build them using ant + something to generate the XML files? -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]