ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Qazwart <qazw...@gmail.com>
Subject Re: Ivy in C/C++ environment
Date Fri, 07 Dec 2012 15:09:07 GMT
One of the nice things about Ivy is that it works with your current build mechanism. You don't
have to redo everything from scratch. I see the power of Maven. However, converting 100 Ant
projects into Maven instead of using Ivy is asking for trouble. 

The main issue is that there doesn't seem to be a C share object repository that Java has.
Changing to Maven or Gradle wouldn't solve that problem, yet it also means completely rewriting
your whole build mechanism. 

There is either a C/C++ tool that provides access to a worldwide C share object repository,
or there isn't. I don't know how Java as a language compares to C/C++. I know many C-Heads
who turn up their noses at the very mention of Java (It's not a real language unless you can
accidentally overwrite a buffer!). 

However Java is way ahead on build tools, and programming environment. Continuous Integration
is practically non-existent in C-World. How can it be when it can take hours and dozens of
systems to build an application?  The C++ IDE world has no equivalent to Eclipse (unless you
count Eclipse). And, the concept of dependency management doesn't seem to exist. 

The best I can imagine is using a combination of Ant and Ivy to download via <ivy:retrieve>
the shared objects from a munged Nexus/Artifactory server, and tying the whole build process
together with Makefiles. I've seen it work although it seems a bit Rube Goldbergish. (This
causes the bird to peck, turning on the fan, causing the sailboat to float away, and starting
the download of the required C Library from the Nexus Repo…). After all, the main thing
about Maven and Ivy is transitive dependencies. Is there a Makefile to pom.xml/ivy.xml mechanism?

It's been a while since I've worked in the C/C++ world. Maybe there is some native tool that
can do what Ivy and Maven does. If there is, use that. There's a certain power with standards,
even if you don't fully agree with them. 

--
David Weintraub
David@Weintraub.name

On Dec 7, 2012, at 1:59 AM, Marcel Overdijk <marceloverdijk@gmail.com> wrote:

> As we are also looking for alternatives that are a better fit, we are also
> considering Gradle.
> Gradle also has an experimental C++ plugin:
> http://gradle.org/docs/current/userguide/cpp.html
> Something like this in theory it would mean you can use Gradle for both
> dependency resolving and building.
> 
> I also found a couple of Maven plugins for C/C++ which might also be
> interesting:
> http://mojo.codehaus.org/maven-native/native-maven-plugin/usage.html
> http://java.freehep.org/freehep-nar-plugin/narDependencies.html

Mime
View raw message