Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 542414 - media-video/vlc-2.2.0 with USE=rdp: access/rdp.c:431:5: error: implicit declaration of function freerdp_channels_global_init [-Werror=implicit-function-declaration] freerdp_channels_global_init();
Summary: media-video/vlc-2.2.0 with USE=rdp: access/rdp.c:431:5: error: implicit decla...
Status: RESOLVED OBSOLETE
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:
Depends on:
Blocks: 546880
  Show dependency tree
 
Reported: 2015-03-07 08:22 UTC by Leonid Kopylov
Modified: 2016-12-09 10:50 UTC (History)
8 users (show)

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


Attachments
build.log (build.log,388.99 KB, text/plain)
2015-03-07 08:23 UTC, Leonid Kopylov
Details
Build.log for rdp error (build.log.tar.gz,122 bytes, application/gzip)
2015-03-09 12:05 UTC, David Brooke
Details
Patch based on older freerdp 1.2.0 fix for vlc 2.1.5 (vlc-2.2.0-rdp-1.2.0.patch,928 bytes, patch)
2015-03-11 05:55 UTC, Nick Andrade
Details | Diff
Build log without patch (build.log,384.32 KB, text/plain)
2015-03-12 04:07 UTC, Nick Andrade
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Leonid Kopylov 2015-03-07 08:22:56 UTC
# emerge -pqv '=media-video/vlc-2.2.0::gentoo'
[ebuild   R   ] media-video/vlc-2.2.0  USE="X a52 aalib alsa avahi avcodec avformat bidi bluray cdda cddb dbus directfb dvb dvbpsi dvd encode ffmpeg flac fontconfig gcrypt gme gnome gnutls httpd jpeg kde libass libcaca libnotify libsamplerate lirc live lua mp3 mpeg ncurses ogg opengl png postproc pulseaudio qt4 rdp* samba sdl speex svg swscale theora truetype twolame udev upnp vlm vnc vorbis x264 xcb xml xv (-altivec) -atmo (-audioqueue) -chromaprint -dc1394 -debug (-directx) -dts (-dxva2) -faad -fdk -fluidsynth -growl -ieee1394 -jack -kate -libav -libtar -libtiger -linsys (-macosx-dialog-provider) (-macosx-eyetv) (-macosx-qtkit) (-macosx-quartztext) -matroska (-media-library) -modplug -mtp -musepack (-neon) -omxil -opencv -optimisememory -opus -projectm -qt5 -rtsp -run-as-root -schroedinger -sdl-image -sftp -shout -sid -skins -taglib {-test} -tremor -v4l -vaapi -vcdx -vdpau -vpx -wma-fixed -x265 -zvbi" CPU_FLAGS_X86="mmx sse"

# emerge --info '=media-video/vlc-2.2.0::gentoo'
Portage 2.2.18 (python 3.3.5-final-0, default/linux/amd64/13.0/no-multilib, gcc-4.9.2, glibc-2.20-r2, 3.19.0-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.19.0-gentoo-x86_64-Intel-R-_Core-TM-_i7-4770_CPU_@_3.40GHz-with-gentoo-2.2
KiB Mem:     2053196 total,   1219624 free
KiB Swap:    2097148 total,   1984336 free
Timestamp of repository gentoo: Sat, 07 Mar 2015 07:00:01 +0000
sh bash 4.3_p33-r2
ld GNU ld (Gentoo 2.25 p1.0) 2.25
ccache version 3.2.1 [disabled]
app-shells/bash:          4.3_p33-r2::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::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.1.0::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.13.11::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.10.3-r1::gentoo, 1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25::gentoo
sys-devel/gcc:            4.9.2::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.19::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

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

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA google-chrome AdobeFlash-11.x"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb /var/yp/Makefile"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.5/ext-active/ /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs 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"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.isoc.org.il/pub/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
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="X X509 a52 aac aalib accessibility acl addressbook afp airplay akonadi all_sfx alsa amd64 anacron analitza antiboss ap apache2 apng archive audacious audit autoipd autotrace avahi awn barcode bash-completion berkdb bidi bittorrent bluetooth bluray bmp box branding bzip2 cairo canberra ccache cdda cddb cdio cdparanoia cdr cdrom cgi clamav clamdtop cli clipboard cloudprint colord contrast cpufreq_bench cracklib creds crypt cryptsetup cscope cue cups curl cxx daemon dbus declarative desktopglobe device-mapper directfb djvu dos dri dropbox dundee dvb dvd dvdnav ebook editor eds egl emacs emovix encode epub equalizer examples exif expat experimental facebook fam fancy farstream fat fax fbcon ffmpeg finger flac flash flickr fontconfig fortran freebox ftp fuse games gcdmaster gcj gd gdbm geoip gif gimp gles2 gme gmp gnome gnome-keyring gnome-online-accounts gnutls google googledrive gpg gpm gps graph gsettings gstreamer gtk gtk3 gudev hddtemp highlight histman html http httpd iconv icq icu idn imagemagick imap intl introspection ios iostats ipod ipv6 irc iso jabber java javascript jingle jpeg json karma kde kdepim kerberos kipi ktp lame lapack lastfm lcms ldap libass libcaca libkms libmpdclient libnotify libsamplerate libsecret libvisual lirc live lj lm_sensors lock lua mad map marble math mbox mdnsresponder-compat mediawiki messages minizip mmx mng moc modules mongodb mono mp3 mp4 mpd mpeg mpeg2 mpeg3 mplayer mrim msn mta multicore multimedia music musicbrainz mysql nano-syntax natspec nautilus ncat ncurses ndiff net netgroups netlink network-cron networking networkmanager nfs nis nls nping nptl nsplugin ntfs ntp offensive ofono ogg opengl openldap openmp openntpd oscar p2p pam pcap pcre pcre16 pcre32 pdf perl php plasma playlist plotutils plugins plugman png pocket policykit pop postfix postgres postproc pptx prediction prison pulseaudio python qalculate qrcode qt3support qt4 quicktime radio radius rar raw rdp readline realtime recorder redeyes remote remote-access rendering rpc rss ruby samba sasl scanner script scripting scrobbler sdl secure semantic-desktop sendto sensord session sip skydrive skype slp smi smp sms smtp solver sound soundcloud spamassassin speex spell sql sqlite sse sse2 ssl startup-notification stats steam svg swat symlink systemd tbb tcl tcpd telepathy theora thetvdb threads thumbnail tiff tk toolame tools tracker truetype twolame udev udisks undi unicode upnp upnp-av upower usb utils vala vcd video videoslideshow vim vim-pager vim-syntax visualizer vkontakte vlc vlm vmware vnc vorbis vtk web webcam webkit webpresence wifi wininst winpopup wmf wps wxwidgets x264 xa xine xkb xml xmms2 xmp xpm xv xvid xvmc yahoo yandexdisk youtube zenmap zeroconf zip zlib" 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="aes avx avx2 mmx popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" 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" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" LINGUAS="en he ru" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20 ruby21 ruby22" USERLAND="GNU" VIDEO_CARDS="vmware" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

media-video/vlc-2.2.0::gentoo was built with the following:
USE="X a52 aalib alsa avahi avcodec avformat bidi bluray cdda cddb dbus directfb dvb dvbpsi dvd encode ffmpeg flac fontconfig gcrypt gme gnome gnutls httpd jpeg kde libass libcaca libnotify libsamplerate lirc live lua mp3 mpeg ncurses ogg opengl png postproc pulseaudio qt4 samba sdl speex svg swscale theora truetype twolame udev upnp vlm vnc vorbis x264 xcb xml xv (-altivec) -atmo (-audioqueue) -chromaprint -dc1394 -debug (-directx) -dts (-dxva2) -faad -fdk -fluidsynth -growl -ieee1394 -jack -kate -libav -libtar -libtiger -linsys (-macosx-dialog-provider) (-macosx-eyetv) (-macosx-qtkit) (-macosx-quartztext) -matroska (-media-library) -modplug -mtp -musepack (-neon) -omxil -opencv -optimisememory -opus -projectm -qt5 -rdp -rtsp -run-as-root -schroedinger -sdl-image -sftp -shout -sid -skins -taglib -test -tremor -v4l -vaapi -vcdx -vdpau -vpx -wma-fixed -x265 -zvbi" CPU_FLAGS_X86="mmx sse"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -L/usr/lib64/sidplay/builders/"
Comment 1 Leonid Kopylov 2015-03-07 08:23:13 UTC
Created attachment 398290 [details]
build.log
Comment 2 Ian Delaney (RETIRED) gentoo-dev 2015-03-09 06:57:50 UTC
This looks to me like -Werror=implicit-function-declaration is the source here.
-Werror is often referred to as madness when it is set as a std gcc flag in a build.   This usually renders a warning, it should not be fatal
Comment 3 David Brooke 2015-03-09 12:05:28 UTC
Created attachment 398512 [details]
Build.log for rdp error
Comment 4 David Brooke 2015-03-09 12:07:02 UTC
I am getting this error:

access/rdp.c:431:5: error: implicit declaration of function ‘freerdp_channels_global_init’ [-Werror=implicit-function-declaration]
     freerdp_channels_global_init();
Comment 5 Captain Crutches 2015-03-09 23:43:41 UTC
For me the build still fails even with USE=-rdp.  However, I was able to emerge it after unmerging net-misc/freerdp (I had 1.2.0_beta1_pre20141115).

It seems I can consistently build it without freerdp, but not with it, with or without the rdp USE flag.  A workaround, at least, until this pesky -Werror is removed or the build is otherwise fixed.
Comment 6 Ian Delaney (RETIRED) gentoo-dev 2015-03-11 05:36:16 UTC
This occurred with xen quite alot in the past. The management is usually to sed or patch out the setting of -Werror from gcc flags. There are many examples to be found in the tree. The patches of xen have tarred and bundles so aren't so easily accessible.
Comment 7 Nick Andrade 2015-03-11 05:55:19 UTC
Created attachment 398642 [details, diff]
Patch based on older freerdp 1.2.0 fix for vlc 2.1.5

I was able to build vlc-2.2.0 with rdp using this patch which is a variation of an older patch I was using to build 2.1.5 while freerdp & vlc maintainers argued it out.
Comment 8 Ian Delaney (RETIRED) gentoo-dev 2015-03-11 15:23:54 UTC
No idea how you managed that

~/cvsPortage/gentoo-x86/media-video/vlc $ USE=rdp ebuild vlc-2.2.0.ebuild configure

~/cvsPortage/gentoo-x86/media-video/vlc $ grep "implicit-function-declaration" -r /mnt/gen2/TmpDir/portage/media-video/vlc-2.2.0/work/vlc-2.2.0 | grep Makefile

proves it infiltrates the whole build.  Getting an effective build suggests something 'funky' with CLFAGS.

With patch applied it still pulled up riddled with build errors though freerdp_channels_global_init wasn't one of them.
Comment 9 Nick Andrade 2015-03-11 20:45:59 UTC
Interesting, after work today I'll play around with C[XX]FLAGS to see why my build is working (with the patch) and others are not.  

The C[XX]FLAGS I used are: "-O2 -march=native -pipe" (note: I do not use "-fomit-frame-pointer").  I'm not sure if that would make a difference.  At a glance, I don't see any other major differences (i.e. I use the same GCC version, LDFLAGS, etc.).  Also, if it matters, I had completed a  --with-bdeps=y update recently so all my underlying packages are current to ~amd64.
Comment 10 Ian Delaney (RETIRED) gentoo-dev 2015-03-12 01:20:28 UTC
CFLAGS="-march=athlon64 -pipe -fomit-frame-pointer -Wall -O2"

It's normal to get QA warnings about implicit declaration of function, non fatal warnings.  Still onus on you to illustrate a setup that can build t all. I might try taking out  -fomit-frame-pointer later but from my exp it won't impact.  Still why does your system survive -Werror?
Comment 11 Nick Andrade 2015-03-12 03:45:25 UTC
(In reply to Ian Delaney from comment #10)
> CFLAGS="-march=athlon64 -pipe -fomit-frame-pointer -Wall -O2"
> 
> It's normal to get QA warnings about implicit declaration of function, non
> fatal warnings.  Still onus on you to illustrate a setup that can build t
> all. I might try taking out  -fomit-frame-pointer later but from my exp it
> won't impact.  Still why does your system survive -Werror?

Here's my info.  I'll try playing around with some CFLAGS and see if I can get some breakage similar to what you're seeing, but it's clearly working for me (after the RDP patch).

neandrad@laptop ~ $ vlc --version
VLC media player 2.2.0 Weatherwax (revision 2.2.0-0-g1349ef2)
VLC version 2.2.0 Weatherwax (2.2.0-0-g1349ef2)
Compiled by portage on laptop.nickandrade.com (Mar 10 2015 22:44:59)
Compiler: gcc version 4.9.2 (Gentoo 4.9.2 p1.0, pie-0.6.2)
This program comes with NO WARRANTY, to the extent permitted by law.
You may redistribute it under the terms of the GNU General Public License;
see the file named COPYING for details.
Written by the VideoLAN team; see the AUTHORS file.

neandrad@laptop ~ $ emerge --info vlc
Portage 2.2.18 (python 3.4.3-final-0, default/linux/amd64/13.0, gcc-4.9.2, glibc-2.20-r2, 3.18.1-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.18.1-gentoo-x86_64-Intel-R-_Core-TM-_i5-3230M_CPU_@_2.60GHz-with-gentoo-2.2
KiB Mem:    16175036 total,    287392 free
KiB Swap:    8388604 total,   7789904 free
Timestamp of repository gentoo: Wed, 11 Mar 2015 10:00:01 +0000
sh bash 4.3_p33-r2
ld GNU ld (Gentoo 2.25 p1.0) 2.25
app-shells/bash:          4.3_p33-r2::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.9-r2::gentoo, 3.3.5-r1::gentoo, 3.4.3::gentoo
dev-util/cmake:           3.1.0::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.13.11::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.4_p6-r1::gentoo, 1.9.6-r3::gentoo, 1.10.3::gentoo, 1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25::gentoo
sys-devel/gcc:            4.7.3-r1::gentoo, 4.8.4::gentoo, 4.9.2::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.19::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://lisa/gentoo-portage
    priority: -1000

bumblebee
    location: /usr/local/portage/layman/bumblebee
    masters: gentoo
    priority: 0

sunrise
    location: /usr/local/portage/layman/sunrise
    masters: gentoo
    priority: 1

steam-overlay
    location: /usr/local/portage/layman/steam-overlay
    masters: gentoo
    priority: 2

vapoursynth
    location: /usr/local/portage/layman/vapoursynth
    masters: gentoo
    priority: 3

nick
    location: /usr/local/portage/nick
    masters: gentoo
    priority: 4

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA DOOM3 PUEL RTCW RTCW-ETEULA dlj-1.1 sun-bcla-java-vm skype-eula AdobeFlash-10 AdobeFlash-10.1 AdobeFlash-10.3 AdobeFlash-11.x google-talkplugin google-chrome Google-TOS"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /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/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news nostrip notitles parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://gentoo.cites.uiuc.edu/pub/gentoo/ http://gentoo.cs.uni.edu/ http://mirror.usu.edu/mirrors/gentoo/"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5 -l10"
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="X a52 aac acl acpi alsa amd64 avahi avx berkdb bluetooth bzip2 cli cracklib crypt cxx daap dbus dri dvd dvdread en_US faac faad ffmpeg flac fortran gdbm gsm hal iconv ieee1364 ipv6 jpeg jpg mmx modules mp3 multilib musicbrainz mysql ncurses network nfs nls nptl openal opengl openmp pam pcre perl png pulseaudio readline session smp sse sse2 sse3 sse4 sse4_1 sse4_2 ssl ssse3 svg tcpd theora threads unicode vaapi vdpau wifi x264 x265 xml xml2 xmlrpc xv xvidi zlib" 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="actions alias auth_basic authn_alias authn_anon authn_core authn_dbm authn_file authz_core authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif socache_shmcb speling status unique_id unixd userdir usertrack vhost_alias access_compat" APACHE2_MPMS="worker" 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="mmx mmxext sse sse2 avx sse3 sse4_1 sse4_2 ssse3" 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" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev joystick keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en_US en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3 python3_4" RUBY_TARGETS="ruby19 ruby20" SANE_BACKENDS="hp hp3500 hp3900 hp4200 hp5400 hp5590 hpljm1005 hpsj5s hs2p lexmark" USERLAND="GNU" VIDEO_CARDS="intel i965 modesetting nvidia" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

media-video/vlc-2.2.0::nick was built with the following:
USE="X a52 alsa avahi avcodec avformat cdda cddb dbus dts dvbpsi dvd encode faad ffmpeg flac gcrypt httpd ieee1394 jpeg lirc lua mp3 ncurses opencv opengl png postproc pulseaudio qt4 rdp rtsp schroedinger sdl sftp shout svg swscale taglib theora truetype twolame udev upnp v4l vaapi vdpau vorbis x264 x265 xcb xml xv -aalib (-altivec) -atmo (-audioqueue) -bidi -bluray -chromaprint -dc1394 -debug -directfb (-directx) -dvb (-dxva2) -fdk -fluidsynth -fontconfig -gme -gnome -gnutls -growl -jack -kate -kde -libass -libav -libcaca -libnotify -libsamplerate -libtar -libtiger -linsys -live (-macosx-dialog-provider) (-macosx-eyetv) (-macosx-qtkit) (-macosx-quartztext) -matroska (-media-library) -modplug -mpeg -mtp -musepack (-neon) -ogg -omxil -optimisememory -opus -projectm -qt5 -run-as-root -samba -sdl-image -sid -skins -speex -test -tremor -vcdx -vlm -vnc -vpx -wma-fixed -zvbi" ABI_X86="64" CPU_FLAGS_X86="mmx sse"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -L/usr/lib64/sidplay/builders/"
Comment 12 Nick Andrade 2015-03-12 04:07:42 UTC
Created attachment 398690 [details]
Build log without patch

Here's the build.log I see when building using the portage ebuild without the patch.  I made no changes to my CFLAGS (or anything else); the only change is using ::gentoo.
Comment 13 Nick Andrade 2015-03-12 04:33:11 UTC
I just rebuilt with -fomit-frame-pointer and the rdp patch and again it built fine:
media-video/vlc-2.2.0::nick was built with the following:
USE="X a52 alsa avahi avcodec avformat cdda cddb dbus dts dvbpsi dvd encode faad ffmpeg flac gcrypt httpd ieee1394 jpeg lirc lua mp3 ncurses opencv opengl png postproc pulseaudio qt4 rdp rtsp schroedinger sdl sftp shout svg swscale taglib theora truetype twolame udev upnp v4l vaapi vdpau vorbis x264 x265 xcb xml xv -aalib (-altivec) -atmo (-audioqueue) -bidi -bluray -chromaprint -dc1394 -debug -directfb (-directx) -dvb (-dxva2) -fdk -fluidsynth -fontconfig -gme -gnome -gnutls -growl -jack -kate -kde -libass -libav -libcaca -libnotify -libsamplerate -libtar -libtiger -linsys -live (-macosx-dialog-provider) (-macosx-eyetv) (-macosx-qtkit) (-macosx-quartztext) -matroska (-media-library) -modplug -mpeg -mtp -musepack (-neon) -ogg -omxil -optimisememory -opus -projectm -qt5 -run-as-root -samba -sdl-image -sid -skins -speex -test -tremor -vcdx -vlm -vnc -vpx -wma-fixed -zvbi" ABI_X86="64" CPU_FLAGS_X86="mmx sse"
CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -L/usr/lib64/sidplay/builders/"

This is somewhat expected as -fomit-frame-pointer is included with -O2 in 4.6 and above, but I fgiured I may as well do due dilligence.  Anyways, I'm open to trying to duplicate your error if you have any suggestions.  Have you done a emerge -uD --with-bdeps=y world recently?
Comment 14 Ian Delaney (RETIRED) gentoo-dev 2015-03-13 14:54:52 UTC
sys-devel/gcc:            4.7.3-r1::gentoo, 4.8.4::gentoo, 4.9.2::gentoo

which one did the build?  I don't have a gcc 4.9.2 emerged.

Have you done a emerge -uD --with-bdeps=y world recently?
Such radical updating should not be required to do a simple build with all deps satisfied.
Comment 15 Nick Andrade 2015-03-13 17:16:46 UTC
(In reply to Ian Delaney from comment #14)
> sys-devel/gcc:            4.7.3-r1::gentoo, 4.8.4::gentoo, 4.9.2::gentoo
> 
> which one did the build?  I don't have a gcc 4.9.2 emerged.
> 
> Have you done a emerge -uD --with-bdeps=y world recently?
> Such radical updating should not be required to do a simple build with all
> deps satisfied.

From vlc --version:
Compiler: gcc version 4.9.2 (Gentoo 4.9.2 p1.0, pie-0.6.2)

I keep my system relatively current so -uD --with-bdeps=y doesn't add much impact (i.e. I just synced today and it only updated 7 apps).  

Anyways, which gcc are you using?  I'll try an older version and see if that's the issue.
Comment 16 Nick Andrade 2015-03-13 17:29:06 UTC
Well we can rule out GCC version issues as it built fine with 4.7 & 4.8:

$ emerge -pv vlc && vlc --version

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

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

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
VLC media player 2.2.0 Weatherwax (revision 2.2.0-0-g1349ef2)
VLC version 2.2.0 Weatherwax (2.2.0-0-g1349ef2)
Compiled by portage on snowball.nickandrade.com (Mar 13 2015 10:17:52)
Compiler: gcc version 4.7.3 (Gentoo 4.7.3-r1 p1.4, pie-0.5.5)
This program comes with NO WARRANTY, to the extent permitted by law.
You may redistribute it under the terms of the GNU General Public License;
see the file named COPYING for details.
Written by the VideoLAN team; see the AUTHORS file.

$ emerge -pv vlc && vlc --version

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

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

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
VLC media player 2.2.0 Weatherwax (revision 2.2.0-0-g1349ef2)
VLC version 2.2.0 Weatherwax (2.2.0-0-g1349ef2)
Compiled by portage on snowball.nickandrade.com (Mar 13 2015 10:23:46)
Compiler: gcc version 4.8.4 (Gentoo 4.8.4 p1.0, pie-0.6.1)
This program comes with NO WARRANTY, to the extent permitted by law.
You may redistribute it under the terms of the GNU General Public License;
see the file named COPYING for details.
Written by the VideoLAN team; see the AUTHORS file.
Comment 17 Nick Andrade 2015-03-17 17:57:28 UTC
(In reply to Ian Delaney from comment #10)
> CFLAGS="-march=athlon64 -pipe -fomit-frame-pointer -Wall -O2"
> 
> It's normal to get QA warnings about implicit declaration of function, non
> fatal warnings.  Still onus on you to illustrate a setup that can build t
> all. I might try taking out  -fomit-frame-pointer later but from my exp it
> won't impact.  Still why does your system survive -Werror?

Ian, have you been able to resolve your issue?  I've been able to build while matching your CFLAGS and with the last 3 versions of GCC, so at this point, I'm out of ideas on my end.
Comment 18 Ian Delaney (RETIRED) gentoo-dev 2015-03-21 04:10:00 UTC
No
https://bugs.gentoo.org/buglist.cgi?quicksearch=media-video%2Fvlc&list_id=2709760
vls has multiple issues and I actually need it to build to clear blockages to even do a world update. Clearly are systems are not equal. I am ruling myself out of this one since there are oddities in my system corrupting what appears to be a buildable build.  There are many others in the proxy-maint herd who can cross test, ... much as I'd like to help, can't without making a new system or a vm.
Comment 19 Chicago 2015-03-21 06:04:05 UTC
I have added provided patch into /etc/portage/patches/media-video/vlc-2.2.0/RDP.patch and now media-video/vlc-2.2.0 compiles with USE=rdp satisfactorily.

Thanks for the patch.
Comment 20 Ian Delaney (RETIRED) gentoo-dev 2015-04-07 09:01:47 UTC
This package desperately requires a new maintainer. The proxy maintainer his given formal notice of withdrawal.

https://bugs.gentoo.org/buglist.cgi?quicksearch=media-video%2Fvlc&list_id=2732630
Comment 21 Nick Andrade 2015-04-08 05:52:48 UTC
(In reply to Ian Delaney from comment #20)
> This package desperately requires a new maintainer. The proxy maintainer his
> given formal notice of withdrawal.
> 
> https://bugs.gentoo.org/buglist.cgi?quicksearch=media-
> video%2Fvlc&list_id=2732630

Interesting, who is/was the proxy maintainer?  I'm wrapping up grad school in May and would love to get more involved in Gentoo.  I've been using it for a decade, and I have been trying to find good opportunities to contribute.  Would the best way to get involved be to just drop a line to proxy-maint@gentoo.org?
Comment 22 Ian Delaney (RETIRED) gentoo-dev 2015-04-08 08:30:56 UTC
(In reply to Nick Andrade from comment #21)

> > https://bugs.gentoo.org/buglist.cgi?quicksearch=media-
> > video%2Fvlc&list_id=2732630
> 
> Interesting, who is/was the proxy maintainer?  I'm wrapping up grad school
> in May and would love to get more involved in Gentoo.  I've been using it
> for a decade, and I have been trying to find good opportunities to
> contribute.  Would the best way to get involved be to just drop a line to
> proxy-maint@gentoo.org?

His identity is in that link. Nick Andrade you are more than welcome.  We mentor people like you you know.  email the proxy-maint alias and or my g.o addy.
Comment 23 Samuel Bernardo 2015-04-10 00:37:36 UTC
(In reply to Christopher Camisa from comment #19)
> I have added provided patch into
> /etc/portage/patches/media-video/vlc-2.2.0/RDP.patch and now
> media-video/vlc-2.2.0 compiles with USE=rdp satisfactorily.
> 
> Thanks for the patch.

Thanks Nick Andrade and Christopher Camisa!
Using the patch with Christopher instructions get it work just fine.
Comment 24 Adam Feldman gentoo-dev 2015-04-17 17:26:52 UTC
(In reply to Nick Andrade from comment #7)
> Created attachment 398642 [details, diff] [details, diff]
> Patch based on older freerdp 1.2.0 fix for vlc 2.1.5
> 
> I was able to build vlc-2.2.0 with rdp using this patch which is a variation
> of an older patch I was using to build 2.1.5 while freerdp & vlc maintainers
> argued it out.

The issue appears to be that freerdp doesn't have a stable API, so this patch hides a function via ifdef if on a version where the rdp_channel_global_init function isn't defined.  Rather than a sane deprecation, the function was just yanked, hence the need for the patch.
Comment 25 Paweł Stankowski 2015-04-17 22:25:40 UTC
(In reply to NP-Hardass from comment #24)
> (In reply to Nick Andrade from comment #7)
> > Created attachment 398642 [details, diff] [details, diff] [details, diff]
> > Patch based on older freerdp 1.2.0 fix for vlc 2.1.5
> > 
> > I was able to build vlc-2.2.0 with rdp using this patch which is a variation
> > of an older patch I was using to build 2.1.5 while freerdp & vlc maintainers
> > argued it out.
> 
> The issue appears to be that freerdp doesn't have a stable API, so this
> patch hides a function via ifdef if on a version where the
> rdp_channel_global_init function isn't defined.  Rather than a sane
> deprecation, the function was just yanked, hence the need for the patch.

Yes, upstream refused this patch because I assumed that undefined macro is equal to 0 inside #if statement. I don't think it is a problem.

They've recently accepted even worse patch: https://mailman.videolan.org/pipermail/vlc-devel/2015-February/101446.html

It assumes that FREERDP_VERSION_* macros are defined which breaks compatibility with older freerdp versions. Note that it requires freerdp min version to be increased.
Comment 26 Ian Delaney (RETIRED) gentoo-dev 2015-04-18 09:32:58 UTC
(In reply to Paweł Stankowski from comment #25)

> Yes, upstream refused this patch because I assumed that undefined macro is
> equal to 0 inside #if statement. I don't think it is a problem.
> 
> They've recently accepted even worse patch:
> https://mailman.videolan.org/pipermail/vlc-devel/2015-February/101446.html
> 
> It assumes that FREERDP_VERSION_* macros are defined which breaks
> compatibility with older freerdp versions. Note that it requires freerdp min
> version to be increased.

Thanks Paweł. At this point, what is your opinion on any patches here at the moment.  What do you make of the effective build in Comment 19 By C. Camisa; merely a fortunate accident? It appears to have been discredited here
Comment 27 Paweł Stankowski 2015-04-21 12:01:17 UTC
(In reply to Ian Delaney from comment #26)
> (In reply to Paweł Stankowski from comment #25)
> 
> > Yes, upstream refused this patch because I assumed that undefined macro is
> > equal to 0 inside #if statement. I don't think it is a problem.
> > 
> > They've recently accepted even worse patch:
> > https://mailman.videolan.org/pipermail/vlc-devel/2015-February/101446.html
> > 
> > It assumes that FREERDP_VERSION_* macros are defined which breaks
> > compatibility with older freerdp versions. Note that it requires freerdp min
> > version to be increased.
> 
> Thanks Paweł. At this point, what is your opinion on any patches here at the
> moment.  What do you make of the effective build in Comment 19 By C. Camisa;
> merely a fortunate accident? It appears to have been discredited here

First of all, sorry for late response. Lack of time was the main reason to orphan this package. I am always happy to help if I only can.

Patch from Nick is my first attempt to fix this bug before I realized that FREERDP_VERSION_* macros do not exist in old freerdp versions. This library is awfully managed, they changed API without notice and do not use standard versioning methods (symbols change between minor and patch versions). This is why VLC devs hate this library.

The last patch I sent upstream is here: https://mailman.videolan.org/pipermail/vlc-devel/2014-November/100591.html

I think that it is ok in case of GCC that treats undefined macros as equal to 0, but you could check whether FREERDP_VERSION_* macros are defined in case of CLRBUF_24BPP to be more portable.

There is also connected bug 543356, which should be considered during patch creation. It may require us to increase to bump min freerdp version anyway.

In VLC 2.2.x, rdp.c file includes version.h from freerdp. This include was not present in old freerdp versions, and we would need to patch configure.ac script to detect whether version.h file exists or not - I would rather suggest to drop support for old freerdp versions in VLC 2.2.x.

Then FREERDP_VERSION_* macros check are possibly not strictly needed for VLC >=2.2, but still welcome for VLC 2.1.x.

BTW: I think that this bug is a duplicate of bug 529640 (to me it looks like it was accidentally closed).
Comment 28 Nick Andrade 2015-05-06 07:13:20 UTC
Freerdp 1.2.1 is now marked stable so I agree with Pawel that updating the deps to that version for VLC 2.2.x should resolve this issue.
Comment 29 Ian Delaney (RETIRED) gentoo-dev 2015-05-06 12:05:31 UTC
(In reply to Nick Andrade from comment #28)
> Freerdp 1.2.1 is now marked stable so I agree with Pawel that updating the
> deps to that version for VLC 2.2.x should resolve this issue.

You are premature here.  Bug 547258 (=net-misc/freerdp-1.2.1_pre20150326 stable request) is still awaiting stabilising by alpha and arm arches. Considering all, just as well to await that, especially alpha, before editing
>=net-misc/freerdp-1.0.1:0=
to
>=net-misc/freerdp-1.2.1_pre20150326:0=
(since they are all snapshots.
Comment 30 Pacho Ramos gentoo-dev 2016-12-09 10:50:06 UTC
the deps restriction in 2.2.4 ebuild should solve this