I was unable to update java-service-wrapper this morning. The error message mentioned CUnit as a missing library. Once I installed dev-utils/cunit separately I was able to update successfully. emerge info - ``` Portage 3.0.30 (python 3.10.5-final-0, default/linux/amd64/17.1/desktop, gcc-11.3.0, glibc-2.35-r8, 5.15.52-gentoo x86_64) ================================================================= System uname: Linux-5.15.52-gentoo-x86_64-AMD_Ryzen_5_2600_Six-Core_Processor-with-glibc2.35 KiB Mem: 16327060 total, 4733648 free KiB Swap: 15624684 total, 15624684 free Timestamp of repository gentoo: Fri, 05 Aug 2022 07:00:01 +0000 Head commit of repository gentoo: 0dc2c964bae0444be5dd39743721f80d82f099fc Timestamp of repository steam-overlay: Tue, 02 Aug 2022 04:17:29 +0000 Head commit of repository steam-overlay: b3651f51e03cb99ef4fd0914816c88c74c087538 sh bash 5.1_p16-r1 ld GNU ld (Gentoo 2.38 p4) 2.38 app-misc/pax-utils: 1.3.4::gentoo app-shells/bash: 5.1_p16-r1::gentoo dev-java/java-config: 2.3.1::gentoo dev-lang/perl: 5.34.1-r3::gentoo dev-lang/python: 3.10.5::gentoo dev-lang/rust: 1.62.1::gentoo dev-util/cmake: 3.22.4::gentoo dev-util/meson: 0.62.2::gentoo sys-apps/baselayout: 2.8::gentoo sys-apps/openrc: 0.44.10::gentoo sys-apps/sandbox: 2.29::gentoo sys-devel/autoconf: 2.71-r1::gentoo sys-devel/automake: 1.16.5::gentoo sys-devel/binutils: 2.38-r2::gentoo sys-devel/binutils-config: 5.4.1::gentoo sys-devel/gcc: 11.3.0::gentoo sys-devel/gcc-config: 2.5-r1::gentoo sys-devel/libtool: 2.4.7::gentoo sys-devel/llvm: 14.0.6-r2::gentoo sys-devel/make: 4.3::gentoo sys-kernel/linux-headers: 5.15-r3::gentoo (virtual/os-headers) sys-libs/glibc: 2.35-r8::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 sync-rsync-extra-opts: sync-rsync-verify-max-age: 24 sync-rsync-verify-jobs: 1 sync-rsync-verify-metamanifest: yes localrepo location: /usr/local/portage masters: gentoo steam-overlay location: /var/db/repos/steam-overlay sync-type: git sync-uri: https://github.com/gentoo-mirror/steam-overlay.git masters: gentoo ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php8.1/ext-active/ /etc/php/cgi-php8.1/ext-active/ /etc/php/cli-php8.1/ext-active/ /etc/php/fpm-php8.1/ext-active/ /etc/php/phpdbg-php8.1/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="ftp://mirror.bytemark.co.uk/gentoo/ https://mirror.bytemark.co.uk/gentoo/ http://mirror.bytemark.co.uk/gentoo/ rsync://mirror.bytemark.co.uk/gentoo/ http://mirrors.evowise.com/gentoo/ https://mirrors.evowise.com/gentoo/ https://www.mirrorservice.org/sites/distfiles.gentoo.org/ http://www.mirrorservice.org/sites/distfiles.gentoo.org/ ftp://ftp.mirrorservice.org/sites/distfiles.gentoo.org/ rsync://rsync.mirrorservice.org/distfiles.gentoo.org/" LANG="en_GB.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j6" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" SHELL="/bin/bash" USE="X a52 aac acl acpi alsa amd64 bluetooth branding bzip2 cairo cdda cdr cli crypt dbus dri dts dvd dvdr elogind encode exif flac fortran gdbm gif glamor gpm gtk gui iconv icu ipv6 jpeg lcms libglvnd libinput libnotify libtirpc mad mng mp3 mp4 mpeg multilib ncurses nls nptl ogg opengl openmp openrc pam pango pcre pdf png policykit ppds pulseaudio qt5 readline sdl seccomp spell split-usr ssl startup-notification svg tiff truetype udev udisks unicode upower usb vorbis wxwidgets x264 xattr xcb xft xml xorg xv xvid zlib" ABI_X86="64" ADA_TARGET="gnat_2020" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" RUBY_TARGETS="ruby27" USERLAND="GNU" VIDEO_CARDS="amdgpu radeonsi radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS ``` equery u dev-java/java-service-wrapper - ``` [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for dev-java/java-service-wrapper-3.5.50: U I - - doc : Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally - - source : Zip the sources and install them - - test : Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently) ``` compilation error - ``` * Package: dev-java/java-service-wrapper-3.5.50 * Repository: gentoo * Maintainer: java@gentoo.org * USE: abi_x86_64 amd64 elibc_glibc kernel_linux userland_GNU * FEATURES: network-sandbox preserve-libs sandbox userpriv usersandbox * Using: openjdk-bin-8 >>> Unpacking source... >>> Unpacking wrapper_3.5.50_src.tar.gz to /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work >>> Source unpacked in /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work >>> Preparing source in /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src ... >>> Source prepared. >>> Configuring source in /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src ... Rewriting attributes Rewriting ./build.xml >>> Source configured. >>> Compiling source in /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src ... /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/temp /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src javac -source 1.8 -target 1.8 GetArchDataModel.java /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src * Disabling all optional ANT_TASKS Buildfile: /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src/build.xml init-setup: [echo] Java Version: 1.8.0_332 [echo] Ant Version: Apache Ant(TM) version 1.10.9 compiled on May 22 2022 [echo] /var/lib/portage/home/.ant.properties exists?: false [echo] /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src/ant.properties exists?: false init-windows: init-unix: init-bits-check: init-bits-mismatch-check: init: init:msg: [echo] ********************************************************************** [echo] * About to build a 64-bit version of Java Service Wrapper Community 3.5.50. [echo] * The OS Name is "linux", resolved from "Linux". [echo] * The Architecture is "x86", resolved from "amd64". [echo] * The distribution name will be: wrapper-linux-x86-64-3.5.50 [echo] ********************************************************************** update-info-c: [copy] Copying 1 file to /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src/src/c msvc-missing: compile-c-windows-vcvars: compile-c-windows-check: compile-c-windows-check2: compile-c-unix-check: compile-c-unix: [mkdir] Created dir: /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src/bin [mkdir] Created dir: /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src/lib [mkdir] Created dir: /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src/test [echo] Build native components using 'make' and Makefile: Makefile-linux-x86-64.make [exec] if test ! -d .deps; then mkdir .deps; fi [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -Wl,-z,relro,-z,now -march=native -O2 -pipe -Wl,-O1 -Wl,--as-needed -pthread wrapper.c wrapperinfo.c wrappereventloop.c wrapper_unix.c property.c logger.c logger_file.c wrapper_file.c wrapper_i18n.c wrapper_hashmap.c wrapper_ulimit.c wrapper_encoding.c wrapper_jvminfo.c -lm -o ../../bin/wrapper [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -c wrapper_i18n.c [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -c wrapperjni_unix.c [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -c wrapperinfo.c [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -c wrapperjni.c [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -c loggerjni.c [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -Wl,-O1 -Wl,--as-needed -shared wrapper_i18n.o wrapperjni_unix.o wrapperinfo.o wrapperjni.o loggerjni.o -o ../../lib/libwrapper.so [exec] x86_64-pc-linux-gnu-gcc -fPIC -Wall --pedantic -DLINUX -D_FORTIFY_SOURCE=2 -DJSW64 -D_FILE_OFFSET_BITS=64 -fpic -D_GNU_SOURCE -DUNICODE -D_UNICODE -DCUNIT testsuite.c test_example.c test_javaadditionalparam.c test_hashmap.c test_filter.c wrapper.c wrapperinfo.c wrappereventloop.c wrapper_unix.c property.c logger.c logger_file.c wrapper_file.c wrapper_i18n.c wrapper_hashmap.c wrapper_ulimit.c wrapper_encoding.c wrapper_jvminfo.c -lm -march=native -O2 -pipe -Wl,-O1 -Wl,--as-needed -pthread -L/usr/local/lib -lncurses -lcunit -o testsuite [exec] testsuite.c:21:10: fatal error: CUnit/Automated.h: No such file or directory [exec] 21 | #include "CUnit/Automated.h" [exec] | ^~~~~~~~~~~~~~~~~~~ [exec] compilation terminated. [exec] test_example.c:15:10: fatal error: CUnit/Basic.h: No such file or directory [exec] 15 | #include "CUnit/Basic.h" [exec] | ^~~~~~~~~~~~~~~ [exec] compilation terminated. [exec] test_javaadditionalparam.c:15:10: fatal error: CUnit/Basic.h: No such file or directory [exec] 15 | #include "CUnit/Basic.h" [exec] | ^~~~~~~~~~~~~~~ [exec] compilation terminated. [exec] test_hashmap.c:15:10: fatal error: CUnit/Basic.h: No such file or directory [exec] 15 | #include "CUnit/Basic.h" [exec] | ^~~~~~~~~~~~~~~ [exec] compilation terminated. [exec] test_filter.c:15:10: fatal error: CUnit/Basic.h: No such file or directory [exec] 15 | #include "CUnit/Basic.h" [exec] | ^~~~~~~~~~~~~~~ [exec] compilation terminated. [exec] wrapper.c:52:10: fatal error: CUnit/Basic.h: No such file or directory [exec] 52 | #include "CUnit/Basic.h" [exec] | ^~~~~~~~~~~~~~~ [exec] compilation terminated. [exec] make: *** [Makefile-linux-x86-64.make:44: testsuite] Error 1 BUILD FAILED /var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src/build.xml:723: exec returned: 2 Total time: 8 seconds * ERROR: dev-java/java-service-wrapper-3.5.50::gentoo failed (compile phase): * eant failed * * Call stack: * ebuild.sh, line 127: Called src_compile * environment, line 3198: Called eant '-Dbits=64' 'compile-c' * environment, line 524: Called die * The specific snippet of code: * ant ${antflags} "${@}" || die "eant failed" * * If you need support, post the output of `emerge --info '=dev-java/java-service-wrapper-3.5.50::gentoo'`, * the complete build log and the output of `emerge -pqv '=dev-java/java-service-wrapper-3.5.50::gentoo'`. !!! When you file a bug report, please include the following information: GENTOO_VM=openjdk-bin-8 CLASSPATH="" JAVA_HOME="/opt/openjdk-bin-8.332_p09" JAVACFLAGS="-source 1.8 -target 1.8" COMPILER="javac" and of course, the output of emerge --info =java-service-wrapper-3.5.50 * The complete build log is located at '/var/tmp/portage/dev-java/java-service-wrapper-3.5.50/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-java/java-service-wrapper-3.5.50/temp/environment'. * Working directory: '/var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src' * S: '/var/tmp/portage/dev-java/java-service-wrapper-3.5.50/work/wrapper_3.5.50_src' ```
My suspicion is that the 'test' USE flag is being ignored in the ebuild
Confirmed. Without dev-util/cunit installed and USE=-test it doesn't compile. However with USE=test enabled the missing dep. gets pulled-in.
I did specify this in the ebuild?? Did I somehow do this wrong? RDEPEND=">=virtual/jre-1.8:*" DEPEND=" >=virtual/jdk-1.8:* test? ( dev-java/junit:4 dev-util/cunit ) " BDEPEND="virtual/jdk"
This should have been fixed in https://github.com/gentoo/gentoo/commit/b2d5ea8fc49bf3291bfda50e5ff7214cffaa9c86, I'm not sure why it still wouldn't work
(In reply to matoro from comment #3) > I did specify this in the ebuild?? Did I somehow do this wrong? > > RDEPEND=">=virtual/jre-1.8:*" > DEPEND=" > >=virtual/jdk-1.8:* > test? ( > dev-java/junit:4 > dev-util/cunit > ) > " > BDEPEND="virtual/jdk" What about depending on cunit unconditionally? RDEPEND=">=virtual/jre-1.8:*" DEPEND=" dev-util/cunit >=virtual/jdk-1.8:* test? ( dev-java/junit:4 dev-util/cunit ) " BDEPEND="virtual/jdk"
(In reply to Volkmar W. Pogatzki from comment #5) > (In reply to matoro from comment #3) > > I did specify this in the ebuild?? Did I somehow do this wrong? > > > > RDEPEND=">=virtual/jre-1.8:*" > > DEPEND=" > > >=virtual/jdk-1.8:* > > test? ( > > dev-java/junit:4 > > dev-util/cunit > > ) > > " > > BDEPEND="virtual/jdk" > > What about depending on cunit unconditionally? > > RDEPEND=">=virtual/jre-1.8:*" > DEPEND=" > dev-util/cunit > >=virtual/jdk-1.8:* > test? ( > dev-java/junit:4 > dev-util/cunit > ) > " > BDEPEND="virtual/jdk" Oops, I think I found it. Somehow https://github.com/gentoo/gentoo/blob/master/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-testsuite.patch got dropped. You should be able to add it back into PATCHES to fix.
(In reply to matoro from comment #6) > (In reply to Volkmar W. Pogatzki from comment #5) > > (In reply to matoro from comment #3) > > > I did specify this in the ebuild?? Did I somehow do this wrong? > > > > > > RDEPEND=">=virtual/jre-1.8:*" > > > DEPEND=" > > > >=virtual/jdk-1.8:* > > > test? ( > > > dev-java/junit:4 > > > dev-util/cunit > > > ) > > > " > > > BDEPEND="virtual/jdk" > > > > What about depending on cunit unconditionally? > > > > RDEPEND=">=virtual/jre-1.8:*" > > DEPEND=" > > dev-util/cunit > > >=virtual/jdk-1.8:* > > test? ( > > dev-java/junit:4 > > dev-util/cunit > > ) > > " > > BDEPEND="virtual/jdk" > > Oops, I think I found it. Somehow > https://github.com/gentoo/gentoo/blob/master/dev-java/java-service-wrapper/ > files/java-service-wrapper-3.5.25-testsuite.patch got dropped. You should > be able to add it back into PATCHES to fix. Actually it would need some more tweaking. Probably better to just delete and replace with a sed. I can open a PR.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a5069b33787fa5114814d70535bab4775c74fb7 commit 1a5069b33787fa5114814d70535bab4775c74fb7 Author: matoro <matoro@users.noreply.github.com> AuthorDate: 2022-08-05 16:03:20 +0000 Commit: Florian Schmaus <flow@gentoo.org> CommitDate: 2022-08-10 08:24:44 +0000 dev-java/java-service-wrapper: replace testsuite.patch with sed java-service-wrapper-3.5.25-testsuite.patch should have been ported to 3.5.50 but wasn't. Since it's a trivial patch, rather than rebasing it each time, just replace with a sed. Closes: https://bugs.gentoo.org/863761 Signed-off-by: matoro <matoro@users.noreply.github.com> Closes: https://github.com/gentoo/gentoo/pull/26749 Signed-off-by: Florian Schmaus <flow@gentoo.org> dev-java/java-service-wrapper/java-service-wrapper-3.5.50.ebuild | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)