diff --git a/emacs.changes b/emacs.changes index 17b94e0..c21681a 100644 --- a/emacs.changes +++ b/emacs.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Mar 17 14:25:12 CET 2010 - werner@suse.de + +- gcc45 seems not to work with emacs switch to gcc43 (bnc#587307) + ------------------------------------------------------------------- Wed Feb 24 18:13:47 UTC 2010 - coolo@novell.com diff --git a/emacs.spec b/emacs.spec index e3efb0d..9d5dcf4 100644 --- a/emacs.spec +++ b/emacs.spec @@ -20,6 +20,7 @@ Name: emacs BuildRequires: alsa-devel bind-devel dbus-1-devel elfutils fdupes fonts-config freetype2-devel giflib-devel gpm gtk2-devel krb5-devel libjpeg-devel libotf-devel libpng-devel librsvg-devel libtiff-devel m17n-lib-devel ncurses-devel nmh sendmail texinfo update-desktop-files xaw3d-devel xorg-x11-devel +BuildRequires: gcc43 Url: http://www.gnu.org/software/emacs/ License: GPLv2+ Group: Productivity/Editors/Emacs @@ -252,26 +253,40 @@ fi %patch -P 18 -p1 %build -cflags () -{ - local flag=$1; shift - case "${RPM_OPT_FLAGS}" in - *${flag}*) return - esac - if test -n "$1" && gcc -Werror $flag -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then - local var=$1; shift - eval $var=\${$var:+\$$var\ }$flag - fi - if test -n "$1" && g++ -Werror $flag -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then - local var=$1; shift - eval $var=\${$var:+\$$var\ }$flag - fi -} -if test "elisp$(sed -rn '/^INFO_TARGET/{s@.*=\s*@@; :j; s@(\.\./info|\$[\(\{]infodir[\)\}])/@@g; /\\$/{N; s@\\\n\s*@@; b j;}; H;};${g;s/[[:space:]]+/ /g;p;}' doc/*/Makefile.in)" != "%info_files" -then - echo Please update info_files >&2 - exit 1 -fi + CC=gcc-4.3 + cflags () + { + local flag=$1; shift + local var=$1; shift + test -n "${flag}" -a -n "${var}" || return + case "${!var}" in + *${flag}*) return + esac + case "$flag" in + -Wl,*) + set -o noclobber + echo 'int main () { return 0; }' > ldtest.c + if ${CC:-gcc} -Werror $flag -o /dev/null -xc ldtest.c > /dev/null 2>&1 ; then + eval $var=\${$var:+\$$var\ }$flag + fi + set +o noclobber + rm -f ldtest.c + ;; + *) + if ${CC:-gcc} -Werror $flag -S -o /dev/null -xc /dev/null > /dev/null 2>&1 ; then + eval $var=\${$var:+\$$var\ }$flag + fi + if ${CXX:-g++} -Werror $flag -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1 ; then + eval $var=\${$var:+\$$var\ }$flag + fi + esac + } + + if test "elisp$(sed -rn '/^INFO_TARGET/{s@.*=\s*@@; :j; s@(\.\./info|\$[\(\{]infodir[\)\}])/@@g; /\\$/{N; s@\\\n\s*@@; b j;}; H;};${g;s/[[:space:]]+/ /g;p;}' doc/*/Makefile.in)" != "%info_files" + then + echo Please update info_files >&2 + exit 1 + fi VERSION=%{version} %ifarch noarch SYS="--build=%{_build_cpu}-suse-%{_build_os} @@ -280,8 +295,8 @@ VERSION=%{version} SYS="--build=%{_target_cpu}-suse-%{_build_os} " %endif - CFLAGS="${RPM_OPT_FLAGS} -D_GNU_SOURCE" - LDFLAGS= + CFLAGS="${RPM_OPT_FLAGS} -D_GNU_SOURCE" +LDFLAGS= cflags -std=gnu89 CFLAGS cflags -pipe CFLAGS cflags -Wno-pointer-sign CFLAGS @@ -291,7 +306,7 @@ VERSION=%{version} cflags -Wl,-O2 LDFLAGS cflags -Wl,--hash-size=65521 LDFLAGS %ifarch ia64 - CFLAGS=$(echo "${CFLAGS}"|sed -r 's/-O[0-9]?/-O1/g') + CFLAGS=$(echo "${CFLAGS}"|sed -r 's/-O[0-9]?/-O1/g') %endif SMALL="-DSYSTEM_PURESIZE_EXTRA=25000 \ -DSITELOAD_PURESIZE_EXTRA=10000 \ @@ -299,9 +314,7 @@ VERSION=%{version} LARGE="-DSYSTEM_PURESIZE_EXTRA=55000 \ -DSITELOAD_PURESIZE_EXTRA=10000 \ " - CC=gcc -LANG=POSIX -LC_CTYPE=ISO-8859-1 + LANG=POSIX; LC_CTYPE=ISO-8859-1 export CC CFLAGS LANG LC_CTYPE LDFLAGS PREFIX="--prefix=%{_prefix} \ --mandir=%{_mandir} \