[Fluxus] scons build system
Glauber Prado
glauberalex at uol.com.br
Fri Aug 3 14:36:32 PDT 2007
Dave Griffiths escreveu:
>> Hi Dave as i mentioned on the other mail i have some questions about
>> scons and a more standard aproach to build systems
>> im trying to make a ebuild to add fluxus to the portage tree (Gentoo),
>> there is a dev that can look into it when its done so if it works it
>> will be submitted soon enough i think.
>>
>
> cool
>
>
>> It is almost working but the build system in portage is kind of
>> restricted (sandboxed) and it doesnt allow some things to be done like
>> linking the fluxus binary at install time -> scons install is not
>> allowed to work the way it is now, so linking should happen at build
>> time with only scons ive submitted a small modification in cvs to allow
>> prefix and plt prefix to be a choice at build time with:
>> scons Prefix=/usr PLTPrefix=/usr
>> and it works alone afaik but inside of portage (sandboxed) it doesnt for
>> the reason i mentioned above, also another issue is where to install
>> docs and examples file, default should be /usr/local/share/docs/fluxus
>> and should allow a switch like above to prefix to
>> /usr/share/docs/fluxus,
>>
>
> This has to be decided a bit. We need to think about how closely to work
> with PLT Scheme - which on the one hand has it's own (platform
> independant) conventions for documentation and examples - and on the other
> has a fully featured (again, platform independant) package management
> system of its own.
>
> I'm not sure how far to go down this route, I need to have a look at it a
> little more.
>
>
perhaps we could talk about this on irc, but i think that we should
target linux, following
plt is the right way to do it imho but we should have something that can
be automated for packaging and sometimes it imposes some restrictions,
like in gentoo where i have more experience they follow some linux
conventions as its the system, plt needed to have some things changed
for the latest ebuild (ebuild is a shell script that automates the
building process and instalation, but it works in a restricted
environment to ensure sanity when installing to prevent security and bad
management issues, like apps installed outside of portage tree and if so
not being able to be uninstalled properly when a new installation is
required or even for removing it) in order to work with it.
>> what i really *need* is scons install to only
>> *install* things, i dont know how to modify it to fit these "standards"
>> i was hoping you could help me with this issue also i dont want all the
>> fun to be with me :D.
>>
>
> This is how it should work - if scons install is doing anything else then
> there is probably a problem, however - it *will* rebuild stuff if it
> thinks it is required.
>
> I think I have an idea what causes this though - if you do "scons install"
> as a different user to "scons" it could cause it to rebuild, as some of
> the environment may have changed (which in fact is the correct behaviour).
>
> I can't test it at the moment, does it rebuild if you call them as the
> same user?
>
>
i can be doing something wrong here on my side of things as i never did
these things before but as far i could observe it isnt linking at the
building time only at install time, and as far as user goes i am not
sure cause it is done by portage, maybe at build time it behaves like
portage user and at install like root i am not really sure as it happens
automatically, i guess i have to read more docs :), could i add a switch
to stop this behavior that is if this is a real issue?
>> Another question is if its ok to have a fluxus-cvs ebuild or if i should
>> make a release ebuild, i prefer cvs but i think that this is up to you
>> to decide, what do you think?
>>
>
> I would much prefer it if packages stuck to the release versions, as it
> will be much easier to track down problems - also cvs builds are going to
> be broken and untested most of the time.
>
>
ahh, ok i can understand, its cause i cant wait for releases of some
packages and think that everyone is the same way, but
i can add in the end of building process or even at the beggining some
red warning notes saying that it can be broken and to install it
manually instead if you wish and allow :S , i will dig into making a
release ebuild might be better, the only problem is that i need some
modifications in the SConstruct that werent packaged yet so i have to
make a patch.
> I'll try and get more releases out though, I've been doing too few lately.
>
>
I disagree that you have been doing too few, of course we always want
more and better things, but everything needs to be well thought out :).
cheers,
grebs.
More information about the Fluxus
mailing list