Gentoo Archives: gentoo-dev

From: "Miroslav Šulc" <fordfrog@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [PATCH 0/2] eclass/java-{utils-2,pkg-simple}.eclass: features and enhancements
Date: Fri, 28 Aug 2020 17:25:21
Message-Id: 5bd76197-3e9b-3d08-2a60-063054f89131@gentoo.org
In Reply to: [gentoo-dev] [PATCH 0/2] eclass/java-{utils-2,pkg-simple}.eclass: features and enhancements by zongyu
1 hi all,
2
3 jfyi, i'm going to commit these changes to the main tree at the end of
4 the weekend if there are no objections. (i've been mentoring this
5 project.) we have some other work that depends on these patches so i'd
6 like to see it in the main tree as soon as possible.
7
8 regards.
9
10 fordfrog
11
12
13 Dne 25. 08. 20 v 17:46 zongyu napsal(a):
14 > Dear all,
15 >
16 > I am one of the students who attend Gentoo's Google Summer of Code
17 > program [1] this year. And this email is attempting to trigger a
18 > review for a patch for eclass/java-{utils-2,pkg-simple}.eclass.
19 >
20 > Java-pkg-simple.eclass is widely used by java packages that do not
21 > provide a build.xml for building with java-ant-2.eclass. Although
22 > java-pkg-simple.eclass works well right now, it still lacks some
23 > features [2], such as installing java resources and providing
24 > src_test() function.
25 >
26 > The patch below is trying to enable some missing features of
27 > java-pkg-simple.eclass, including:
28 > 1. Since some java packages (e.g. dev-java/commons-io) has java
29 > resources bundled in jar files, java-pkg-simple.eclass now has a
30 > function java-pkg-simple_prepend_resources() to recognize and
31 > install those java resource files;
32 > 2. Some java packages have a "main class" so that we can execute
33 > the jar file from command line. With "JAVA_MAIN_CLASS" and
34 > "JAVA_LAUNCHER_FILENAME", the eclass can deal with the situation
35 > properly;
36 > 3. Enabling src_test() function with multiple testing frameworks
37 > like junit, testng, pkgdiff and so on;
38 > 4. Pkgdiff test will compare natively compiled jar file and upstream
39 > provided binary jar file, to support the feature the eclass will
40 > fetch pre-compiled java jars and accept "JAVA_BINJAR_FILENAME" to
41 > identify it.
42 > Besides, installing binjar will help resolve circular
43 > dependencies, so the eclass also accepts USE="binary" and
44 > installs the binary jars now.
45 >
46 > And for java-utils-2.eclass:
47 > 1. To support java-pkg-simple_src_test(), there is a new function
48 > etestng() to launch java tests with dev-java/testng.
49 >
50 > Finally, there is a breaking change to java-pkg-simple. Instead of
51 > treating "JAVA_SRC_DIR" as a string of directories separated by
52 > spaces, currently the eclass will treat it as an array. A few
53 > packages will be affected and fail to build, and the second patch
54 > will solve the problem.
55 >
56 > P.S.
57 > This is the first time for me to write a patch for such a huge
58 > project and send such an email. I hope this email will meet your
59 > requirements, and I would appreciate your every response.
60 >
61 > Regards,
62 > Zhang Zongyu
63 >
64 > [1] the GSoC program
65 > https://summerofcode.withgoogle.com/projects/#4994566568017920
66 > [2] a related bug
67 > https://bugs.gentoo.org/564158
68 >
69 > zongyu (2):
70 > java-pkg-simple.eclass and java-utils-2.eclass: features and
71 > enhancements
72 > patching ebuild files to support new java-pkg-simple
73 >
74 > dev-java/juel/juel-2.1.0-r2.ebuild | 2 +-
75 > dev-java/piccolo2d/piccolo2d-3.0-r1.ebuild | 2 +-
76 > .../swingx-ws-1.0_p20110515-r1.ebuild | 4 +-
77 > .../xml-commons/xml-commons-1.4.01.ebuild | 2 +-
78 > dev-java/xsdlib/xsdlib-20090415.ebuild | 4 +-
79 > eclass/java-pkg-simple.eclass | 379 ++++++++++++++++--
80 > eclass/java-utils-2.eclass | 38 ++
81 > 7 files changed, 395 insertions(+), 36 deletions(-)
82 >

Replies