On Fri, 4 Jun 2004, Artemio wrote:
Hi all!
Okay, now it all seems clearer for me.
So, the task is:
- Get the latest inkscape from cvs.
- Compile it for linux, win32 and mac.
Also, compile both debug and optimized versions. I sense that users want both - the debug version to get extra info when reporting bugs they find, and the optimized version for actual use.
- If the compilation is successful, prepare the source snapshot, and builds
snapshots in .tar.bz2 and .tar.gz.
Actually, you'll want to build the rpm and exe packages. If you're unfamiliar with packaging, no problem - a bunch of us know this very well and can teach and/or help with this part. It's pretty easy and well documented.
- Move these archives to $somewhere.
- Generate a web page with links to these snapshots.
Here are my questions:
- Where would the script run? At the sourceforge server?
Yes.
- I don't know (yet) how to prepare a binary build in an archive. I mean that
make install puts everything in --prefix, but should the script "manually" get the data? Or there is a list of files to install and I can read it and use to prepare an archive?
Don't worry, we've had a lot of practice at doing this and have documented the process, so you'll need to learn it but it is pretty straightforward, and there's plenty of people who can help. You can look on the Inkscape wiki on the CreatingDists page, which should have ALL the info you need.
To create the dist version of the tarball, after you've run configure and make, and set the version number, you can run `make dist`, and that will generate a dist tarball.
Once you have a dist tarball, you run the rpm build command, and that'll go off and run some compiles and tests and generate an rpm for you. This is going to be the hardest part for you to learn, but fortunately there's a lot of us who are very familiar with this and can help directly. Ted and myself do this for the releases so will be able to answer questions on it.
For the windows builds, I am less familiar with the process, but I'm certain Bob will be equally ready and available to provide training and assistance. This process is also documented so I expect it will be straightforward to set up.
For Mac I'm even less familiar, but am aware of some documentation on it. I'm not sure who the best resource person is to help with this, so that might take some digging. Since we don't currently provide nightlies for MacOSX, I'd suspect this would be a lower priority than the other two platforms. However, I also suspect we'd gain as much value if we have nightlies as we've gained from the other platforms.
- Is the target snaphots dir and the target web page with links on the same
server that the script runs?
I don't know, but suspect that potentially you'll be running scripts on two different machines. Also, note that the Inkscape web project directory is limited to 100mb, and we're already using up half that space, so we wouldn't be able to store very many packages without running out of space - this is why I strongly suggest that the nightlies be posted to some file server / mirror system, such as the SF File tool, or other such place.
By the way, it would probably be very wise to spend an hour or two looking through Freshmeat & google. on the off chance that someone else has done this before and have some scripts/ideas/processes/docs you could beg, borrow, or steal to save you some time.
Sorry, if you feel I am lame here (question #2) you may discard my help. But if I get any hints/suggestions, I think I'll make it ;-)
These are exactly the right questions to ask. You'll have a lot to learn for making packages, and it can be tricky, but fortunately like I said it's pretty well documented and a lot of people know how to do it for one platform or another and can give advice (or at least moral support!) when you get stuck. None of us have automated building on all these systems, so it will be an impressive achievement once you've got it working!
Bryce