Re: [squid-users] Build fail for versions squid-3.0.STABLE21 and later on IBM PowerPC64

From: Steve <cybersteve99_at_gmail.com>
Date: Fri, 16 Apr 2010 22:26:00 +0100

Amos

Many Thanks. Have tried the latest snapshot and all is fine. Thanks
for swift fix.

Steve

On Fri, Apr 16, 2010 at 2:46 AM, Amos Jeffries <squid3_at_treenet.co.nz> wrote:
> Steve wrote:
>>
>> Hi
>> This is my first post to such a list so please go easy with me and I
>> hope I have found the correct place. I have a problem compiling any
>> release after  version squid-3.0.STABLE20 on IBM Power ppc64 running
>> Red Hat Enterprise Linux AS release 4 (Nahant Update 8).
>> I have been using Squid on this platform for about 5 years and been
>> compiling previous releases without any issues. I have done the usual
>> googling and searching of the list but it seems I am unique in
>> experiencing this problem!
>>
>> The key errors I am seeing are displayed in the back end of the log
>> extract below and seem to relate to "rfc1738.c: In function
>> `rfc1738_unescape'" and the warnings generated relating to comparison
>> is always false.
>> Compiler is gcc version 3.4.6 20060404 (Red Hat 3.4.6-11).
>>
>> mv -f .deps/md5.Tpo .deps/md5.Po
>> gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I../include
>> -Werror -Wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes
>> -Wmissing-declarations -Wcomments -Wall -g -O2 -MT radix.o -MD -MP -MF
>> .deps/radix.Tpo -c -o radix.o radix.c
>> mv -f .deps/radix.Tpo .deps/radix.Po
>> gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I../include
>> -Werror -Wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes
>> -Wmissing-declarations -Wcomments -Wall -g -O2 -MT rfc1035.o -MD -MP
>> -MF .deps/rfc1035.Tpo -c -o rfc1035.o rfc1035.c
>> mv -f .deps/rfc1035.Tpo .deps/rfc1035.Po
>> gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I../include
>> -Werror -Wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes
>> -Wmissing-declarations -Wcomments -Wall -g -O2 -MT rfc1123.o -MD -MP
>> -MF .deps/rfc1123.Tpo -c -o rfc1123.o rfc1123.c
>> mv -f .deps/rfc1123.Tpo .deps/rfc1123.Po
>> gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I../include
>> -Werror -Wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes
>> -Wmissing-declarations -Wcomments -Wall -g -O2 -MT rfc1738.o -MD -MP
>> -MF .deps/rfc1738.Tpo -c -o rfc1738.o rfc1738.c
>> rfc1738.c: In function `rfc1738_unescape':
>> rfc1738.c:209: warning: comparison is always false due to limited
>> range of data type
>> rfc1738.c:212: warning: comparison is always false due to limited
>> range of data type
>> make[2]: *** [rfc1738.o] Error 1
>> make[2]: Leaving directory `/arc1/Squid/squid-3.0.STABLE21/lib'
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory `/arc1/Squid/squid-3.0.STABLE21/lib'make:
>> *** [all-recursive] Error 1
>> Making install in lib
>> make[1]: Entering directory `/arc1/Squid/squid-3.0.STABLE21/lib'
>> Making all in libTrie
>> make[2]: Entering directory `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie'
>> make  all-recursive
>> make[3]: Entering directory `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie'
>> Making all in src
>> make[4]: Entering directory
>> `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie/src'
>> make[4]: Nothing to be done for `all'.
>> make[4]: Leaving directory
>> `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie/src'
>> Making all in test
>> make[4]: Entering directory
>> `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie/test'
>> make[4]: Nothing to be done for `all'.
>> make[4]: Leaving directory
>> `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie/test'
>> make[4]: Entering directory `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie'
>> make[4]: Nothing to be done for `all-am'.
>> make[4]: Leaving directory `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie'
>> make[3]: Leaving directory `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie'
>> make[2]: Leaving directory `/arc1/Squid/squid-3.0.STABLE21/lib/libTrie'
>> make[2]: Entering directory `/arc1/Squid/squid-3.0.STABLE21/lib'
>> gcc -DHAVE_CONFIG_H -I. -I../include -I../include -I../include
>> -Werror -Wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes
>> -Wmissing-declarations -Wcomments -Wall -g -O2 -MT rfc1738.o -MD -MP
>> -MF .deps/rfc1738.Tpo -c -o rfc1738.o rfc1738.c
>> rfc1738.c: In function `rfc1738_unescape':
>> rfc1738.c:209: warning: comparison is always false due to limited
>> range of data type
>> rfc1738.c:212: warning: comparison is always false due to limited
>> range of data type
>> make[2]: *** [rfc1738.o] Error 1
>> make[2]: Leaving directory `/arc1/Squid/squid-3.0.STABLE21/lib'
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory `/arc1/Squid/squid-3.0.STABLE21/lib'
>> make: *** [install-recursive] Error 1
>>
>> I get the same for  squid-3.0.STABLE21, squid-3.0.STABLE22,
>> squid-3.0.STABLE23, squid-3.0.STABLE24 and squid-3.0.STABLE25.
>> Squid-3.1.1 also will not compile for me.
>>
>> This suggests to me that lib/rfc1738.c is an area to look at and I
>> find that the file is different between releases. If I copy the
>> version from squid-3.0.STABLE20 to squid-3.0.STABLE21 and try again
>> then the build works. I don’t know what the knock on effect of this
>> would be but I guess a more permanent fix at source may be possible.
>>
>> Any help on getting these working without copying source files between
>> releases would be gratefully received.
>>
>> Thanks
>> Steve
>
> The 3.0.STABLE21 rfc1738 code change was a security vulnerability fix which
> contained some GCCisms.
>
> This as been corrected in the current 3.1.1 snapshot and will be bundled
> with 3.1.2.
>
>
> Amos
> --
> Please be using
>  Current Stable Squid 2.7.STABLE9 or 3.1.1
>
Received on Fri Apr 16 2010 - 21:26:10 MDT

This archive was generated by hypermail 2.2.0 : Sat Apr 17 2010 - 12:00:05 MDT