Slashdot Mirror


Ant Now A Top Level Apache Project

hardcorejon writes "Am I the only person who didn't notice that on November 18th 2002, the Apache Ant Project had migrated out from under the Jakarta Project umbrella to become a top-level Apache project, joining the ranks of the Apache HTTP Server Project? Well, for those of us who use Ant on a regular basis, this is great news. Ant is an incredibly powerful tool, increasingly a standard build system for many new projects."

5 of 39 comments (clear)

  1. Alternatives to ant and autoconf et al? by Panoramix · · Score: 4, Interesting

    This is somewhat off-topic, but reading about Ant remembered me of a question I've been meaning to ask the net for some time now. Since it involves software for building software, this thread may be a good place to do it (and it's only karma, anyway :-)

    For a long time I've been wishing that there was an alternative to autoconf. I mean, autoconf is useful, and I still don't know of a better way to build complex stuff on a lot of platforms. But it is painfully slow on small machines, it's hell to make it run on Win32, and it is way too complex, requiring you to write scripts that run through three different interpreters (sh, m4 and make), each with more than their fair share of syntactic weirdness and idiosyncrasies.

    (I'm using it for a product we're developing in my company, and I'm the only one who knows how the build system works. It's black magic for everyone else. I do work with very competent programmers, but only I have the patience for making autoconf scripts. Granted, we push it a bit hard: one of our targets is Win32. That part is the worse. Cross-compiling and running from cygwin, with libtool and all that, is tough shit. Every now and then I get so pissed off with it that I start writing plain Makefiles, one for each architecture/OS. Then I reconsider, realize the maintenance hell that would become, and go back to work even blacker magic on the acinclude.m4's... *sigh*)

    So, this Ant here I welcomed with high hopes some months ago, and then dumped it just as fast. The thing is: it's Java. It requires you to install a JVM to build a project. Some of our build machines, the most exotic ones, are so small that I would say they're barely able to run the monstruous configure scripts that autoconf creates... So, run a JVM. Right.

    Also, when I tried it, Ant was good to build Java stuff, but required some serious hacking to make it build C or C++ (or anything else, for that matter). Since it was targeted to build projects on essentially one platform (Java), it's really hard to make it check for availability of libraries or headers, and to define macros for conditional compilation and stuff. And of course, it didn't have all that "knowledge" autoconf has accumulated over the years, with regard to the subtle peculiarities of each platform. So I found Ant to be nothing more than a fancy make. And I already have make.

    So, I'd like to ask: Is Ant any better for non-Java stuff these days? Is someone using it for non-Java projects? And, while I'm at it, does anyone know of a practical alternative for autoconf?

    1. Re:Alternatives to ant and autoconf et al? by True_Seeker · · Score: 2, Interesting

      There is also A-A-P, which is a new project built using Python. You create a recipe to execute all parts of the build. For example, to build Vim, you download the recipe, run aap, and it will download all the sources (from tarballs or CVS) and patches, apply the patches, run configure and make. Everything is cached locally so after the initial download, you no longer need a net connection to rebuild things.

  2. Ant, etc.. by steveheath · · Score: 4, Interesting

    Ant (apparently) was always a top-level project, it just kinda got a little userped by jakarta. Actually the whole jakarta/apache comunity has had quite a change recently.. Many projects have been promoted to top-level, there's new "management" and things appear a lot more organised.

    Imho, I think this was over-due as it was getting a little confusing. I hear talk at one point that apache would become another source-forge, but I'm glad to see the (oldest, most well-known, most respected?) OSS project has maintained focus.

  3. And makes too many assumptions. by DeadSea · · Score: 2, Interesting
    Ant makes too many assumtions to ever be the flexible build tool that I want. I use make for my Java projects and I prefer it to Ant. The main advantages that people site with Ant is that it only makes one instance of the Java compiler. Well, I can do that with make as well, it just takes a little bit of scripting. Ant wants to have bld and src directories where I want everything in one. This assumption about how things should be organized kills it for me because I can't use it with my existing organization. I have many reasons for wanting it this way:
    1. For open source Java projects I want to distribute the source code in the binary.
    2. It is nice to be able to view the source code of the application from the application by using the classloader.
    3. When everybody has the source, anybody can modify it.
    Ant also does not have a spell check module, something that is really easy to put into make.
  4. Visual C++ Development by mscalora · · Score: 2, Interesting

    Is Ant worth a look by an organization that is moving a large commercial C++ app from windows only towards platform portability? I'm the first to say that MS's NMAKE sucks, and a lot of the new blood in the organization wants to move to something significantly better. Are there tools/addins/modules for Visual C++ command line compilers? to automatically maintain header & library dependencies for C++?

    -Mike