Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 513576 - >=sys-devel/gcc-4.1[gcj]: automagic dependencies on various packages
Summary: >=sys-devel/gcc-4.1[gcj]: automagic dependencies on various packages
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard: masked in 17.0 profiles
Keywords:
: 513578 531374 (view as bug list)
Depends on: 511832
Blocks:
  Show dependency tree
 
Reported: 2014-06-17 12:53 UTC by Arfrever Frehtes Taifersar Arahesis
Modified: 2019-12-29 11:05 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
toolchain.eclass.patch (toolchain.eclass.patch,6.14 KB, patch)
2014-06-20 19:55 UTC, Arfrever Frehtes Taifersar Arahesis
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis 2014-06-17 12:53:39 UTC
sys-devel/gcc[gcj] has automagic dependency on media-libs/alsa-lib.
If media-libs/alsa-lib is already installed, then installation of sys-devel/gcc[gcj] will install /usr/lib*/gcj-*/libgjsmalsa.{la,so}.


gcc-4.9.0/libjava/classpath/configure.ac:

dnl -----------------------------------------------------------
dnl ALSA code (enabled by default)
dnl -----------------------------------------------------------
AC_ARG_ENABLE([alsa],
              [AS_HELP_STRING(--disable-alsa,compile ALSA providers (enable by --enable-alsa) [default=yes])],
              [case "${enableval}" in
                yes) COMPILE_ALSA=yes ;;
                no) COMPILE_ALSA=no ;;
                *) COMPILE_ALSA=yes ;;
              esac],
              [AC_CHECK_HEADERS([alsa/asoundlib.h],
                                [AC_CHECK_LIB([asound], [snd_seq_open], COMPILE_ALSA=yes,COMPILE_ALSA=no)],
                                COMPILE_ALSA=no)])
AM_CONDITIONAL(CREATE_ALSA_LIBRARIES, test "x${COMPILE_ALSA}" = xyes)


gcc-4.9.0/libjava/classpath/native/jni/Makefile.am:

if CREATE_ALSA_LIBRARIES
  ALSADIR = midi-alsa
endif
...
SUBDIRS = classpath $(JNIDIRS) \
  $(ALSADIR) $(DSSIDIR) $(GTKDIR) $(CLASSPATH_QT_PEER_DIR) $(XMLJDIR) \
  $(CLASSPATH_GCONF_PEER_DIR) $(CLASSPATH_GSTREAMER_PEER_DIR) $(GMPDIR)


gcc-4.9.0/libjava/classpath/native/jni/midi-alsa/Makefile.am:

nativeexeclib_LTLIBRARIES = libgjsmalsa.la 

libgjsmalsa_la_SOURCES = gnu_javax_sound_midi_alsa_AlsaMidiSequencerDevice.c \
gnu_javax_sound_midi_alsa_AlsaPortDevice.c \
gnu_javax_sound_midi_alsa_AlsaMidiDeviceProvider.c

libgjsmalsa_la_LIBADD = -lasound
libgjsmalsa_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version

AM_LDFLAGS = @CLASSPATH_MODULE@
AM_CPPFLAGS = @CLASSPATH_INCLUDES@ `pkg-config --cflags-only-I alsa`
AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ `pkg-config --cflags-only-other alsa` \
            @EXTRA_CFLAGS@



Suggestion:
- Add "gcj-alsa" to IUSE.
- Add "gcj-alsa? ( gcj )" to REQUIRED_USE when EAPI >= 4.
- Add "gcj? ( gcj-alsa? ( media-libs/alsa-lib ) )" to DEPEND and RDEPEND.
- Pass "$(use_enable gcj-alsa alsa)" to configure.
- Potential fallback dependency on app-emulation/emul-linux-x86-soundlibs. See bug #511832.
Comment 1 Arfrever Frehtes Taifersar Arahesis 2014-06-17 13:20:50 UTC
(Also virtual/pkgconfig in DEPEND is needed.)
Comment 2 Arfrever Frehtes Taifersar Arahesis 2014-06-20 19:55:26 UTC
Created attachment 379338 [details, diff]
toolchain.eclass.patch

Patch for bug #511832, bug #513576, bug #513578 and bug #513716.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2014-12-02 08:38:43 UTC
*** Bug 531374 has been marked as a duplicate of this bug. ***
Comment 4 SpanKY gentoo-dev 2015-05-26 14:30:07 UTC
don't think we need a sep bug for each dep
Comment 5 SpanKY gentoo-dev 2015-05-26 14:30:15 UTC
*** Bug 513578 has been marked as a duplicate of this bug. ***
Comment 6 Fabio Bonfante 2015-06-02 07:26:34 UTC
Seems that the gcj flag require the 32 bit of media-sound/jack-audio-connection-kit

From my emerge @preserved-rebuild
>>> package: app-emulation/emul-linux-x86-soundlibs-20140508
 *  - /usr/lib32/libjack.so.0
 *  - /usr/lib32/libjack.so.0.0.28
 *      used by /usr/lib32/gcj-4.8.3-14/libgjsmdssi.so (sys-devel/gcc-4.8.3)

Still I can't upgrade to gcc-4.8.4...
---------------------------
/bin/bash ../../../libtool --tag=CC   --mode=link /var/tmp/portage/sys-devel/gcc-4.8.4/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include  -m32 -W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long  -fexceptions -fasynchronous-unwind-tables -g -march=native -mtune=native -O2 -pipe  -m32 -module -version-info 0:0:0 -no-undefined -avoid-version -m32 -o libgjsmdssi.la -rpath /usr/lib/../lib32/gcj-4.8.4-14 gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.lo gnu_javax_sound_midi_dssi_DSSISynthesizer.lo ../../../native/jni/classpath/jcl.lo -ljack 
libtool: link: /var/tmp/portage/sys-devel/gcc-4.8.4/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include  -m32 -shared  .libs/gnu_javax_sound_midi_dssi_DSSIMidiDeviceProvider.o .libs/gnu_javax_sound_midi_dssi_DSSISynthesizer.o ../../../native/jni/classpath/.libs/jcl.o   -ljack  -m32 -march=native -mtune=native -m32 -m32   -Wl,-soname -Wl,libgjsmdssi.so -o .libs/libgjsmdssi.so
/usr/x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libjack.so when searching for -ljack
/usr/x86_64-pc-linux-gnu/bin/ld: cannot find -ljack
collect2: error: ld returned 1 exit status
Makefile:408: recipe for target 'libgjsmdssi.la' failed
make[8]: *** [libgjsmdssi.la] Error 1
make[8]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/x86_64-pc-linux-gnu/32/libjava/classpath/native/jni/midi-dssi'
Makefile:358: recipe for target 'all-recursive' failed
make[7]: *** [all-recursive] Error 1
make[7]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/x86_64-pc-linux-gnu/32/libjava/classpath/native/jni'
Makefile:346: recipe for target 'all-recursive' failed
make[6]: *** [all-recursive] Error 1
make[6]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/x86_64-pc-linux-gnu/32/libjava/classpath/native'
Makefile:410: recipe for target 'all-recursive' failed
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/x86_64-pc-linux-gnu/32/libjava/classpath'
Makefile:10217: recipe for target 'all-recursive' failed
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/x86_64-pc-linux-gnu/32/libjava'
Makefile:12773: recipe for target 'multi-do' failed
make[3]: *** [multi-do] Error 1
make[3]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/x86_64-pc-linux-gnu/libjava'
Makefile:12737: recipe for target 'all-multi' failed
make[2]: *** [all-multi] Error 2
make[2]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build/x86_64-pc-linux-gnu/libjava'
Makefile:16154: recipe for target 'all-target-libjava' failed
make[1]: *** [all-target-libjava] Error 2
make[1]: Leaving directory '/var/tmp/portage/sys-devel/gcc-4.8.4/work/build'
Makefile:19760: recipe for target 'bootstrap-lean' failed
make: *** [bootstrap-lean] Error 2
Comment 7 Arfrever Frehtes Taifersar Arahesis 2015-06-02 08:12:20 UTC
(In reply to Fabio Bonfante from comment #6)
> Seems that the gcj flag require the 32 bit of
> media-sound/jack-audio-connection-kit

Things related to media-sound/jack-audio-connection-kit were described in bug #513578.
Updated patches for 4 bugs are in bug #511832, whereon this bug (#513576) depends.
Comment 8 Sergei Trofimovich (RETIRED) gentoo-dev 2019-12-29 11:05:27 UTC
Let's close it as non-masked versions of gcc don't have gcj and related
libraries.