You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@gump.apache.org by Graham Leggett <mi...@sharp.fm> on 2004/09/15 17:23:16 UTC

APR, httpd and gump

Hi all,

I would like to get the bleeding edge of httpd, and it's dependancy APR 
built using gump, but I'm going to need a little hand holding in this 
process.

The main thing I would like to test is the building of the packages 
natively, followed by the building of the packages as RPMs.

Is there support for the building of C projects within gump? Where do I 
start?

Regards,
Graham
--

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Stefan Bodewig <bo...@apache.org>.
On Wed, 22 Sep 2004, Adam R. B. Jack <aj...@apache.org> wrote:

> I know a make file is a script, but Gump doesn't consider launching
> the 'make' executable a script. I think I ought be able to add a
> <make entry that does launch it though, if needed.

We will need a make builder since we may want to pass specific env
variables or set make variables or invoke different targets.

I'm even leaning towards a <configure> builder, but we can start with
using <script> here.  I think we'll need <configure> so we can tell
apr-util where to look for apr, for example.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by "Adam R. B. Jack" <aj...@apache.org>.
> In the case of a build of APR, it's as simple as running three scripts
> back to back:
>
> ./configure
> make
> make install
>
I know a make file is a script, but Gump doesn't consider launching the
'make' executable a script. I think I ought be able to add a <make entry
that does launch it though, if needed.

> Then the fun starts. APR-util depends on APR, so the results of "make
> install" above need to be made available to APR-util, and then both to
> httpd, rinse, repeat.
>
> The RPM build is similar, you just replace the scripts above with:
>
> rpmbuild -tb apr-x.x.x.tar.gz.

Hmm, ok, yet another thing to launch. We could put these all into simple
(one liner) scripts, I guess. This is probaby better than Gump calling
command lines 'cos there is a better chance to insert platform intelligence,
if needed.

> So in short: gump needs to be able to run one or more scripts.

Ok, so if we encapsulated these command lines in scripts, then things are
simple again (from a launching point of view). What about inputs/outputs
though? Assume we can teach Gump about outputs of a build (libs, etc.) how
does it 'feed' those into subsequent rinses? Environment variable?

regards

Adam


---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Graham Leggett <mi...@sharp.fm>.
Adam R. B. Jack wrote:

> How do folks build C primarily? Use CC in Ant? Use of make?
> 
> Basically Gump wants to run a set of builders (script or ant or whatever)
> that generate artifacts. It'll string those artifacts together (e.g. in a
> CLASSPATH or as properties to Maven) and pass those in to subsequent
> builders. How would we achieve this for these C programs?

In the case of a build of APR, it's as simple as running three scripts 
back to back:

./configure
make
make install

Then the fun starts. APR-util depends on APR, so the results of "make 
install" above need to be made available to APR-util, and then both to 
httpd, rinse, repeat.

The RPM build is similar, you just replace the scripts above with:

rpmbuild -tb apr-x.x.x.tar.gz.

So in short: gump needs to be able to run one or more scripts.

Regards,
Graham
--

Re: APR, httpd and gump

Posted by "Adam R. B. Jack" <aj...@apache.org>.
> I would like to get the bleeding edge of httpd, and it's dependancy APR
> built using gump, but I'm going to need a little hand holding in this
> process.

I am game to hold hands (although I am offline/online sparodically for the
remainer of the month.)

> The main thing I would like to test is the building of the packages
> natively, followed by the building of the packages as RPMs.
>
> Is there support for the building of C projects within gump? Where do I
> start?
>

How do folks build C primarily? Use CC in Ant? Use of make?

Basically Gump wants to run a set of builders (script or ant or whatever)
that generate artifacts. It'll string those artifacts together (e.g. in a
CLASSPATH or as properties to Maven) and pass those in to subsequent
builders. How would we achieve this for these C programs?

regards,

Adam


---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Stefan Bodewig <bo...@apache.org>.
On Fri, 17 Sep 2004, Sam Ruby <ru...@apache.org> wrote:
> It is not that complicated.

I didn't claim it would be 8-)

> One thing that would not be hard to add something like the
> following:
> 
>    if not os.path.exists(os.path.join(basedir, scriptfullname)):

Just did so (simply to try my SVN setup as well).  It might be better
to check it is a file as well.  I'm afraid it could break
bootstrapping Ant since it creates a directory bootstrap while running
bootstrap.sh and I'm unsure how "clean" the build environment will be
at that point.

AFAIU Gump is not running from "trunk" but from "live" so the change I
made should be save.

Thanks

        Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Sam Ruby <ru...@apache.org>.
Stefan Bodewig wrote:

> On Thu, 16 Sep 2004, Graham Leggett <mi...@sharp.fm> wrote:
> 
>>I know next to nothing about python,
> 
> So we are in the same boat here 8-)
> 
>>The key thing seems to be the restriction where all scripts on unix
>>have to end in ".sh" for some reason,
> 
> platform independency, like I said.  In reality I'm only aware of a
> single project that uses it, Ant to bootstrap itself.
> 
>>which typically they don't do. Is it possible to remove this
>>restriction?
> 
> Should be, but I'm not familiar enough with Python to try either.

It is not that complicated.  The current code looks like:

   # Add .sh  or .bat as appropriate to platform
   scriptfullname=scriptxml.name
   if not os.name == 'dos' and not os.name == 'nt':
       scriptfullname += '.sh'
   else:
       scriptfullname += '.bat'

One thing that would not be hard to add something like the following:

   if not os.path.exists(os.path.join(basedir, scriptfullname)):

- Sam Ruby




---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Stefan Bodewig <bo...@apache.org>.
On Thu, 16 Sep 2004, Graham Leggett <mi...@sharp.fm> wrote:

> I know next to nothing about python,

So we are in the same boat here 8-)

> The key thing seems to be the restriction where all scripts on unix
> have to end in ".sh" for some reason,

platform independency, like I said.  In reality I'm only aware of a
single project that uses it, Ant to bootstrap itself.

> which typically they don't do. Is it possible to remove this
> restriction?

Should be, but I'm not familiar enough with Python to try either.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Graham Leggett <mi...@sharp.fm>.
Stefan Bodewig wrote:

> Right now there is no way to build C projects in Gump, we'd probably
> need builders for configure and make (would we even need autoconf and
> automake?).  Adam would be the main guy to talk to, but the builder
> stuff in
> <http://svn.apache.org/viewcvs.cgi/gump/trunk/python/gump/build/?root=Apache-SVN>
> would be the place to start if you want to jump in.

I know next to nothing about python, so I would not be able to change 
what's there very reliably.

The key thing seems to be the restriction where all scripts on unix have 
to end in ".sh" for some reason, which typically they don't do. Is it 
possible to remove this restriction?

Regards,
Graham
--

Re: APR, httpd and gump

Posted by Stefan Bodewig <bo...@apache.org>.
On Wed, 15 Sep 2004, Graham Leggett <mi...@sharp.fm> wrote:

> I would like to get the bleeding edge of httpd, and it's dependancy
> APR built using gump, but I'm going to need a little hand holding in
> this process.

Great!

There is nothing much to add to what Stefano said.

Right now there is no way to build C projects in Gump, we'd probably
need builders for configure and make (would we even need autoconf and
automake?).  Adam would be the main guy to talk to, but the builder
stuff in
<http://svn.apache.org/viewcvs.cgi/gump/trunk/python/gump/build/?root=Apache-SVN>
would be the place to start if you want to jump in.

Cheers

        Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Stefan Bodewig <bo...@apache.org>.
On Thu, 16 Sep 2004, Graham Leggett <mi...@sharp.fm> wrote:

> Can gump call external scripts at all? (like ./buildocnf, or
> ./configure)

Yes, but with with a certain tweak.

Gump is in theory platform independent.  I think we'll have to go
platform dependent to have different build processes on Unix like
systems as opposed to Windows for C projects, but this is where Gump
comes from.

Gump supports running scripts via the <script> builder, but in order
to be cross platform it works so that

<script name="bootstrap"/>

is translated to bootstrap.sh on Unix and bootstrap.bat on Windows.

There is currently no way to run a script that doesn't have an
extension, but that should be easy to support.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Re: APR, httpd and gump

Posted by Graham Leggett <mi...@sharp.fm>.
Stefano Mazzocchi wrote:

> you are "da man"!

:)

> this has been in the todo list of a long while. gump is historically 
> java-oriented but it's now able to handle mono/.NET and I would expect 
> it to be able to handle make and C stuff.
> 
> now, I'm not really familiar with the gump code, but if you need to 
> patch it, even heavily and even if you have to add markup to the gump 
> descriptors, we'll welcome them.
> 
> This has been in the todo list of a long while but nobody had enough 
> itches to scratch.

Two of the things I'd like to ensure is:

- The basic build works (./buildconf; ./configure; make; make install)
- The RPM build works (rpmbuild -tb apr-1.0.0.tar.gz)

Following that if Debian packaging, Sun packaging, etc comes along it 
could be added too.

Can gump call external scripts at all? (like ./buildocnf, or ./configure)

Regards,
Graham
--

Re: APR, httpd and gump

Posted by Stefano Mazzocchi <st...@apache.org>.
Graham Leggett wrote:
> Hi all,
> 
> I would like to get the bleeding edge of httpd, and it's dependancy APR 
> built using gump, but I'm going to need a little hand holding in this 
> process.
> 
> The main thing I would like to test is the building of the packages 
> natively, followed by the building of the packages as RPMs.
> 
> Is there support for the building of C projects within gump? Where do I 
> start?

you are "da man"!

this has been in the todo list of a long while. gump is historically 
java-oriented but it's now able to handle mono/.NET and I would expect 
it to be able to handle make and C stuff.

now, I'm not really familiar with the gump code, but if you need to 
patch it, even heavily and even if you have to add markup to the gump 
descriptors, we'll welcome them.

This has been in the todo list of a long while but nobody had enough 
itches to scratch.

-- 
Stefano, very happy to hear this and super supportive.