Bug 2266696

Summary: tuxguitar fails to build with java-21-openjdk
Product: [Fedora] Fedora Reporter: Petra Alice Mikova <pmikova>
Component: tuxguitarAssignee: Orcan Ogetbil <oget.fedora>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: java-maint-sig, jvanek, mtasaka, oget.fedora, pmikova
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-01-28 10:10:26 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2262141    

Description Petra Alice Mikova 2024-02-28 18:21:56 UTC
tuxguitar fails to build with java-21-openjdk as sytem JDK. See https://fedoraproject.org/wiki/Changes/Java21.

For the build logs, see: https://koji.fedoraproject.org/koji/taskinfo?taskID=114142077
https://kojipkgs.fedoraproject.org/work/tasks/2247/114142247/state.log
https://kojipkgs.fedoraproject.org/work/tasks/2247/114142247/build.log
https://kojipkgs.fedoraproject.org/work/tasks/2247/114142247/root.log
https://kojipkgs.fedoraproject.org/work/tasks/2247/114142247/mock_output.log
https://kojipkgs.fedoraproject.org/work/tasks/2247/114142247/hw_info.log
We run the rebuild in side tag f41-build-side-84507, but as fail ratio was small, we expect this side tag to be merged into rawhide ASAP.
To reproduce before this date simply: fedpkg clone tuxguitar; cd tuxguitar;  fedpkg build --target f41-build-side-84507; #The target is crucial.
After merge, the usual fedpkg build in rawhide should do.

We had tried aprox 400 packages, and aprox 55 had failed, so the java-21-openjdk will be system JDK in f40, and you should fix your package if you want to keep it alive. Usually the fix is simple, and best is to update the package to latest upstream version. Fix the issue in both f40 and rawhide, if possible, the side tag and rebuild of f40 (and bugs) will follow soon.
Let us know here if you have any questions, here in bug, or at java-devel.org .

We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side if needed.

Comment 1 jiri vanek 2024-03-13 20:13:49 UTC
Bump of the sources/target passes over jav alibs, but native keeps failing:
https://koji.fedoraproject.org/koji/getfile?taskID=114911334&volume=DEFAULT&name=build.log&offset=-40000

[INFO]      [exec]   391 |                 const jbyte *jkey = (*env)->GetStringUTFChars(env, key, NULL);
[INFO]      [exec]       |                                     ^
[INFO]      [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:396:85: error: passing argument 4 of ‘fluid_settings_foreach_option’ from incompatible pointer type [-Wincompatible-pointer-types]
[INFO]      [exec]   396 |                 fluid_settings_foreach_option(handle->settings, (char *)jkey, data, fluid_settings_foreach_option_callback );
[INFO]      [exec]       |                                                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO]      [exec]       |                                                                                     |
[INFO]      [exec]       |                                                                                     void (*)(void *, char *, char *)
[INFO]      [exec] In file included from /usr/include/fluidsynth.h:99:
[INFO]      [exec] /usr/include/fluidsynth/settings.h:169:68: note: expected ‘fluid_settings_foreach_option_t’ {aka ‘void (*)(void *, const char *, const char *)’} but argument is of type ‘void (*)(void *, char *, char *)’
[INFO]      [exec]   169 |                                    fluid_settings_foreach_option_t func);
[INFO]      [exec]       |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
[INFO]      [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:397:57: warning: pointer targets in passing argument 3 of ‘(*env)->ReleaseStringUTFChars’ differ in signedness [-Wpointer-sign]
[INFO]      [exec]   397 |                 (*env)->ReleaseStringUTFChars(env, key, jkey);
[INFO]      [exec]       |                                                         ^~~~
[INFO]      [exec]       |                                                         |
[INFO]      [exec]       |                                                         const jbyte * {aka const signed char *}
[INFO]      [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:397:57: note: expected ‘const char *’ but argument is of type ‘const jbyte *’ {aka ‘const signed char *’}
[INFO]      [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c: In function ‘Java_org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth_isRealtimeProperty’:
[INFO]      [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:411:45: warning: pointer targets in initialization of ‘const jbyte *’ {aka ‘const signed char *’} from ‘const char *’ differ in signedness [-Wpointer-sign]
[INFO]      [exec]   411 |                         const jbyte *jkey = (*env)->GetStringUTFChars(env, key, NULL);
[INFO]      [exec]       |                                             ^
[INFO]      [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:414:65: warning: pointer targets in passing argument 3 of ‘(*env)->ReleaseStringUTFChars’ differ in signedness [-Wpointer-sign]
[INFO]      [exec]   414 |                         (*env)->ReleaseStringUTFChars(env, key, jkey);
[INFO]      [exec]       |                                                                 ^~~~
[INFO]      [exec]       |                                                                 |
[INFO]      [exec]       |                                                                 const jbyte * {aka const signed char *}
[INFO]      [exec] org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.c:414:65: note: expected ‘const char *’ but argument is of type ‘const jbyte *’ {aka ‘const signed char *’}
[INFO]      [exec] make: *** [GNUmakefile:14: org_herac_tuxguitar_player_impl_midiport_fluidsynth_MidiSynth.o] Error 1
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] Skipping tuxguitar-linux-x86_64
[INFO] This project has been banned from the build due to previous failures.
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for tuxguitar-linux-x86_64 1.5.4:
[INFO] 
[INFO] tuxguitar-lib ...................................... SUCCESS [  3.122 s]
[INFO] tuxguitar-gm-utils ................................. SUCCESS [  0.216 s]
[INFO] tuxguitar-alsa ..................................... SUCCESS [  0.748 s]
[INFO] tuxguitar-editor-utils ............................. SUCCESS [  0.656 s]
[INFO] tuxguitar-ui-toolkit ............................... SUCCESS [  0.323 s]
[INFO] tuxguitar .......................................... SUCCESS [  2.690 s]
[INFO] tuxguitar-fluidsynth ............................... FAILURE [  0.227 s]

Comment 2 Miro Hrončok 2025-01-28 10:10:26 UTC
Automation has figured out the package is retired in rawhide.

If you like it to be unretired, please open a ticket at https://pagure.io/releng/new_issue?template=package_unretirement