Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 548552 - media-video/vlc-2.1.5-r1[blueray] fails to build with C11
Summary: media-video/vlc-2.1.5-r1[blueray] fails to build with C11
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Nick Andrade
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks: 548546
  Show dependency tree
 
Reported: 2015-05-04 03:19 UTC by jospezial
Modified: 2016-02-23 05:16 UTC (History)
2 users (show)

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


Attachments
build.log (build.log,452.02 KB, text/plain)
2015-05-10 19:40 UTC, jospezial
Details

Note You need to log in before you can comment on or make changes to this bug.
Description jospezial 2015-05-04 03:19:43 UTC
bluray.c: In function ‘blurayInitOverlay’:
bluray.c:744:50: error: expected expression before ‘{’ token
     p_sys->p_overlays[ov->plane]->released_once = ATOMIC_FLAG_INIT;
                                                  ^
Makefile:3192: recipe for target 'liblibbluray_plugin_la-bluray.lo' failed
make[5]: *** [liblibbluray_plugin_la-bluray.lo] Error 1

In newer versions it has been fixed with this patch:
http://git.videolan.org/?p=vlc.git;a=commitdiff;h=678a61d1b9420462da2115763dfb284cc12074b8



This is from a diff I made from modules/access/bluray.c in 2.1.6 and the one from the commit.

     }
     /* two references: vout + demux */
-    p_sys->p_overlays[ov->plane]->released_once = ATOMIC_FLAG_INIT;
+    atomic_flag_clear(&ov->released_once);
 

Please correct the line as needed and add that patch to the 2.1.x ebuilds.
Comment 1 Michael Palimaka (kensington) gentoo-dev 2015-05-09 18:59:43 UTC
Please attach the build log and emerge --info.
Comment 2 jospezial 2015-05-10 19:40:52 UTC
Created attachment 402992 [details]
build.log

emerge -Cva phonon-vlc ; emerge -vaD =vlc-2.1.5-r1
 * This action can remove important packages! In order to be safer, use
 * `emerge -pv --depclean <atom>` to check for reverse dependencies before
 * removing packages.

>>> These are the packages that would be unmerged:

 media-libs/phonon-vlc
    selected: 0.8.2 
   protected: none 
     omitted: none 

All selected packages: =media-libs/phonon-vlc-0.8.2

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

Would you like to unmerge these packages? [Yes/No] 
>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in: 5 4 3 2 1
>>> Unmerging (1 of 1) media-libs/phonon-vlc-0.8.2...

 * GNU info directory index is up-to-date.

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     UD ] media-video/vlc-2.1.5-r1:0/5-7::gentoo [2.2.1:0/5-8::gentoo] USE="X a52 aalib alsa avcodec avformat bluray cdda cddb dbus dts dvb dvbpsi dvd egl%* encode faad ffmpeg flac fluidsynth fontconfig gcrypt gme gnutls jack kate libass libnotify libsamplerate libtiger live lua matroska modplug mp3 mpeg mtp musepack ncurses ogg opengl png postproc* pulseaudio qt4 rtsp schroedinger sdl sftp shout skins speex svg swscale taglib theora truetype twolame udev v4l vaapi vcdx vdpau vlm vnc vorbis x264 xcb xml xv zvbi (-altivec) -atmo (-audioqueue) -avahi -bidi -chromaprint -dc1394 -debug -dirac% -directfb (-directx) (-dxva2) -fdk -gnome -growl -httpd -ieee1394 (-ios-vout) -kde -libav -libcaca -libtar -linsys -lirc (-macosx) (-macosx-audio) (-macosx-dialog-provider) (-macosx-eyetv) (-macosx-qtkit) (-macosx-quartztext) (-macosx-vout) (-media-library) (-neon) -omxil -opencv -optimisememory -opus -projectm -rdp -run-as-root -samba -sdl-image -sid {-test} -tremor -upnp -wma-fixed (-jpeg%*) (-qt5%) (-vpx%*) (-x265%)" CPU_FLAGS_X86="mmx sse" 0 KiB
[ebuild  N     ] media-libs/phonon-vlc-0.8.2::gentoo  USE="qt5 -debug -qt4" 0 KiB

Total: 2 packages (1 downgrade, 1 new), Size of downloads: 0 KiB
Comment 3 jospezial 2015-05-10 19:42:31 UTC
emerge --info
Portage 2.2.18 (python 3.3.5-final-0, default/linux/amd64/13.0, gcc-5.1.0, glibc-2.20-r2, 4.1.0-rc2 x86_64)
=================================================================
System uname: Linux-4.1.0-rc2-x86_64-AMD_Athlon-tm-_II_X2_240_Processor-with-gentoo-2.2
KiB Mem:     4047328 total,   2063448 free
KiB Swap:    7103480 total,   7103480 free
Timestamp of repository gentoo: Sun, 10 May 2015 18:15:01 +0000
sh bash 4.3_p33-r2
ld GNU ld (Gentoo 2.25 p1.1) 2.25
ccache version 3.2.1 [enabled]
app-shells/bash:          4.3_p33-r2::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2-r1::gentoo
dev-lang/python:          2.7.9-r2::gentoo, 3.3.5-r1::gentoo, 3.4.3::gentoo
dev-util/ccache:          3.2.1-r1::gentoo
dev-util/cmake:           3.2.2::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.15.1::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r1::gentoo
sys-devel/automake:       1.10.3-r1::gentoo, 1.11.6-r1::gentoo, 1.12.6::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25::gentoo
sys-devel/gcc:            5.1.0::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6-r1::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.0::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.de.gentoo.org/gentoo-portage
    priority: -1000

overlay_jl
    location: /usr/local/portage
    masters: gentoo
    priority: 0

betagarden
    location: /var/lib/layman/betagarden
    sync-type: laymansync
    sync-uri: git://anongit.gentoo.org/proj/betagarden.git
    masters: gentoo
    priority: 50

gamerlay
    location: /var/lib/layman/gamerlay
    sync-type: laymansync
    sync-uri: git://anongit.gentoo.org/proj/gamerlay.git
    masters: gentoo
    priority: 50

java
    location: /var/lib/layman/java
    sync-type: laymansync
    sync-uri: git://anongit.gentoo.org/proj/java.git
    masters: gentoo
    priority: 50

kde
    location: /var/lib/layman/kde
    sync-type: laymansync
    sync-uri: git://anongit.gentoo.org/proj/kde.git
    masters: gentoo
    priority: 50

qt
    location: /var/lib/layman/qt
    sync-type: laymansync
    sync-uri: git://anongit.gentoo.org/proj/qt.git
    masters: gentoo
    priority: 50

wine-overlay
    location: /var/lib/layman/wine-overlay
    sync-type: laymansync
    sync-uri: git://github.com/NP-Hardass/wine-overlay.git
    masters: gentoo
    priority: 50

Installed sets: @kde-applications-live, @kde-frameworks-live, @kde-plasma-live
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--autounmask-write=y --keep-going --quiet-build=y"
FCFLAGS="-march=native -O2 -pipe"
FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=native -O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="de_DE.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j3"
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"
PORTAGE_TMPDIR="/var/tmp"
USE="3dnow 3dnowext 64bit X Xaw3d a52 aac aacplus aacs aalib accessibility ace acl acpi activefilter aften alsa amd64 ap apm apng archive arping audacious audiofile automount bazaar bdplus berkdb binary-drivers bluetooth bluray boost bzip2 bzr cairo canusb ccache cdda cddb cdio cdparanoia cdr cdrdao cdrom cgi charconv chm chroot cjk clang cli client colordiff colors compress consolekit corefonts cpio cracklib crypt css cue cups curl curlwrappers cvs cxx daemon dbus declarative device-mapper dga dhcp doom doomsday dos download-subs dri dri3 dts dump dv dvb dvd dvdnav eap eap-sim eap-tls ebook egl emerald emoticon enca encode enscript equalizer evdev exif extensions extras faac faad fam farstream fat fax fbcon fdformat ffmpeg fftw firefox flac fluidsynth fontconfig foomaticdb fortran freedoom ftp fuse g3dvl gadu gallium gbm gd gdbm geoip gif gimp git glamor glut gme gnutls gpg gphoto2 gpm graphite gsm gstreamer gtk gtk3 gtkstyle gudev gui gzip hddtemp hdf hdf5 heretic hexen hid highlight hpcups hpijs http hwdb iconv icq icu id3tag idn imagemagick introspection ios ipc ipod ipv6 jack java javascript jit jpeg jpeg2k kate keymap ladspa lame lcms lensfun libass libcanberra libkms libnotify libsamplerate libssh2 libtiger libv4l libwww live llvm-shared-libs lm_sensors logrotate lua lzma lzo mad madwifi magic man matroska md5sum meanwhile mercurial metalink midi mikmod mime minizip mixer mjpeg mmap mms mmx mmxext mng mobi mod modplug modules mono mouse mozilla mp3 mp4 mpeg mpeg2 mplayer mtp multilib multimedia multislot musepack musicbrainz nano-syntax ncat ncurses ndiff network nfs nfsidmap nfsv4 nfsv41 nls nmap-update nokia normalize nowlistening nping nptl nsplugin ntfs ntfsprogs ntp nvidia nvram obex ocr ogg ogm openal opencl opengl openmax openmp openssl oscar osdmenu otr p2p pam pango panorama parport parse-clocks pcap pci pcre pcre16 pdf pipes plugins pm-utils png policykit postscript ppds printsupport privacy projectm pulseaudio pvr python python3 qalculate qml qt5 quicktime r600-llvm-compiler radio rar raw rdesktop readline recording redeyes reiser4 reiserfs remote-access replaygain rpm rtc rtmp rtsp rubberband s3tc sbsms scanner schroedinger scripttools sdl secure-delete sensord session sftp sha512 shorten shout skins slang smi sndfile snowberry sockets sound soundtouch sox speex spell sql sqlite sqlite3 sse sse2 ssh ssl startup-notification statistics stk stream subtitles subversion svg swat symlink sync-plugin-portage syslog szip taglib tcpd texteffect tftp tftpd theora threads thumbnail tiff timidity tracepath traceroute translator truetype twolame udev udisks unicode upower urlpicpreview usb v4l vaapi vamp vcd vcdx vdpau video videos virtualbox vlm vnc vorbis vpx vroot vst wad wav wavpack webgl webkit webm webp webpresence widgets wifi winbind winpopup wmf wps wxwidgets x264 xa xattr xcb xcomposite xfs xine xinerama xinetd xkb xml xmp xorg xosd xpm xrandr xscreensaver xv xvid xvmc yahoo zenmap zip zlib zvbi" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python3_3" PYTHON_TARGETS="python2_7 python3_3 python3_4" RUBY_TARGETS="ruby19 ruby20 ruby21 ruby22" USERLAND="GNU" VIDEO_CARDS="fbdev vesa svga vga radeon modesetting r100 r200 r300 r600" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 4 Nick Andrade 2015-07-29 07:49:14 UTC
This bug is not as trivial as suggested in the original post.  Adding the patch leads to:
bluray.c: In function 'blurayInitOverlay':
bluray.c:744:15: error: 'BD_OVERLAY' has no member named 'released_once'
     atomic_flag_clear(&ov->released_once);

When I compare the parameters of the blurayInitOverlay function between 2.1.5 (or 2.1.6) and 2.2.0 (or 2.2.1):
2.1.[5,6] static void blurayInitOverlay(demux_t *p_demux, const BD_OVERLAY* const ov)
2.2.[0,1] static void blurayInitOverlay(demux_t *p_demux, int plane, int width, int height)

Comparing bluray.c between 2.1.6 and 2.2.0, I see they're substantially different (well over 1000 lines differ) so backporting is likely to lead to problems.

Considering this bug seems to be limited to gcc-5.1.x, I suggest to target 2.2.1 which will hopefully be stabilized soon (all but one dep has been resolved).
Comment 5 Nick Andrade 2016-02-22 21:10:46 UTC
Jospezial, I'll be testing the current versions of VLC (2.2.1-r1 and 2.2.2) with the latest GCC-5.3.  Assuming it works, this bug will be closed as WONTFIX since the old versions are no longer in Portage.
Comment 6 Nick Andrade 2016-02-23 05:16:35 UTC
All VLC versions in the tree are building cleanly with bluray and GCC 5.3 so I'm marking this bug as FIXED.