[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#41360] [PATCH v4 01/12] gnu: java-openjfx-graphics: Implement a com
From: |
Ludovic Courtès |
Subject: |
[bug#41360] [PATCH v4 01/12] gnu: java-openjfx-graphics: Implement a complete compilation. |
Date: |
Fri, 12 Jun 2020 18:12:16 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Hi Alexey,
Alexey Abramov <levenson@mmer.org> skribis:
> * gnu/packages/java.scm (java-openjfx-graphics): Add stages to build
> libdecora_sse, prism_common, glassgtk2, iio, prism_sw, prism_es2,
> font_freetype, glassgtk3, font, font_pango and glass libraries.
>
> All the steps were taken by inspecting ./gradlew build --info result.
Could you add it in a comment?
So essentially all these phases and the unrolled and translated version
of what Gradle would do, right?
> Signed-off-by: Alexey Abramov <levenson@mmer.org>
> ---
> gnu/packages/java.scm | 642 +++++++++++++++++++++++++++++++++++++++++-
> 1 file changed, 634 insertions(+), 8 deletions(-)
I guess it’s still “source”, but that’s a lot of it.
Do you think there are ways this could be factorized? I’m not saying we
have to do this right away, but we should probably keep in mind if we
want to ensure the long-term maintainability of this package.
> + ;; XX: Description can be found in build.gradle:1429. Currently
I think you can remove “XX”, but description of what? Probably a bit
more context would be fine.
> + (mkdir-p prism-gen-src)
> + (for-each (lambda (file)
> + (apply invoke "java"
> + "-cp" (string-join (list
> + ;; For CompileJSL
> +
> prism-compilers-classes
> + ;; jsl files are
> there
> + prism-src
> + (getenv "CLASSPATH"))
> + ":")
> + "CompileJSL"
> + "-i" prism-src
> + "-o" prism-gen-src
> + "-t"
> + "-pkg" "com/sun/prism"
> + "-d3d"
> + "-es2"
> + "-name" (list file)))
Problem is we won’t know where those flags come from, right? Perhaps
there’s additional info the Gradle build files?
> + (add-after 'compile-decora-compilers 'generate-decora-shaders
> + (lambda _
> + (let ((classes "modules/graphics/build/classes/java/main")
> + (decora-classes
> "modules/graphics/build/classes/jsl-decora/")
> + (decora-compilers-classes
> "modules/graphics/build/classes/jsl-compilers/decora")
> + (decora-gen-src
> "modules/graphics/build/generated-src/jsl-decora")
> + (decora-src "modules/graphics/src/main/jsl-decora/")
> + (decora-components '([(file-name . "ColorAdjust")
> + (generator . "CompileJSL")
> + (outputs . "-all")]
> + [(file-name . "Brightpass")
> + (generator . "CompileJSL")
> + (outputs . "-all")]
> + [(file-name . "SepiaTone")
> + (generator . "CompileJSL")
> + (outputs . "-all")]
> + [(file-name .
> "PerspectiveTransform")
> + (generator . "CompileJSL")
> + (outputs . "-all")]
> + [(file-name . "DisplacementMap")
> + (generator . "CompileJSL")
> + (outputs . "-all")]
> + [(file-name . "InvertMask")
> + (generator . "CompileJSL")
> + (outputs . "-all")]
> + [(file-name . "Blend")
> + (generator . "CompileBlend")
> + (outputs . "-all")]
> + [(file-name . "PhongLighting")
> + (generator . "CompilePhong")
> + (outputs . "-all")]
> + [(file-name . "LinearConvolve")
> + (generator .
> "CompileLinearConvolve")
> + (outputs . "-hw")]
> + [(file-name .
> "LinearConvolveShadow")
> + (generator .
> "CompileLinearConvolve")
> + (outputs . "-hw")])))
We should at least have a comment explaining where that list comes from
and what it means.
I appreciate the huge amount of work you put into this, but I’m
concerned about maintainability.
Julien, what are the prospects of getting Gradle in Guix? What are your
thoughts here?
Thanks,
Ludo’.
- [bug#41360] [PATCH v4 00/12] Improve OpenJFX and friends packages, Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 03/12] gnu: java-openjfx-swing: Add new variable., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 02/12] gnu: java-openjfx-build: Fix openjfx-swing component build for JDKu8, Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 01/12] gnu: java-openjfx-graphics: Implement a complete compilation., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 01/12] gnu: java-openjfx-graphics: Implement a complete compilation.,
Ludovic Courtès <=
- [bug#41360] [PATCH v4 04/12] gnu: java-openjfx-swt: Add new variable., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 05/12] gnu: java-openjfx-controls: Add new variable., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 06/12] gnu: java-openjfx-build: Patch DumpRenderTree for the web component., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 09/12] gnu: java-openjfx-build: Fix web component linkage., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 07/12] gnu: java-openjfx-build: Do not use an embedded 3rd party libraries., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 11/12] gnu: java-openjfx-build: Ensure use of system provided libraries., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 08/12] gnu: java-openjfx-build: Fix web component compilation with ICU 59+., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 12/12] gnu: java-openjfx-web: Add new variable., Alexey Abramov, 2020/06/07
- [bug#41360] [PATCH v4 10/12] gnu: java-openjfx-build: Fix web component compilation with ICU 65+., Alexey Abramov, 2020/06/07