<br><br><div class="gmail_quote">2012/9/12 Sylvain Joyeux <span dir="ltr"><<a href="mailto:sylvain.joyeux@dfki.de" target="_blank">sylvain.joyeux@dfki.de</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"><div><div class="h5">
<div>On 09/12/2012 10:01 AM, Charles
Lesire-Cabaniols wrote:<br>
</div>
<blockquote type="cite"><br>
<br>
<div class="gmail_quote">2012/9/12 Sylvain Joyeux <span dir="ltr"><<a href="mailto:sylvain.joyeux@dfki.de" target="_blank">sylvain.joyeux@dfki.de</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div>On 09/11/2012 05:48 PM, Charles
Lesire-Cabaniols wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi guys,<br>
<br>
I would like autoproj to manage a local install of a
specific boost version one of my packages are depending
on.<br>
As boost, uses a specific bootstraph.sh / b2 install
process, I would like to define a specific
configure/build process for my boost package.<br>
<br>
I tried redefining functions of an import_package, but
it does not have configure/build methods (only prepare
seems relevant).<br>
I then tried to inherit from Configurable and define a
BoostPackage as done in CMake for instance, but without
succes.<br>
<br>
Could I have some tips on how to do it right?<br>
</blockquote>
</div>
</div>
If you want a configure stage, subclassing Configurable is
definitely the way to go.<br>
<br>
Could you send the code you have so far and tell us what is
going wrong ?<span><font color="#888888"><br>
</font></span></blockquote>
<div><br>
I have tried to put on my init.rb the following class
definition:<br>
<br>
require 'autobuild/configurable'<br>
module Autobuild<br>
def self.boost_package(name, &block)<br>
BoostPackage.new(name, &block)<br>
end<br>
class BoostPackage < Configurable<br>
def configure<br>
Autobuild::Subprocess.run(self, 'configure',
'./bootstrap.sh', "--prefix=#{prefix}")<br>
end<br>
def build<br>
Autobuild::Subprocess.run(self, 'build', './b2
install')<br>
end<br>
def install; end<br>
end<br>
end<br>
<br>
But then in my .autobuild file, I guessed that boost_package
'boost1.48' would have worked, but autoproj complains that
boost_package does not exist.<br>
In source.yml, I have set the archive url for boost1.48.<br>
</div>
</div>
</blockquote></div></div>
OK ... You need to have a look in autoproj/autobuild.rb. That is
where the package types are made available for autoproj users (in
short: you need to define the boost_package method at the toplevel,
not on the Autobuild module). This is a bit of a historical thing
...<span class="HOEnZb"><font color="#888888"><br></font></span></div></blockquote><div><br>ok. but I don't find where the ':cmake' package type is defined... how should I call package_common to point to the BoostPackage class I have defined?<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000"><span class="HOEnZb"><font color="#888888">
<br>
Sylvain
</font></span></div>
</blockquote></div><br>