Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 85493 - php-4.3.x lackes arch checks for ia64/s390
Summary: php-4.3.x lackes arch checks for ia64/s390
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: IA64 Linux
: High normal (vote)
Assignee: PHP Bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-03-16 05:20 UTC by Guillaume Baudot
Modified: 2005-05-10 22:18 UTC (History)
1 user (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 Guillaume Baudot 2005-03-16 05:20:39 UTC
In file (/var/tmp/portage/{,mod_}php-4.3.10/work)/php-4.3.10/Zend/zend_strtod.c
line 232/233, text here is a comment, and there should be some instructions here (as there is none between #ifdef and #endif...)

Reproducible: Always
Steps to Reproduce:
1.emerge sync (if needed)
2.emerge ={,mod_}php-4.3.10, or emerge -Du world
3.wait and see

Actual Results:  
emerge failure on compilation error because of lines 232/233 that are uncommented

Expected Results:  
Compile and install ?..

#emerge info :(Just for the fun, it's not the matter here !)
#on athlon:
Portage 2.0.51.19 (default-linux/x86/2004.3, gcc-3.4.3-20050110,
glibc-2.3.4.20050125-r0, 2.6.11-gentoo-r2 i686)
=================================================================
System uname: 2.6.11-gentoo-r2 i686 AMD Athlon(tm) Processor
Gentoo Base System version 1.6.10
Python:              dev-lang/python-2.3.5,dev-lang/python-2.2.3-r5 [2.3.5 (#1,
Feb 22 2005, 00:34:10)]distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2)
(default port 3632) [disabled]
dev-lang/python:     2.3.5, 2.2.3-r5
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.8.5-r3, 1.6.3, 1.9.5, 1.4_p6, 1.5, 1.7.9-r1
sys-devel/binutils:  2.15.92.0.2-r6
sys-devel/libtool:   1.5.14
virtual/os-headers:  2.4.22-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=athlon -O3 -pipe -fforce-addr -ffast-math -funroll-loops
-falign-functions=4"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.1/share/config
/usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config
/usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb
/usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon -O3 -pipe -fforce-addr -ffast-math -funroll-loops
-falign-functions=4"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://gentoo.inode.at http://gentoo.oregonstate.edu
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.fr.gentoo.org/gentoo-portage"
USE="x86 X aalib alsa apm arts avi berkdb bitmap-fonts bonobo cdr crypt curl dba
directfb doc dvd emboss encode esd fam font-server fortran gd gdbm ggi gif gnome
gpm gstreamer gtk gtk2 guile imlib ipv6 java jpeg kde kerberos krb4 ldap libg++
libwww mad mikmod motif mozilla mp3 mpeg mysql nas ncurses nls oggvorbis opengl
oss pam pdflib perl png python qt quicktime readline samba sdl slang spell ssl
svga tcltk tcpd tiff truetype truetype-fonts type1-fonts unicode usb videos wmf
wxwindows xinerama xml xml2 xmms xv zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS

#on Itanium:
Portage 2.0.51.19 (default-linux/ia64/2004.3, gcc-3.3.2,
glibc-2.3.2-r1,glibc-2.3.2-r3,glibc-2.3.4.20041102-r0,glibc-2.3.2-r11,glibc-2.3.2-r9,glibc-2.3.2-r12,
2.6.8-gentoo-r3 ia64)
=================================================================
System uname: 2.6.8-gentoo-r3 ia64
Gentoo Base System version 1.4.16
Python:             
dev-lang/python-2.2.3-r1,dev-lang/python-2.3.4-r1,dev-lang/python-2.3.4,dev-lang/python-2.2.3-r5,dev-lang/python-2.3.3
[2.3.4 (#1, Mar  8 2005, 17:25:32)]
dev-lang/python:     2.2.3-r1, 2.3.4-r1, 2.3.4, 2.2.3-r5, 2.3.3
sys-devel/autoconf:  2.57-r1, 2.58, 2.58-r1, 2.59-r4, 2.59-r5, 2.13, 2.59-r6
sys-devel/automake:  1.7.5-r2, 1.7.8, 1.8.3, 1.8.5-r1, 1.5, 1.8.5-r3, 1.6.3,
1.7.9-r1, 1.4_p6, 1.9.4
sys-devel/binutils:  2.14.90.0.2, 2.14.90.0.6-r3, 2.14.90.0.6-r6,
2.14.90.0.7-r4, 2.14.90.0.8-r1
sys-devel/libtool:   1.4.3-r1, 1.4.3-r4, 1.5.2-r5, 1.5.2-r7, 1.5.10-r4
virtual/os-headers:  2.4.19, 2.4.19-r1, 2.4.23
ACCEPT_KEYWORDS="ia64"
AUTOCLEAN="no"
CFLAGS="-O2 -pipe"
CHOST="ia64-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3/share/config /usr/share/config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="aalib acpi alsa apache2 berkdb bitmap-fonts crypt cups curl dba doc dvd
encode fam font-server fortran gd gdbm gif ia64 imap imlib jpeg ldap libg++
libwww maildir mikmod mpi mysql ncurses nls oggvorbis oss pam pam-mysql pdflib
perl png python readline samba sasl snmp spell ssl tcpd tiff truetype
truetype-fonts type1-fonts usb vhosts xml2 zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS


Commenting out the 2 lines after unpacking the archive is sufficient to obtain a
succesfull install on both my ~x86 and ia64 machines, meanwhile I'm afraid there
should be some defines here...
Comment 1 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2005-03-16 10:41:21 UTC
lines 232/233 are a purposeful error.
#if defined(IEEE_LITTLE_ENDIAN) + defined(IEEE_BIG_ENDIAN) + defined(VAX) + \
    defined(IBM) != 1
Exactly one of IEEE_LITTLE_ENDIAN IEEE_BIG_ENDIAN, VAX, or
IBM should be defined.
#endif

If your machine is falling into that, something is REALLY broken with your headers.
Comment 2 Guillaume Baudot 2005-03-17 02:05:21 UTC
Arf, your answer frightens me :Brr:
But if I know I have problems on my Itanium server (and particularily system headers... :( ), I don't understand how I could have VAX and both IEEE_LITTLE_ENDIAN && IEEE_BIG_ENDIAN defined for my ~x86 desktop machine (where the same problem happened too at compile time...).

Bah, lets' wait ans see!..
THX
Comment 3 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2005-03-17 02:15:07 UTC
For trying to figure out your machine's problem, I'd suggest the following approach:
CFLAGS="-save-temps -O2 -pipe -ggdb3" emerge php

then when it fails, go and find the pre-processed source for zend_strtod.c, and attach it here. It will show the source of the definitions for VAX/IBM/IEEE_LITTLE_ENDIAN/IEEE_BIG_ENDIAN.
Comment 4 Guillaume Baudot 2005-03-17 05:49:32 UTC
WOW looks quite complicated !..

Tried to do as U said:
CFLAGS="-save-temps -O2 -pipe -ggdb3" emerge  mod_php

...and did not find really where to look for...
Had a look at /var/tmp/portage/mod_php-4.3.10/work/php-4.3.10/ content. All I could see in send_strtod.i is that the offending "Exactly one of IEEE_LITTLE_ENDIAN IEEE_BIG_ENDIAN, VAX, or IBM should be defined." is present.
Then I too think my problem stands in /usr/include tree rather than php sources !

If the content of the files can be helpful, I put an archive of the offending dir on my home web server :
http://neuftroua.dyndns.org/guillaume/mod_php-4.3.10-fail.tar.bz2
as well as the "strtod.*" files
http://neuftroua.dyndns.org/guillaume/zend_strtod.i
http://neuftroua.dyndns.org/guillaume/zend_strtod.h
http://neuftroua.dyndns.org/guillaume/zend_strtod.c

I think I'll try to install mod_php5 !..
Comment 5 SpanKY gentoo-dev 2005-03-17 18:09:39 UTC
this has nothing to do with ia64's system headers and everything to do with php being stupid

i added a patch to fix this in 5.x a while ago, feel free to back port it ... $FILESDIR/${PN}-5.0.3-missing-arches.patch

and the upside, >php-5.0.3 recoded the checks to not suck, so php-5.0.4 shouldnt require the patch
Comment 6 Sebastian Bergmann (RETIRED) gentoo-dev 2005-03-18 04:02:54 UTC
The path has been merged from the HEAD (next release: PHP 5.1.0) and PHP_5_0 (next release: PHP 5.0.4) branches to the PHP_4_3 (next release: PHP 4.3.11) branch.

PHP 4.3.11, which will be released soon, will have this patch.
Comment 7 Guillaume Baudot 2005-03-18 17:59:36 UTC
Thanks for your answers guys :)

Links in #4 are down, in fact server (web & mail) is down for the moment :(
Feel free to remove them...
Comment 8 Sebastian Bergmann (RETIRED) gentoo-dev 2005-05-10 22:18:03 UTC
Fixed in PHP 4.3.11.