public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download: 
* [gentoo-dev] [PATCH 0/2] eclass/java-{utils-2,pkg-simple}.eclass: features and enhancements
@ 2020-08-25 15:46 99% zongyu
  0 siblings, 0 replies; 1+ results
From: zongyu @ 2020-08-25 15:46 UTC (permalink / raw
  To: gentoo-dev; +Cc: zongyu

Dear all,

     I am one of the students who attend Gentoo's Google Summer of Code
     program [1] this year. And this email is attempting to trigger a
     review for a patch for eclass/java-{utils-2,pkg-simple}.eclass.

     Java-pkg-simple.eclass is widely used by java packages that do not
     provide a build.xml for building with java-ant-2.eclass. Although
     java-pkg-simple.eclass works well right now, it still lacks some
     features [2], such as installing java resources and providing
     src_test() function.

     The patch below is trying to enable some missing features of
     java-pkg-simple.eclass, including:
     1. Since some java packages (e.g. dev-java/commons-io) has java
        resources bundled in jar files, java-pkg-simple.eclass now has a
        function java-pkg-simple_prepend_resources() to recognize and
        install those java resource files;
     2. Some java packages have a "main class" so that we can execute
        the jar file from command line. With "JAVA_MAIN_CLASS" and
        "JAVA_LAUNCHER_FILENAME", the eclass can deal with the situation
        properly;
     3. Enabling src_test() function with multiple testing frameworks
        like junit, testng, pkgdiff and so on;
     4. Pkgdiff test will compare natively compiled jar file and upstream
        provided binary jar file, to support the feature the eclass will
        fetch pre-compiled java jars and accept "JAVA_BINJAR_FILENAME" to
        identify it.
        Besides, installing binjar will help resolve circular
        dependencies, so the eclass also accepts USE="binary" and
        installs the binary jars now.

     And for java-utils-2.eclass:
     1. To support java-pkg-simple_src_test(), there is a new function
        etestng() to launch java tests with dev-java/testng.

     Finally, there is a breaking change to java-pkg-simple. Instead of
     treating "JAVA_SRC_DIR" as a string of directories separated by
     spaces, currently the eclass will treat it as an array. A few
     packages will be affected and fail to build, and the second patch
     will solve the problem.

     P.S. 
     This is the first time for me to write a patch for such a huge
     project and send such an email. I hope this email will meet your
     requirements, and I would appreciate your every response.

     Regards,
     Zhang Zongyu

     [1] the GSoC program
     https://summerofcode.withgoogle.com/projects/#4994566568017920
     [2] a related bug
     https://bugs.gentoo.org/564158

zongyu (2):
  java-pkg-simple.eclass and java-utils-2.eclass: features and
    enhancements
  patching ebuild files to support new java-pkg-simple

 dev-java/juel/juel-2.1.0-r2.ebuild            |   2 +-
 dev-java/piccolo2d/piccolo2d-3.0-r1.ebuild    |   2 +-
 .../swingx-ws-1.0_p20110515-r1.ebuild         |   4 +-
 .../xml-commons/xml-commons-1.4.01.ebuild     |   2 +-
 dev-java/xsdlib/xsdlib-20090415.ebuild        |   4 +-
 eclass/java-pkg-simple.eclass                 | 379 ++++++++++++++++--
 eclass/java-utils-2.eclass                    |  38 ++
 7 files changed, 395 insertions(+), 36 deletions(-)

-- 
2.26.2



^ permalink raw reply	[relevance 99%]

Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2020-08-25 15:46 99% [gentoo-dev] [PATCH 0/2] eclass/java-{utils-2,pkg-simple}.eclass: features and enhancements zongyu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox