freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Devel] Relevance of FTjam wrt new Jam 2.4 ?


From: David Turner
Subject: Re: [Devel] Relevance of FTjam wrt new Jam 2.4 ?
Date: Thu, 18 Apr 2002 15:02:35 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.9) Gecko/20020311

Mark Leisher wrote:
    David> As far as I know, the only comparable project I know is XFree86,
    David> which also uses its own build tool "imake", for about the same
    David> reasons. I also believe that IMake isn't a good solution for
    David> FreeType, but for different reasons..

Having used imake since it first appeared, I am of the opinion that it isn't a
good solution, period.  But I guess it did the job at the time.

Good to see I'm not the only one to think that :-)

    David> On the opposite, using Jam (or FTJam) results in _much_ shorter and
    David> simpler Jamfiles that are definitely easier to understand and
    David> maintain. They are portable by design, even if they can include
    David> platform-specific code paths when you need them.  They also work on
    David> VMS. I use them extensively to recompile the library with several
    David> compilers in a snap.  They're also excellent for experimentation..

What has been putting me off of learning Jam is the apparent lack of interest
by most of the free software development community.  There must be some reason
why it isn't being used, so I guess it is time to find out why.

I can think of several reasons for the current state of affairs:

  A - "most" free software developers work under Unix and don't
      care if their code runs on different platforms (or when they
      do, it's always a second-thought that they rarely fully commit
      to).

      Here, make+Autoconf+Automake+Libtool are sufficient, and they
      are also supported by many IDEs "natively".


  B - The Jam documentation is really, really poor. One needs to
      study the Jambase file in details to really understand well
      how everything works.

      Many people are capable of writing simple Jamfiles for simple
      projects, but many non-trivial tasks are not documented clearly,
      even when they're dead easy to implement in the Jam language..

      Note that I've started writing some sort of documentation for
      the Jam language (draft at http://www.freetype.org/jam/syntax.html)
      but clearly stopped due to lack of time..


  C - "Make/Autoconf/Libtool/Automake" are available by default on most
      Unix installations, while you need to install Jam manually.

      Many users, even if they don't have the faintest idea of what
      a Makefile is or even how to write one, know and use the "magic"
      Unix commands:

          ./configure
          make
          make install

      unfortunately, that won't work with the current Jam sources :-)


  D - Many advanced developers are used to pervert Autoconf+Make to
      have them perform really sad tricks during a build process.

      These won't change their habits until they know that they can
      do the same things with Jam "easily". This won't happen until
      the Jam documentation becomes much more serious...


Note that all of these aren't specific to Jam, and can be said for
many other kind of alternative tools (Ant, NAnt, SCons, etc..)

I think that, as long as B and C isn't solved reasonably well, we're
not going to see any change in habits in the free software world.



Regards,

- David Turner
- The FreeType Project (www.freetype.org)






reply via email to

[Prev in Thread] Current Thread [Next in Thread]