Mike Noyes wrote:

> Ewald Wasscher, 2001-05-01 20:24 +0200
> 
>> Mike Noyes wrote:
>> David proposed something like this already. Take a look at this patch.
>> 
>>> Source code + diffs for CVS
>>> https://sourceforge.net/tracker/?func=detail&aid=412704&group_id=13751 
>>> \
>>> &atid=313751
>> 
>> 
>> I like the basic idea a lot. What I don't like is the way the package 
>> is  configured. IMHO it will not always be obvious to others how a 
>> package was  configured and built. Debian for example has a 
>> debian/rules file (which is  in fact a makefile) that describes how 
>> to configure, build, install and  package a certain application. So 
>> what I propose is the following  directory structure:
>> 
>> package/ +         + lrp/ +
>>               + rules
>>               + install
>>               + package
>>               + files
>> 
>> To build a package one should:
>> 
>> cd package
>> lrp/rules configure
>> lrp/rules build
>> lrp/rules install (or perhaps the following:)
>> lrp/rules package
>> 
>> Any comments?
> 
> 
> Ewald,
> You lost me. I'm not a programmer

Neither am I. I just have a big mouth and pretend to know what I'm doing :-)

> so help me understand why this is  necessary.

If I understand correctly how David does this it's not necessarily 
obvious to someone other than David how a program is configured, and how 
it is built, what files to use in the .lrp package, and what lrp 
specific configs need to be added etc. So if someone decides to upgrade 
a package to a new version, or juist wants to play with it he/she has to 
find out again how to configure/build and package the program.

There is however another problem. If you want to build ash, you cannot 
just simply do "make", as you need the bsd pmake program instead of gnu 
make, and what's worse the version of pmake that comes with redhat and 
friends is too old, it just doesn't work. So it will require some tricks 
to be able to do a simple "make" to build ash. So IMHO it would be very 
nice to have a standardized way of doing such tricks.That way everyone 
should be able to understand what happens.

My main reason for making this proposal is that that way it should be 
obvious to all of us what someone does to build and package a certain 
app. First of all I just like that idea. Second you can check if I screw 
up and I can admire all of the smart tricks someone else uses to build 
that super-cool ultra-small size optimized glibc (and learn from it). 
Third is that it has the potential of easier upgrading because the lrp 
specific logic is kept seperate from the actual source. Aply the diff to 
a new version of your program and if you're lucky you even won't have to 
make any other changes to build and package the app.

> The Debian source tree only contains three files for every  package. 
> Example: 

> 
> http://ftp.us.debian.org/debian/dists/stable/main/source/net/
> snort_1.5.1-11.diff.gz  14-Feb-2000 03:51    47k
> snort_1.5.1-11.dsc      14-Feb-2000 03:51     1k
> snort_1.5.1.orig.tar.gz 11-Jan-2000 15:15   134k 

That's right as far as i know. (though I'm not _very_ familiar with 
debian , so please correct me whem I'm wrong.) The dsc file isn't very 
interesting. It just describes what files are needed to build a package 
and their (md5-) checksums. The .orig.tar.gz is just a pristine source 
tarball as distributed by the creators of the program. It is just 
renamed to .orig.tar.gz The diff creates a subdirectory "debian" in the 
source directory which contains all of  the "trickery" I wrote about as 
well as debian-specific config-files etc. 

>> 
>> Maybe the debian/rules files will shed some light on this problem.
> 
I suggest you download e.g. the ash source package from the debian 
testing distribution. Unpack the tarball, apply the diff and try to 
understand what happens in this "debian/rules" file in the patched 
source dir.

> 
> Is this what you're referring to?
> http://people.debian.org/~srivasta/rules/cvs-buildpackage/ 

The files you find here are an example of the contents of such a 
"debian" subdirectory.We probably could keep things a bit simpler.

> 
> http://packages.debian.org/stable/devel/cvs-buildpackage.html
> http://www.debian.org/devel/cvs_packages
> 
Wow, now I need a break. And some coffee too :-)

I hope it's a little clearer now what I want and why. If not I'll have 
to do better. I'd _really_ like to know what people think about this, 
not just you.

Ewald Wasscher


_______________________________________________
Leaf-devel mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/leaf-devel

Reply via email to