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

Bug 396699

Summary: dev-perl/DBD-SQLite-1.350.0 does not respect CFLAGS and hardcodes libdir, resulting in cross-compile failure
Product: Gentoo Linux Reporter: Thomas Sachau <tommy>
Component: New packagesAssignee: Gentoo Perl team <perl>
Status: RESOLVED DUPLICATE    
Severity: normal CC: NightNord
Priority: Normal    
Version: autobuilds   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build.log

Description Thomas Sachau gentoo-dev 2012-01-01 17:16:36 UTC
Created attachment 297551 [details]
build.log

this line (from build.log) is not respecting CFLAGS:

x86_64-pc-linux-gnu-gcc -c  -I. -I/usr/lib32/perl5/vendor_perl/5.12.4/i686-linux/auto/DBI -I/usr/include -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wl,-Bsymbolic -O2   -DVERSION=\"1.35\" -DXS_VERSION=\"1.35\" -fPIC "-I/usr/lib32/perl5/5.12.4/i686-linux/CORE"  -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_COLUMN_METADATA -DNDEBUG=1 -DHAVE_USLEEP=1 -DTHREADSAFE=0 SQLite.c

this line (from build.log) contains the hardcoded libdir (should be $(get_libdir), so on amd64 either lib64 or lib32, depending on the target):

LD_RUN_PATH="/usr/lib" x86_64-pc-linux-gnu-gcc  -shared -march=native -O2 -pipe -m32 -Wl,--as-needed -Wl,--hash-style=gnu -m32 -Wl,-Bsymbolic SQLite.o dbdimp.o -Wl,--as-needed -Wl,--hash-style=gnu -m32 -o blib/arch/auto/DBD/SQLite/SQLite.so        \
   -L/usr/lib -lsqlite3         \

emerge --info:


Portage 2.2.0_alpha84-r1 (hardened/linux/amd64/10.0, gcc-4.5.3, glibc-2.14.1-r1, 2.6.32-gentoo-r39 x86_64)
=================================================================
System uname: Linux-2.6.32-gentoo-r39-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q6600_@_2.40GHz-with-gentoo-2.1
Timestamp of tree: Sa 3. Dez 16:06:39 CET 2011
app-shells/bash:          4.2_p20
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.6.7-r2, 2.7.2-r3
dev-util/cmake:           2.8.6-r4
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1
sys-apps/openrc:          0.9.7
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.2
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.3-r2
sys-devel/gcc-config:     1.5-r2
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 2.6.39 (virtual/os-headers)
sys-libs/glibc:           2.14.1-r1
Repositories: gentoo enlightenment sunrise multilib Meins
Installed sets: @enlightenment, @fonts, @system
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/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/home/thomas/daten/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going"
FEATURES="assume-digests binpkg-logs collision-protect distlocks ebuild-locks fixlafiles metadata-transfer news parallel-fetch preserve-libs protect-owned sandbox sfperms sign strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox"
FFLAGS=""
GENTOO_MIRRORS="http://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo"
LANG="de_DE.UTF-8@euro"
LDFLAGS="-Wl,--as-needed -Wl,--hash-style=gnu"
LINGUAS="de"
MAKEOPTS="-j5 --load-average=8"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/home/thomas/daten"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/enlightenment /usr/local/portage/layman/sunrise /usr/local/portage/layman/multilib-portage /usr/local/portage"
SYNC="cvs://tommy@cvs.gentoo.org:/var/cvsroot"
USE="3dnow X alsa amd64 berkdb cli cracklib crypt cups custom-cflags custom-cxxflags custom-optimization cxx dri gpm hardened java5 java6 justify mmx modules mudflap multilib ncurses nls nptl nptlonly nsplugin ogg openmp pam pax_kernel pppd readline scanner session sse sse2 ssl sysfs tcpd unicode urandom v4l vorbis xorg zlib" ALSA_CARDS="hda-intel" 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="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 stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap 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" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" MULTILIB_ABIS="amd64 x86" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" 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" multilib_abi="amd64 x86"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Petr Polezhaev 2012-08-02 17:16:38 UTC
Caused by perl-module.eclass:171:
171 #           OPTIMIZE="${CFLAGS}" \

If uncomment that line and place it above, where it should be:
165         set -- \
166             OTHERLDFLAGS="${LDFLAGS}" \
167             OPTIMIZE="${CFLAGS}" \
168             "${mymake_local[@]}"
169         einfo "emake" "$@"
170         emake "$@" \
171             || die "Compilation failed"

Everything works fine. Any problems with CFLAGS in perl modules?
Comment 2 Andreas K. Hüttel archtester gentoo-dev 2014-12-03 00:45:27 UTC
> Everything works fine. Any problems with CFLAGS in perl modules?

Yes, lots of and we know. So I'm closing this particular bug, there's a few others around. 

A fix is planned for EAPI=6, but the changes are too intrusive for just flipping settings of existing packages in the eclass.

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