<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 09/12/2012 10:01 AM, Charles
Lesire-Cabaniols wrote:<br>
</div>
<blockquote
cite="mid:CAEc6OSyc6B9mziTj+nTJETf1dc19NFFGF_YZZkg7iu7=CcMEkA@mail.gmail.com"
type="cite"><br>
<br>
<div class="gmail_quote">2012/9/12 Sylvain Joyeux <span dir="ltr"><<a
moz-do-not-send="true" 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 class="HOEnZb">
<div class="h5">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 class="HOEnZb"><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>
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
...<br>
<br>
Sylvain
</body>
</html>