Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 455430

Summary: sci-libs/shapelib-1.3.0-r1 - Please make a rev-bump after changing ebuild to install headers.
Product: Gentoo Linux Reporter: eroen <gentoo>
Component: [OLD] LibraryAssignee: Sci-geo Project <sci-geosciences>
Severity: normal CC: chrschmitt, kripton, rose
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Package list:
Runtime testing required: ---
Attachments: gpsbabel-1.4.4 build log with faulty shapelib install

Description eroen 2013-02-04 13:17:31 UTC
A while back ( ) the shapelib-1.3.0-r1 ebuild was modified to install the relevant header files for the library. I should think packages using the library prior to this either failed to build or bundled the headers. Possibly earlier versions/revisions of the ebuild also installed the headers.

Now, when I try to update to gpsbabel-1.4.4 (from 1.4.3, built 2012-06-08, the update recently entered ~amd64), the build fails with the attached build log, due to shapelib headers not being installed.

As stated in the summary, I suggest making a rev-bump, copying the existing ebuild. While the change happened long ago, this is the first time since then any consumers *installed here* have been updated, so it's still relevant.

re-emerging shapelib before updating gpsbabel gives successful build.

Reproducible: Sometimes

Steps to Reproduce:
1. Go back in time to 2012-08-03T16:17:16, emerge sci-libs/shapelib
2. Return to the present, update @world, emerge sci-geosciences/gpsbabel
Actual Results:  
Build failure.

Expected Results:  
Updating world should have pulled in a revised version of sci-libs/shapelib , giving a successful build of gpsbabel.

$ date -Ins -d @$(cat /var/db/pkg/sci-libs/shapelib-1.3.0-r1/BUILD_TIME )
$ cat /var/db/pkg/sci-libs/shapelib-1.3.0-r1/CONTENTS
dir /usr
dir /usr/share
dir /usr/share/doc
dir /usr/share/doc/shapelib-1.3.0-r1
obj /usr/share/doc/shapelib-1.3.0-r1/ChangeLog.xz 9d2dd42abce1055001054282ff2941f1 1344003435
obj /usr/share/doc/shapelib-1.3.0-r1/README.xz e8f4e595fbe8d502d0b30f219ede009e 1344003435
obj /usr/share/doc/shapelib-1.3.0-r1/README.tree.xz 61181b23dbb99d2e6de3179cb18dbe6f 1344003435
dir /usr/lib64
obj /usr/lib64/ 165ee3ea1ac77d7a86bd86c2ee4def97 1344003436
sym /usr/lib64/ -> 1344003438
sym /usr/lib64/ -> 1344003438
dir /usr/bin
obj /usr/bin/dbfadd 66c53c8a45863778f1961aa99abb5f05 1344003436
obj /usr/bin/dbfdump 5011e459d45151e4ec4105c9b8d38d0c 1344003436
obj /usr/bin/dbfcreate 3b87c90b825b49383684797b37d6bd5e 1344003436
obj /usr/bin/shpadd 4df53a54b4f5828aee9dcf147503b7e8 1344003436
obj /usr/bin/shpdump b3e504b29877535cdcfccf268bb08361 1344003436
obj /usr/bin/shpcreate 8c989cfd3dca555f500971c5184438cb 1344003436
$ date -Ins -d @$(cat /var/db/pkg/sci-geosciences/gpsbabel-1.4.3/BUILD_TIME )
$ emerge --info
Portage 2.2.0_alpha161 (default/linux/amd64/10.0/desktop, gcc-4.7.2, glibc-2.16.0, 3.7.3-gentoo-occam1 x86_64)
System uname: Linux-3.7.3-gentoo-occam1-x86_64-Intel-R-_Core-TM-_i5-2520M_CPU_@_2.50GHz-with-gentoo-2.2
KiB Mem:     8012352 total,    702864 free
KiB Swap:   16777212 total,  16619240 free
Timestamp of tree: Mon, 04 Feb 2013 12:00:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
ccache version 3.1.9 [disabled]
app-shells/bash:          4.2_p42
dev-java/java-config:     2.1.12-r1000::progress
dev-lang/python:          2.7.4_pre20130120::progress, 3.2.4_pre20130120::progress
dev-util/ccache:          3.1.9
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.9.6-r3, 1.11.6, 1.12.6, 1.13.1
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.6.3, 4.7.2
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.7 (virtual/os-headers)
sys-libs/glibc:           2.16.0
Repositories: gentoo gentoo-haskell progress java-overlay glc eroen-overlay
ACCEPT_KEYWORDS="amd64 ~amd64"
CFLAGS="-march=corei7-avx -flto -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity -finline-functions -fpredictive-commoning -fgcse-after-reload -ftree-vectorize -O2 -pipe"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=corei7-avx -flto -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity -finline-functions -fpredictive-commoning -fgcse-after-reload -ftree-vectorize -O2 -pipe"
EMERGE_DEFAULT_OPTS="--jobs=4 --autounmask --with-bdeps=y --quiet-build --nospinner"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs collision-protect config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="/var/distfiles-falcon "
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude ChangeLog* --exclude /metadata/cache/ --stats --delay-updates"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTDIR_OVERLAY="/var/lib/layman/haskell /var/lib/layman/progress /var/lib/layman/java-overlay /var/lib/layman/glc /usr/local/portage"
USE="X a52 aac acl acpi alsa amd64 apng audio audiofile avx bash-completion bdf berkdb bluray bzip2 cairo caps cb cdda cdparanoia cdr cjk cli corefonts cracklib crypt cups curl cxx ddate declarative detex device-mapper dga dia djvu dmapi dri dts dvd dvdr dvi2tty dvipdfm ebook egl emboss encode exif fam ffmpeg fftw firefox fits flac fontconfig fortran g3dvl gallium gbm gcj gcrypt gdbm gif gimp git glib glibc-omitfp gmp gnuplot gnutls gold gpm graphics graphviz gs gstreamer gtk gtk3 highlight hscolour iconv icu id3tag idn imagemagick imlib inotify iproute2 ipv6 jbig jpeg jpeg2k jpg json kde kde4 kpathsea latex lcms libffi libmpeg2 libssh2 libv4l luatex lvm lvm2 lzma lzo mad man metric mikmod mkv mms mmx mng modules mp3 mp4 mpeg mpg123 mudflap multilib multimedia musepack ncurses netlink nptl nut ocr odbc offensive ogg opengl openmp openvg optimization optimized-qmake pam pango pch pcre pdf pgf phonon png postscript ppds private-headers pstricks pth publishers pulseaudio python3 qt3support qt4 raw readline samba sbsms scanner science sdl session smp sna sndfile speex spell sqlite sse sse2 sse3 sse4 sse4_1 sse4_2 ssh ssl ssse3 svg t1lib tcpd tesseract theora threads tiff tls truetype udev unicode usb v4l v4l2 vaapi video vorbis vpx webkit webp wmf wxwidgets x264 xanim xattr xcb xcomposite xetex xfs xft xinerama xml xmlpatterns xorg xosd xpm xrandr xv xvid xvmc xz zlib zsh-completion" ABI_X86="64" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" 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" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CURL_SSL="gnutls" DRACUT_MODULES="btrfs caps crypt crypt-gpg lvm syslog" 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 ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="mouse keyboard evdev synaptics wacom" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en gb us en_US en_GB eng jbo no nb nn no_NO nb_NO nn_NO nor" PHP_TARGETS="php5-3 php5-4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" QEMU_SOFTMMU_TARGETS="x86_64 i386" RUBY_TARGETS="ruby18" SANE_BACKENDS="plustek" USERLAND="GNU" VIDEO_CARDS="intel i915 i965" 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"
Comment 1 eroen 2013-02-04 13:24:26 UTC
Created attachment 337910 [details]
gpsbabel-1.4.4 build log with faulty shapelib install
Comment 2 eroen 2013-02-04 15:24:28 UTC
This is probably a duplicate of , but I'm better at diagnosing than the tinderbox.
Comment 3 Christian Schmitt 2013-02-07 08:43:22 UTC
Agreed and confirmed. shapelib does not install needed headers for gpsbabel (at least).
Comment 4 Christian Schmitt 2013-02-07 08:51:51 UTC
Scratch that. I just took a look at the shapelib ebuild and it contains instructions to install the header. My local install didn't have the header (no idea why). So i just re-emerged and now all is fine.
Comment 5 eroen 2013-02-07 12:28:41 UTC
@Christian: You describe the expected course of events for someone experiencing this bug.

If you look closely at the cvs log, you'll find that the ebuild didn't install the headers from Thu Aug 2 23:24:26 2012, when it was first created, to Sun Aug 5 21:53:55 2012. 

That means anyone on ~amd64, ~ppc or ~x86 who had shapelib installed and updated their system during that 3-day window got faulty installs missing the headers, and will only get the headers installed when shapelib is reinstalled manually or updated to a new version or revision.

In my opinion, and I believe according to policy, this problem should have been avoided by increasing the revision number of the ebuild when it was modified since the ebuild change modifies what is installed to the user's filesystem. Everyone who had updated to the faulty ebuild would have had to rebuild it anyway, and increasing the revision number would have had no cost.

What makes this more complicated is the amount of time that has passed, which means many people now have fully working shapelib installs, and don't need to rebuild it.
Comment 6 Andreas Sturmlechner gentoo-dev 2017-01-21 16:24:26 UTC
commit:     ec4f4a51d580398ea382a606d911f0a3aca68379

sci-libs/shapelib: 1.4.0 version bump, switch to autotools

I guess this qualifies as a revbump, so that this can be resolved fixed now.
Comment 7 Andreas Sturmlechner gentoo-dev 2017-01-21 16:25:53 UTC
*** Bug 456404 has been marked as a duplicate of this bug. ***