I am trying to build an RPM for fedora 17.
I took the squid.spec and other files from:
squid-3.2.0.16-1.fc17.src.rpm
at
http://koji.fedoraproject.org/koji/buildinfo?buildID=305827

the basic cxx and cflags are:
RPM_OPT_FLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic"

and the compilation will fail in the middle.(regular compilation works)
at:
##start
g++ -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/etc/squid/squid.conf\" -DDEFAULT_SQUID_DATA_DIR=\"/usr/share/squid\" -DDEFAULT_SQUID_CONFIG_DIR =\"/etc/squid\" -I.. -I../include -I../lib -I../src -I../include -I../src -I/usr/include/libxml2 -I/usr/include/libxml2 -Wall -Wpo inter-arith -Wwrite-strings -Wcomments -Werror -pipe -D_REENTRANT -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpie -c -o tools.o tools.cc g++ -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/etc/squid/squid.conf\" -DDEFAULT_SQUID_DATA_DIR=\"/usr/share/squid\" -DDEFAULT_SQUID_CONFIG_DIR =\"/etc/squid\" -I.. -I../include -I../lib -I../src -I../include -I../src -I/usr/include/libxml2 -I/usr/include/libxml2 -Wall -Wpo inter-arith -Wwrite-strings -Wcomments -Werror -pipe -D_REENTRANT -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpie -c -o tunnel.o tunnel.cc
tools.cc: In function 'void no_suid()':
tools.cc:785:14: error: ignoring return value of 'int setuid(__uid_t)', declared with attribute warn_unused_result [-Werror=unused-result]
tools.cc: In function 'void enter_suid()':
tools.cc:760:39: error: ignoring return value of 'int setresuid(__uid_t, __uid_t, __uid_t)', declared with attribute warn_unused_result [-We rror=unused-result]
cc1plus: all warnings being treated as errors
make[3]: *** [tools.o] Error 1
##end

I changed the flags to:
CFLAGS="-O2 -pipe -m64 -mtune=generic"
CXXFLAGS="${CFLAGS}"
LDFLAGS="-pie"

and it seems to work fine.

the question is:
what is causing the problem?
is it squid code or unneeded flags?

Thanks,
Eliezer

--
Eliezer Croitoru
https://www1.ngtech.co.il
IT consulting for Nonprofit organizations
eliezer <at> ngtech.co.il

Reply via email to