For some reason I don''t understand, Nick''s message was
"auto-discarded" by
the ML system. So I am reposting it.
Also, I have to say that I agree with Nick completely. Make/cvs may not be
perfect, but they are workable, and everyone who works on open source
projects knows how to use them and has their systems setup for this.
Please read Nick''s comments below, he makes a very good case...
Curt
-----Original Message-----
From: Nick Kral [mailto:nkral@pinnaclet.com]
Sent: Monday, December 15, 2003 6:39 AM
To: Kevin Smith
Cc: Wxruby developers'' list
Subject: Re: [Wxruby-users] I hate make
> Does anyone else here think that it might be a good idea to shift
> wxruby to use rake (http://rubyforge.org/projects/rake/) or perhaps
> one of the other "modern" build systems?
Personally I prefer Makefiles, ''cause all the cool kids are doing it.
:-)
I can see rake for unstable code in the development tree. Honestly
though, there are two reasons I don''t want to switch build systems on
the release code.
1) extconf.rb makefiles work on *all* of my build enviroments right now.
And when I say all, I mean Win32 (MSVC and MinGW), Mac OS X (GCC), and
Linux. Yes, I know that there is that ''post-fix'' code in the
extconf
script to write all that goo into the makefile, and that is messy. But
it does work. Makefiles also work for wxWindows and Ruby, two very large
scale projects.
2) wxruby is already a tie between a cross-platform-open-source-widget
library and a really-cool-japanese-scripting-language, and requires
familiarity with both to build and use. There isn''t any reason to make
it more obscure with getting rid of make. :-)
I''m not a big fan of projects that require tools outside cvs/make. For
example, I started looking at wxArt, but when I saw that I had to
install yet-another-build-environment (cmake), I just lost interest. You
can call me lazy, but I''m *tired* of learning new build environments.
I know there are other tools out there than ''what everybody else
uses'',
but the fact of the matter is that there are a *lot* of people that know
and use ''make''. There was a very good article in
O''Reilly OnLamp
(http://www.onlamp.com/pub/a/onlamp/2003/12/11/myths.html) that talked
about this
"It''s OK to expect that mostly programmers will use development
tools
and libraries. It''s also OK to assume that people should skim the
details in the |README| and |INSTALL| files before trying to build the
code. If you can''t easily build, test, and install your code on another
machine, though, you have no business releasing it to other people."
I guess my point is that I think, like keeping the source available in
CVS, keeping the extconf.rb script up to date will be important simply
*because* that is the process described in the holy book of Ruby (author
pauses, genuflect''s in Matz''s direction, says Amen) and will
help first
time developers get started. People familiar with open source
development can build in a familiar environment, and not have the entire
carpet pulled from under them.
Nick
Kevin Smith wrote:
> Does anyone else here think that it might be a good idea to shift
> wxruby to use rake (http://rubyforge.org/projects/rake/) or perhaps
> one of the other "modern" build systems?
>
> One example of a task that would be trivial with rake, but seem to be
> really painful with make: Define a tclean target that deletes all the
> .h and .cpp files that are built from .t files.
>
> I''m not sure if rake could replace the extconf step, but it seems
like
> it could. I''m not certain it would be better for cross-platform
stuff,
> but it seems like it would be at least as good.
>
> Objections? Volunteers?
>
> Kevin
> _______________________________________________
> wxruby-users mailing list
> wxruby-users@rubyforge.org
> http://rubyforge.org/mailman/listinfo/wxruby-users
>
>
>
---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.548 / Virus Database: 341 - Release Date: 12/5/2003
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.548 / Virus Database: 341 - Release Date: 12/5/2003