My newbie detailed analysis of the profile

Gerard Beekmans gerard at linuxfromscratch.org
Thu Sep 7 12:14:33 PDT 2000


> > THE <CONFIGURE> TAG
> >
> > In what way is it different that a <command>./configure
> > niaiserie</command> tag? We have to limit the number of redundant tags.

The following applies to all these related things (<configure> <make> 
<make_install>)

If you would replace <configure>./configure --prefix=/usr</configure> by 
<command>./configure --prefix=/usr</command> it will be a lot harder for the 
profiler and/or front-end to figure out what <command> tag does what. You'll 
have to parse the value and all you can do then is guess it's purpose.

If you put things in seperate blocks like this:
<configure>
	<command>./configure --prefix=/usr</command>
	<other tags>
</configure>

then nobody has to guess what happens in the <command> tag - it's clear as 
crystal now: the command tag inside the configure tag executes the configure 
script and nothing else. The command tag in a <make> block executes the make 
program to build a package.

Actually I had renamed <configure> to <prebuild> but those are details. 
Perhaps it should be renamed back to <configure> - it is clearer that way. 
Why make things more complicated, eh.

So, yes it might be a redundant tag in a way but I think it's important to 
leave those in. They define a block in which you want to make changes. Again: 
if you tell the front end the following: I want to modify the configure 
script command for package binutils (say you want to change the --prefix). 
The front-end then does something like this:
- Open profile
- Find the first <package> and check it's <name> tag. Is it's value binutils? 
No, find the next <package> tag and check it's <name> tag value. Is it 
binutils? Yes, find the <configure> tag that must be found before it 
encounters the </package> tag. Found a <configure> tag? Ok, read the value of 
it's <command> tag and give that value to the user. The user modifies it. The 
front-end saves the changes to a new profile with that modified <command> tag 
in the <configure> section of the <package> binutils

Why in a new profile? Well you just don't want to modify the original profile 
(often you probably can't do that since it's on a cdrom for example) so you 
copy the original to a working copy that will be fed to the profiler.

Again, this is more for the new mailinglist that I will announce later today 
(it's name will be ipc - interpocess communication)

-- 
Gerard Beekmans
www.linuxfromscratch.org

-*- If Linux doesn't have the solution, you have the wrong problem -*-





More information about the alfs-discuss mailing list