[Pki-devel] CMake and eclipse
Andreas Schneider
asn at redhat.com
Wed Aug 17 07:24:59 UTC 2011
----- Original Message -----
> You've done a nice job on the Java support. I know of no other build
> system that works so cleanly for both Java and other native compilers.
> The fact that it works so well with the dependencies from Fedora put
> it
> a notch above Maven in my book.
Hi Adam,
thank for the flowers :)
>
> You might not find any performance difference. Javac is actually
> pretty
> good at determining what needs to be rebuilt. Ant and Maven both
> delegate this to javac. I built a Makefile long ago that attempted to
> determin the dependncies automatically based on imports. When I
> stopped, and just let javac do the hard work, it decreased our build
> time by an order of magnatidue. I don't find that the Java builds are
> that slow in PKI, but I haven't looked in to what CMake actually puts
> into the Makefiles.
>
>
> add_jar probably should be extended to allow the other Java archive
> names like .war, .ear and .sar.
>
Added and pushed for staging. You can do now:
add_jar(foobar.java ldapjdk.jar)
The more feedback I get before the release the more I can add and fix :)
> I notice that the paths to search for Jar files is duplicated through
> the pki CMakeLists.txt
>
> find_file(LDAPJDK_JAR
> NAMES
> ldapjdk.jar
> PATHS
> /usr/lib/java
> /usr/share/java
> )
>
> Is this one of the things the find_jar simplifies?
Yes, it is. It is already looking in default path, you can add more and
it has version support.
find_jar(<VAR>
name | NAMES name1 [name2 ...]
[PATHS path1 [path2 ... ENV var]]
[VERSIONS version1 [version2]]
[DOC "cache documentation string"]
)
The name of the full path to a file that is searched for is specified
by the names listed after NAMES argument. Additional search locations
can be specified after the PATHS argument. If you require special a
version of a jar file you can specify it with the VERSIONS argument.
The argument after DOC will be used for the documentation string in
the cache.
So the line above would be:
find_jar(LDAPJDK_JAR ldapjdk)
and could be
find_jar(LDAPJDC_JAR
NAMES
ldapjdk
ldap-jdk
VERSION
1.5
)
-- andreas
--
Andreas Schneider GPG-ID: 8B7EB4B8
Red Hat asn at redhat.com
Samba Team asn at samba.org
More information about the Pki-devel
mailing list