On 11/5/07, Jonatan Liljedahl <[EMAIL PROTECTED]> wrote:
> Hisham Muhammad wrote:
> > On 11/5/07, Jonatan Liljedahl <[EMAIL PROTECTED]> wrote:
> >> Hisham Muhammad wrote:
> >>> On 11/5/07, Jonatan Liljedahl <[EMAIL PROTECTED]> wrote:
> >>>> I've made a recipe for latest CSound.
> >>>> It uses Scons, but it installs not with scons.py install but with
> >>>> install.py, I tried this:
> >>>>
> >>>> recipe_type=scons
> >>>> scons_variables=(
> >>>> "prefix=$target"
> >>>> )
> >>>> sandbox_options=(
> >>>> "--command install.py --prefix=$target"
> >>>> )
> >> Why was this ignored by the scons type recipe, is it because it doesn't
> >> actually use the sandbox?
> >
> > It does, but Compile already supplies --command, so it probably got 
> > overridden.
> >
> >>>> But it didn't work, instead I had to do this:
> >>>>
> >>>> do_install=no
> >>>> pre_link() {
> >>>>   ./install.py --prefix=$target
> >>>> }
> >>> You can do
> >>>
> >>> build_script=install.py
> >>>
> >>> (We try to autodetect setup.py, configure.py and build.py... will add
> >>> install.py to the list in a future version.)
> >> What does it mean that it's called *build* script?
> >
> > Not the best name, true... :-\
> >
> >> Is there no
> >> install_script variable?
> >
> > No, build_script is used both for build and install.
> >
> >> And how do I pass "--prefix=$target" to it? It
> >> would also be nice to run it in the sandbox...
> >
> > Oh, wait a second. I just realized I got things mixed up here.
> > build_script, etc., are for the "recipe_type=python" type, not for
> > "recipe_type=scons". From the looks of your recipe's needs (which call
> > a .py script and pass options to it), you may want to use
> > "recipe_type=python instead. Unless you need to call scons to build
> > and install.py to make, in which case it is a weird mix of the two
> > recipe types... :\ In that case the way you did it is the right one.
>
> Yes, scons is used to build, and install.py is used to install. It's
> indeed strange... The SConstruct didn't have any install target.
>
> But, it would anyhow be nice if I could run the install script inside
> the sandbox, is that possible?

Not directly now. It would be possible to call install.py through
SandboxInstall in the pre_link rule. I hope to make hook functions run
sandboxed in the future, but this would break many current recipes so
I'm postponing this change.

-- Hisham
_______________________________________________
gobolinux-devel mailing list
gobolinux-devel@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel

Reply via email to