Ivy isn't really built just for Java, its system of dependencies and
artifacts are content agnostic. The community is pretty Java-focused
and, it's true, there are some built-in features that are Java-centric,
such as Maven integration, and those make it easy to work in a Java
environment, but it's not limited to that.
What you will lack, in a C/C++ environment, is an existing repository to
work from and get dependency data. This may or may not be a big deal
depending on how many of your dependencies are external.
What you'll need:
- You own local repository (highly recommended in any case). We actually
run two, one for internally produced artifacts, and one for third-party
modules. A simple chained-resolver takes care of getting dependencies
from both.
- Dependency artifacts and meta-data.
- Integrate ant into your build
You shouldn't need a custom resolver.
As you build up dependency metadata, you may want to consider
contributing it back to a project like Ivy Roundup
<http://code.google.com/p/ivyroundup/> it would be great to have common
pool of modules for C/C++.
-n
On 12/6/12 12:06 PM, David Weintraub wrote:
Ivy is built for Java and its jars. By default, Ivy uses the Maven worldwide
repository system to search for jars. It also is built for Ant integration.
However, you could emulate this structure if you use your own Maven/Ivy style
repository such as Nexus or Artifactory. You'll have to figure out a naming
convention thats similar to Ivy's and Maven's (organisation/groupID,
name/artifactId, revision/version), and disconnect your Nexus/Artifactory
repository from the rest of the world since if the artifact isn't in your
repository, you don't want to look in the Maven worldwide repository system.
You could also build `build.xml` files for Ant just to download the needed library
objects (*.dll, *.o, *.so, , *.a, etc.) using <ivy:resolve>. There will be some
work involved, but I've seen people do this.
However, there might be better tools. For example, BuildBoost:
http://www.boost.org/boost-build2/index.html. I never used it, but I've heard
it talked about as a Maven for C++ projects.
On Dec 6, 2012, at 10:15 AM, Marcel Overdijk <marceloverd...@gmail.com> wrote:
I wonder if somebody has some pointers for using Ivy in a C/C++ environment.
a) how is dependency management done (e.g. using custom resolver?)
b) how is building done (based on on de Ivy dependencies)
I'm not looking for a complete solution, just wat to start a discussion
about possibilities or perhaps best practices from people already having
this set up.
Unfortunately I can't find and information in the docs. Ivy is especially
interesting as it is nog tight to Java dependency management.
--
View this message in context:
http://old.nabble.com/Ivy-in-C-C%2B%2B-environment-tp34767076p34767076.html
Sent from the ivy-user mailing list archive at Nabble.com.