The simpliest would be to create a patch that is included *after* the configure-generated .h file. I do not exactly now, in which PHP/Zend specific .h file the configure generated php_config.h one is included, but that would be the place to place the following macro:
#if defined(MACOSX) (I do not know the exact macro for detecting osx) # undef WORDS_BIGENDIAN # define WORDS_BIGENDIAN __BIG_ENDIAN__ #endif Just an idea. Or just update to a newer autoconf version that can detect this (I know newer ones do this correctly). But this is not possible for PHP. ----- Uwe Schindler [EMAIL PROTECTED] - http://www.php.net NSAPI SAPI developer Bremen, Germany > -----Original Message----- > From: Antony Dovgal [mailto:[EMAIL PROTECTED] > Sent: Friday, July 27, 2007 11:46 AM > To: internals@lists.php.net > Subject: Re: [PHP-DEV] php5 as universal binary (Mac OS X) > > Intel Mac is little-endian, PPC Mac is big-endian. > Endiannes is detected during configure run, that's why the binary works > fine on Intel Mac, but not on PPC. > > To make it work on both you either need to build separate binaries on PPC > and Intel, and > then merge them (IIRC that was possible), or you need to patch PHP > sources. > In my case patching PHP sources was the easiest solution, so I replaced > WORDS_BIGENDIAN macro (defined by configure) with __BIG_ENDIAN__ (defined > by Mac GCC in compile time). > > If anyone have any suggestions on how to improve universal binary support > so that > it would not require patching, I'd gladly listen to them. > > On 27.07.2007 13:15, Christian Speich wrote: > > hello, > > > > I have asked in the gernal php list and they say I should be ask here: > > > > I have an problem with php5 as universal binary on Mac OsX. > > > > The universal binary was build on an intel mac and it works good... on > > an intel mac ;) > > > > When a friend it try on an ppc mac he had some problems. > > > > For example phpsqliteadmin say this error: > > Fatal error: Balloc() allocation exceeds list boundary > > in /Applications/xampp/xamppfiles/phpsqliteadmin/SPSQLite.class.php on > > line 998 > > > > And phpmyadmin loads and loads and loads and loads... > > > > BUT my php4 universal binary works perfect on intel and ppc macs... :/ > > > > My configure for php5 look like this: > > > > PREFIX=/Applications/xampp/xamppfiles > > SYSCONFDIR=/Applications/xampp/etc > > > > export LD_RUN_PATH="$PREFIX/lib" > > export LD_LIBRARY_PATH="$PREFIX/lib" > > export CFLAGS="-I$PREFIX/include -L$PREFIX/lib > > -isysroot /Developer/SDKs/MacOSX10.4u.sdk" > > export CPPFLAGS="-I$PREFIX/include" > > export CXXFLAGS="-I$PREFIX/include -L$PREFIX/lib" > > export LDFLAGS="-L$PREFIX/lib -I$PREFIX/include" > > export SOFLAGS="-L$PREFIX/lib" > > > > CFLAGS="$CFLAGS -arch i386 -arch ppc" ./configure --prefix=$PREFIX > > --program-suffix=-5.2.3 --libdir=$PREFIX/lib/php/php5 --includedir= > > $PREFIX/include/php/php5 --with-apxs2=$PREFIX/bin/apxs > > --with-config-file-path=$SYSCONFDIR --with-mysql=$PREFIX --disable-debug > > --enable-bcmath --enable-calendar --enable-ctype --enable-dbase > > --enable-discard-path --enable-exif --enable-filepro > > --enable-force-cgi-redirect --enable-ftp --enable-gd-imgstrttf > > --enable-gd-native-ttf --with-ttf --enable-magic-quotes > > --enable-memory-limit --enable-safe-mode --enable-shmop > > --enable-sigchild --enable-sysvsem --enable-sysvshm --enable-track-vars > > --enable-trans-sid --enable-wddx --enable-yp --with-ftp --with-ncurses= > > $PREFIX --with-gdbm=$PREFIX --with-jpeg-dir=$PREFIX --with-png-dir= > > $PREFIX --with-freetype-dir=$PREFIX --without-xpm --with-zlib=yes > > --with-zlib-dir=$PREFIX --with-openssl=$PREFIX --with-expat-dir=$PREFIX > > --enable-xslt=$PREFIX --with-xsl=$PREFIX --with-dom=$PREFIX --with-ldap= > > $PREFIX --with-gd=$PREFIX --with-mysql-sock=$PREFIX/var/mysql/mysql.sock > > --with-mcrypt=$PREFIX --with-mhash=$PREFIX --enable-sockets > > --with-curl=$PREFIX --enable-mbregex --enable-zend-multibyte --with-zip= > > $PREFIX --enable-exif --with-sqlite --with-libxml-dir=$PREFIX > > --enable-soap --enable-pcntl --enable-dbx --with-mysqli= > > $PREFIX/bin/mysql_config --with-bz2=$PREFIX --with-pear= > > $PREFIX/lib/php/pear --with-mssql=$PREFIX --with-imap-dir=$PREFIX > > --with-imap=$PREFIX --enable-mbstring=all --with-pgsql=shared,/usr > > --with-gettext=$PREFIX > > > > I don't think thats this are errors from the php-scripts, I think thats > > an problem with php. > > > > I hope you can help me to resolve this problem > > > > thanks, > > kleinweby > > > > > -- > Wbr, > Antony Dovgal > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php