[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Should Automake still support Java?
From: |
Mathieu Lirzin |
Subject: |
Re: Should Automake still support Java? |
Date: |
Tue, 31 Oct 2017 08:27:19 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) |
Hello,
NightStrike <address@hidden> writes:
> On Mon, Oct 30, 2017 at 12:09 PM, Mathieu Lirzin <address@hidden> wrote:
>
>> - Should we undeprecate javac support?
>
> Undeprecate, please.
>
> I use automake's java support quite a bit, as I have numerous projects
> that are mostly other languages, but that include some java utilities.
> It is very nice to manage everything from a single autoconf / automake
> setup. In fact, we picked automake exactly because it supported every
> required language.
>
> Please do not remove this support.
I haven't investigated the reason why the javac support has been
deprecated in the first place, the manual says that the interface is not
clean/good enough:
--8<---------------cut here---------------start------------->8---
Automake provides some minimal support for Java bytecode compilation
with the ‘JAVA’ primary (in addition to the support for compiling Java
to native machine code; *note *Java Support with gcj*). Note however
that _the interface and most features described here are deprecated_.
Future Automake releases will strive to provide a better and cleaner
interface, which however _won’t be backward-compatible_; the present
interface will probably be removed altogether some time after the
introduction of the new interface (if that ever materializes). In any
case, the current ‘JAVA’ primary features are frozen and will no longer
be developed, not even to take bug fixes.
--8<---------------cut here---------------end--------------->8---
For example it doesn't seem to support creating jar files. Maybe you
could provide some feedback about your experience with this interface?
Have you faced any particular issues? How have you handled them?
Instead of unndeprecating this interface, we could provide an example
snippet in the manual that would help transition out of it by replacing
the usage of _JAVA with _DATA. Something like:
--8<---------------cut here---------------start------------->8---
javadir = $(datadir)/java
java_DATA = foo.jar
foo.jar: $(java_sources:.java=.class)
jar ...
java_sources = A.java B.java
.java.class:
javac ...
EXTRA_DIST = $(java_sources)
--8<---------------cut here---------------end--------------->8---
WDYT?
--
Mathieu Lirzin
GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37