bugGNU gettext - Bugs: bug #57217, --disable-java and...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #57217: --disable-java and --disable-csharp have no effect

Submitted by:  Luke <gaming4jc>
Submitted on:  Wed 13 Nov 2019 04:10:52 AM UTC  
 
Category:  Build Severity:  3 - Normal
Item Group:  None Status:  Works For Me
Privacy:  Public Assigned to:  Bruno Haible <haible>
Open/Closed:  Closed

Wed 20 Nov 2019 02:35:04 AM UTC, comment #3: 

The options --disable-java and --disable-csharp are meant to get past possible build hassles when you have broken Java or C# compilers or runtimes.

Their purpose is not to put you in a world where Java and C# don't exist.

> /usr/share/gettext/javaversion.class


This file is not built; it is already present as a binary blob in the source tree.

> hello-java, hello-java-swing, ...


These are examples; on the same level as documentation. Just like it would be confusing to have a documentation that mentions Java support in one place and a documentation that doesn't mention Java support in another place of the web, the same holds for the examples.

> I am also attaching a WIP patch which would remove CSharp and Java Support


This patch goes way off the limits of reasonable changes. Imagine a web server that hosts a web application for translators; this web application runs 'msgfmt -c' locally on the server to check the translated PO files. With your patch, PO files which mention Java or C# format strings could not be validated any more - for no good reason. The Java and C# format string analyzers are written in C; they don't run Java or C# code.

Bruno Haible <haible>
Project AdministratorIn charge of this item.
Tue 19 Nov 2019 11:51:10 PM UTC, comment #2: 

comment #1:

> Works for me (on a glibc system): After configuring with --disable-java and --disable-csharp:
> 1) After "make install", the installation directory contains no .jar nor .dll files.
> 2) Even the build directory contains no .jar nor .dll files.
>
> The topic of the javadocs has been discussed in bug #56111.


Hello,
Perhaps I could have described the bug a bit cleared. I have tested this using the latest version, as well as git trunk, and have the glibc version from your autogen script.

The following files are still showing up on make install:

  • /usr/share/gettext/javaversion.class
  • ALL test files and folders/subfolders: hello-java, hello-java-swing, hello-java-awt, hello-java-qtjambi, hello-csharp, hello-csharp-forms

I had thought that disabling Java would at minimum install no .class files or tests, and perhaps disable the ability to parse Java files and Java Properties.

Additionally, there is no way to disable CSharp parsing functionality, since there is no --disable-csharp option anywhere in the autoconfigure scripts. It's an invalid option and errors on ./configure.

Here is the package log from a normal --disable-java --disable-native-java --disable-csharp build showing the extra files:
https://pastebin.com/raw/RWHCPE93

I am also attaching a WIP patch which would remove CSharp and Java Support, but causes gettext to not run properly. I believe the reason it crashes is because read_properties and write_properties is used for much more than just Java, but I do not have much experience in this code base.

(file #47906)

Luke <gaming4jc>
Tue 19 Nov 2019 12:46:21 AM UTC, comment #1: 

Works for me (on a glibc system): After configuring with --disable-java and --disable-csharp:
1) After "make install", the installation directory contains no .jar nor .dll files.
2) Even the build directory contains no .jar nor .dll files.

The topic of the javadocs has been discussed in bug #56111.

Bruno Haible <haible>
Project AdministratorIn charge of this item.
Wed 13 Nov 2019 04:10:52 AM UTC, original submission:  

Hello,
We are currently trying to compile without Java or CSharp. However, it is not possible because the defines are not properly implemented.

--disable-java: builds java + javadocs (#57060)
--disable-csharp: is an undefined option (even though --enable-csharp exists)

The compiled package should not contain any java classes / csharp files if they are disabled.

Luke <gaming4jc>

 

Attached Files

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by haible (Updated the item)
  • -email is unavailable- added by gaming4jc (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

     

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-11-19 gaming4jc Attached File- => Added 0001-Attempt-to-remove-CSharp-and-Java.patch, #47906
    2019-11-19 haible StatusNone => Works For Me
        Assigned toNone => haible
        Open/ClosedOpen => Closed
    2019-11-13 haible Summary--disable-java and --disable-csharp have no affect => --disable-java and --disable-csharp have no effect

    Back to the top


    Powered by Savane 3.5