Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 597628 - sys-apps/portage - FEATURES="nodoc" does not cover /usr/share/gtk-doc
Summary: sys-apps/portage - FEATURES="nodoc" does not cover /usr/share/gtk-doc
Status: RESOLVED DUPLICATE of bug 556352
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Enhancement/Feature Requests (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-10-20 16:27 UTC by cronolio
Modified: 2016-10-25 13:57 UTC (History)
3 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description cronolio 2016-10-20 16:27:36 UTC
QA: preinst
QA Notice: Symbolic link /usr/share/gtk-doc/html/udisks2 points to /usr/share/doc/udisks-2.1.7/html/udisks2 which does not exist.


emerge --info
Portage 2.3.0 (python 2.7.10-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.3, glibc-2.22-r4, 4.4.19-gentoo x86_64)
=================================================================
System uname: Linux-4.4.19-gentoo-x86_64-Pentium-R-_Dual-Core_CPU_E6600_@_3.06GHz-with-gentoo-2.2
KiB Mem:     4043364 total,    569484 free
KiB Swap:    3145724 total,   2506288 free
Timestamp of repository gentoo: Wed, 19 Oct 2016 08:30:32 +0000
sh bash 4.3_p48
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
ccache version 3.2.4 [enabled]
app-shells/bash:          4.3_p48::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.22.2::gentoo
dev-lang/python:          2.7.10-r1::gentoo, 3.4.3-r1::gentoo
dev-util/ccache:          3.2.4::gentoo
dev-util/cmake:           3.5.2-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.21.7::gentoo
sys-apps/sandbox:         2.10-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            4.9.3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.3::gentoo (virtual/os-headers)
sys-libs/glibc:           2.22-r4::gentoo
Repositories:

gentoo
    location: /mnt/mirror/portage
    sync-type: git
    sync-uri: git://github.com/gentoo-mirror/gentoo
    priority: -1000

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

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

local-crossdev
    location: /mnt/mirror/portage-crossdev
    masters: gentoo
    priority: 9999

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -O2 -pipe -mssse3 -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt /var/bind"
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.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=core2 -O2 -pipe -mssse3 -fomit-frame-pointer"
DISTDIR="/mnt/mirror/gentoo-distfiles/distfiles/"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news nodoc parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles/"
LANG="ru_RU.utf8"
LC_ALL=""
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j 3"
PKGDIR="/mnt/mirror/gentoo-distfiles/packages/"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
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"
USE="X a52 aac aacplus acl acpi alsa amd64 bash-completion berkdb branding bzip2 cairo cdda cdr cli consolekit cpudetection cracklib crypt cue cxx dbus djvu dri dts dvd dvdr emboss encode exif faac fam ffmpeg firefox flac gdbm gif glamor gnome-keyring gstreamer gtk gtk3 gtkstyle iconv jpeg lcms libnotify lzma mad matroska mmx mmxext mng modplug modules mp3 mp4 mpeg multilib musepack mysqli natspec ncurses networkmanager nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pulseaudio rar readline sdl seccomp session spell sse sse2 sse3 ssl ssse3 startup-notification svg theora tiff truetype twolame udev udisks unicode upower usb v4l vaapi vdpau vorbis vpx wavpack wxwidgets x264 xattr xcb xml xv xvid xvmc zlib" ABI_X86="64" ALSA_CARDS="hda-intel" 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" APACHE2_MPMS="prefork" 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 sse3 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" KERNEL="linux" L10N="ru" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_USER_TARGETS="x86_64" RUBY_TARGETS="ruby20" USERLAND="GNU" VIDEO_CARDS="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:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON
Comment 1 Mike Gilbert gentoo-dev 2016-10-20 16:35:31 UTC
This sound like something that should be fixed/worked-around in portage, not individual packages.
Comment 2 Zac Medico gentoo-dev 2016-10-20 16:40:11 UTC
Apparently we need to support an extensible list of documentation directories.
Comment 3 cronolio 2016-10-20 16:51:56 UTC
sys-power/upower-pm-utils-0.9.23-r2 media-libs/raptor-2.0.14 x11-libs/libxklavier-5.3 also have same issue. if it by portage.

also us mentioned here https://wiki.gentoo.org/wiki/Project:GNOME/Gnome_Team_Ebuild_Policies#Handling_gtk-doc_documentation
gtk-doc must be always installed in /usr/share/gtk-doc.
Comment 4 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2016-10-20 16:55:36 UTC
Apparently we need to kill nonsense FEATURES and teach people to use INSTALL_MASK.
Comment 5 cronolio 2016-10-20 17:29:42 UTC
(In reply to Michał Górny from comment #4)
> Apparently we need to kill nonsense FEATURES and teach people to use
> INSTALL_MASK.

why i should compile and generate there doc if i will not install it ?
Comment 6 Zac Medico gentoo-dev 2016-10-20 17:43:42 UTC
(In reply to cronolio from comment #5)
> (In reply to Michał Górny from comment #4)
> > Apparently we need to kill nonsense FEATURES and teach people to use
> > INSTALL_MASK.
> 
> why i should compile and generate there doc if i will not install it ?

FEATURES="nodoc" only removes files. You'd need a USE flag to control what is compiled/generated.
Comment 7 cronolio 2016-10-20 18:05:43 UTC
(In reply to Zac Medico from comment #6)
> (In reply to cronolio from comment #5)
> > (In reply to Michał Górny from comment #4)
> > > Apparently we need to kill nonsense FEATURES and teach people to use
> > > INSTALL_MASK.
> > 
> > why i should compile and generate there doc if i will not install it ?
> 
> FEATURES="nodoc" only removes files. You'd need a USE flag to control what
> is compiled/generated.

i have -doc globally and it is not help me with gtk-doc. also it take 179M /usr/share/gtk-doc
Comment 8 Mike Gilbert gentoo-dev 2016-10-20 18:28:51 UTC
(In reply to cronolio from comment #7)

This bug is about FEATURES="nodoc". Please file a separate bug if you want the gnome team to start making gtk-doc optional at build time.
Comment 9 Zac Medico gentoo-dev 2016-10-20 19:19:37 UTC
(In reply to Michał Górny from comment #4)
> Apparently we need to kill nonsense FEATURES and teach people to use
> INSTALL_MASK.

Yeah, maybe so. The overlap with INSTALL_MASK functionality certainly makes nodoc redundant.
Comment 10 Mart Raudsepp gentoo-dev 2016-10-22 15:34:12 UTC
1) udisks and other stuff must NOT put gtk-doc's in other places than the default $prefix/share/gtk-doc. It has no business being in $prefix/share/$PVR at all, even less so with different applying of FEATURES=nodoc there. At one point in the past just ssuominen was moving them against our advice.
This is the original bug reported here (the dead symbolic link QA notice) and should be fixed.

2) gtk-doc will not be made optional via a USE flag, because there are no extra runtime dependencies besides a tiny package that ships a .m4 file and a tool to very quickly fix up cross-references to point to your disk instead of online, where possible. Usually a full gtk-doc buildtime dependency tends to be wrong, or only for versions that aren't built from a full tarball; proper release tarballs using gtk-doc contain the documentation pre-built and have no generation during build (besides the link tweaking postinstall).


gtk-doc's are usually developer documentations, if looking into what INSTALL_MASK future group feature to put it once this mgorny spearheaded feature gets done. The usual tool to look at these is dev-util/devhelp and other devhelp infrastructure using things, e.g gnome-builder IDE built-in integration into these API gtk-docs.
Comment 11 Mike Gilbert gentoo-dev 2016-10-23 00:44:56 UTC
commit 9d20cecd1876a6f483ac43ad205043bedbf6da11
Author: Mike Gilbert <floppym@gentoo.org>
Date:   Sat Oct 22 20:42:46 2016 -0400

    sys-fs/udisks: stop symlinking gtk-doc
    
    Install html documentation in /usr/share/gtk-doc instead.
    
    Bug: https://bugs.gentoo.org/597628
    
    Package-Manager: portage-2.3.2

 .../udisks/{udisks-2.1.7.ebuild => udisks-2.1.7-r1.ebuild}   | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)


I leave it to the portage maintainers to ultimately decide what to do with this bug report.
Comment 12 Mike Gilbert gentoo-dev 2016-10-23 00:46:03 UTC
Sorry, that's 23e2baefa268a263c319287ccd6c4a8924d6b249; I pasted before pushing and had to rebase.
Comment 13 Mike Gilbert gentoo-dev 2016-10-25 13:57:52 UTC

*** This bug has been marked as a duplicate of bug 556352 ***