* [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