diff options
author | Daniel Hellstrom <daniel@gaisler.com> | 2013-03-19 13:29:58 +0100 |
---|---|---|
committer | Daniel Hellstrom <daniel@gaisler.com> | 2013-03-19 13:29:58 +0100 |
commit | 0e0c086ee95d95fa7e2edf56f313758a892e1cac (patch) | |
tree | b4f2de0d2b2587e59259d12eaeb54cc19629f169 /contrib/crossrpms | |
parent | 944f85f0e00877ca946efda9cd1767c4ce2c449b (diff) | |
parent | 0ae9ee1da48d7deab49e42aa789ba02de8501047 (diff) |
Merge official 4.10.2 sources into rcc-1.2 branchrcc-v1.2.9
Diffstat (limited to 'contrib/crossrpms')
64 files changed, 1916 insertions, 3965 deletions
diff --git a/contrib/crossrpms/gcc/gccnewlib.add b/contrib/crossrpms/gcc/gccnewlib.add index 0e636cd821..abd52026cb 100644 --- a/contrib/crossrpms/gcc/gccnewlib.add +++ b/contrib/crossrpms/gcc/gccnewlib.add @@ -62,12 +62,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -80,6 +74,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -168,7 +168,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -193,14 +192,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: @rpmprefix@@tool_target@-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - -%if %build_gcj -# Building gcj requires bison and zlib -BuildRequires: bison -%endif BuildRequires: texinfo >= 4.2 BuildRequires: @rpmprefix@@tool_target@-binutils diff --git a/contrib/crossrpms/gdb/build.add b/contrib/crossrpms/gdb/build.add index a60965ff99..ba4478d74c 100644 --- a/contrib/crossrpms/gdb/build.add +++ b/contrib/crossrpms/gdb/build.add @@ -17,16 +17,9 @@ --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/@tool_target@-gdb \ --with-sysroot=%{_prefix}/@tool_target@/sys-root \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ diff --git a/contrib/crossrpms/gdb/gdb.add b/contrib/crossrpms/gdb/gdb.add index 00d666554a..4b4bef829d 100644 --- a/contrib/crossrpms/gdb/gdb.add +++ b/contrib/crossrpms/gdb/gdb.add @@ -12,14 +12,27 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim + +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} %if "@tool_target@" == "powerpc-rtems@rtems_api@" %if "%{_build}" != "%{_host}" # psim doesn't support Cdn-X -%define build_sim --disable-sim +%global build_sim --disable-sim %else -%define build_sim --enable-sim --enable-sim-trace +%global build_sim --enable-sim --enable-sim-trace %endif %endif %if "@tool_target@" == "sparc-rtems@rtems_api@" @@ -53,7 +66,6 @@ BuildRequires: %{_host_rpmprefix}gcc %endif %endif -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -61,40 +73,17 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - %if %build_infos # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 -%endif - -%if %build_infos - Requires: @rpmprefix@gdb-common -%endif +%endif @SOURCES@ %description diff --git a/contrib/crossrpms/gdb/install.add b/contrib/crossrpms/gdb/install.add index 1bdff46101..182c846f5c 100644 --- a/contrib/crossrpms/gdb/install.add +++ b/contrib/crossrpms/gdb/install.add @@ -26,19 +26,23 @@ # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/lib@tool_target@-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/@tool_target@-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/@tool_target@-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/@tool_target@-gdb/python +%endif +%endif cd .. diff --git a/contrib/crossrpms/gdb/target-gdb.add b/contrib/crossrpms/gdb/target-gdb.add index 84cb7cf6b6..88789ad854 100644 --- a/contrib/crossrpms/gdb/target-gdb.add +++ b/contrib/crossrpms/gdb/target-gdb.add @@ -15,6 +15,7 @@ GNU gdb targetting @tool_target@. %defattr(-,root,root) %sysdir %{_prefix} %sysdir %{_prefix}/share +%{?with_python:%{_datadir}/@tool_target@-gdb} %sysdir %{_mandir} %sysdir %{_mandir}/man1 diff --git a/contrib/crossrpms/patches/gcc-core-4.4.5-rtems4.10-20110301.diff b/contrib/crossrpms/patches/gcc-core-4.4.6-rtems4.10-20110829.diff index 0150824b00..c3a2c22ff3 100644 --- a/contrib/crossrpms/patches/gcc-core-4.4.5-rtems4.10-20110301.diff +++ b/contrib/crossrpms/patches/gcc-core-4.4.6-rtems4.10-20110829.diff @@ -1,15 +1,48 @@ -diff -Naur gcc-4.4.5.orig/ChangeLog.rtems gcc-4.4.5/ChangeLog.rtems ---- gcc-4.4.5.orig/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/ChangeLog.rtems 2011-03-01 05:57:30.782523058 +0100 -@@ -0,0 +1,4 @@ +diff -Naur gcc-4.4.6.orig/ChangeLog.rtems gcc-4.4.6/ChangeLog.rtems +--- gcc-4.4.6.orig/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/ChangeLog.rtems 2011-08-29 07:16:18.126123562 +0200 +@@ -0,0 +1,9 @@ ++2011-04-20 Ralf Corsépius <ralf.corsepius@rtems.org> ++ ++ * configure, configure.ac (PPL): Merge gcc-4.6.0's ppl detection ++ (Work-around build breakdown on fedora 15). ++ + Ralf Corsépius <ralf.corsepius@rtems.org> + + * configure, configure.ac (skipdirs): Add target-libiberty. + -diff -Naur gcc-4.4.5.orig/configure gcc-4.4.5/configure ---- gcc-4.4.5.orig/configure 2010-06-07 22:10:41.000000000 +0200 -+++ gcc-4.4.5/configure 2011-03-01 05:57:30.791523182 +0100 -@@ -2267,6 +2267,7 @@ +diff -Naur gcc-4.4.6.orig/configure gcc-4.4.6/configure +--- gcc-4.4.6.orig/configure 2010-10-02 13:40:32.000000000 +0200 ++++ gcc-4.4.6/configure 2011-08-29 07:16:18.130123715 +0200 +@@ -935,7 +935,8 @@ + --enable-gold use gold instead of ld + --enable-libada build libada directory + --enable-libssp build libssp directory +- --disable-ppl-version-check disable check for PPL version ++ --disable-ppl-version-check ++ disable check for PPL version + --disable-cloog-version-check disable check for CLooG version + --enable-stage1-languages[=all] choose additional languages to build during + stage1. Mostly useful for compiler development. +@@ -971,11 +972,12 @@ + --with-gmp-lib=PATH specify directory for the installed GMP library + --with-host-libstdcxx=L Use linker arguments L to link with libstdc++ + when linking with PPL +- --with-ppl=PATH Specify prefix directory for the installed PPL package +- Equivalent to --with-ppl-include=PATH/include +- plus --with-ppl-lib=PATH/lib +- --with-ppl-include=PATH Specify directory for installed PPL include files +- --with-ppl-lib=PATH Specify the directory for the installed PPL library ++ --with-ppl=PATH specify prefix directory for the installed PPL ++ package. Equivalent to ++ --with-ppl-include=PATH/include plus ++ --with-ppl-lib=PATH/lib ++ --with-ppl-include=PATH specify directory for installed PPL include files ++ --with-ppl-lib=PATH specify directory for the installed PPL library + --with-cloog=PATH Specify prefix directory for the installed CLooG-PPL package + Equivalent to --with-cloog-include=PATH/include + plus --with-cloog-lib=PATH/lib +@@ -2267,6 +2269,7 @@ noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss ${libgcj} target-libmudflap" ;; *-*-rtems*) @@ -17,7 +50,216 @@ diff -Naur gcc-4.4.5.orig/configure gcc-4.4.5/configure noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; # The tpf target doesn't support gdb yet. -@@ -6259,7 +6260,7 @@ +@@ -4829,10 +4832,9 @@ + esac + + # Check for PPL +-ppl_major_version=0 +-ppl_minor_version=10 +-ppllibs=" -lppl_c -lppl -lgmpxx $with_host_libstdcxx " ++ppllibs= + pplinc= ++pwllib= + + + # Check whether --with-ppl or --without-ppl was given. +@@ -4841,55 +4843,143 @@ + + fi; + +-# Check whether --with-ppl_include or --without-ppl_include was given. ++# Check whether --with-ppl-include or --without-ppl-include was given. + if test "${with_ppl_include+set}" = set; then + withval="$with_ppl_include" + + fi; + +-# Check whether --with-ppl_lib or --without-ppl_lib was given. ++# Check whether --with-ppl-lib or --without-ppl-lib was given. + if test "${with_ppl_lib+set}" = set; then + withval="$with_ppl_lib" + + fi; + ++# Check whether --enable-ppl-version-check or --disable-ppl-version-check was given. ++if test "${enable_ppl_version_check+set}" = set; then ++ enableval="$enable_ppl_version_check" ++ ++fi; ++ + case $with_ppl in +- no) +- ppllibs= ++ yes | no | "") + ;; + *) +- ppllibs="-L$with_ppl/lib -lppl_c -lppl -lgmpxx $with_host_libstdcxx" ++ ppllibs="-L$with_ppl/lib" + pplinc="-I$with_ppl/include $pplinc" +- LIBS="$ppllibs $LIBS" ++ if test -d "$with_ppl/lib" && test -d "$with_ppl/include"; then ++ with_ppl=yes ++ else ++ { { echo "$as_me:$LINENO: error: cannot find directories \"$with_ppl/lib\" or \"$with_ppl/include\"" >&5 ++echo "$as_me: error: cannot find directories \"$with_ppl/lib\" or \"$with_ppl/include\"" >&2;} ++ { (exit 1); exit 1; }; } ++ fi + ;; + esac +-if test "x$with_ppl_include" != x; then ++ ++if test x"$with_ppl_include" != x; then + pplinc="-I$with_ppl_include $pplinc" ++ with_ppl=yes + fi ++ + if test "x$with_ppl_lib" != x; then +- ppllibs="-L$with_ppl_lib -lppl_c -lppl -lgmpxx $with_host_libstdcxx" +- LIBS="$ppllibs $LIBS" ++ ppllibs="-L$with_ppl_lib" ++ with_ppl=yes + fi +-if test "x$with_ppl$with_ppl_include$with_ppl_lib" = x && test -d ${srcdir}/ppl; then +- ppllibs='-L$$r/$(HOST_SUBDIR)/ppl/.libs -L$$r/$(HOST_SUBDIR)/ppl/_libs -lppl_c -lppl -lgmpxx '"$with_host_libstdcxx " +- pplinc='-I$$r/$(HOST_SUBDIR)/ppl/include -I$$s/ppl/include ' +- LIBS="$ppllibs $LIBS" ++ ++if test x"$with_ppl$with_ppl_include$with_ppl_lib" = x && test -d ${srcdir}/ppl; then ++ if test x"$enable_watchdog" = xyes; then ++ pwllib="-lpwl" ++ fi ++ ppllibs='-L$$r/$(HOST_SUBDIR)/ppl/interfaces/C/'"$lt_cv_objdir"' -L$$r/$(HOST_SUBDIR)/ppl/src/'"$lt_cv_objdir" ++ pplinc='-I$$r/$(HOST_SUBDIR)/ppl/src -I$$r/$(HOST_SUBDIR)/ppl/interfaces/C ' ++ enable_ppl_version_check=no ++ with_ppl=yes + fi + +-# Check whether --enable-ppl-version-check or --disable-ppl-version-check was given. +-if test "${enable_ppl_version_check+set}" = set; then +- enableval="$enable_ppl_version_check" +- ENABLE_PPL_CHECK=$enableval ++if test "x$with_ppl" != xno; then ++ if test "x$pwllib" = x; then ++ saved_LDFLAGS="$LDFLAGS" ++ LDFLAGS="$LDFLAGS $ppllibs" ++ echo "$as_me:$LINENO: checking for PWL_handle_timeout in -lpwl" >&5 ++echo $ECHO_N "checking for PWL_handle_timeout in -lpwl... $ECHO_C" >&6 ++if test "${ac_cv_lib_pwl_PWL_handle_timeout+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 + else +- ENABLE_PPL_CHECK=yes +-fi; ++ ac_check_lib_save_LIBS=$LIBS ++LIBS="-lpwl $LIBS" ++cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ + +-if test "${ENABLE_PPL_CHECK}" = "yes"; then +- saved_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS $pplinc $gmpinc" +- echo "$as_me:$LINENO: checking for version $ppl_major_version.$ppl_minor_version of PPL" >&5 +-echo $ECHO_N "checking for version $ppl_major_version.$ppl_minor_version of PPL... $ECHO_C" >&6 +- cat >conftest.$ac_ext <<_ACEOF ++/* Override any gcc2 internal prototype to avoid an error. */ ++#ifdef __cplusplus ++extern "C" ++#endif ++/* We use char because int might match the return type of a gcc2 ++ builtin and then its argument prototype would still apply. */ ++char PWL_handle_timeout (); ++int ++main () ++{ ++PWL_handle_timeout (); ++ ; ++ return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext conftest$ac_exeext ++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 ++ (eval $ac_link) 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && ++ { ac_try='test -z "$ac_c_werror_flag" ++ || test ! -s conftest.err' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; } && ++ { ac_try='test -s conftest$ac_exeext' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; }; then ++ ac_cv_lib_pwl_PWL_handle_timeout=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ac_cv_lib_pwl_PWL_handle_timeout=no ++fi ++rm -f conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++LIBS=$ac_check_lib_save_LIBS ++fi ++echo "$as_me:$LINENO: result: $ac_cv_lib_pwl_PWL_handle_timeout" >&5 ++echo "${ECHO_T}$ac_cv_lib_pwl_PWL_handle_timeout" >&6 ++if test $ac_cv_lib_pwl_PWL_handle_timeout = yes; then ++ pwllib="-lpwl" ++fi ++ ++ LDFLAGS="$saved_LDFLAGS" ++ fi ++ ++ ppllibs="$ppllibs -lppl_c -lppl $pwllib -lgmpxx" ++ ++ if test "$enable_ppl_version_check" != no; then ++ saved_CFLAGS="$CFLAGS" ++ CFLAGS="$CFLAGS $pplinc $gmpinc" ++ echo "$as_me:$LINENO: checking for version 0.10 (revision 0 or later) of PPL" >&5 ++echo $ECHO_N "checking for version 0.10 (revision 0 or later) of PPL... $ECHO_C" >&6 ++ cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF + cat confdefs.h >>conftest.$ac_ext +@@ -4900,9 +4990,9 @@ + main () + { + +- #if PPL_VERSION_MAJOR != $ppl_major_version || PPL_VERSION_MINOR != $ppl_minor_version +- choke me +- #endif ++ #if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 10 ++ choke me ++ #endif + + ; + return 0; +@@ -4937,10 +5027,11 @@ + sed 's/^/| /' conftest.$ac_ext >&5 + + echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; ppllibs= ; pplinc= ++echo "${ECHO_T}no" >&6; ppllibs= ; pplinc= ; with_ppl=no + fi + rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +- CFLAGS="$saved_CFLAGS" ++ CFLAGS="$saved_CFLAGS" ++ fi + fi + + # Flags needed for PPL +@@ -6259,7 +6350,7 @@ # to it. This is right: we don't want to search that directory # for binaries, but we want the header files in there, so add # them explicitly. @@ -26,9 +268,9 @@ diff -Naur gcc-4.4.5.orig/configure gcc-4.4.5/configure # Someone might think of using the pre-installed headers on # Canadian crosses, in case the installed compiler is not fully -diff -Naur gcc-4.4.5.orig/configure.ac gcc-4.4.5/configure.ac ---- gcc-4.4.5.orig/configure.ac 2010-06-07 22:10:41.000000000 +0200 -+++ gcc-4.4.5/configure.ac 2011-03-01 05:57:30.792523196 +0100 +diff -Naur gcc-4.4.6.orig/configure.ac gcc-4.4.6/configure.ac +--- gcc-4.4.6.orig/configure.ac 2010-10-02 13:40:32.000000000 +0200 ++++ gcc-4.4.6/configure.ac 2011-08-29 07:16:18.131123743 +0200 @@ -502,6 +502,7 @@ noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss ${libgcj} target-libmudflap" ;; @@ -37,7 +279,123 @@ diff -Naur gcc-4.4.5.orig/configure.ac gcc-4.4.5/configure.ac noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; # The tpf target doesn't support gdb yet. -@@ -2560,7 +2561,7 @@ +@@ -1328,55 +1329,81 @@ + esac + + # Check for PPL +-ppl_major_version=0 +-ppl_minor_version=10 +-ppllibs=" -lppl_c -lppl -lgmpxx $with_host_libstdcxx " ++ppllibs= + pplinc= ++pwllib= + +-AC_ARG_WITH(ppl, [ --with-ppl=PATH Specify prefix directory for the installed PPL package +- Equivalent to --with-ppl-include=PATH/include +- plus --with-ppl-lib=PATH/lib]) +-AC_ARG_WITH(ppl_include, [ --with-ppl-include=PATH Specify directory for installed PPL include files]) +-AC_ARG_WITH(ppl_lib, [ --with-ppl-lib=PATH Specify the directory for the installed PPL library]) ++AC_ARG_WITH(ppl, ++[AS_HELP_STRING([--with-ppl=PATH], ++ [specify prefix directory for the installed PPL package. ++ Equivalent to --with-ppl-include=PATH/include ++ plus --with-ppl-lib=PATH/lib])]) ++AC_ARG_WITH(ppl-include, ++[AS_HELP_STRING([--with-ppl-include=PATH], ++ [specify directory for installed PPL include files])]) ++AC_ARG_WITH(ppl-lib, ++[AS_HELP_STRING([--with-ppl-lib=PATH], ++ [specify directory for the installed PPL library])]) + +-case $with_ppl in +- no) +- ppllibs= ++AC_ARG_ENABLE(ppl-version-check, ++[AS_HELP_STRING([--disable-ppl-version-check], ++ [disable check for PPL version])]) ++ ++case $with_ppl in ++ yes | no | "") + ;; + *) +- ppllibs="-L$with_ppl/lib -lppl_c -lppl -lgmpxx $with_host_libstdcxx" ++ ppllibs="-L$with_ppl/lib" + pplinc="-I$with_ppl/include $pplinc" +- LIBS="$ppllibs $LIBS" ++ if test -d "$with_ppl/lib" && test -d "$with_ppl/include"; then ++ with_ppl=yes ++ else ++ AC_MSG_ERROR([cannot find directories "$with_ppl/lib" or "$with_ppl/include"]) ++ fi + ;; + esac +-if test "x$with_ppl_include" != x; then ++ ++if test x"$with_ppl_include" != x; then + pplinc="-I$with_ppl_include $pplinc" ++ with_ppl=yes + fi ++ + if test "x$with_ppl_lib" != x; then +- ppllibs="-L$with_ppl_lib -lppl_c -lppl -lgmpxx $with_host_libstdcxx" +- LIBS="$ppllibs $LIBS" ++ ppllibs="-L$with_ppl_lib" ++ with_ppl=yes + fi +-if test "x$with_ppl$with_ppl_include$with_ppl_lib" = x && test -d ${srcdir}/ppl; then +- ppllibs='-L$$r/$(HOST_SUBDIR)/ppl/.libs -L$$r/$(HOST_SUBDIR)/ppl/_libs -lppl_c -lppl -lgmpxx '"$with_host_libstdcxx " +- pplinc='-I$$r/$(HOST_SUBDIR)/ppl/include -I$$s/ppl/include ' +- LIBS="$ppllibs $LIBS" ++ ++if test x"$with_ppl$with_ppl_include$with_ppl_lib" = x && test -d ${srcdir}/ppl; then ++ if test x"$enable_watchdog" = xyes; then ++ pwllib="-lpwl" ++ fi ++ ppllibs='-L$$r/$(HOST_SUBDIR)/ppl/interfaces/C/'"$lt_cv_objdir"' -L$$r/$(HOST_SUBDIR)/ppl/src/'"$lt_cv_objdir" ++ pplinc='-I$$r/$(HOST_SUBDIR)/ppl/src -I$$r/$(HOST_SUBDIR)/ppl/interfaces/C ' ++ enable_ppl_version_check=no ++ with_ppl=yes + fi + +-AC_ARG_ENABLE(ppl-version-check, +-[ --disable-ppl-version-check disable check for PPL version], +-ENABLE_PPL_CHECK=$enableval, +-ENABLE_PPL_CHECK=yes) ++if test "x$with_ppl" != xno; then ++ if test "x$pwllib" = x; then ++ saved_LDFLAGS="$LDFLAGS" ++ LDFLAGS="$LDFLAGS $ppllibs" ++ AC_CHECK_LIB(pwl,PWL_handle_timeout,[pwllib="-lpwl"]) ++ LDFLAGS="$saved_LDFLAGS" ++ fi + +-if test "${ENABLE_PPL_CHECK}" = "yes"; then +- saved_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS $pplinc $gmpinc" +- AC_MSG_CHECKING([for version $ppl_major_version.$ppl_minor_version of PPL]) +- AC_TRY_COMPILE([#include "ppl_c.h"],[ +- #if PPL_VERSION_MAJOR != $ppl_major_version || PPL_VERSION_MINOR != $ppl_minor_version +- choke me +- #endif +- ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); ppllibs= ; pplinc= ]) +- CFLAGS="$saved_CFLAGS" ++ ppllibs="$ppllibs -lppl_c -lppl $pwllib -lgmpxx" ++ ++ if test "$enable_ppl_version_check" != no; then ++ saved_CFLAGS="$CFLAGS" ++ CFLAGS="$CFLAGS $pplinc $gmpinc" ++ AC_MSG_CHECKING([for version 0.10 (revision 0 or later) of PPL]) ++ AC_TRY_COMPILE([#include "ppl_c.h"],[ ++ #if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 10 ++ choke me ++ #endif ++ ], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); ppllibs= ; pplinc= ; with_ppl=no ]) ++ CFLAGS="$saved_CFLAGS" ++ fi + fi + + # Flags needed for PPL +@@ -2560,7 +2587,7 @@ # to it. This is right: we don't want to search that directory # for binaries, but we want the header files in there, so add # them explicitly. @@ -46,10 +404,16 @@ diff -Naur gcc-4.4.5.orig/configure.ac gcc-4.4.5/configure.ac # Someone might think of using the pre-installed headers on # Canadian crosses, in case the installed compiler is not fully -diff -Naur gcc-4.4.5.orig/gcc/ChangeLog.rtems gcc-4.4.5/gcc/ChangeLog.rtems ---- gcc-4.4.5.orig/gcc/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/ChangeLog.rtems 2011-03-01 06:11:33.826203883 +0100 -@@ -0,0 +1,54 @@ +diff -Naur gcc-4.4.6.orig/gcc/ChangeLog.rtems gcc-4.4.6/gcc/ChangeLog.rtems +--- gcc-4.4.6.orig/gcc/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/ChangeLog.rtems 2011-08-29 07:16:18.132123787 +0200 +@@ -0,0 +1,60 @@ ++2011-08-29 Ralf Corsépius <ralf.corsepius@rtems.org> ++ and Eric Norum <wenorum@lbl.gov> ++ ++ Fix bootstrap breakdowns on OS X 10.7.1 (Lion): ++ * toplev.h, toplev.c: Switch-off "extern inline" if using clang. ++ +2011-02-20 Ralf Corsépius <ralf.corsepius@rtems.org> + + * config/rs6000/t-rtems: Remove -mcpu=601 multilib. @@ -105,9 +469,9 @@ diff -Naur gcc-4.4.5.orig/gcc/ChangeLog.rtems gcc-4.4.5/gcc/ChangeLog.rtems + * config/mips/elf.h: Remove NO_IMPLICIT_EXTERN_C. + \ No newline at end of file -diff -Naur gcc-4.4.5.orig/gcc/config/arm/rtems-elf.h gcc-4.4.5/gcc/config/arm/rtems-elf.h ---- gcc-4.4.5.orig/gcc/config/arm/rtems-elf.h 2009-03-25 13:54:16.000000000 +0100 -+++ gcc-4.4.5/gcc/config/arm/rtems-elf.h 2011-03-01 05:57:30.792523196 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/arm/rtems-elf.h gcc-4.4.6/gcc/config/arm/rtems-elf.h +--- gcc-4.4.6.orig/gcc/config/arm/rtems-elf.h 2009-03-25 13:54:16.000000000 +0100 ++++ gcc-4.4.6/gcc/config/arm/rtems-elf.h 2011-08-29 07:16:18.132123787 +0200 @@ -36,7 +36,7 @@ */ #undef SUBTARGET_EXTRA_ASM_SPEC @@ -117,9 +481,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/arm/rtems-elf.h gcc-4.4.5/gcc/config/arm/rt /* * The default includes --start-group and --end-group which conflicts -diff -Naur gcc-4.4.5.orig/gcc/config/arm/t-rtems gcc-4.4.5/gcc/config/arm/t-rtems ---- gcc-4.4.5.orig/gcc/config/arm/t-rtems 2004-11-23 06:30:32.000000000 +0100 -+++ gcc-4.4.5/gcc/config/arm/t-rtems 2011-03-01 05:57:30.792523196 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/arm/t-rtems gcc-4.4.6/gcc/config/arm/t-rtems +--- gcc-4.4.6.orig/gcc/config/arm/t-rtems 2004-11-23 06:30:32.000000000 +0100 ++++ gcc-4.4.6/gcc/config/arm/t-rtems 2011-08-29 07:16:18.133123835 +0200 @@ -5,6 +5,41 @@ MULTILIB_EXCEPTIONS = MULTILIB_MATCHES = marm=mno-thumb @@ -165,9 +529,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/arm/t-rtems gcc-4.4.5/gcc/config/arm/t-rtem +#/fpu -> arm/hard/fpa +#/fpa -> arm/soft/fpa +#. -> arm/soft/fpa -diff -Naur gcc-4.4.5.orig/gcc/config/avr/avr.h gcc-4.4.5/gcc/config/avr/avr.h ---- gcc-4.4.5.orig/gcc/config/avr/avr.h 2009-03-28 22:09:50.000000000 +0100 -+++ gcc-4.4.5/gcc/config/avr/avr.h 2011-03-01 05:57:30.793523210 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/avr/avr.h gcc-4.4.6/gcc/config/avr/avr.h +--- gcc-4.4.6.orig/gcc/config/avr/avr.h 2009-03-28 22:09:50.000000000 +0100 ++++ gcc-4.4.6/gcc/config/avr/avr.h 2011-08-29 07:16:18.133123835 +0200 @@ -811,12 +811,15 @@ mmcu=at90can64*|\ mmcu=at90usb64*:--pmem-wrap-around=64k}}}\ @@ -228,18 +592,18 @@ diff -Naur gcc-4.4.5.orig/gcc/config/avr/avr.h gcc-4.4.5/gcc/config/avr/avr.h %{mmcu=atmega324*|\ mmcu=atmega325*|\ mmcu=atmega328p|\ -diff -Naur gcc-4.4.5.orig/gcc/config/avr/t-rtems gcc-4.4.5/gcc/config/avr/t-rtems ---- gcc-4.4.5.orig/gcc/config/avr/t-rtems 2004-11-23 04:44:03.000000000 +0100 -+++ gcc-4.4.5/gcc/config/avr/t-rtems 2011-03-01 05:57:30.793523210 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/avr/t-rtems gcc-4.4.6/gcc/config/avr/t-rtems +--- gcc-4.4.6.orig/gcc/config/avr/t-rtems 2004-11-23 04:44:03.000000000 +0100 ++++ gcc-4.4.6/gcc/config/avr/t-rtems 2011-08-29 07:16:18.133123835 +0200 @@ -1,3 +1,4 @@ # Multilibs for avr RTEMS targets. -# ATM, this is just a stub +# RTEMS uses _exit from newlib +LIB1ASMFUNCS := $(filter-out _exit,$(LIB1ASMFUNCS)) -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/arithmetic.c gcc-4.4.5/gcc/config/lm32/arithmetic.c ---- gcc-4.4.5.orig/gcc/config/lm32/arithmetic.c 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/arithmetic.c 2011-03-01 05:57:30.847523953 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/arithmetic.c gcc-4.4.6/gcc/config/lm32/arithmetic.c +--- gcc-4.4.6.orig/gcc/config/lm32/arithmetic.c 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/arithmetic.c 2011-08-29 07:16:18.133123835 +0200 @@ -0,0 +1,305 @@ +/* Fixed-point arithmetic for Lattice Mico32. + Contributed by Jon Beniston <jon@beniston.com> @@ -546,9 +910,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/arithmetic.c gcc-4.4.5/gcc/config/lm32 +#endif + +#endif -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/crti.S gcc-4.4.5/gcc/config/lm32/crti.S ---- gcc-4.4.5.orig/gcc/config/lm32/crti.S 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/crti.S 2011-03-01 05:57:30.847523953 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/crti.S gcc-4.4.6/gcc/config/lm32/crti.S +--- gcc-4.4.6.orig/gcc/config/lm32/crti.S 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/crti.S 2011-08-29 07:16:18.133123835 +0200 @@ -0,0 +1,45 @@ +# crti.S for Lattice Mico32 +# Contributed by Jon Beniston <jon@beniston.com> @@ -595,9 +959,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/crti.S gcc-4.4.5/gcc/config/lm32/crti. +_fini: + addi sp, sp, -4 + sw (sp+4), ra -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/crtn.S gcc-4.4.5/gcc/config/lm32/crtn.S ---- gcc-4.4.5.orig/gcc/config/lm32/crtn.S 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/crtn.S 2011-03-01 05:57:30.848523967 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/crtn.S gcc-4.4.6/gcc/config/lm32/crtn.S +--- gcc-4.4.6.orig/gcc/config/lm32/crtn.S 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/crtn.S 2011-08-29 07:16:18.134123880 +0200 @@ -0,0 +1,42 @@ +# crtn.S for Lattice Mico32 +# Contributed by Jon Beniston <jon@beniston.com> @@ -641,9 +1005,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/crtn.S gcc-4.4.5/gcc/config/lm32/crtn. + addi sp, sp, 4 + ret + -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lib1funcs.S gcc-4.4.5/gcc/config/lm32/lib1funcs.S ---- gcc-4.4.5.orig/gcc/config/lm32/lib1funcs.S 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/lib1funcs.S 2011-03-01 05:57:30.848523967 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/lib1funcs.S gcc-4.4.6/gcc/config/lm32/lib1funcs.S +--- gcc-4.4.6.orig/gcc/config/lm32/lib1funcs.S 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/lib1funcs.S 2011-08-29 07:16:18.134123880 +0200 @@ -0,0 +1,429 @@ +# lib1funcs.S for Lattice Mico32 +# Contributed by Jon Beniston <jon@beniston.com> @@ -1074,9 +1438,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lib1funcs.S gcc-4.4.5/gcc/config/lm32/ + .word __ashrsi3_30 + .word __ashrsi3_31 + -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.c gcc-4.4.5/gcc/config/lm32/lm32.c ---- gcc-4.4.5.orig/gcc/config/lm32/lm32.c 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/lm32.c 2011-03-01 05:57:30.849523981 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/lm32.c gcc-4.4.6/gcc/config/lm32/lm32.c +--- gcc-4.4.6.orig/gcc/config/lm32/lm32.c 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/lm32.c 2011-08-29 07:16:18.135123923 +0200 @@ -0,0 +1,869 @@ +/* Subroutines used for code generation on the Lattice Mico32 architecture. + Contributed by Jon Beniston <jon@beniston.com> @@ -1947,9 +2311,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.c gcc-4.4.5/gcc/config/lm32/lm32. + + return 0; +} -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.h gcc-4.4.5/gcc/config/lm32/lm32.h ---- gcc-4.4.5.orig/gcc/config/lm32/lm32.h 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/lm32.h 2011-03-01 05:57:30.850523995 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/lm32.h gcc-4.4.6/gcc/config/lm32/lm32.h +--- gcc-4.4.6.orig/gcc/config/lm32/lm32.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/lm32.h 2011-08-29 07:16:18.135123923 +0200 @@ -0,0 +1,657 @@ +/* Definitions of target machine for GNU compiler, Lattice Mico32 architecture. + Contributed by Jon Beniston <jon@beniston.com> @@ -2608,9 +2972,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.h gcc-4.4.5/gcc/config/lm32/lm32. +#endif + +#define STORE_FLAG_VALUE 1 -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.md gcc-4.4.5/gcc/config/lm32/lm32.md ---- gcc-4.4.5.orig/gcc/config/lm32/lm32.md 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/lm32.md 2011-03-01 05:57:30.851524009 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/lm32.md gcc-4.4.6/gcc/config/lm32/lm32.md +--- gcc-4.4.6.orig/gcc/config/lm32/lm32.md 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/lm32.md 2011-08-29 07:16:18.136123965 +0200 @@ -0,0 +1,1233 @@ +;; Machine description of the Lattice Mico32 architecture for GNU C compiler. +;; Contributed by Jon Beniston <jon@beniston.com> @@ -3845,9 +4209,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.md gcc-4.4.5/gcc/config/lm32/lm32 + [(set_attr "length" "0")] +) + -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.opt gcc-4.4.5/gcc/config/lm32/lm32.opt ---- gcc-4.4.5.orig/gcc/config/lm32/lm32.opt 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/lm32.opt 2011-03-01 05:57:30.851524009 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/lm32.opt gcc-4.4.6/gcc/config/lm32/lm32.opt +--- gcc-4.4.6.orig/gcc/config/lm32/lm32.opt 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/lm32.opt 2011-08-29 07:16:18.136123965 +0200 @@ -0,0 +1,40 @@ +; Options for the Lattice Mico32 port of the compiler. +; Contributed by Jon Beniston <jon@beniston.com> @@ -3889,9 +4253,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32.opt gcc-4.4.5/gcc/config/lm32/lm3 +muser-enabled +Target Report Mask(USER_ENABLED) +Enable user-defined instructions -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32-protos.h gcc-4.4.5/gcc/config/lm32/lm32-protos.h ---- gcc-4.4.5.orig/gcc/config/lm32/lm32-protos.h 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/lm32-protos.h 2011-03-01 05:57:30.851524009 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/lm32-protos.h gcc-4.4.6/gcc/config/lm32/lm32-protos.h +--- gcc-4.4.6.orig/gcc/config/lm32/lm32-protos.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/lm32-protos.h 2011-08-29 07:16:18.134123880 +0200 @@ -0,0 +1,52 @@ +/* Prototypes of target machine functions, Lattice Mico32 architecture. + Contributed by Jon Beniston <jon@beniston.com> @@ -3945,9 +4309,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/lm32-protos.h gcc-4.4.5/gcc/config/lm3 +extern int lm32_expand_block_move (rtx *); +extern int nonpic_symbol_mentioned_p (rtx); +extern rtx lm32_legitimize_pic_address (rtx, enum machine_mode, rtx); -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/predicates.md gcc-4.4.5/gcc/config/lm32/predicates.md ---- gcc-4.4.5.orig/gcc/config/lm32/predicates.md 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/predicates.md 2011-03-01 05:57:30.851524009 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/predicates.md gcc-4.4.6/gcc/config/lm32/predicates.md +--- gcc-4.4.6.orig/gcc/config/lm32/predicates.md 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/predicates.md 2011-08-29 07:16:18.136123965 +0200 @@ -0,0 +1,58 @@ +;; Predicate definitions for Lattice Mico32. +;; Contributed by Jon Beniston <jon@beniston.com> @@ -4007,9 +4371,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/predicates.md gcc-4.4.5/gcc/config/lm3 + (ior (match_code "label_ref") + (match_code "symbol_ref"))) + -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/rtems.h gcc-4.4.5/gcc/config/lm32/rtems.h ---- gcc-4.4.5.orig/gcc/config/lm32/rtems.h 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/rtems.h 2011-03-01 05:57:30.851524009 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/rtems.h gcc-4.4.6/gcc/config/lm32/rtems.h +--- gcc-4.4.6.orig/gcc/config/lm32/rtems.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/rtems.h 2011-08-29 07:16:18.136123965 +0200 @@ -0,0 +1,32 @@ +/* Definitions for rtems targeting a lm32 using ELF. + Copyright (C) 2009, Free Software Foundation, Inc. @@ -4043,9 +4407,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/rtems.h gcc-4.4.5/gcc/config/lm32/rtem + +/* Use the default */ +#undef LINK_GCC_C_SEQUENCE_SPEC -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/sfp-machine.h gcc-4.4.5/gcc/config/lm32/sfp-machine.h ---- gcc-4.4.5.orig/gcc/config/lm32/sfp-machine.h 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/sfp-machine.h 2011-03-01 05:57:30.851524009 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/sfp-machine.h gcc-4.4.6/gcc/config/lm32/sfp-machine.h +--- gcc-4.4.6.orig/gcc/config/lm32/sfp-machine.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/sfp-machine.h 2011-08-29 07:16:18.136123965 +0200 @@ -0,0 +1,51 @@ +#define _FP_W_TYPE_SIZE 32 +#define _FP_W_TYPE unsigned long @@ -4098,18 +4462,18 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/sfp-machine.h gcc-4.4.5/gcc/config/lm3 +# define strong_alias(name, aliasname) _strong_alias(name, aliasname) +# define _strong_alias(name, aliasname) \ + extern __typeof (name) aliasname __attribute__ ((alias (#name))); -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/t-fprules-softfp gcc-4.4.5/gcc/config/lm32/t-fprules-softfp ---- gcc-4.4.5.orig/gcc/config/lm32/t-fprules-softfp 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/t-fprules-softfp 2011-03-01 05:57:30.852524023 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/t-fprules-softfp gcc-4.4.6/gcc/config/lm32/t-fprules-softfp +--- gcc-4.4.6.orig/gcc/config/lm32/t-fprules-softfp 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/t-fprules-softfp 2011-08-29 07:16:18.136123965 +0200 @@ -0,0 +1,5 @@ +softfp_float_modes := sf df +softfp_int_modes := si di +softfp_extensions := sfdf +softfp_truncations := dfsf +softfp_machine_header := lm32/sfp-machine.h -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/t-lm32 gcc-4.4.5/gcc/config/lm32/t-lm32 ---- gcc-4.4.5.orig/gcc/config/lm32/t-lm32 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/t-lm32 2011-03-01 05:57:30.852524023 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/t-lm32 gcc-4.4.6/gcc/config/lm32/t-lm32 +--- gcc-4.4.6.orig/gcc/config/lm32/t-lm32 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/t-lm32 2011-08-29 07:16:18.136123965 +0200 @@ -0,0 +1,19 @@ +LIB1ASMSRC = lm32/lib1funcs.S +LIB1ASMFUNCS = _ashlsi3 _ashrsi3 _lshrsi3 @@ -4130,9 +4494,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/t-lm32 gcc-4.4.5/gcc/config/lm32/t-lm3 + +MULTILIB_OPTIONS = mmultiply-enabled mbarrel-shift-enabled +# Don't bother building multilib with mdivide-enabled, not much of a gain -diff -Naur gcc-4.4.5.orig/gcc/config/lm32/uclinux-elf.h gcc-4.4.5/gcc/config/lm32/uclinux-elf.h ---- gcc-4.4.5.orig/gcc/config/lm32/uclinux-elf.h 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/gcc/config/lm32/uclinux-elf.h 2011-03-01 05:57:30.852524023 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/lm32/uclinux-elf.h gcc-4.4.6/gcc/config/lm32/uclinux-elf.h +--- gcc-4.4.6.orig/gcc/config/lm32/uclinux-elf.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/gcc/config/lm32/uclinux-elf.h 2011-08-29 07:16:18.137124000 +0200 @@ -0,0 +1,85 @@ +/* Definitions for LM32 running Linux-based GNU systems using ELF + Copyright (C) 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, @@ -4219,9 +4583,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/lm32/uclinux-elf.h gcc-4.4.5/gcc/config/lm3 +#undef CC1_SPEC +#define CC1_SPEC "%{G*} %{!fno-PIC:-fPIC}" + -diff -Naur gcc-4.4.5.orig/gcc/config/m32c/rtems.h gcc-4.4.5/gcc/config/m32c/rtems.h ---- gcc-4.4.5.orig/gcc/config/m32c/rtems.h 2008-12-01 17:34:42.000000000 +0100 -+++ gcc-4.4.5/gcc/config/m32c/rtems.h 2011-03-01 05:57:30.852524023 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/m32c/rtems.h gcc-4.4.6/gcc/config/m32c/rtems.h +--- gcc-4.4.6.orig/gcc/config/m32c/rtems.h 2008-12-01 17:34:42.000000000 +0100 ++++ gcc-4.4.6/gcc/config/m32c/rtems.h 2011-08-29 07:16:18.137124000 +0200 @@ -29,5 +29,9 @@ } \ while (0) @@ -4233,9 +4597,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/m32c/rtems.h gcc-4.4.5/gcc/config/m32c/rtem +#undef WCHAR_TYPE + +#undef WCHAR_TYPE_SIZE -diff -Naur gcc-4.4.5.orig/gcc/config/m68k/rtemself.h gcc-4.4.5/gcc/config/m68k/rtemself.h ---- gcc-4.4.5.orig/gcc/config/m68k/rtemself.h 2007-08-02 12:49:31.000000000 +0200 -+++ gcc-4.4.5/gcc/config/m68k/rtemself.h 2011-03-01 05:57:30.852524023 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/m68k/rtemself.h gcc-4.4.6/gcc/config/m68k/rtemself.h +--- gcc-4.4.6.orig/gcc/config/m68k/rtemself.h 2007-08-02 12:49:31.000000000 +0200 ++++ gcc-4.4.6/gcc/config/m68k/rtemself.h 2011-08-29 07:16:18.137124000 +0200 @@ -31,3 +31,8 @@ builtin_assert ("system=rtems"); \ } \ @@ -4245,9 +4609,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/m68k/rtemself.h gcc-4.4.5/gcc/config/m68k/r +#undef WCHAR_TYPE + +#undef WCHAR_TYPE_SIZE -diff -Naur gcc-4.4.5.orig/gcc/config/mips/elf.h gcc-4.4.5/gcc/config/mips/elf.h ---- gcc-4.4.5.orig/gcc/config/mips/elf.h 2007-08-02 12:49:31.000000000 +0200 -+++ gcc-4.4.5/gcc/config/mips/elf.h 2011-03-01 05:57:30.853524036 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/mips/elf.h gcc-4.4.6/gcc/config/mips/elf.h +--- gcc-4.4.6.orig/gcc/config/mips/elf.h 2007-08-02 12:49:31.000000000 +0200 ++++ gcc-4.4.6/gcc/config/mips/elf.h 2011-08-29 07:16:18.137124000 +0200 @@ -48,6 +48,4 @@ #undef ENDFILE_SPEC #define ENDFILE_SPEC "crtend%O%s crtn%O%s" @@ -4255,9 +4619,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/mips/elf.h gcc-4.4.5/gcc/config/mips/elf.h -#define NO_IMPLICIT_EXTERN_C 1 - #define HANDLE_PRAGMA_PACK_PUSH_POP 1 -diff -Naur gcc-4.4.5.orig/gcc/config/rs6000/rtems.h gcc-4.4.5/gcc/config/rs6000/rtems.h ---- gcc-4.4.5.orig/gcc/config/rs6000/rtems.h 2007-08-02 12:49:31.000000000 +0200 -+++ gcc-4.4.5/gcc/config/rs6000/rtems.h 2011-03-01 05:57:30.853524036 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/rs6000/rtems.h gcc-4.4.6/gcc/config/rs6000/rtems.h +--- gcc-4.4.6.orig/gcc/config/rs6000/rtems.h 2007-08-02 12:49:31.000000000 +0200 ++++ gcc-4.4.6/gcc/config/rs6000/rtems.h 2011-08-29 07:16:18.137124000 +0200 @@ -49,8 +49,22 @@ %{mcpu=604: %{!Dppc*: %{!Dmpc*: -Dmpc604} } } \ %{mcpu=750: %{!Dppc*: %{!Dmpc*: -Dmpc750} } } \ @@ -4282,9 +4646,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/rs6000/rtems.h gcc-4.4.5/gcc/config/rs6000/ +#undef WCHAR_TYPE + +#undef WCHAR_TYPE_SIZE -diff -Naur gcc-4.4.5.orig/gcc/config/rs6000/t-rtems gcc-4.4.5/gcc/config/rs6000/t-rtems ---- gcc-4.4.5.orig/gcc/config/rs6000/t-rtems 2009-03-25 13:54:16.000000000 +0100 -+++ gcc-4.4.5/gcc/config/rs6000/t-rtems 2011-03-01 06:06:18.706820035 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/rs6000/t-rtems gcc-4.4.6/gcc/config/rs6000/t-rtems +--- gcc-4.4.6.orig/gcc/config/rs6000/t-rtems 2009-03-25 13:54:16.000000000 +0100 ++++ gcc-4.4.6/gcc/config/rs6000/t-rtems 2011-08-29 07:16:18.137124000 +0200 @@ -1,13 +1,29 @@ # Multilibs for powerpc RTEMS targets. +# @@ -4340,9 +4704,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/rs6000/t-rtems gcc-4.4.5/gcc/config/rs6000/ -MULTILIB_EXCEPTIONS += *mcpu=750/Dmpc* -MULTILIB_EXCEPTIONS += *mcpu=860/Dmpc* -MULTILIB_EXCEPTIONS += *mcpu=7400/Dmpc* -diff -Naur gcc-4.4.5.orig/gcc/config/rtems.h gcc-4.4.5/gcc/config/rtems.h ---- gcc-4.4.5.orig/gcc/config/rtems.h 2007-08-02 12:49:31.000000000 +0200 -+++ gcc-4.4.5/gcc/config/rtems.h 2011-03-01 05:57:30.853524036 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/rtems.h gcc-4.4.6/gcc/config/rtems.h +--- gcc-4.4.6.orig/gcc/config/rtems.h 2007-08-02 12:49:31.000000000 +0200 ++++ gcc-4.4.6/gcc/config/rtems.h 2011-08-29 07:16:18.138124032 +0200 @@ -38,6 +38,5 @@ #undef LIB_SPEC #define LIB_SPEC "%{!qrtems: " STD_LIB_SPEC "} " \ @@ -4351,9 +4715,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/rtems.h gcc-4.4.5/gcc/config/rtems.h - %{qrtems_debug: -lrtemsbsp_g -lrtemscpu_g} \ + -lrtemsbsp -lrtemscpu \ -lc -lgcc --end-group %{!qnolinkcmds: -T linkcmds%s}}}" -diff -Naur gcc-4.4.5.orig/gcc/config/sh/rtemself.h gcc-4.4.5/gcc/config/sh/rtemself.h ---- gcc-4.4.5.orig/gcc/config/sh/rtemself.h 2007-08-02 12:49:31.000000000 +0200 -+++ gcc-4.4.5/gcc/config/sh/rtemself.h 2011-03-01 05:57:30.853524036 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/sh/rtemself.h gcc-4.4.6/gcc/config/sh/rtemself.h +--- gcc-4.4.6.orig/gcc/config/sh/rtemself.h 2007-08-02 12:49:31.000000000 +0200 ++++ gcc-4.4.6/gcc/config/sh/rtemself.h 2011-08-29 07:16:18.138124032 +0200 @@ -24,3 +24,8 @@ builtin_define( "__rtems__" ); \ builtin_assert( "system=rtems" ); \ @@ -4363,9 +4727,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config/sh/rtemself.h gcc-4.4.5/gcc/config/sh/rtems +#undef WCHAR_TYPE + +#undef WCHAR_TYPE_SIZE -diff -Naur gcc-4.4.5.orig/gcc/config/sparc/rtemself.h gcc-4.4.5/gcc/config/sparc/rtemself.h ---- gcc-4.4.5.orig/gcc/config/sparc/rtemself.h 2007-08-02 12:49:31.000000000 +0200 -+++ gcc-4.4.5/gcc/config/sparc/rtemself.h 2011-03-01 05:57:30.854524049 +0100 +diff -Naur gcc-4.4.6.orig/gcc/config/sparc/rtemself.h gcc-4.4.6/gcc/config/sparc/rtemself.h +--- gcc-4.4.6.orig/gcc/config/sparc/rtemself.h 2007-08-02 12:49:31.000000000 +0200 ++++ gcc-4.4.6/gcc/config/sparc/rtemself.h 2011-08-29 07:16:18.138124032 +0200 @@ -29,5 +29,9 @@ } \ while (0) @@ -4377,10 +4741,10 @@ diff -Naur gcc-4.4.5.orig/gcc/config/sparc/rtemself.h gcc-4.4.5/gcc/config/sparc +#undef WCHAR_TYPE + +#undef WCHAR_TYPE_SIZE -diff -Naur gcc-4.4.5.orig/gcc/config.gcc gcc-4.4.5/gcc/config.gcc ---- gcc-4.4.5.orig/gcc/config.gcc 2010-06-14 00:16:50.000000000 +0200 -+++ gcc-4.4.5/gcc/config.gcc 2011-03-01 05:57:30.855524063 +0100 -@@ -1376,6 +1376,23 @@ +diff -Naur gcc-4.4.6.orig/gcc/config.gcc gcc-4.4.6/gcc/config.gcc +--- gcc-4.4.6.orig/gcc/config.gcc 2011-02-18 22:39:51.000000000 +0100 ++++ gcc-4.4.6/gcc/config.gcc 2011-08-29 07:16:18.132123787 +0200 +@@ -1377,6 +1377,23 @@ out_file=iq2000/iq2000.c md_file=iq2000/iq2000.md ;; @@ -4404,9 +4768,9 @@ diff -Naur gcc-4.4.5.orig/gcc/config.gcc gcc-4.4.5/gcc/config.gcc m32r-*-elf*) tm_file="dbxelf.h elfos.h svr4.h ${tm_file}" extra_parts="crtinit.o crtfini.o" -diff -Naur gcc-4.4.5.orig/gcc/doc/contrib.texi gcc-4.4.5/gcc/doc/contrib.texi ---- gcc-4.4.5.orig/gcc/doc/contrib.texi 2009-02-20 16:20:38.000000000 +0100 -+++ gcc-4.4.5/gcc/doc/contrib.texi 2011-03-01 05:57:30.855524063 +0100 +diff -Naur gcc-4.4.6.orig/gcc/doc/contrib.texi gcc-4.4.6/gcc/doc/contrib.texi +--- gcc-4.4.6.orig/gcc/doc/contrib.texi 2009-02-20 16:20:38.000000000 +0100 ++++ gcc-4.4.6/gcc/doc/contrib.texi 2011-08-29 07:16:21.941181976 +0200 @@ -55,7 +55,7 @@ Wolfgang Bangerth for processing tons of bug reports. @@ -4416,9 +4780,9 @@ diff -Naur gcc-4.4.5.orig/gcc/doc/contrib.texi gcc-4.4.5/gcc/doc/contrib.texi @item Daniel Berlin for better DWARF2 support, faster/better optimizations, -diff -Naur gcc-4.4.5.orig/gcc/doc/install.texi gcc-4.4.5/gcc/doc/install.texi ---- gcc-4.4.5.orig/gcc/doc/install.texi 2010-07-15 11:26:30.000000000 +0200 -+++ gcc-4.4.5/gcc/doc/install.texi 2011-03-01 05:57:30.856524077 +0100 +diff -Naur gcc-4.4.6.orig/gcc/doc/install.texi gcc-4.4.6/gcc/doc/install.texi +--- gcc-4.4.6.orig/gcc/doc/install.texi 2010-07-15 11:26:30.000000000 +0200 ++++ gcc-4.4.6/gcc/doc/install.texi 2011-08-29 07:16:21.942182004 +0200 @@ -2660,6 +2660,10 @@ @item @uref{#iq2000-x-elf,,iq2000-*-elf} @@ -4451,10 +4815,10 @@ diff -Naur gcc-4.4.5.orig/gcc/doc/install.texi gcc-4.4.5/gcc/doc/install.texi @heading @anchor{m32c-x-elf}m32c-*-elf Renesas M32C processor. This configuration is intended for embedded systems. -diff -Naur gcc-4.4.5.orig/gcc/doc/invoke.texi gcc-4.4.5/gcc/doc/invoke.texi ---- gcc-4.4.5.orig/gcc/doc/invoke.texi 2010-09-08 20:13:03.000000000 +0200 -+++ gcc-4.4.5/gcc/doc/invoke.texi 2011-03-01 05:57:30.861524147 +0100 -@@ -606,6 +606,10 @@ +diff -Naur gcc-4.4.6.orig/gcc/doc/invoke.texi gcc-4.4.6/gcc/doc/invoke.texi +--- gcc-4.4.6.orig/gcc/doc/invoke.texi 2011-03-23 23:02:12.000000000 +0100 ++++ gcc-4.4.6/gcc/doc/invoke.texi 2011-08-29 07:16:21.948182208 +0200 +@@ -610,6 +610,10 @@ -mno-sched-prefer-non-control-spec-insns @gol -mno-sched-count-spec-in-critical-path} @@ -4473,7 +4837,7 @@ diff -Naur gcc-4.4.5.orig/gcc/doc/invoke.texi gcc-4.4.5/gcc/doc/invoke.texi * M32C Options:: * M32R/D Options:: * M680x0 Options:: -@@ -11842,6 +11847,35 @@ +@@ -11907,6 +11912,35 @@ @end table @@ -4509,18 +4873,42 @@ diff -Naur gcc-4.4.5.orig/gcc/doc/invoke.texi gcc-4.4.5/gcc/doc/invoke.texi @node M32R/D Options @subsection M32R/D Options @cindex M32R/D options -diff -Naur gcc-4.4.5.orig/libgcc/ChangeLog.rtems gcc-4.4.5/libgcc/ChangeLog.rtems ---- gcc-4.4.5.orig/libgcc/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/libgcc/ChangeLog.rtems 2011-03-01 05:57:30.861524147 +0100 +diff -Naur gcc-4.4.6.orig/gcc/toplev.c gcc-4.4.6/gcc/toplev.c +--- gcc-4.4.6.orig/gcc/toplev.c 2010-03-31 04:51:31.000000000 +0200 ++++ gcc-4.4.6/gcc/toplev.c 2011-08-29 07:16:21.949182232 +0200 +@@ -527,7 +527,7 @@ + for floor_log2 and exact_log2; see toplev.h. That construct, however, + conflicts with the ISO C++ One Definition Rule. */ + +-#if GCC_VERSION < 3004 || !defined (__cplusplus) ++#if ((GCC_VERSION < 3004) || defined(__clang__)) || !defined (__cplusplus) + + /* Given X, an unsigned number, return the largest int Y such that 2**Y <= X. + If X is 0, return -1. */ +diff -Naur gcc-4.4.6.orig/gcc/toplev.h gcc-4.4.6/gcc/toplev.h +--- gcc-4.4.6.orig/gcc/toplev.h 2009-02-20 16:20:38.000000000 +0100 ++++ gcc-4.4.6/gcc/toplev.h 2011-08-29 07:16:21.949182232 +0200 +@@ -174,7 +174,7 @@ + extern int floor_log2 (unsigned HOST_WIDE_INT); + + /* Inline versions of the above for speed. */ +-#if GCC_VERSION >= 3004 ++#if (GCC_VERSION >= 3004) && !defined(__clang__) + # if HOST_BITS_PER_WIDE_INT == HOST_BITS_PER_LONG + # define CLZ_HWI __builtin_clzl + # define CTZ_HWI __builtin_ctzl +diff -Naur gcc-4.4.6.orig/libgcc/ChangeLog.rtems gcc-4.4.6/libgcc/ChangeLog.rtems +--- gcc-4.4.6.orig/libgcc/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/libgcc/ChangeLog.rtems 2011-08-29 07:16:21.949182232 +0200 @@ -0,0 +1,5 @@ + Jon Beniston <jon@beniston.com> + + * libgcc/config/lm32/t-elf, libgcc/config/lm32/t-uclinux, + libgcc/config/lm32/t-uclinux: New (lm32 port). + * libgcc/config.host: Add lm32* targets. -diff -Naur gcc-4.4.5.orig/libgcc/config/lm32/t-elf gcc-4.4.5/libgcc/config/lm32/t-elf ---- gcc-4.4.5.orig/libgcc/config/lm32/t-elf 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/libgcc/config/lm32/t-elf 2011-03-01 05:57:30.861524147 +0100 +diff -Naur gcc-4.4.6.orig/libgcc/config/lm32/t-elf gcc-4.4.6/libgcc/config/lm32/t-elf +--- gcc-4.4.6.orig/libgcc/config/lm32/t-elf 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/libgcc/config/lm32/t-elf 2011-08-29 07:16:21.950182265 +0200 @@ -0,0 +1,12 @@ +# Assemble startup files. + @@ -4534,15 +4922,15 @@ diff -Naur gcc-4.4.5.orig/libgcc/config/lm32/t-elf gcc-4.4.5/libgcc/config/lm32/ + +CRTSTUFF_T_CFLAGS = -G 0 +TARGET_LIBGCC2_CFLAGS = -G 0 -diff -Naur gcc-4.4.5.orig/libgcc/config/lm32/t-uclinux gcc-4.4.5/libgcc/config/lm32/t-uclinux ---- gcc-4.4.5.orig/libgcc/config/lm32/t-uclinux 1970-01-01 01:00:00.000000000 +0100 -+++ gcc-4.4.5/libgcc/config/lm32/t-uclinux 2011-03-01 05:57:30.861524147 +0100 +diff -Naur gcc-4.4.6.orig/libgcc/config/lm32/t-uclinux gcc-4.4.6/libgcc/config/lm32/t-uclinux +--- gcc-4.4.6.orig/libgcc/config/lm32/t-uclinux 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6/libgcc/config/lm32/t-uclinux 2011-08-29 07:16:21.950182265 +0200 @@ -0,0 +1,2 @@ +CRTSTUFF_T_CFLAGS = -fPIC +TARGET_LIBGCC2_CFLAGS = -fPIC -diff -Naur gcc-4.4.5.orig/libgcc/config.host gcc-4.4.5/libgcc/config.host ---- gcc-4.4.5.orig/libgcc/config.host 2009-04-17 13:58:41.000000000 +0200 -+++ gcc-4.4.5/libgcc/config.host 2011-03-01 05:57:30.862524160 +0100 +diff -Naur gcc-4.4.6.orig/libgcc/config.host gcc-4.4.6/libgcc/config.host +--- gcc-4.4.6.orig/libgcc/config.host 2009-04-17 13:58:41.000000000 +0200 ++++ gcc-4.4.6/libgcc/config.host 2011-08-29 07:16:21.949182232 +0200 @@ -95,6 +95,9 @@ hppa*-*-*) cpu_type=pa diff --git a/contrib/crossrpms/patches/gcc-g++-4.4.6-rtems4.10-20110829.diff b/contrib/crossrpms/patches/gcc-g++-4.4.6-rtems4.10-20110829.diff new file mode 100644 index 0000000000..005be71d55 --- /dev/null +++ b/contrib/crossrpms/patches/gcc-g++-4.4.6-rtems4.10-20110829.diff @@ -0,0 +1,104 @@ +diff -Naur gcc-4.4.6.orig/gcc/cp/cfns.h gcc-4.4.6gcc/cp/cfns.h +--- gcc-4.4.6.orig/gcc/cp/cfns.h 2011-08-29 08:52:31.238300940 +0200 ++++ gcc-4.4.6gcc/cp/cfns.h 2011-08-29 08:53:20.485041120 +0200 +@@ -1,5 +1,5 @@ +-/* ANSI-C code produced by gperf version 3.0.1 */ +-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C ../../gcc/cp/cfns.gperf */ ++/* ANSI-C code produced by gperf version 3.0.3 */ ++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */ + + #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ + && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \ +@@ -74,13 +74,13 @@ + 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 400, 0, 0, +- 1, 400, 400, 400, 400, 400, 400, 400, 400, 400, ++ 1, 400, 400, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 28, 90, 0, + 95, 0, 51, 93, 114, 26, 109, 124, 5, 1, +- 6, 13, 37, 128, 3, 0, 0, 49, 38, 0, ++ 6, 13, 37, 128, 3, 0, 0, 49, 38, 0, + 104, 45, 0, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, + 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, +@@ -101,29 +101,32 @@ + switch (hval) + { + default: +- hval += asso_values[(unsigned char)str[5]+1]; ++ hval += asso_values[(unsigned char)str[5]+1]; + /*FALLTHROUGH*/ + case 5: +- hval += asso_values[(unsigned char)str[4]]; ++ hval += asso_values[(unsigned char)str[4]]; + /*FALLTHROUGH*/ + case 4: +- hval += asso_values[(unsigned char)str[3]]; ++ hval += asso_values[(unsigned char)str[3]]; + /*FALLTHROUGH*/ + case 3: +- hval += asso_values[(unsigned char)str[2]]; ++ hval += asso_values[(unsigned char)str[2]]; + /*FALLTHROUGH*/ + case 2: +- hval += asso_values[(unsigned char)str[1]]; ++ hval += asso_values[(unsigned char)str[1]]; + /*FALLTHROUGH*/ + case 1: +- hval += asso_values[(unsigned char)str[0]]; +- break; ++ hval += asso_values[(unsigned char)str[0]]; ++ break; + } + return hval + asso_values[(unsigned char)str[len - 1]]; + } + + #ifdef __GNUC__ + __inline ++#ifdef __GNUC_STDC_INLINE__ ++__attribute__ ((__gnu_inline__)) ++#endif + #endif + const char * + libc_name_p (register const char *str, register unsigned int len) +@@ -346,17 +349,17 @@ + register int key = hash (str, len); + + if (key <= MAX_HASH_VALUE && key >= 0) +- { +- register int index = lookup[key]; ++ { ++ register int index = lookup[key]; + +- if (index >= 0) +- { +- register const char *s = wordlist[index]; +- +- if (*str == *s && !strcmp (str + 1, s + 1)) +- return s; +- } +- } ++ if (index >= 0) ++ { ++ register const char *s = wordlist[index]; ++ ++ if (*str == *s && !strcmp (str + 1, s + 1)) ++ return s; ++ } ++ } + } + return 0; + } +diff -Naur gcc-4.4.6.orig/gcc/cp/ChangeLog.rtems gcc-4.4.6gcc/cp/ChangeLog.rtems +--- gcc-4.4.6.orig/gcc/cp/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.4.6gcc/cp/ChangeLog.rtems 2011-08-29 07:14:47.561734025 +0200 +@@ -0,0 +1,5 @@ ++2011-08-29 Ralf Corsépius <ralf.corsepius@rtems.org> ++ and Eric Norum <wenorum@lbl.gov> ++ ++ Fix bootstrap breakdowns on OS X 10.7.1 (Lion): ++ * cfns.h: Regenerate. diff --git a/contrib/crossrpms/patches/gdb-7.3.1-rtems4.10-20110919.diff b/contrib/crossrpms/patches/gdb-7.3.1-rtems4.10-20110919.diff new file mode 100644 index 0000000000..0a201a586a --- /dev/null +++ b/contrib/crossrpms/patches/gdb-7.3.1-rtems4.10-20110919.diff @@ -0,0 +1,586 @@ +diff -Naur gdb-7.3.1.orig/gdb/lm32-tdep.c gdb-7.3.1/gdb/lm32-tdep.c +--- gdb-7.3.1.orig/gdb/lm32-tdep.c 2011-03-18 19:52:30.000000000 +0100 ++++ gdb-7.3.1/gdb/lm32-tdep.c 2011-09-05 05:15:58.049769734 +0200 +@@ -35,7 +35,7 @@ + #include "regcache.h" + #include "trad-frame.h" + #include "reggroups.h" +-#include "opcodes/lm32-desc.h" ++#include "../opcodes/lm32-desc.h" + + #include "gdb_string.h" + +diff -Naur gdb-7.3.1.orig/gdb/sparc-tdep.c gdb-7.3.1/gdb/sparc-tdep.c +--- gdb-7.3.1.orig/gdb/sparc-tdep.c 2011-03-18 19:52:32.000000000 +0100 ++++ gdb-7.3.1/gdb/sparc-tdep.c 2011-09-05 05:15:58.049769734 +0200 +@@ -1117,7 +1117,7 @@ + sparc32_store_return_value (struct type *type, struct regcache *regcache, + const gdb_byte *valbuf) + { +- int len = TYPE_LENGTH (type); ++ size_t len = TYPE_LENGTH (type); + gdb_byte buf[8]; + + gdb_assert (!sparc_structure_or_union_p (type)); +diff -Naur gdb-7.3.1.orig/sim/common/gentmap.c gdb-7.3.1/sim/common/gentmap.c +--- gdb-7.3.1.orig/sim/common/gentmap.c 2006-11-07 20:29:59.000000000 +0100 ++++ gdb-7.3.1/sim/common/gentmap.c 2011-09-05 05:15:58.064769977 +0200 +@@ -2,6 +2,7 @@ + + #include <stdio.h> + #include <stdlib.h> ++#include <string.h> + + struct tdefs { + char *symbol; +diff -Naur gdb-7.3.1.orig/sim/erc32/configure gdb-7.3.1/sim/erc32/configure +--- gdb-7.3.1.orig/sim/erc32/configure 2010-01-09 22:11:39.000000000 +0100 ++++ gdb-7.3.1/sim/erc32/configure 2011-09-05 05:15:58.075770156 +0200 +@@ -591,8 +591,9 @@ + ac_subst_vars='LTLIBOBJS + LIBOBJS + cgen_breaks ++READLINE_CFLAGS ++READLINE_DEPS + READLINE +-TERMCAP + REPORT_BUGS_TEXI + REPORT_BUGS_TO + PKGVERSION +@@ -716,6 +717,7 @@ + enable_sim_profile + with_pkgversion + with_bugurl ++with_system_readline + ' + ac_precious_vars='build_alias + host_alias +@@ -1358,6 +1360,7 @@ + --with-zlib include zlib support (auto/yes/no) default=auto + --with-pkgversion=PKG Use PKG in the version string in place of "GDB" + --with-bugurl=URL Direct users to URL to report a bug ++ --with-system-readline use installed readline library + + Some influential environment variables: + CC C compiler command +@@ -2416,7 +2419,6 @@ + + + +- + # Bugs in autoconf 2.59 break the call to SIM_AC_COMMON, hack around + # it by inlining the macro's contents. + # This file contains common code used by all simulators. +@@ -2916,18 +2918,18 @@ + int + main () + { +- ++return 0; + ; + return 0; + } + _ACEOF + ac_clean_files_save=$ac_clean_files +-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out conftest.out" ++ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" + # Try to create an executable without -o first, disregard a.out. + # It will help us diagnose broken compilers, and finding out an intuition + # of exeext. +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +-$as_echo_n "checking for C compiler default output file name... " >&6; } ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 ++$as_echo_n "checking whether the C compiler works... " >&6; } + ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + + # The possible output files: +@@ -2989,10 +2991,10 @@ + else + ac_file='' + fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +-$as_echo "$ac_file" >&6; } + if test -z "$ac_file"; then : +- $as_echo "$as_me: failed program was:" >&5 ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++$as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +@@ -3000,51 +3002,18 @@ + { as_fn_set_status 77 + as_fn_error "C compiler cannot create executables + See \`config.log' for more details." "$LINENO" 5; }; } ++else ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 ++$as_echo "yes" >&6; } + fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 ++$as_echo_n "checking for C compiler default output file name... " >&6; } ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 ++$as_echo "$ac_file" >&6; } + ac_exeext=$ac_cv_exeext + +-# Check that the compiler produces executables we can run. If not, either +-# the compiler is broken, or we cross compile. +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +-$as_echo_n "checking whether the C compiler works... " >&6; } +-# If not cross compiling, check that we can run a simple program. +-if test "$cross_compiling" != yes; then +- if { ac_try='./$ac_file' +- { { case "(($ac_try" in +- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; +- *) ac_try_echo=$ac_try;; +-esac +-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +-$as_echo "$ac_try_echo"; } >&5 +- (eval "$ac_try") 2>&5 +- ac_status=$? +- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 +- test $ac_status = 0; }; }; then +- cross_compiling=no +- else +- if test "$cross_compiling" = maybe; then +- cross_compiling=yes +- else +- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +-as_fn_error "cannot run C compiled programs. +-If you meant to cross compile, use \`--host'. +-See \`config.log' for more details." "$LINENO" 5; } +- fi +- fi +-fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +-$as_echo "yes" >&6; } +- +-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out conftest.out ++rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out + ac_clean_files=$ac_clean_files_save +-# Check that the compiler produces executables we can run. If not, either +-# the compiler is broken, or we cross compile. +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +-$as_echo_n "checking whether we are cross compiling... " >&6; } +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +-$as_echo "$cross_compiling" >&6; } +- + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 + $as_echo_n "checking for suffix of executables... " >&6; } + if { { ac_try="$ac_link" +@@ -3084,6 +3053,63 @@ + rm -f conftest.$ac_ext + EXEEXT=$ac_cv_exeext + ac_exeext=$EXEEXT ++cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ ++int ++main () ++{ ++ ++ ; ++ return 0; ++} ++_ACEOF ++ac_clean_files="$ac_clean_files conftest.out" ++# Check that the compiler produces executables we can run. If not, either ++# the compiler is broken, or we cross compile. ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 ++$as_echo_n "checking whether we are cross compiling... " >&6; } ++if test "$cross_compiling" != yes; then ++ { { ac_try="$ac_link" ++case "(($ac_try" in ++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; ++ *) ac_try_echo=$ac_try;; ++esac ++eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" ++$as_echo "$ac_try_echo"; } >&5 ++ (eval "$ac_link") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; } ++ if { ac_try='./conftest$ac_cv_exeext' ++ { { case "(($ac_try" in ++ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; ++ *) ac_try_echo=$ac_try;; ++esac ++eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" ++$as_echo "$ac_try_echo"; } >&5 ++ (eval "$ac_try") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; }; then ++ cross_compiling=no ++ else ++ if test "$cross_compiling" = maybe; then ++ cross_compiling=yes ++ else ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++as_fn_error "cannot run C compiled programs. ++If you meant to cross compile, use \`--host'. ++See \`config.log' for more details." "$LINENO" 5; } ++ fi ++ fi ++fi ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 ++$as_echo "$cross_compiling" >&6; } ++ ++rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ++ac_clean_files=$ac_clean_files_save + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 + $as_echo_n "checking for suffix of object files... " >&6; } + if test "${ac_cv_objext+set}" = set; then : +@@ -4532,86 +4558,41 @@ + done + + +-# In the Cygwin environment, we need some additional flags. +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for cygwin" >&5 +-$as_echo_n "checking for cygwin... " >&6; } +-if test "${sim_cv_os_cygwin+set}" = set; then : +- $as_echo_n "(cached) " >&6 +-else +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ + +-#ifdef __CYGWIN__ +-lose +-#endif +-_ACEOF +-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | +- $EGREP "lose" >/dev/null 2>&1; then : +- sim_cv_os_cygwin=yes +-else +- sim_cv_os_cygwin=no ++# Check whether --with-system-readline was given. ++if test "${with_system_readline+set}" = set; then : ++ withval=$with_system_readline; + fi +-rm -f conftest* + +-fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sim_cv_os_cygwin" >&5 +-$as_echo "$sim_cv_os_cygwin" >&6; } + +-if test x$sim_cv_os_cygwin = xyes; then +- TERMCAP='`if test -r ../../libtermcap/libtermcap.a; then echo ../../libtermcap/libtermcap.a; else echo -ltermcap; fi` -luser32' +-else +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ltermcap" >&5 +-$as_echo_n "checking for main in -ltermcap... " >&6; } +-if test "${ac_cv_lib_termcap_main+set}" = set; then : +- $as_echo_n "(cached) " >&6 +-else +- ac_check_lib_save_LIBS=$LIBS +-LIBS="-ltermcap $LIBS" +-cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++if test "$with_system_readline" = yes; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for readline" >&5 ++$as_echo_n "checking for readline... " >&6; } ++ save_LIBS="$LIBS" ++ LIBS="-lreadline $save_LIBS" ++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + +- ++/* Override any GCC internal prototype to avoid an error. ++ Use char because int might match the return type of a GCC ++ builtin and then its argument prototype would still apply. */ ++#ifdef __cplusplus ++extern "C" ++#endif ++char add_history (); + int + main () + { +-return main (); ++return add_history (); + ; + return 0; + } + _ACEOF + if ac_fn_c_try_link "$LINENO"; then : +- ac_cv_lib_termcap_main=yes +-else +- ac_cv_lib_termcap_main=no +-fi +-rm -f core conftest.err conftest.$ac_objext \ +- conftest$ac_exeext conftest.$ac_ext +-LIBS=$ac_check_lib_save_LIBS +-fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_main" >&5 +-$as_echo "$ac_cv_lib_termcap_main" >&6; } +-if test "x$ac_cv_lib_termcap_main" = x""yes; then : +- TERMCAP=-ltermcap +-else +- TERMCAP="" +-fi +- +-fi +- +- +-# We prefer the in-tree readline. Top-level dependencies make sure +-# src/readline (if it's there) is configured before src/sim. +-if test -r ../../readline/Makefile; then +- READLINE=../../readline/libreadline.a +-else +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for readline in -lreadline" >&5 +-$as_echo_n "checking for readline in -lreadline... " >&6; } +-if test "${ac_cv_lib_readline_readline+set}" = set; then : +- $as_echo_n "(cached) " >&6 ++ READLINE=-lreadline + else +- ac_check_lib_save_LIBS=$LIBS +-LIBS="-lreadline $TERMCAP $LIBS" +-cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++ LIBS="-lreadline -lncurses $save_LIBS" ++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + + /* Override any GCC internal prototype to avoid an error. +@@ -4620,33 +4601,39 @@ + #ifdef __cplusplus + extern "C" + #endif +-char readline (); ++char add_history (); + int + main () + { +-return readline (); ++return add_history (); + ; + return 0; + } + _ACEOF + if ac_fn_c_try_link "$LINENO"; then : +- ac_cv_lib_readline_readline=yes ++ READLINE="-lreadline -lncurses" + else +- ac_cv_lib_readline_readline=no ++ as_fn_error "unable to detect readline" "$LINENO" 5 + fi + rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +-LIBS=$ac_check_lib_save_LIBS ++ + fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_readline_readline" >&5 +-$as_echo "$ac_cv_lib_readline_readline" >&6; } +-if test "x$ac_cv_lib_readline_readline" = x""yes; then : +- READLINE=-lreadline +-else +- as_fn_error "the required \"readline\" library is missing" "$LINENO" 5 ++rm -f core conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++ LIBS="$save_LIBS" ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READLINE" >&5 ++$as_echo "$READLINE" >&6; } ++ READLINE_DEPS= ++ READLINE_CFLAGS= ++else ++ READLINE='../../readline/libreadline.a -lncurses' ++ READLINE_DEPS='$(READLINE)' ++ READLINE_CFLAGS='-I$(READLINE_SRC)/..' + fi + +-fi ++ ++ + + + ac_sources="$sim_link_files" +diff -Naur gdb-7.3.1.orig/sim/erc32/configure.ac gdb-7.3.1/sim/erc32/configure.ac +--- gdb-7.3.1.orig/sim/erc32/configure.ac 2006-12-20 23:35:51.000000000 +0100 ++++ gdb-7.3.1/sim/erc32/configure.ac 2011-09-05 05:15:58.075770156 +0200 +@@ -11,27 +11,32 @@ + + AC_CHECK_HEADERS(stdlib.h) + +-# In the Cygwin environment, we need some additional flags. +-AC_CACHE_CHECK([for cygwin], sim_cv_os_cygwin, +-[AC_EGREP_CPP(lose, [ +-#ifdef __CYGWIN__ +-lose +-#endif],[sim_cv_os_cygwin=yes],[sim_cv_os_cygwin=no])]) ++AC_ARG_WITH([system-readline], ++ [AS_HELP_STRING([--with-system-readline], ++ [use installed readline library])]) + +-if test x$sim_cv_os_cygwin = xyes; then +- TERMCAP='`if test -r ../../libtermcap/libtermcap.a; then echo ../../libtermcap/libtermcap.a; else echo -ltermcap; fi` -luser32' ++if test "$with_system_readline" = yes; then ++ AC_MSG_CHECKING([for readline]) ++ save_LIBS="$LIBS" ++ LIBS="-lreadline $save_LIBS" ++ AC_LINK_IFELSE([AC_LANG_CALL([], ++ [add_history])], [READLINE=-lreadline], ++ [ LIBS="-lreadline -lncurses $save_LIBS" ++ AC_LINK_IFELSE([AC_LANG_CALL([], ++ [add_history])], [READLINE="-lreadline -lncurses"], ++ [AC_MSG_ERROR([unable to detect readline])]) ++ ]) ++ LIBS="$save_LIBS" ++ AC_MSG_RESULT($READLINE) ++ READLINE_DEPS= ++ READLINE_CFLAGS= + else +- AC_CHECK_LIB(termcap, main, TERMCAP=-ltermcap, TERMCAP="") +-fi +-AC_SUBST(TERMCAP) +- +-# We prefer the in-tree readline. Top-level dependencies make sure +-# src/readline (if it's there) is configured before src/sim. +-if test -r ../../readline/Makefile; then +- READLINE=../../readline/libreadline.a +-else +- AC_CHECK_LIB(readline, readline, READLINE=-lreadline, +- AC_ERROR([the required "readline" library is missing]), $TERMCAP) ++ READLINE='../../readline/libreadline.a -lncurses' ++ READLINE_DEPS='$(READLINE)' ++ READLINE_CFLAGS='-I$(READLINE_SRC)/..' + fi + AC_SUBST(READLINE) ++AC_SUBST(READLINE_DEPS) ++AC_SUBST(READLINE_CFLAGS) ++ + SIM_AC_OUTPUT +diff -Naur gdb-7.3.1.orig/sim/erc32/erc32.c gdb-7.3.1/sim/erc32/erc32.c +--- gdb-7.3.1.orig/sim/erc32/erc32.c 2010-05-11 16:18:20.000000000 +0200 ++++ gdb-7.3.1/sim/erc32/erc32.c 2011-09-05 05:15:58.076770172 +0200 +@@ -414,7 +414,7 @@ + if (rom8) mec_memcfg &= ~0x20000; + else mec_memcfg |= 0x20000; + +- mem_ramsz = (256 * 1024) << ((mec_memcfg >> 10) & 7); ++ mem_ramsz = (512 * 1024) << ((mec_memcfg >> 10) & 7); + mem_romsz = (128 * 1024) << ((mec_memcfg >> 18) & 7); + + if (sparclite_board) { +diff -Naur gdb-7.3.1.orig/sim/erc32/Makefile.in gdb-7.3.1/sim/erc32/Makefile.in +--- gdb-7.3.1.orig/sim/erc32/Makefile.in 2011-01-01 16:33:58.000000000 +0100 ++++ gdb-7.3.1/sim/erc32/Makefile.in 2011-09-05 05:15:58.076770172 +0200 +@@ -19,12 +19,12 @@ + + ## COMMON_PRE_CONFIG_FRAG + +-TERMCAP_LIB = @TERMCAP@ ++# TERMCAP_LIB = -lncurses + READLINE_LIB = @READLINE@ + + SIM_OBJS = exec.o erc32.o func.o help.o float.o interf.o + SIM_EXTRA_LIBS = $(READLINE_LIB) $(TERMCAP_LIB) -lm +-SIM_EXTRA_ALL = sis ++SIM_EXTRA_ALL = sis$(EXEEXT) + SIM_EXTRA_INSTALL = install-sis + SIM_EXTRA_CLEAN = clean-sis + +@@ -38,8 +38,8 @@ + # `sis' doesn't need interf.o. + SIS_OFILES = exec.o erc32.o func.o help.o float.o + +-sis: sis.o $(SIS_OFILES) $(COMMON_OBJS) $(LIBDEPS) +- $(CC) $(ALL_CFLAGS) -o sis \ ++sis$(EXEEXT): sis.o $(SIS_OFILES) $(COMMON_OBJS) $(LIBDEPS) ++ $(CC) $(ALL_CFLAGS) -o sis$(EXEEXT) \ + sis.o $(SIS_OFILES) $(COMMON_OBJS) $(EXTRA_LIBS) + + # FIXME: This computes the build host's endianness, doesn't it? +@@ -52,11 +52,11 @@ + + # Copy the files into directories where they will be run. + install-sis: installdirs +- n=`echo sis | sed '$(program_transform_name)'`; \ +- $(INSTALL_PROGRAM) sis$(EXEEXT) $(DESTDIR)$(bindir)/$$n$(EXEEXT) ++ n=`echo sis$(EXEEXT) | sed '$(program_transform_name)'`; \ ++ $(INSTALL_PROGRAM) sis$(EXEEXT) $(DESTDIR)$(bindir)/$$n + + clean-sis: +- rm -f sis end end.h ++ rm -f sis$(EXEEXT) end end.h + + configure: + @echo "Rebuilding configure..." +diff -Naur gdb-7.3.1.orig/sim/h8300/compile.c gdb-7.3.1/sim/h8300/compile.c +--- gdb-7.3.1.orig/sim/h8300/compile.c 2011-01-11 15:19:32.000000000 +0100 ++++ gdb-7.3.1/sim/h8300/compile.c 2011-09-05 05:15:58.085770319 +0200 +@@ -38,6 +38,12 @@ + # define SIGTRAP 5 + #endif + ++#ifdef _WIN32 ++#ifndef SIGBUS ++#define SIGBUS 10 ++#endif ++#endif ++ + int debug; + + host_callback *sim_callback; +diff -Naur gdb-7.3.1.orig/sim/m32c/Makefile.in gdb-7.3.1/sim/m32c/Makefile.in +--- gdb-7.3.1.orig/sim/m32c/Makefile.in 2011-01-01 16:34:01.000000000 +0100 ++++ gdb-7.3.1/sim/m32c/Makefile.in 2011-09-05 05:15:58.098770530 +0200 +@@ -56,7 +56,7 @@ + ./opc2c -l m32c.out $(srcdir)/m32c.opc > m32c.c + + opc2c : opc2c.o safe-fgets.o +- $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $^ -o $@ $(BUILD_LIBS) ++ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $^ -o $@ $(BUILD_LIBS) + + sample.x : $(srcdir)/sample.S $(srcdir)/sample.ld + ../../gcc/xgcc $(CPUFLAGS) -B../../gcc/ -c $(srcdir)/sample.S -o sample.o +@@ -90,8 +90,8 @@ + r8c.o : cpu.h mem.h misc.h int.h + + opc2c.o : opc2c.c safe-fgets.h +- $(CC_FOR_BUILD) $(BUILD_CFLAGS) -c $(srcdir)/opc2c.c ++ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -o $@ -c $(srcdir)/opc2c.c + + safe-fgets.o : safe-fgets.c safe-fgets.h +- $(CC_FOR_BUILD) $(BUILD_CFLAGS) -c $(srcdir)/safe-fgets.c ++ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -o $@ -c $(srcdir)/safe-fgets.c + +diff -Naur gdb-7.3.1.orig/sim/ppc/device.c gdb-7.3.1/sim/ppc/device.c +--- gdb-7.3.1.orig/sim/ppc/device.c 2011-02-14 06:14:27.000000000 +0100 ++++ gdb-7.3.1/sim/ppc/device.c 2011-09-05 05:15:58.112770758 +0200 +@@ -1816,7 +1816,7 @@ + /* I/O */ + + EXTERN_DEVICE\ +-(void volatile) ++(void) + device_error(device *me, + const char *fmt, + ...) +diff -Naur gdb-7.3.1.orig/sim/ppc/device.h gdb-7.3.1/sim/ppc/device.h +--- gdb-7.3.1.orig/sim/ppc/device.h 2001-12-14 01:22:12.000000000 +0100 ++++ gdb-7.3.1/sim/ppc/device.h 2011-09-05 05:15:58.112770758 +0200 +@@ -727,7 +727,7 @@ + */ + + EXTERN_DEVICE\ +-(void volatile) device_error ++(void) device_error + (device *me, + const char *fmt, + ...) __attribute__ ((format (printf, 2, 3))); +diff -Naur gdb-7.3.1.orig/sim/ppc/hw_glue.c gdb-7.3.1/sim/ppc/hw_glue.c +--- gdb-7.3.1.orig/sim/ppc/hw_glue.c 1999-04-16 03:35:09.000000000 +0200 ++++ gdb-7.3.1/sim/ppc/hw_glue.c 2011-09-05 05:15:58.112770758 +0200 +@@ -194,13 +194,13 @@ + if (glue->sizeof_output == 0) + device_error(me, "at least one reg property size must be nonzero"); + if (glue->sizeof_output % sizeof(unsigned_word) != 0) +- device_error(me, "reg property size must be %d aligned", sizeof(unsigned_word)); ++ device_error(me, "reg property size must be %zd aligned", sizeof(unsigned_word)); + /* and the address */ + device_address_to_attach_address(device_parent(me), + &unit.address, &glue->space, &glue->address, + me); + if (glue->address % (sizeof(unsigned_word) * max_nr_interrupts) != 0) +- device_error(me, "reg property address must be %d aligned", ++ device_error(me, "reg property address must be %zd aligned", + sizeof(unsigned_word) * max_nr_interrupts); + glue->nr_outputs = glue->sizeof_output / sizeof(unsigned_word); + glue->output = zalloc(glue->sizeof_output); diff --git a/contrib/crossrpms/patches/newlib-1.18.0-rtems4.10-20110419.diff b/contrib/crossrpms/patches/newlib-1.18.0-rtems4.10-20110419.diff deleted file mode 100644 index e4b0c90316..0000000000 --- a/contrib/crossrpms/patches/newlib-1.18.0-rtems4.10-20110419.diff +++ /dev/null @@ -1,2799 +0,0 @@ -diff -Naur newlib-1.18.0.orig/.gitignore newlib-1.18.0/.gitignore ---- newlib-1.18.0.orig/.gitignore 1970-01-01 01:00:00.000000000 +0100 -+++ newlib-1.18.0/.gitignore 2011-04-19 03:39:58.571184647 +0200 -@@ -0,0 +1,2 @@ -+*/Entries.Log -+CVS -diff -Naur newlib-1.18.0.orig/newlib/ChangeLog newlib-1.18.0/newlib/ChangeLog ---- newlib-1.18.0.orig/newlib/ChangeLog 2009-12-17 22:08:04.000000000 +0100 -+++ newlib-1.18.0/newlib/ChangeLog 2011-04-19 03:39:58.577184757 +0200 -@@ -1,3 +1,23 @@ -+2011-04-19 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/stdint.h: Rework SIZE_MAX. -+ * libc/sys/rtems/include/limits.h: Rework SSIZE_MAX. -+ -+2011-01-31 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/crt0.c: Add clock_gettime, gettimeofday, -+ sched_yield. -+ -+2011-01-12 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libm/math/w_tgamma.c: Only build ifndef _DOUBLE_IS_32BITS. -+ * libm/math/wf_tgamma.c: Map tgamma to tgammaf, ifdef _DOUBLE_IS_32BITS. -+ -+2011-01-07 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/crt0.c: Adjust free() and calloc() to match their -+ public decls. -+ - 2009-12-17 Jeff Johnston <jjohnstn@redhat.com> - - * NEWS: Update with 1.18.0 info. -@@ -41,19 +61,19 @@ - * libc/stdlib/atexit.c: Ditto. - * libc/stdlib/on_exit.c: Ditto. - --2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org> -+2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/machine/ieeefp.h: Rework __IEEE_*_ENDIAN handling. -- * libc/machine/arm/machine/endian.h: Remove (Conflicts with -+ * libc/machine/arm/machine/endian.h: Remove (Conflicts with - libc/include/machine/endian.h) - --2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org> -+2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/machine/setjmp.h: Set up _JBLEN #ifdef __m68k__. - --2009-12-17 Ralf Corsepius <ralf.corsepius@rtems.org> -+2009-12-17 Ralf Corsépius <ralf.corsepius@rtems.org> - -- * libc/include/pthread.h: Add pthread_atfork, pthread_rwlock_unlock -+ * libc/include/pthread.h: Add pthread_atfork, pthread_rwlock_unlock - * libc/include/sys/stat.h: Use struct timespec st_*tim, - blksize_t st_blksize, blkcnt_t st_blocks. - Add st_*time compatibility macros. -@@ -69,23 +89,23 @@ - and ETOOMANYREFS into general list as they are referenced - by OpenGroup and needed by RTEMS. - --2009-12-16 Ralf Corsépius <ralf.corsepius@rtems.org> -+2009-12-16 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/search/hcreate.c: Don't include <sys/queue.h> (Unused). - --2009-12-16 Ralf Corsépius <ralf.corsepius@rtems.org> -+2009-12-16 Ralf Corsépius <ralf.corsepius@rtems.org> - -- * libc/sys/rtems/machine/_types.h: New (Derived from -+ * libc/sys/rtems/machine/_types.h: New (Derived from - machine/_default_types.h). -- * libc/sys/rtems/crt0.c: Rework. Introduce macro RTEMS_STUB. -+ * libc/sys/rtems/crt0.c: Rework. Introduce macro RTEMS_STUB. - * libc/sys/rtems/sys/param.h: -- Update copyright notice from FreeBSD. -- Remove HZ. -- Add #include <sys/priority.h> -- Remove priority handling (moved to sys/priority.h). -- Remove CLBYTES (Unused, abandoned in BSD). -+ Update copyright notice from FreeBSD. -+ Remove HZ. -+ Add #include <sys/priority.h> -+ Remove priority handling (moved to sys/priority.h). -+ Remove CLBYTES (Unused, abandoned in BSD). - * libc/sys/rtems/sys/queue.h: Update copyright (from FreeBSD). -- Remove CIRCLEQ_*. -+ Remove CIRCLEQ_*. - - 2009-12-15 Conny Marco Menebrocker <c-m-m@gmx.de> - -@@ -1666,7 +1686,7 @@ - - * libc/machine/arm/strcpy.c: Add missing comma. - --2009-02-26 Ralf Corsepius <ralf.corsepius@rtems.org> -+2009-02-26 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/machine/lm32/configure.in: Let - AC_CONFIG_SRCDIR point to setjmp.S instead of setjmp.s -@@ -1852,24 +1872,24 @@ - * libc/string/wcstrings.tex: Ditto. - * libc/string/Makefile.in: Regenerated. - --2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-12-12 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/stdio/fputws.c: Fix documentation. - * libc/stdio/getwchar.c: Ditto. - * libc/stdio/putwchar.c: Ditto. - --2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-12-12 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/sys/features.h: Set RTEMS's _POSIX_MONOTONIC_CLOCK to - 200112L (SUSv3 compliance). - Comment out RTEMS's _POSIX_SHARED_MEMORY_OBJECTS (Unsupported). - --2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-12-12 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/sys/rtems/crt0.c: Add stubs for getdents(), nanosleep(), - _execve(), _exit(). - --2008-12-12 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-12-12 Ralf Corsépius <ralf.corsepius@rtems.org> - - * configure.host: Let *rtems* default to c99-formats. - -@@ -2019,7 +2039,7 @@ - <linux/dirent.h>. - * libc/sys/linux/io64.c: Add weak alias for _stat64. - --2008-11-27 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-11-27 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/posix/telldir.c: Use #if !defined() instead of #ifndef - to fix GCC warning. -@@ -2191,17 +2211,17 @@ - * libc/unix/collate.c (__collate_err): simplify to remove unnecessary - strdup() and strlen() calls, also getting rid of a compiler warning. - --2008-11-19 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-11-19 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/sys/config.h: Don't put - __ATTRIBUTE_IMPURE_PTR__ into .sdata section for mips-rtems. - --2008-11-19 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-11-19 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/posix/runetype.h: Add include of stddef.h and remove - defining standard types: size_t and wchar_t. - --2008-11-19 Ralf Corsepius <ralf.corsepius@rtems.org> -+2008-11-19 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/pthread.h: Remove prototypes for - pthread_attr_getcputime and pthread_attr_setcputime which -@@ -4256,7 +4276,7 @@ - * libc/machine/spu/sprintf.c: Ditto. - * libc/machine/spu/sscanf.c: Ditto. - --2007-08-03 Ralf Corsepius <ralf.corsepius@rtems.org> -+2007-08-03 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/tar.h: New. - -@@ -6241,7 +6261,7 @@ - * libc/include/sys/signal.h (sigdelset, sigfillset, sigismember): New macros. - (sigaddset, sigemptyset): Add return code. - --2006-04-13 Ralf Corsepius <ralf.corsepius@rtems.org> -+2006-04-13 Ralf Corsépius <ralf.corsepius@rtems.org> - - * acinclude.m4: New _NEWLIB_VERSION. - * acinclude.m4(NEWLIB_CONFIGURE): AC_REQUIRE(_NEWLIB_VERSION). -@@ -6730,7 +6750,7 @@ - * libc/sys/linux/sys/stat.h: Change *stat64 prototypes to - take a pointer to struct stat64 rather than struct stat. - --2005-12-16 Ralf Corsepius <ralf.corsepius@rtems.org> -+2005-12-16 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/stdint.h: Prefer long over int for int32_t. - Use __have_long32 to set up int32_t. -@@ -6759,7 +6779,7 @@ - * libc/include/sys/types.h: Remove the ifdef armour around - standard POSIX types. - --2005-12-06 Ralf Corsepius <ralf.corsepius@rtems.org> -+2005-12-06 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/sys/rtems/crt0.c: Add rtems_gxx_key_create, - rtems_gxx_key_delete, rtems_gxx_getspecific, -@@ -6838,7 +6858,7 @@ - * libc/sys/linux/sys/unistd.h (readlink, symlink): New - prototypes. - --2005-11-01 Ralf Corsepius <ralf.corsepius@rtems.org> -+2005-11-01 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/stdint.h: Cleanup #if vs. #ifdef. - -@@ -7062,11 +7082,11 @@ - * libc/stdlib/mallocr.c (mALLOc, rEALLOCc, mEMALIGn): Set errno - to ENOMEM on failure. - --2005-10-06 Ralf Corsepius <ralf.corsepius@rtems.org> -+2005-10-06 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/stdint.h: Add [u]int_fast<N>_t types. - --2005-10-04 Ralf Corsepius <ralf.corsepius@rtems.org> -+2005-10-04 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/stdint.h: Move magic to set __have_long* to the - beginning. Use #if __have* instead of #if defined(__have*). -@@ -7082,14 +7102,14 @@ - * libc/sys/linux/include/stdint.h: Include <sys/types.h> and - incorporate Ralf's change below. - --2005-10-03 Ralf Corsepius <ralf.corsepius@rtems.org> -+2005-10-03 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/stdint.h: - Use __INTMAX_TYPE__ to derive intmax_t. - Use __UINTMAX_TYPE__ to derive uintmax_t. - Fix minor typo. - --2005-09-27 Ralf Corsepius <ralf.corsepius@rtems.org> -+2005-09-27 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/stdint.h: Correct __STDINT_EXP macro incorrectly - handling GCC >= 4. -@@ -7425,16 +7445,16 @@ - * configure.host (newlib_cflags) <cris-*-*, crisv32-*-*>: Add - -DCOMPACT_CTYPE. - --2005-03-06 Ralf Corsepious <ralf.corsepius@rtems.org> -+2005-03-06 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/sys/rtems/include/inttypes.h: New file. - * libc/sys/rtems/include/stdint.h: Ditto. - --2005-03-06 Ralf Corsepious <ralf.corsepius@rtems.org> -+2005-03-06 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/string/memcmp.c: Fix to avoid pointer signedness warning. - --2005-03-06 Ralf Corsepious <ralf.corsepius@rtems.org> -+2005-03-06 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/machine/_types.h: New file. - * libc/include/sys/types.h: Do not check for __rtems__ -@@ -7443,7 +7463,7 @@ - * libc/sys/rtems/machine/_types.h: Removed. Replaced with - shared header file. - --2005-02-25 Ralf Corsepious <ralf.corsepius@rtems.org> -+2005-02-25 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libm/common/fdlibm.h (FLT_UWORD_MAX, FLT_UWORD_HALF_MAX): Add - L qualifier for these long constants. -@@ -7459,13 +7479,13 @@ - * libc/time/strftime.c (strftime): Fix '%x' to deal with negative - years. Fix '%z' to use long, not int. - --2005-02-24 Ralf Corsepious <ralf.corsepius@rtems.org> -+2005-02-24 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libm/common/s_fpclassify.c: Use __uint32_t instead of int to - manipulate float values in integer form. - * libm/common/sf_round.c: Ditto. - --2005-02-24 Ralf Corsepious <ralf.corsepius@rtems.org> -+2005-02-24 Ralf Corsépius <ralf.corsepius@rtems.org> - - * libc/include/sys/types.h [__rtems__]: Include new - header file machine/_types.h. -@@ -7829,7 +7849,7 @@ - * libc/stdio/fread.c (fread): Fix return value for unbuffered - fread. - --2004-10-25 Ralf Corsepius <corsepiu@faw.uni-ulm.de> -+2004-10-25 Ralf Corsépius <corsepiu@faw.uni-ulm.de> - - * libc/include/machine/setjmp.h: Add AVR support. - * libc/sys/rtems/crt0.S [__AVR__]: Add __stack. -@@ -14061,7 +14081,7 @@ - - * libc/include/sys/unistd.h: Prototype chroot() for RTEMS. - --2001-08-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de> -+2001-08-29 Ralf Corsépius <corsepiu@faw.uni-ulm.de> - - * libc/machine/i386/f_atan2.S, libc/machine/i386/f_atan2f.S, - libc/machine/i386/f_exp.c, libc/machine/i386/f_expf.c, -@@ -14738,7 +14758,7 @@ - * libc/sys/linux/sys/utsname.h: Ditto. - * libc/sys/linux/sys/wait.h: Ditto. - --2000-12-08 Ralf Corsepius <corsepiu@faw.uni-ulm.de> -+2000-12-08 Ralf Corsépius <corsepiu@faw.uni-ulm.de> - - * Makefile.am: $(INSTALL), $(INSTALL_DATA), and $(INSTALL_PROGRAM) - can be a relative path to $(top_srcdir)/install.sh so ensure the -@@ -15643,7 +15663,7 @@ - * libc/include/stdlib.h: add ptsname, grantpt, unlockpt to cygwin - section - --Sat Oct 2 02:02:00 MEST 1999 Ralf Corsepius <corsepiu@faw.uni-ulm.de> -+Sat Oct 2 02:02:00 MEST 1999 Ralf Corsépius <corsepiu@faw.uni-ulm.de> - - * libc/machine/sh/asm.h: Added __SH4_SINGLE__ to DELAYED_BRANCHES - * libc/machine/sh/memcpy.S: Fix line wrapping in SL macro -diff -Naur newlib-1.18.0.orig/newlib/ChangeLog.rtems newlib-1.18.0/newlib/ChangeLog.rtems ---- newlib-1.18.0.orig/newlib/ChangeLog.rtems 1970-01-01 01:00:00.000000000 +0100 -+++ newlib-1.18.0/newlib/ChangeLog.rtems 2011-04-19 03:39:58.578184775 +0200 -@@ -0,0 +1,301 @@ -+2011-01-14 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libm/common/s_ilogb.c, libm/common/s_llround.c, -+ libm/common/s_log2.c, libm/common/s_lrint.c, -+ libm/common/s_lround.c, libm/common/s_rint.c, -+ libm/common/sf_ilogb.c, libm/common/sf_log2.c, -+ libm/common/sf_rint.c: Import from newlib-cvs. -+ -+2011-01-14 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libm/common/fdlibm.h: -+ Add SAFE_LEFT_SHIFT, SAFE_RIGHT_SHIFT from newlib-cvs. -+ -+2011-01-07 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/stdio/open_memstream.c: Replace 64 * 1024 with 0x10000 to -+ avoid integer overflow on h8300. -+ -+2011-01-05 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libm/common/s_llrint.c: Back-port from newlib-cvs. -+ -+2011-01-05 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/stdio/tmpnam.c: Include <stdint.h>. -+ Use intptr_t instead of _POINTER_INT for improved portability. -+ * libc/misc/__dprintf.c: Include <stdint.h> -+ Use intptr_t instead of _POINTER_INT for improved portability. -+ -+2011-01-05 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libm/common/s_round.c: Cast const int to __int32_t. -+ -+2011-01-04 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * doc/makedoc.c: Add cludge to make makedoc 64bit compliant. -+ -+2011-01-04 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libm/math/e_scalb.c: Include <limits.h>. -+ Don't rely on 65000 being a valid int. -+ -+2011-01-04 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/posix/readdir.c: Include <stdint.h>. -+ Cast to intptr_t instead of int. -+ -+2011-01-04 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/string/memccpy.c, libc/string/memchr.c, -+ libc/string/memcmp.c, libc/string/memcpy.c, -+ libc/string/memmove.c, libc/string/mempcpy.c, -+ libc/string/memset.c, libc/string/stpcpy.c, -+ libc/string/stpncpy.c, libc/string/strcpy.c, -+ libc/string/strlen.c, libc/string/strncat.c, -+ libc/string/strncpy.c (UNALIGNED): -+ Include <stdint.h>. -+ Cast to intptr_t instead of long. -+ -+2011-01-04 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/stdio/open_memstream.c (internal_open_memstream_r): -+ Don't limit c->max to 64*1024 on targets with SIZE_MAX < 64*1024. -+ -+2010-10-05 Eric Blake <eblake@redhat.com> -+ -+ memmem, strstr, strcasestr: fix bug with long periodic needle -+ * lib/str-two-way.h (two_way_long_needle): Avoid bug with long -+ periodic needle having false positive. -+ -+2010-08-24 Sebastian Huber <sebastian.huber@embedded-brains.de> -+ -+ * libc/posix/opendir.c: Added missing memory free. -+ -+2010-08-10 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ PR 1475/newlib: -+ * libc/include/stdint.h: Fall back to compute SIZE_MAX based on -+ __SIZEOF_SIZE_T__ and __CHAR_BIT__ if available. -+ -+2010-08-04 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/string/strcat.c: -+ Include <stdint.h>. Use uintptr_t instead of long in ALIGNED. -+ * libc/string/strchr.c, libc/string/strcmp.c, libc/string/strncmp.c: -+ Include <stdint.h>. Use uintptr_t instead of long in UNALIGNED. -+ * libc/include/sys/unistd.h: Activate decls for -+ getsid, setegid, seteuid. -+ -+2010-07-08 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * configure.host: Add -D_COMPILING_NEWLIB to newlib_cflags. -+ * libc/string/index.c, libc/string/rindex.c: Include <string.h>. -+ * libc/stdlib/putenv_r.c: Include <strings.h> -+ -+2010-07-06 Corinna Vinschen <corinna@vinschen.de> -+ -+ * libc/posix/rewinddir.c (rewinddir): Remove incorrect cast to off_t. -+ * libc/sys/rtems/sys/dirent.h (_seekdir): Add prototype. -+ -+2010-06-17 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/machine/_types.h: Special case for sparc64. -+ -+2010-04-23 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/machine/_types.h: Add _mode_t. -+ * libc/include/sys/types.h: Derive mode_t from _mode_t. -+ -+2010-04-02 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/sched.h, libc/include/sys/sched.h: -+ Adopt newlib-cvs's versions. -+ -+2010-03-25 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/strings.h: New (split-out from string.h). -+ * libc/include/string.h: Remove bcmp, bcopy, bzero, ffs, index, rindex, -+ strcasecmp, strncasecmp (Moved to strings.h). -+ Remove strcmpi, stricmp, strncmpi, strnicmp. -+ * libc/misc/ffs.c: Use <strings.h> instead of <string.h>. -+ * libc/string/bcmp.c: Use <strings.h> instead of <string.h>. -+ * libc/string/bzero.c: Use <strings.h> instead of <string.h>. -+ * libc/string/rindex.c: Use <strings.h> instead of <string.h>. -+ * libc/string/strcasecmp.c: Use <strings.h> instead of <string.h>. -+ * libc/string/strcasecmp.c: Use <strings.h> instead of <string.h>. -+ -+2010-03-23 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/machine/_types.h: Add i386 to 64bit off_t targets. -+ -+2010-03-10 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/posix/telldir.c: Adopt newlib-cvs's telldir.c -+ -+2010-02-10 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/machine/_types.h: Use __int64_t for _off_t, fpos_t for -+ selected targets. -+ -+2010-02-05 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/posix/telldir.c: Remove bogus nested prototype of lseek(). -+ -+2010-01-11 Sebastian Huber <sebastian.huber@embedded-brains.de> -+ -+ * libc/posix/telldir.c (_cleanupdir): Fixed usage of freed memory. -+ -+2009-12-18 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/search/db_local.h: -+ Use __uint32_t instead of u_int (prototype mismatches). -+ * libc/search/extern.h (__buf_init): -+ Use __uint32_t instead of int (16 bit target portability). -+ * libc/search/hash_buf.c: Use ptrdiff_t instead of __uint32_t, -+ use __uint32_t instead of int (16 bit target portability). -+ * libc/search/hash.h: Use __uint32_it instead of int -+ (16 bit target portability). -+ * libm/common/modfl.c: Add cast to (double*) to avoid GCC warning. -+ * libm/common/sf_llrint.c, libm/common/sf_round.c: Add explicit -+ casts to __uint32_t to avoid overflows on implicit casts. -+ -+2009-12-18 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ Merger with newlib-1.18.0. -+ -+2009-10-29 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/machine/_types.h: Rework. -+ * libc/sys/rtems/machine/stdint.h: Remove. -+ * libc/include/inttypes.h: -+ Rework logic to determine PRI*PTR. -+ Prefer long64 over longlong64. -+ * libc/include/machine/_default_types.h: -+ Sync logic for __int32 with stdint.h (Prefer long over int). -+ * libc/include/stdint.h: -+ Remove __SPU__ hack. -+ Prefer int for int16_t (sync with _default_types.h). -+ Rework intptr_t determination. -+ -+2009-10-28 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/machine/_types.h: New. -+ Add custom time for _ssize_t. -+ * libc/stdlib/assert.c: Sync with newlib-CVS. -+ * configure.host: Add -DHAVE_ASSERT_FUNC to newlib_cflags. -+ -+2009-10-27 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/sys/pthread.h: -+ Add pthread_atfork (Mandated by IEEE Std 1003.1-2008). -+ Add pthread_rwlock_unlock (Formerly missing) -+ -+2009-10-26 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/sys/signal.h: Sync with newlib-CVS. -+ -+2009-10-09 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/sys/signal.h: Use pid_t as 1st arg to kill() -+ (mandated by POSIX). -+ -+2009-09-22 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/sys/queue.h: Update copyright (from FreeBSD). -+ Remove CIRCLEQ_*. -+ * libc/search/hcreate.c: Don't include sys/queue.h. -+ -+2009-09-18 Christopher Faylor <me+cygwin@cgf.cx> -+ -+ * libc/include/sys/unistd.h: Declare getpagesize as returning -+ POSIX-mandated int. -+ -+2009-09-15 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/stdlib.h: Add posix_memalign. -+ -+2009-09-11 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * configure.host (m32c): Remove -D_ABORT_PROVIDED. -+ -+2009-09-10 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * configure.host: Add -D_NO_POPEN. -+ * libc/sys/rtems/crt0.c: Don't provide waitpid unless used. -+ -+2009-09-09 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * configure.host: Add -D_NO_WORDEXP. -+ -+2009-09-06 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/crt0.c: Add issetugid. -+ -+2009-09-02 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/crt0.c: Rework. Introduce macro RTEMS_STUB. -+ -+2009-07-27 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/crt0.c: Add _isatty_r. -+ -+2009-07-06 Joel Sherrill <joel.sherrill@oarcorp.com> -+ -+ * libc/include/sys/features.h: Define _UNIX98_THREAD_MUTEX_ATTRIBUTES. -+ -+2009-05-05 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * configure.host: Remove -DMISSING_SYSCALL_NAMES. -+ -+2009-03-11 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/stdlib/assert.c: Don't build __assert_func. -+ * libc/sys/rtems/crt0.c: Add __assert_func. -+ -+2009-03-09 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/machine/powerpc/times.c: Remove. -+ * libc/machine/powerpc/Makefile.am: Remove times.c. -+ * libc/machine/powerpc/Makefile.in: Regenerate. -+ -+2009-02-24 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/unix/ttyname.c: Sync with newlib-cvs. -+ * configure.host: Add -DHAVE_BLKSIZE to newlib_cflags. -+ -+2009-02-22 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/machine/stdint.h: Add __lm32__. -+ * libc/machine/lm32/configure.in: Set AC_CONFIG_SRC to setjmp.S. -+ * libc/machine/lm32/configure: Regenerate. -+ -+2009-02-20 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/unix/Makefile.in: Regenerate. -+ -+2009-02-20 Craig Howland <howland@LGSInnovations.com> on behalf of -+ Sebastian Huber <sebastian.huber@embedded-brains.de> -+ -+ * libc/unix/ttyname.c: Remove ttyname_r() (to a new file to avoid -+ coupling ttyname_r() and ttyname() due to the latter's large buffer). -+ * libc/unix/ttyname_r.c: New file to hold ttyname_r(), previously in -+ ttyname.c. -+ * libc/unix/ttyname.h: New file (common size definition for the 2 -+ ttyname*c files that are now split). -+ * libc/unix/Makefile.am (ELIX_2_SOURCES): Add ttyname_r.c. -+ -+2009-02-16 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/sys/rtems/sys/param.h: -+ Update copyright notice from FreeBSD. -+ Remove HZ. -+ Add #include <sys/priority.h> -+ Remove priority handling (moved to sys/priority.h). -+ Remove CLBYTES (Unused, abandoned in BSD). -+ -+2009-02-06 Ralf Corsépius <ralf.corsepius@rtems.org> -+ -+ * libc/include/sched.h: -+ Remove (collides with RTEMS's schedul.h). -+ -diff -Naur newlib-1.18.0.orig/newlib/configure.host newlib-1.18.0/newlib/configure.host ---- newlib-1.18.0.orig/newlib/configure.host 2009-12-10 18:12:11.000000000 +0100 -+++ newlib-1.18.0/newlib/configure.host 2011-04-19 03:39:58.579184794 +0200 -@@ -556,6 +556,7 @@ - *-*-rtems*) - default_newlib_io_long_long="yes" - default_newlib_io_c99_formats="yes" -+ newlib_cflags="${newlib_cflags} -D_COMPILING_NEWLIB" - newlib_cflags="${newlib_cflags} -DMALLOC_PROVIDED -DEXIT_PROVIDED -DSIGNAL_PROVIDED -DREENTRANT_SYSCALLS_PROVIDED -DHAVE_NANOSLEEP -DHAVE_BLKSIZE -DHAVE_FCNTL -DHAVE_ASSERT_FUNC" - # turn off unsupported items in posix directory - newlib_cflags="${newlib_cflags} -D_NO_GETLOGIN -D_NO_GETPWENT -D_NO_GETUT -D_NO_GETPASS -D_NO_SIGSET -D_NO_WORDEXP -D_NO_POPEN" -diff -Naur newlib-1.18.0.orig/newlib/doc/makedoc.c newlib-1.18.0/newlib/doc/makedoc.c ---- newlib-1.18.0.orig/newlib/doc/makedoc.c 2009-03-25 22:16:04.000000000 +0100 -+++ newlib-1.18.0/newlib/doc/makedoc.c 2011-04-19 03:39:58.579184794 +0200 -@@ -57,7 +57,7 @@ - { - char *ptr; - unsigned int write_idx; -- unsigned int size; -+ size_t size; - } string_type; - - -@@ -68,7 +68,7 @@ - - static void DEFUN(init_string_with_size,(buffer, size), - string_type *buffer AND -- unsigned int size ) -+ size_t size ) - { - buffer->write_idx = 0; - buffer->size = size; -@@ -219,8 +219,8 @@ - stinst_type *pc; - stinst_type sstack[STACK]; - stinst_type *ssp = &sstack[0]; --int istack[STACK]; --int *isp = &istack[0]; -+long istack[STACK]; -+long *isp = &istack[0]; - - typedef int *word_type; - -@@ -270,7 +270,7 @@ - { - isp++; - pc++; -- *isp = (int)(*pc); -+ *isp = (long)(*pc); - pc++; - - } -diff -Naur newlib-1.18.0.orig/newlib/libc/include/inttypes.h newlib-1.18.0/newlib/libc/include/inttypes.h ---- newlib-1.18.0.orig/newlib/libc/include/inttypes.h 2009-01-19 23:02:06.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/include/inttypes.h 2011-04-19 03:39:58.579184794 +0200 -@@ -242,15 +242,17 @@ - #define SCNxMAX __SCNMAX(x) - - /* ptr types */ --#if __have_long64 --#define __PRIPTR(x) __STRINGIFY(l##x) --#define __SCNPTR(x) __STRINGIFY(l##x) --#elif __have_longlong64 --#define __PRIPTR(x) __STRINGIFY(ll##x) --#define __SCNPTR(x) __STRINGIFY(ll##x) -+#if INTPTR_MAX == INT64_MAX -+#define __PRIPTR(x) __PRI64(x) -+#define __SCNPTR(x) __SCN64(x) -+#elif INTPTR_MAX == INT32_MAX -+#define __PRIPTR(x) __PRI32(x) -+#define __SCNPTR(x) __SCN32(x) -+#elif INTPTR_MAX == INT16_MAX -+#define __PRIPTR(x) __PRI16(x) -+#define __SCNPTR(x) __SCN16(x) - #else --#define __PRIPTR(x) __STRINGIFY(x) --#define __SCNPTR(x) __STRINGIFY(x) -+#error cannot determine PRI*PTR - #endif - - #define PRIdPTR __PRIPTR(d) -diff -Naur newlib-1.18.0.orig/newlib/libc/include/machine/_default_types.h newlib-1.18.0/newlib/libc/include/machine/_default_types.h ---- newlib-1.18.0.orig/newlib/libc/include/machine/_default_types.h 2008-06-12 00:14:54.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/include/machine/_default_types.h 2011-04-19 03:39:58.580184813 +0200 -@@ -54,14 +54,14 @@ - #endif - #endif - --#if __EXP(INT_MAX) == 0x7fffffffL --typedef signed int __int32_t; --typedef unsigned int __uint32_t; --#define ___int32_t_defined 1 --#elif __EXP(LONG_MAX) == 0x7fffffffL -+#if __EXP(LONG_MAX) == 0x7fffffffL - typedef signed long __int32_t; - typedef unsigned long __uint32_t; - #define ___int32_t_defined 1 -+#elif __EXP(INT_MAX) == 0x7fffffffL -+typedef signed int __int32_t; -+typedef unsigned int __uint32_t; -+#define ___int32_t_defined 1 - #elif __EXP(SHRT_MAX) == 0x7fffffffL - typedef signed short __int32_t; - typedef unsigned short __uint32_t; -diff -Naur newlib-1.18.0.orig/newlib/libc/include/sched.h newlib-1.18.0/newlib/libc/include/sched.h ---- newlib-1.18.0.orig/newlib/libc/include/sched.h 2007-09-21 23:02:15.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/include/sched.h 2011-04-19 03:39:58.580184813 +0200 -@@ -1,11 +1,94 @@ -+/* -+ * Written by Joel Sherrill <joel@OARcorp.com>. -+ * -+ * COPYRIGHT (c) 1989-2010. -+ * On-Line Applications Research Corporation (OAR). -+ * -+ * Permission to use, copy, modify, and distribute this software for any -+ * purpose without fee is hereby granted, provided that this entire notice -+ * is included in all copies of any software which is or includes a copy -+ * or modification of this software. -+ * -+ * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED -+ * WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION -+ * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS -+ * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. -+ * -+ * $Id$ -+ */ -+ - #ifndef _SCHED_H_ - #define _SCHED_H_ - -+#include <sys/types.h> -+#include <sys/sched.h> -+ - #ifdef __cplusplus - extern "C" { - #endif - --#include <sys/sched.h> -+#if defined(_POSIX_PRIORITY_SCHEDULING) -+/* -+ * XBD 13 - Set Scheduling Parameters, P1003.1b-2008, p. 1803 -+ */ -+int sched_setparam( -+ pid_t __pid, -+ const struct sched_param *__param -+); -+ -+/* -+ * XBD 13 - Set Scheduling Parameters, P1003.1b-2008, p. 1800 -+ */ -+int sched_getparam( -+ pid_t __pid, -+ struct sched_param *__param -+); -+ -+/* -+ * XBD 13 - Set Scheduling Policy and Scheduling Parameters, -+ * P1003.1b-2008, p. 1805 -+ */ -+int sched_setscheduler( -+ pid_t __pid, -+ int __policy, -+ const struct sched_param *__param -+); -+ -+/* -+ * XBD 13 - Get Scheduling Policy, P1003.1b-2008, p. 1801 -+ */ -+int sched_getscheduler( -+ pid_t __pid -+); -+ -+/* -+ * XBD 13 - Get Scheduling Parameter Limits, P1003.1b-2008, p. 1799 -+ */ -+int sched_get_priority_max( -+ int __policy -+); -+ -+int sched_get_priority_min( -+ int __policy -+); -+ -+/* -+ * XBD 13 - Get Scheduling Parameter Limits, P1003.1b-2008, p. 1802 -+ */ -+int sched_rr_get_interval( -+ pid_t __pid, -+ struct timespec *__interval -+); -+#endif /* _POSIX_PRIORITY_SCHEDULING */ -+ -+#if defined(_POSIX_THREADS) || defined(_POSIX_PRIORITY_SCHEDULING) -+ -+/* -+ * XBD 13 - Yield Processor, P1003.1b-2008, p. 1807 -+ */ -+int sched_yield( void ); -+ -+#endif /* _POSIX_THREADS or _POSIX_PRIORITY_SCHEDULING */ - - #ifdef __cplusplus - } -diff -Naur newlib-1.18.0.orig/newlib/libc/include/stdint.h newlib-1.18.0/newlib/libc/include/stdint.h ---- newlib-1.18.0.orig/newlib/libc/include/stdint.h 2009-04-24 23:55:07.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/include/stdint.h 2011-04-19 03:39:58.580184813 +0200 -@@ -33,7 +33,7 @@ - /* Check if "long" is 64bit or 32bit wide */ - #if __STDINT_EXP(LONG_MAX) > 0x7fffffff - #define __have_long64 1 --#elif __STDINT_EXP(LONG_MAX) == 0x7fffffff && !defined(__SPU__) -+#elif __STDINT_EXP(LONG_MAX) == 0x7fffffff - #define __have_long32 1 - #endif - -@@ -49,14 +49,14 @@ - #define __int_least8_t_defined 1 - #endif - --#if __STDINT_EXP(SHRT_MAX) == 0x7fff --typedef signed short int16_t; --typedef unsigned short uint16_t; --#define __int16_t_defined 1 --#elif __STDINT_EXP(INT_MAX) == 0x7fff -+#if __STDINT_EXP(INT_MAX) == 0x7fff - typedef signed int int16_t; - typedef unsigned int uint16_t; - #define __int16_t_defined 1 -+#elif __STDINT_EXP(SHRT_MAX) == 0x7fff -+typedef signed short int16_t; -+typedef unsigned short uint16_t; -+#define __int16_t_defined 1 - #elif __STDINT_EXP(SCHAR_MAX) == 0x7fff - typedef signed char int16_t; - typedef unsigned char uint16_t; -@@ -239,6 +239,29 @@ - * GCC doesn't provide an appropriate macro for [u]intptr_t - * For now, use __PTRDIFF_TYPE__ - */ -+#if defined(__SIZEOF_POINTER__) -+#if __SIZEOF_POINTER__ == 8 -+ typedef int64_t intptr_t; -+ typedef uint64_t uintptr_t; -+#define INTPTR_MAX INT64_MAX -+#define INTPTR_MIN INT64_MIN -+#define UINTPTR_MAX UINT64_MAX -+#elif __SIZEOF_POINTER__ == 4 -+ typedef int32_t intptr_t; -+ typedef uint32_t uintptr_t; -+#define INTPTR_MAX INT32_MAX -+#define INTPTR_MIN INT32_MIN -+#define UINTPTR_MAX UINT32_MAX -+#elif __SIZEOF_POINTER__ == 2 -+ typedef int16_t intptr_t; -+ typedef uint16_t uintptr_t; -+#define INTPTR_MAX INT16_MAX -+#define INTPTR_MIN INT16_MIN -+#define UINTPTR_MAX UINT16_MAX -+#else -+#error cannot determine intptr_t -+#endif -+#else - #if defined(__PTRDIFF_TYPE__) - typedef signed __PTRDIFF_TYPE__ intptr_t; - typedef unsigned __PTRDIFF_TYPE__ uintptr_t; -@@ -260,6 +283,7 @@ - #define INTPTR_MIN (-__STDINT_EXP(LONG_MAX) - 1) - #define UINTPTR_MAX (__STDINT_EXP(LONG_MAX) * 2UL + 1) - #endif -+#endif - - /* Limits of Specified-Width Integer Types */ - -@@ -408,6 +432,8 @@ - /* This must match size_t in stddef.h, currently long unsigned int */ - #ifdef __SIZE_MAX__ - #define SIZE_MAX __SIZE_MAX__ -+#elif defined(__SIZEOF_SIZE_T__) && defined(__CHAR_BIT__) -+#define SIZE_MAX (((1UL << (__SIZEOF_SIZE_T__ * __CHAR_BIT__ - 1)) - 1) * 2 + 1) - #else - #define SIZE_MAX (__STDINT_EXP(LONG_MAX) * 2UL + 1) - #endif -diff -Naur newlib-1.18.0.orig/newlib/libc/include/string.h newlib-1.18.0/newlib/libc/include/string.h ---- newlib-1.18.0.orig/newlib/libc/include/string.h 2008-06-18 17:27:27.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/include/string.h 2011-04-19 03:39:58.580184813 +0200 -@@ -49,18 +49,11 @@ - #ifndef __STRICT_ANSI__ - char *_EXFUN(strtok_r,(char *, const char *, char **)); - --int _EXFUN(bcmp,(const void *, const void *, size_t)); --void _EXFUN(bcopy,(const void *, void *, size_t)); --void _EXFUN(bzero,(void *, size_t)); --int _EXFUN(ffs,(int)); --char *_EXFUN(index,(const char *, int)); - _PTR _EXFUN(memccpy,(_PTR, const _PTR, int, size_t)); - _PTR _EXFUN(mempcpy,(_PTR, const _PTR, size_t)); - _PTR _EXFUN(memmem, (const _PTR, size_t, const _PTR, size_t)); --char *_EXFUN(rindex,(const char *, int)); - char *_EXFUN(stpcpy,(char *, const char *)); - char *_EXFUN(stpncpy,(char *, const char *, size_t)); --int _EXFUN(strcasecmp,(const char *, const char *)); - char *_EXFUN(strcasestr,(const char *, const char *)); - char *_EXFUN(strdup,(const char *)); - char *_EXFUN(_strdup_r,(struct _reent *, const char *)); -@@ -69,7 +62,6 @@ - char *_EXFUN(strerror_r,(int, char *, size_t)); - size_t _EXFUN(strlcat,(char *, const char *, size_t)); - size_t _EXFUN(strlcpy,(char *, const char *, size_t)); --int _EXFUN(strncasecmp,(const char *, const char *, size_t)); - size_t _EXFUN(strnlen,(const char *, size_t)); - char *_EXFUN(strsep,(char **, const char *)); - char *_EXFUN(strlwr,(char *)); -@@ -81,20 +73,6 @@ - int _EXFUN(strtosigno, (const char *__name)); - #endif - --/* These function names are used on Windows and perhaps other systems. */ --#ifndef strcmpi --#define strcmpi strcasecmp --#endif --#ifndef stricmp --#define stricmp strcasecmp --#endif --#ifndef strncmpi --#define strncmpi strncasecmp --#endif --#ifndef strnicmp --#define strnicmp strncasecmp --#endif -- - #endif /* ! __STRICT_ANSI__ */ - - #include <sys/string.h> -diff -Naur newlib-1.18.0.orig/newlib/libc/include/strings.h newlib-1.18.0/newlib/libc/include/strings.h ---- newlib-1.18.0.orig/newlib/libc/include/strings.h 1970-01-01 01:00:00.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/include/strings.h 2011-04-19 03:39:58.580184813 +0200 -@@ -0,0 +1,44 @@ -+/* -+ * strings.h -+ * -+ * Definitions for string operations. -+ */ -+ -+#ifndef _STRINGS_H_ -+#define _STRINGS_H_ -+ -+#include "_ansi.h" -+#include <sys/reent.h> -+ -+#include <sys/types.h> /* for size_t */ -+#include <locale.h> /* for locale_t */ -+ -+_BEGIN_STD_C -+ -+#ifndef __STRICT_ANSI__ -+/* -+ * Marked LEGACY in Open Group Base Specifications Issue 6/IEEE Std 1003.1-2004 -+ * Removed from Open Group Base Specifications Issue 7/IEEE Std 1003.1-2008 -+ */ -+int _EXFUN(bcmp,(const void *, const void *, size_t)); -+void _EXFUN(bcopy,(const void *, void *, size_t)); -+void _EXFUN(bzero,(void *, size_t)); -+char *_EXFUN(index,(const char *, int)); -+char *_EXFUN(rindex,(const char *, int)); -+#endif /* ! __STRICT_ANSI__ */ -+ -+int _EXFUN(ffs,(int)); -+int _EXFUN(strcasecmp,(const char *, const char *)); -+#if 0 -+/* Not implemented */ -+int _EXFUN(strcasecmp_l,(const char *, const char *, locale_t)); -+#endif -+int _EXFUN(strncasecmp,(const char *, const char *, size_t)); -+#if 0 -+/* Not implemented */ -+int _EXFUN(strncasecmp_l,(const char *, const char *, size_t, locale_t)); -+#endif -+ -+_END_STD_C -+ -+#endif /* _STRINGS_H_ */ -diff -Naur newlib-1.18.0.orig/newlib/libc/include/sys/features.h newlib-1.18.0/newlib/libc/include/sys/features.h ---- newlib-1.18.0.orig/newlib/libc/include/sys/features.h 2009-07-06 20:59:04.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/include/sys/features.h 2011-04-19 03:39:58.580184813 +0200 -@@ -33,7 +33,7 @@ - #define _POSIX_VERSION 199309L - #define _POSIX_ASYNCHRONOUS_IO 1 - #define _POSIX_FSYNC 1 --#define _POSIX_MAPPED_FILES 1 -+/* #define _POSIX_MAPPED_FILES 1 */ - #define _POSIX_MEMLOCK 1 - #define _POSIX_MEMLOCK_RANGE 1 - #define _POSIX_MEMORY_PROTECTION 1 -diff -Naur newlib-1.18.0.orig/newlib/libc/include/sys/sched.h newlib-1.18.0/newlib/libc/include/sys/sched.h ---- newlib-1.18.0.orig/newlib/libc/include/sys/sched.h 2002-06-20 21:51:24.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/include/sys/sched.h 2011-04-19 03:39:58.581184832 +0200 -@@ -1,7 +1,7 @@ - /* - * Written by Joel Sherrill <joel@OARcorp.com>. - * -- * COPYRIGHT (c) 1989-2000. -+ * COPYRIGHT (c) 1989-2010. - * On-Line Applications Research Corporation (OAR). - * - * Permission to use, copy, modify, and distribute this software for any -@@ -14,51 +14,53 @@ - * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS - * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. - * -- * $Id$ -+ * $Id$ - */ - - --#ifndef __POSIX_SYS_SCHEDULING_h --#define __POSIX_SYS_SCHEDULING_h -+#ifndef _SYS_SCHED_H_ -+#define _SYS_SCHED_H_ - - #ifdef __cplusplus - extern "C" { - #endif - --#include <sys/unistd.h> -- --#include <sys/types.h> --#include <sys/time.h> -- --/* Scheduling Policies, P1003.1b-1993, p. 250 -- NOTE: SCHED_SPORADIC added by P1003.4b/D8, p. 34. */ -- -+/* Scheduling Policies */ -+/* Open Group Specifications Issue 6 */ -+#if defined(__CYGWIN__) -+#define SCHED_OTHER 3 -+#else - #define SCHED_OTHER 0 -+#endif -+ - #define SCHED_FIFO 1 - #define SCHED_RR 2 - - #if defined(_POSIX_SPORADIC_SERVER) --#define SCHED_SPORADIC 3 -+#define SCHED_SPORADIC 4 - #endif - --/* Scheduling Parameters, P1003.1b-1993, p. 249 -- NOTE: Fields whose name begins with "ss_" added by P1003.4b/D8, p. 33. */ -+/* Scheduling Parameters */ -+/* Open Group Specifications Issue 6 */ - - struct sched_param { - int sched_priority; /* Process execution scheduling priority */ - --#if defined(_POSIX_SPORADIC_SERVER) -- int ss_low_priority; /* Low scheduling priority for sporadic */ -+#if defined(_POSIX_SPORADIC_SERVER) || defined(_POSIX_THREAD_SPORADIC_SERVER) -+ int sched_ss_low_priority; /* Low scheduling priority for sporadic */ - /* server */ -- struct timespec ss_replenish_period; -+ struct timespec sched_ss_repl_period; - /* Replenishment period for sporadic server */ -- struct timespec ss_initial_budget; /* Initial budget for sporadic server */ -+ struct timespec sched_ss_init_budget; -+ /* Initial budget for sporadic server */ -+ int sched_ss_max_repl; /* Maximum pending replenishments for */ -+ /* sporadic server */ - #endif - }; - - #ifdef __cplusplus - } --#endif -+#endif - - #endif - /* end of include file */ -diff -Naur newlib-1.18.0.orig/newlib/libc/include/sys/types.h newlib-1.18.0/newlib/libc/include/sys/types.h ---- newlib-1.18.0.orig/newlib/libc/include/sys/types.h 2009-09-28 18:42:21.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/include/sys/types.h 2011-04-19 03:39:58.581184832 +0200 -@@ -176,7 +176,11 @@ - #endif - typedef _ssize_t ssize_t; - --#ifndef __CYGWIN__ -+#if defined(__rtems__) -+typedef _mode_t mode_t; -+#endif -+ -+#if !defined(__CYGWIN__) && !defined(__rtems__) - #ifdef __MS_types__ - typedef char * addr_t; - typedef int mode_t; -diff -Naur newlib-1.18.0.orig/newlib/libc/machine/powerpc/Makefile.am newlib-1.18.0/newlib/libc/machine/powerpc/Makefile.am ---- newlib-1.18.0.orig/newlib/libc/machine/powerpc/Makefile.am 2007-05-24 19:33:35.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/machine/powerpc/Makefile.am 2011-04-19 03:39:58.581184832 +0200 -@@ -10,7 +10,7 @@ - - AM_CFLAGS = -I $(srcdir)/../../stdio -I $(srcdir)/../../stdlib - --lib_a_SOURCES = setjmp.S times.c -+lib_a_SOURCES = setjmp.S - lib_a_CCASFLAGS=$(AM_CCASFLAGS) - lib_a_CFLAGS=$(AM_CFLAGS) - lib_a_LIBADD = @extra_objs@ -diff -Naur newlib-1.18.0.orig/newlib/libc/machine/powerpc/Makefile.in newlib-1.18.0/newlib/libc/machine/powerpc/Makefile.in ---- newlib-1.18.0.orig/newlib/libc/machine/powerpc/Makefile.in 2009-10-21 00:44:03.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/machine/powerpc/Makefile.in 2011-04-19 03:39:58.581184832 +0200 -@@ -51,7 +51,7 @@ - LIBRARIES = $(noinst_LIBRARIES) - ARFLAGS = cru - lib_a_AR = $(AR) $(ARFLAGS) --am_lib_a_OBJECTS = lib_a-setjmp.$(OBJEXT) lib_a-times.$(OBJEXT) -+am_lib_a_OBJECTS = lib_a-setjmp.$(OBJEXT) - lib_a_OBJECTS = $(am_lib_a_OBJECTS) - DEFAULT_INCLUDES = -I.@am__isrc@ - depcomp = -@@ -173,7 +173,7 @@ - AM_CCASFLAGS = $(INCLUDES) - noinst_LIBRARIES = lib.a - AM_CFLAGS = -I $(srcdir)/../../stdio -I $(srcdir)/../../stdlib --lib_a_SOURCES = setjmp.S times.c -+lib_a_SOURCES = setjmp.S - lib_a_CCASFLAGS = $(AM_CCASFLAGS) - lib_a_CFLAGS = $(AM_CFLAGS) - lib_a_LIBADD = @extra_objs@ -@@ -184,7 +184,7 @@ - all: all-am - - .SUFFIXES: --.SUFFIXES: .S .c .o .obj -+.SUFFIXES: .S .o .obj - am--refresh: - @: - $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) -@@ -245,18 +245,6 @@ - lib_a-setjmp.obj: setjmp.S - $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CCASFLAGS) $(CCASFLAGS) -c -o lib_a-setjmp.obj `if test -f 'setjmp.S'; then $(CYGPATH_W) 'setjmp.S'; else $(CYGPATH_W) '$(srcdir)/setjmp.S'; fi` - --.c.o: -- $(COMPILE) -c $< -- --.c.obj: -- $(COMPILE) -c `$(CYGPATH_W) '$<'` -- --lib_a-times.o: times.c -- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-times.o `test -f 'times.c' || echo '$(srcdir)/'`times.c -- --lib_a-times.obj: times.c -- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-times.obj `if test -f 'times.c'; then $(CYGPATH_W) 'times.c'; else $(CYGPATH_W) '$(srcdir)/times.c'; fi` -- - ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ -diff -Naur newlib-1.18.0.orig/newlib/libc/machine/powerpc/times.c newlib-1.18.0/newlib/libc/machine/powerpc/times.c ---- newlib-1.18.0.orig/newlib/libc/machine/powerpc/times.c 2002-07-22 22:26:51.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/machine/powerpc/times.c 1970-01-01 01:00:00.000000000 +0100 -@@ -1,36 +0,0 @@ --/* Time support routines for PowerPC. -- * -- * Written by Aldy Hernandez. -- */ -- --#include <_ansi.h> --#include <reent.h> --#include <sys/time.h> --#include <sys/times.h> --#include <sys/resource.h> -- --clock_t --times (struct tms *tp) --{ -- struct rusage usage; -- union { -- struct rusage r; -- /* Newlib's rusage has only 2 fields. We need to make room for -- when we call the system's rusage. This should be enough. */ -- int filler[32]; -- } host_ru; -- -- getrusage (RUSAGE_SELF, (void *)&host_ru); -- -- if (tp) -- { -- tp->tms_utime = host_ru.r.ru_utime.tv_sec * 1000 -- + host_ru.r.ru_utime.tv_usec; -- tp->tms_stime = host_ru.r.ru_stime.tv_sec * 1000 -- + host_ru.r.ru_stime.tv_usec; -- tp->tms_cutime = 0; /* user time, children */ -- tp->tms_cstime = 0; /* system time, children */ -- } -- -- return tp->tms_utime; --} -diff -Naur newlib-1.18.0.orig/newlib/libc/misc/__dprintf.c newlib-1.18.0/newlib/libc/misc/__dprintf.c ---- newlib-1.18.0.orig/newlib/libc/misc/__dprintf.c 2008-12-11 18:27:55.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/misc/__dprintf.c 2011-04-19 03:39:58.585184904 +0200 -@@ -5,6 +5,7 @@ - */ - - #include <_ansi.h> -+#include <stdint.h> - #include "ctype.h" - #include "reent.h" - #include "string.h" -@@ -131,7 +132,7 @@ - write_string (unctrl (c)); - break; - case 'p' : -- l = (_POINTER_INT) va_arg (args, char *); -+ l = (intptr_t) va_arg (args, char *); - print_number (16, 1, l); - break; - case 'd' : -diff -Naur newlib-1.18.0.orig/newlib/libc/misc/ffs.c newlib-1.18.0/newlib/libc/misc/ffs.c ---- newlib-1.18.0.orig/newlib/libc/misc/ffs.c 2003-06-06 21:57:51.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/misc/ffs.c 2011-04-19 03:39:58.585184904 +0200 -@@ -24,7 +24,7 @@ - - No supporting OS subroutines are required. */ - --#include <_ansi.h> -+#include <strings.h> - - int - _DEFUN(ffs, (word), -diff -Naur newlib-1.18.0.orig/newlib/libc/posix/opendir.c newlib-1.18.0/newlib/libc/posix/opendir.c ---- newlib-1.18.0.orig/newlib/libc/posix/opendir.c 2003-06-06 21:57:51.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/posix/opendir.c 2011-04-19 03:39:58.585184904 +0200 -@@ -74,6 +74,7 @@ - dirp->dd_len = 512; - - if (dirp->dd_buf == NULL) { -+ free(dirp); - close (fd); - return NULL; - } -diff -Naur newlib-1.18.0.orig/newlib/libc/posix/readdir.c newlib-1.18.0/newlib/libc/posix/readdir.c ---- newlib-1.18.0.orig/newlib/libc/posix/readdir.c 2003-06-06 21:57:51.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/posix/readdir.c 2011-04-19 03:39:58.585184904 +0200 -@@ -37,6 +37,7 @@ - static char sccsid[] = "@(#)readdir.c 5.7 (Berkeley) 6/1/90"; - #endif /* LIBC_SCCS and not lint */ - -+#include <stdint.h> - #include <dirent.h> - - extern int getdents (int fd, void *dp, int count); -@@ -75,7 +76,7 @@ - continue; - } - dp = (struct dirent *)(dirp->dd_buf + dirp->dd_loc); -- if ((int)dp & 03) { /* bogus pointer check */ -+ if ((intptr_t)dp & 03) { /* bogus pointer check */ - #ifdef HAVE_DD_LOCK - __lock_release_recursive(dirp->dd_lock); - #endif -diff -Naur newlib-1.18.0.orig/newlib/libc/posix/rewinddir.c newlib-1.18.0/newlib/libc/posix/rewinddir.c ---- newlib-1.18.0.orig/newlib/libc/posix/rewinddir.c 2003-06-06 21:57:51.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/posix/rewinddir.c 2011-04-19 03:39:58.585184904 +0200 -@@ -48,7 +48,7 @@ - #ifdef HAVE_DD_LOCK - __lock_acquire_recursive(dirp->dd_lock); - #endif -- _seekdir((dirp), (off_t)0); -+ _seekdir((dirp), 0L); - #ifdef HAVE_DD_LOCK - __lock_release_recursive(dirp->dd_lock); - #endif -diff -Naur newlib-1.18.0.orig/newlib/libc/posix/telldir.c newlib-1.18.0/newlib/libc/posix/telldir.c ---- newlib-1.18.0.orig/newlib/libc/posix/telldir.c 2008-11-27 22:01:40.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/posix/telldir.c 2011-04-19 03:39:58.586184923 +0200 -@@ -67,7 +67,7 @@ - #define NDIRHASH 32 /* Num of hash lists, must be a power of 2 */ - #define LOCHASH(i) ((i)&(NDIRHASH-1)) - --static long dd_loccnt; /* Index of entry for sequential readdir's */ -+static long dd_loccnt = 1; /* Index of entry for sequential readdir's */ - static struct ddloc *dd_hash[NDIRHASH]; /* Hash list heads for ddlocs */ - __LOCK_INIT(static, dd_hash_lock); - -@@ -119,40 +119,46 @@ - register struct ddloc *lp; - register struct ddloc **prevlp; - struct dirent *dp; -- extern long lseek(); - - #ifdef HAVE_DD_LOCK - __lock_acquire(dd_hash_lock); - #endif -- prevlp = &dd_hash[LOCHASH(loc)]; -- lp = *prevlp; -- while (lp != NULL) { -- if (lp->loc_index == loc) -- break; -- prevlp = &lp->loc_next; -- lp = lp->loc_next; -- } -- if (lp == NULL) { -+ if (loc != 0) { -+ prevlp = &dd_hash[LOCHASH(loc)]; -+ lp = *prevlp; -+ while (lp != NULL) { -+ if (lp->loc_index == loc) -+ break; -+ prevlp = &lp->loc_next; -+ lp = lp->loc_next; -+ } -+ if (lp == NULL) { - #ifdef HAVE_DD_LOCK -- __lock_release(dd_hash_lock); -+ __lock_release(dd_hash_lock); - #endif -- return; -- } -- if (lp->loc_loc == dirp->dd_loc && lp->loc_seek == dirp->dd_seek) -- goto found; -- (void) lseek(dirp->dd_fd, lp->loc_seek, 0); -- dirp->dd_seek = lp->loc_seek; -- dirp->dd_loc = 0; -- while (dirp->dd_loc < lp->loc_loc) { -- dp = readdir(dirp); -- if (dp == NULL) -- break; -- } -+ return; -+ } -+ if (lp->loc_loc == dirp->dd_loc && lp->loc_seek == dirp->dd_seek) -+ goto found; -+ (void) lseek(dirp->dd_fd, lp->loc_seek, 0); -+ dirp->dd_seek = lp->loc_seek; -+ dirp->dd_loc = 0; -+ while (dirp->dd_loc < lp->loc_loc) { -+ dp = readdir(dirp); -+ if (dp == NULL) -+ break; -+ } - found: - #ifdef SINGLEUSE -- *prevlp = lp->loc_next; -- free((caddr_t)lp); -+ *prevlp = lp->loc_next; -+ free((caddr_t)lp); - #endif -+ } else { -+ // loc 0 means rewinding -+ (void) lseek(dirp->dd_fd, 0, 0); -+ dirp->dd_seek = 0; -+ dirp->dd_loc = 0; -+ } - #ifdef HAVE_DD_LOCK - __lock_release(dd_hash_lock); - #endif -@@ -169,26 +175,26 @@ - __lock_acquire(dd_hash_lock); - #endif - for (i = 0; i < NDIRHASH; ++i) { -+ struct ddloc head; - register struct ddloc *lp; - register struct ddloc *prevlp; -+ - lp = dd_hash[i]; -- while (lp != NULL && lp->loc_dirp == dirp) { -- dd_hash[i] = lp->loc_next; -- prevlp = lp; -- free((caddr_t)lp); -- lp = prevlp->loc_next; -- } -- prevlp = lp; -+ head.loc_next = lp; -+ prevlp = &head; - while (lp != NULL) { -- lp = lp->loc_next; -- if (lp != NULL && lp->loc_dirp == dirp) { -- prevlp->loc_next = lp->loc_next; -+ struct ddloc *nextlp; -+ -+ nextlp = lp->loc_next; -+ if (lp->loc_dirp == dirp) { -+ prevlp->loc_next = nextlp; - free((caddr_t)lp); -- lp = prevlp; - } - else - prevlp = lp; -+ lp = nextlp; - } -+ dd_hash[i] = head.loc_next; - } - #ifdef HAVE_DD_LOCK - __lock_release(dd_hash_lock); -diff -Naur newlib-1.18.0.orig/newlib/libc/search/db_local.h newlib-1.18.0/newlib/libc/search/db_local.h ---- newlib-1.18.0.orig/newlib/libc/search/db_local.h 2002-06-25 01:05:08.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/search/db_local.h 2011-04-19 03:39:58.586184923 +0200 -@@ -102,11 +102,11 @@ - typedef struct __db { - DBTYPE type; /* Underlying db type. */ - int (*close)(struct __db *); -- int (*del)(const struct __db *, const DBT *, u_int); -- int (*get)(const struct __db *, const DBT *, DBT *, u_int); -- int (*put)(const struct __db *, DBT *, const DBT *, u_int); -- int (*seq)(const struct __db *, DBT *, DBT *, u_int); -- int (*sync)(const struct __db *, u_int); -+ int (*del)(const struct __db *, const DBT *, __uint32_t); -+ int (*get)(const struct __db *, const DBT *, DBT *, __uint32_t); -+ int (*put)(const struct __db *, DBT *, const DBT *, __uint32_t); -+ int (*seq)(const struct __db *, DBT *, DBT *, __uint32_t); -+ int (*sync)(const struct __db *, __uint32_t); - void *internal; /* Access method private. */ - int (*fd)(const struct __db *); - } DB; -diff -Naur newlib-1.18.0.orig/newlib/libc/search/extern.h newlib-1.18.0/newlib/libc/search/extern.h ---- newlib-1.18.0.orig/newlib/libc/search/extern.h 2002-06-20 21:51:31.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/search/extern.h 2011-04-19 03:39:58.586184923 +0200 -@@ -43,7 +43,7 @@ - int __big_split(HTAB *, BUFHEAD *, BUFHEAD *, BUFHEAD *, - int, __uint32_t, SPLIT_RETURN *); - int __buf_free(HTAB *, int, int); --void __buf_init(HTAB *, int); -+void __buf_init(HTAB *, __uint32_t); - __uint32_t __call_hash(HTAB *, char *, int); - int __delpair(HTAB *, BUFHEAD *, int); - int __expand_table(HTAB *); -diff -Naur newlib-1.18.0.orig/newlib/libc/search/hash_buf.c newlib-1.18.0/newlib/libc/search/hash_buf.c ---- newlib-1.18.0.orig/newlib/libc/search/hash_buf.c 2004-05-26 19:57:10.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/search/hash_buf.c 2011-04-19 03:39:58.586184923 +0200 -@@ -118,7 +118,7 @@ - int newpage; /* If prev_bp set, indicates a new overflow page. */ - { - BUFHEAD *bp; -- __uint32_t is_disk_mask; -+ ptrdiff_t is_disk_mask; - int is_disk, segment_ndx; - SEGMENT segp; - -@@ -298,7 +298,7 @@ - extern void - __buf_init(hashp, nbytes) - HTAB *hashp; -- int nbytes; -+ __uint32_t nbytes; - { - BUFHEAD *bfp; - int npages; -diff -Naur newlib-1.18.0.orig/newlib/libc/search/hash.h newlib-1.18.0/newlib/libc/search/hash.h ---- newlib-1.18.0.orig/newlib/libc/search/hash.h 2008-07-02 20:38:45.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/search/hash.h 2011-04-19 03:39:58.586184923 +0200 -@@ -82,7 +82,7 @@ - - /* Hash Table Information */ - typedef struct hashhdr { /* Disk resident portion */ -- int magic; /* Magic NO for hash tables */ -+ __uint32_t magic; /* Magic NO for hash tables */ - int version; /* Version ID */ - __uint32_t lorder; /* Byte Order */ - int bsize; /* Bucket/Page Size */ -@@ -97,7 +97,7 @@ - int high_mask; /* Mask to modulo into entire table */ - int low_mask; /* Mask to modulo into lower half of - * table */ -- int ffactor; /* Fill factor */ -+ __uint32_t ffactor; /* Fill factor */ - int nkeys; /* Number of keys in hash table */ - int hdrpages; /* Size of table header */ - int h_charkey; /* value of hash(CHARKEY) */ -diff -Naur newlib-1.18.0.orig/newlib/libc/stdio/open_memstream.c newlib-1.18.0/newlib/libc/stdio/open_memstream.c ---- newlib-1.18.0.orig/newlib/libc/stdio/open_memstream.c 2009-02-25 05:00:05.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/stdio/open_memstream.c 2011-04-19 03:39:58.587184942 +0200 -@@ -330,8 +330,10 @@ - c->max *= sizeof(wchar_t); - if (c->max < 64) - c->max = 64; -- else if (c->max > 64 * 1024) -- c->max = 64 * 1024; -+#if (SIZE_MAX >= 0x10000) -+ else if (c->max > 0x10000) -+ c->max = 0x10000; -+#endif - *size = 0; - *buf = _malloc_r (ptr, c->max); - if (!*buf) -diff -Naur newlib-1.18.0.orig/newlib/libc/stdio/tmpnam.c newlib-1.18.0/newlib/libc/stdio/tmpnam.c ---- newlib-1.18.0.orig/newlib/libc/stdio/tmpnam.c 2004-04-23 22:01:55.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/stdio/tmpnam.c 2011-04-19 03:39:58.587184942 +0200 -@@ -94,6 +94,7 @@ - #include <_ansi.h> - #include <reent.h> - #include <stdio.h> -+#include <stdint.h> - #include <stdlib.h> - #include <string.h> - #include <fcntl.h> -@@ -109,7 +110,7 @@ - char *result _AND - _CONST char *part1 _AND - _CONST char *part2 _AND -- int part3 _AND -+ intptr_t part3 _AND - int *part4) - { - /* Generate the filename and make sure that there isn't one called -@@ -183,7 +184,7 @@ - if (filename) - { - if (! worker (p, filename, dir, prefix, -- _getpid_r (p) ^ (int) (_POINTER_INT) p, &p->_inc)) -+ _getpid_r (p) ^ (intptr_t) p, &p->_inc)) - return NULL; - } - return filename; -diff -Naur newlib-1.18.0.orig/newlib/libc/stdlib/putenv_r.c newlib-1.18.0/newlib/libc/stdlib/putenv_r.c ---- newlib-1.18.0.orig/newlib/libc/stdlib/putenv_r.c 2004-11-24 23:34:14.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/stdlib/putenv_r.c 2011-04-19 03:39:58.587184942 +0200 -@@ -24,6 +24,7 @@ - #include <reent.h> - #include <stdlib.h> - #include <string.h> -+#include <strings.h> - - #include "envlock.h" - -diff -Naur newlib-1.18.0.orig/newlib/libc/string/bcmp.c newlib-1.18.0/newlib/libc/string/bcmp.c ---- newlib-1.18.0.orig/newlib/libc/string/bcmp.c 2005-10-28 23:21:07.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/bcmp.c 2011-04-19 03:39:58.587184942 +0200 -@@ -6,11 +6,11 @@ - bcmp - - ANSI_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - int bcmp(const void *<[s1]>, const void *<[s2]>, size_t <[n]>); - - TRAD_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - int bcmp(<[s1]>, <[s2]>, <[n]>) - const void *<[s1]>; - const void *<[s2]>; -@@ -35,7 +35,7 @@ - bcmp ansi pure - */ - --#include <string.h> -+#include <strings.h> - - int - _DEFUN (bcmp, (m1, m2, n), -diff -Naur newlib-1.18.0.orig/newlib/libc/string/bcopy.c newlib-1.18.0/newlib/libc/string/bcopy.c ---- newlib-1.18.0.orig/newlib/libc/string/bcopy.c 2002-05-23 20:46:04.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/bcopy.c 2011-04-19 03:39:58.587184942 +0200 -@@ -3,7 +3,7 @@ - <<bcopy>>---copy memory regions - - ANSI_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - void bcopy(const void *<[in]>, void *<[out]>, size_t <[n]>); - - TRAD_SYNOPSIS -@@ -26,7 +26,7 @@ - bcopy - pure - */ - --#include <string.h> -+#include <strings.h> - - void - _DEFUN (bcopy, (b1, b2, length), -diff -Naur newlib-1.18.0.orig/newlib/libc/string/bzero.c newlib-1.18.0/newlib/libc/string/bzero.c ---- newlib-1.18.0.orig/newlib/libc/string/bzero.c 2002-05-23 20:46:04.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/bzero.c 2011-04-19 03:39:58.587184942 +0200 -@@ -6,11 +6,11 @@ - bzero - - ANSI_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - void bzero(void *<[b]>, size_t <[length]>); - - TRAD_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - void bzero(<[b]>, <[length]>) - void *<[b]>; - size_t <[length]>; -@@ -30,7 +30,7 @@ - <<bzero>> requires no supporting OS subroutines. - */ - --#include <string.h> -+#include <strings.h> - - _VOID - _DEFUN (bzero, (b, length), -diff -Naur newlib-1.18.0.orig/newlib/libc/string/index.c newlib-1.18.0/newlib/libc/string/index.c ---- newlib-1.18.0.orig/newlib/libc/string/index.c 2000-02-17 20:39:48.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/index.c 2011-04-19 03:39:58.588184961 +0200 -@@ -10,7 +10,7 @@ - char * index(const char *<[string]>, int <[c]>); - - TRAD_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - char * index(<[string]>, <[c]>); - char *<[string]>; - int *<[c]>; -@@ -33,7 +33,8 @@ - index - pure - */ - --#include <string.h> -+#include <strings.h> -+#include <string.h> /* strchr */ - - char * - _DEFUN (index, (s, c), -diff -Naur newlib-1.18.0.orig/newlib/libc/string/memccpy.c newlib-1.18.0/newlib/libc/string/memccpy.c ---- newlib-1.18.0.orig/newlib/libc/string/memccpy.c 2002-07-23 23:38:00.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/memccpy.c 2011-04-19 03:39:58.588184961 +0200 -@@ -35,13 +35,14 @@ - */ - - #include <_ansi.h> -+#include <stdint.h> - #include <stddef.h> - #include <string.h> - #include <limits.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - /* How many bytes are copied each iteration of the word copy loop. */ - #define LITTLEBLOCKSIZE (sizeof (long)) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/memchr.c newlib-1.18.0/newlib/libc/string/memchr.c ---- newlib-1.18.0.orig/newlib/libc/string/memchr.c 2008-05-27 01:31:08.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/memchr.c 2011-04-19 03:39:58.588184961 +0200 -@@ -38,10 +38,11 @@ - - #include <_ansi.h> - #include <string.h> -+#include <stdint.h> - #include <limits.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ --#define UNALIGNED(X) ((long)X & (sizeof (long) - 1)) -+#define UNALIGNED(X) ((intptr_t)X & (sizeof (long) - 1)) - - /* How many bytes are loaded each iteration of the word copy loop. */ - #define LBLOCKSIZE (sizeof (long)) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/memcmp.c newlib-1.18.0/newlib/libc/string/memcmp.c ---- newlib-1.18.0.orig/newlib/libc/string/memcmp.c 2005-03-06 21:40:05.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/memcmp.c 2011-04-19 03:39:58.588184961 +0200 -@@ -37,11 +37,11 @@ - */ - - #include <string.h> -- -+#include <stdint.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - /* How many bytes are copied each iteration of the word copy loop. */ - #define LBLOCKSIZE (sizeof (long)) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/memcpy.c newlib-1.18.0/newlib/libc/string/memcpy.c ---- newlib-1.18.0.orig/newlib/libc/string/memcpy.c 2008-12-11 18:27:56.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/memcpy.c 2011-04-19 03:39:58.588184961 +0200 -@@ -34,11 +34,12 @@ - */ - - #include <_ansi.h> -+#include <stdint.h> - #include <string.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - /* How many bytes are copied each iteration of the 4X unrolled loop. */ - #define BIGBLOCKSIZE (sizeof (long) << 2) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/memmove.c newlib-1.18.0/newlib/libc/string/memmove.c ---- newlib-1.18.0.orig/newlib/libc/string/memmove.c 2000-02-17 20:39:48.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/memmove.c 2011-04-19 03:39:58.588184961 +0200 -@@ -36,13 +36,14 @@ - */ - - #include <string.h> -+#include <stdint.h> - #include <_ansi.h> - #include <stddef.h> - #include <limits.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - /* How many bytes are copied each iteration of the 4X unrolled loop. */ - #define BIGBLOCKSIZE (sizeof (long) << 2) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/mempcpy.c newlib-1.18.0/newlib/libc/string/mempcpy.c ---- newlib-1.18.0.orig/newlib/libc/string/mempcpy.c 2002-07-23 23:38:00.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/mempcpy.c 2011-04-19 03:39:58.588184961 +0200 -@@ -34,10 +34,11 @@ - #include <stddef.h> - #include <limits.h> - #include <string.h> -+#include <stdint.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((uintptr_t)Y & (sizeof (long) - 1))) - - /* How many bytes are copied each iteration of the 4X unrolled loop. */ - #define BIGBLOCKSIZE (sizeof (long) << 2) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/memset.c newlib-1.18.0/newlib/libc/string/memset.c ---- newlib-1.18.0.orig/newlib/libc/string/memset.c 2008-05-27 20:44:40.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/memset.c 2011-04-19 03:39:58.589184979 +0200 -@@ -34,9 +34,10 @@ - */ - - #include <string.h> -+#include <stdint.h> - - #define LBLOCKSIZE (sizeof(long)) --#define UNALIGNED(X) ((long)X & (LBLOCKSIZE - 1)) -+#define UNALIGNED(X) ((intptr_t)X & (LBLOCKSIZE - 1)) - #define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE) - - _PTR -diff -Naur newlib-1.18.0.orig/newlib/libc/string/rindex.c newlib-1.18.0/newlib/libc/string/rindex.c ---- newlib-1.18.0.orig/newlib/libc/string/rindex.c 2000-02-17 20:39:48.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/rindex.c 2011-04-19 03:39:58.589184979 +0200 -@@ -10,7 +10,7 @@ - char * rindex(const char *<[string]>, int <[c]>); - - TRAD_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - char * rindex(<[string]>, <[c]>); - char *<[string]>; - int *<[c]>; -@@ -33,7 +33,8 @@ - rindex - pure - */ - --#include <string.h> -+#include <strings.h> -+#include <string.h> /* strchr */ - - char * - _DEFUN (rindex, (s, c), -diff -Naur newlib-1.18.0.orig/newlib/libc/string/stpcpy.c newlib-1.18.0/newlib/libc/string/stpcpy.c ---- newlib-1.18.0.orig/newlib/libc/string/stpcpy.c 2007-06-28 19:07:23.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/stpcpy.c 2011-04-19 03:39:58.589184979 +0200 -@@ -34,6 +34,7 @@ - */ - - #include <string.h> -+#include <stdint.h> - #include <limits.h> - - /*SUPPRESS 560*/ -@@ -41,7 +42,7 @@ - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - #if LONG_MAX == 2147483647L - #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/stpncpy.c newlib-1.18.0/newlib/libc/string/stpncpy.c ---- newlib-1.18.0.orig/newlib/libc/string/stpncpy.c 2007-06-28 19:07:23.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/stpncpy.c 2011-04-19 03:39:58.589184979 +0200 -@@ -40,6 +40,7 @@ - */ - - #include <string.h> -+#include <stdint.h> - #include <limits.h> - - /*SUPPRESS 560*/ -@@ -47,7 +48,7 @@ - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - #if LONG_MAX == 2147483647L - #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strcasecmp.c newlib-1.18.0/newlib/libc/string/strcasecmp.c ---- newlib-1.18.0.orig/newlib/libc/string/strcasecmp.c 2009-04-23 20:11:22.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/strcasecmp.c 2011-04-19 03:39:58.589184979 +0200 -@@ -38,7 +38,7 @@ - strcasecmp - */ - --#include <string.h> -+#include <strings.h> - #include <ctype.h> - - int -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strcat.c newlib-1.18.0/newlib/libc/string/strcat.c ---- newlib-1.18.0.orig/newlib/libc/string/strcat.c 2000-02-17 20:39:48.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/strcat.c 2011-04-19 03:39:58.590184997 +0200 -@@ -33,12 +33,13 @@ - strcat ansi pure - */ - -+#include <stdint.h> - #include <string.h> - #include <limits.h> - - /* Nonzero if X is aligned on a "long" boundary. */ - #define ALIGNED(X) \ -- (((long)X & (sizeof (long) - 1)) == 0) -+ (((uintptr_t)X & (sizeof (long) - 1)) == 0) - - #if LONG_MAX == 2147483647L - #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strchr.c newlib-1.18.0/newlib/libc/string/strchr.c ---- newlib-1.18.0.orig/newlib/libc/string/strchr.c 2008-05-22 04:31:46.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/strchr.c 2011-04-19 03:39:58.590184997 +0200 -@@ -33,11 +33,12 @@ - strchr ansi pure - */ - -+#include <stdint.h> - #include <string.h> - #include <limits.h> - - /* Nonzero if X is not aligned on a "long" boundary. */ --#define UNALIGNED(X) ((long)X & (sizeof (long) - 1)) -+#define UNALIGNED(X) ((uintptr_t)X & (sizeof (long) - 1)) - - /* How many bytes are loaded each iteration of the word copy loop. */ - #define LBLOCKSIZE (sizeof (long)) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strcmp.c newlib-1.18.0/newlib/libc/string/strcmp.c ---- newlib-1.18.0.orig/newlib/libc/string/strcmp.c 2000-02-17 20:39:48.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/strcmp.c 2011-04-19 03:39:58.590184997 +0200 -@@ -35,12 +35,13 @@ - strcmp ansi pure - */ - -+#include <stdint.h> - #include <string.h> - #include <limits.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((uintptr_t)X & (sizeof (long) - 1)) | ((uintptr_t)Y & (sizeof (long) - 1))) - - /* DETECTNULL returns nonzero if (long)X contains a NULL byte. */ - #if LONG_MAX == 2147483647L -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strcpy.c newlib-1.18.0/newlib/libc/string/strcpy.c ---- newlib-1.18.0.orig/newlib/libc/string/strcpy.c 2007-05-29 23:26:59.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/strcpy.c 2011-04-19 03:39:58.590184997 +0200 -@@ -32,6 +32,7 @@ - strcpy ansi pure - */ - -+#include <stdint.h> - #include <string.h> - #include <limits.h> - -@@ -40,7 +41,7 @@ - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - #if LONG_MAX == 2147483647L - #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strlen.c newlib-1.18.0/newlib/libc/string/strlen.c ---- newlib-1.18.0.orig/newlib/libc/string/strlen.c 2008-05-27 00:56:14.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/strlen.c 2011-04-19 03:39:58.590184997 +0200 -@@ -32,11 +32,12 @@ - */ - - #include <_ansi.h> -+#include <stdint.h> - #include <string.h> - #include <limits.h> - - #define LBLOCKSIZE (sizeof (long)) --#define UNALIGNED(X) ((long)X & (LBLOCKSIZE - 1)) -+#define UNALIGNED(X) ((intptr_t)X & (LBLOCKSIZE - 1)) - - #if LONG_MAX == 2147483647L - #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strncasecmp.c newlib-1.18.0/newlib/libc/string/strncasecmp.c ---- newlib-1.18.0.orig/newlib/libc/string/strncasecmp.c 2009-04-23 20:11:22.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/strncasecmp.c 2011-04-19 03:39:58.590184997 +0200 -@@ -6,11 +6,11 @@ - strncasecmp - - ANSI_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - int strncasecmp(const char *<[a]>, const char * <[b]>, size_t <[length]>); - - TRAD_SYNOPSIS -- #include <string.h> -+ #include <strings.h> - int strncasecmp(<[a]>, <[b]>, <[length]>) - char *<[a]>; - char *<[b]>; -@@ -40,7 +40,7 @@ - strncasecmp - */ - --#include <string.h> -+#include <strings.h> - #include <ctype.h> - - int -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strncat.c newlib-1.18.0/newlib/libc/string/strncat.c ---- newlib-1.18.0.orig/newlib/libc/string/strncat.c 2005-10-28 23:21:07.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/strncat.c 2011-04-19 03:39:58.591185015 +0200 -@@ -42,11 +42,12 @@ - */ - - #include <string.h> -+#include <stdint.h> - #include <limits.h> - - /* Nonzero if X is aligned on a "long" boundary. */ - #define ALIGNED(X) \ -- (((long)X & (sizeof (long) - 1)) == 0) -+ (((intptr_t)X & (sizeof (long) - 1)) == 0) - - #if LONG_MAX == 2147483647L - #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strncmp.c newlib-1.18.0/newlib/libc/string/strncmp.c ---- newlib-1.18.0.orig/newlib/libc/string/strncmp.c 2000-02-17 20:39:48.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/strncmp.c 2011-04-19 03:39:58.591185015 +0200 -@@ -36,12 +36,13 @@ - strncmp ansi pure - */ - -+#include <stdint.h> - #include <string.h> - #include <limits.h> - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((uintptr_t)X & (sizeof (long) - 1)) | ((uintptr_t)Y & (sizeof (long) - 1))) - - /* DETECTNULL returns nonzero if (long)X contains a NULL byte. */ - #if LONG_MAX == 2147483647L -diff -Naur newlib-1.18.0.orig/newlib/libc/string/strncpy.c newlib-1.18.0/newlib/libc/string/strncpy.c ---- newlib-1.18.0.orig/newlib/libc/string/strncpy.c 2000-02-17 20:39:48.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/string/strncpy.c 2011-04-19 03:39:58.591185015 +0200 -@@ -38,6 +38,7 @@ - */ - - #include <string.h> -+#include <stdint.h> - #include <limits.h> - - /*SUPPRESS 560*/ -@@ -45,7 +46,7 @@ - - /* Nonzero if either X or Y is not aligned on a "long" boundary. */ - #define UNALIGNED(X, Y) \ -- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) -+ (((intptr_t)X & (sizeof (long) - 1)) | ((intptr_t)Y & (sizeof (long) - 1))) - - #if LONG_MAX == 2147483647L - #define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080) -diff -Naur newlib-1.18.0.orig/newlib/libc/string/str-two-way.h newlib-1.18.0/newlib/libc/string/str-two-way.h ---- newlib-1.18.0.orig/newlib/libc/string/str-two-way.h 2008-10-02 22:12:34.000000000 +0200 -+++ newlib-1.18.0/newlib/libc/string/str-two-way.h 2011-04-19 03:39:58.589184979 +0200 -@@ -1,5 +1,5 @@ - /* Byte-wise substring search, using the Two-Way algorithm. -- * Copyright (C) 2008 Eric Blake -+ * Copyright (C) 2008, 2010 Eric Blake - * Permission to use, copy, modify, and distribute this software - * is freely granted, provided that this notice is preserved. - */ -@@ -335,8 +335,8 @@ - a byte out of place, there can be no match until - after the mismatch. */ - shift = needle_len - period; -- memory = 0; - } -+ memory = 0; - j += shift; - continue; - } -diff -Naur newlib-1.18.0.orig/newlib/libc/sys/rtems/crt0.c newlib-1.18.0/newlib/libc/sys/rtems/crt0.c ---- newlib-1.18.0.orig/newlib/libc/sys/rtems/crt0.c 2009-12-16 19:28:14.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/sys/rtems/crt0.c 2011-04-19 03:39:58.591185015 +0200 -@@ -24,8 +24,8 @@ - /* RTEMS provides some of its own routines including a Malloc family */ - RTEMS_STUB(void *,malloc(size_t s)) { return 0; } - RTEMS_STUB(void *,realloc(void* p, size_t s)) { return 0; } --RTEMS_STUB(void, free(void)) { ; } --RTEMS_STUB(_PTR, calloc(struct _reent *r, size_t s1, size_t s2)) {} -+RTEMS_STUB(void, free(void* ptr)) { ; } -+RTEMS_STUB(_PTR, calloc(size_t s1, size_t s2)) {} - - #if defined(__GNUC__) - /* -@@ -49,6 +49,7 @@ - #endif - - /* stubs for functions RTEMS provides */ -+RTEMS_STUB(int, clock_gettime(clockid_t clk_id, struct timespec *tp)) { return -1; } - RTEMS_STUB(int, close (int fd)) { return -1; } - RTEMS_STUB(int, dup2(int oldfd, int newfd)) { return -1; } - RTEMS_STUB(int, fcntl( int fd, int cmd, ... /* arg */ )) { return -1; } -@@ -56,6 +57,7 @@ - RTEMS_STUB(int, fstat(int fd, struct stat *buf)) { return -1; } - RTEMS_STUB(int, getdents(int fd, void *dp, int count)) { return -1; } - RTEMS_STUB(char *, getlogin(void)) { return 0; } -+RTEMS_STUB(int, gettimeofday(struct timeval *tv, struct timezone *tz)) { return -1; } - RTEMS_STUB(struct passwd *, getpwnam(const char *name)) { return 0; } - RTEMS_STUB(struct passwd *, getpwuid(uid_t uid)) { return 0; } - RTEMS_STUB(uid_t, getuid(void)) { return 0; } -@@ -65,6 +67,7 @@ - RTEMS_STUB(int, open(const char *pathname, int flags, int mode)) { return -1; } - RTEMS_STUB(int, pipe(int pipefd[2])) { return -1; } - RTEMS_STUB(_ssize_t, read(int fd, void *buf, size_t count)) { return -1; } -+RTEMS_STUB(int, sched_yield(void)) { return -1; } - RTEMS_STUB(int, sigfillset(sigset_t *set)) { return -1; } - RTEMS_STUB(int, sigprocmask(int how, const sigset_t *set, sigset_t *oldset)) { return -1; } - RTEMS_STUB(int, stat(const char *path, struct stat *buf)) { return -1; } -@@ -95,7 +98,7 @@ - RTEMS_STUB(int, _kill_r (struct _reent *r, int pid, int sig )) { return -1; } - #if !defined(REENTRANT_SYSCALLS_PROVIDED) - /* cf. newlib/libc/reent/linkr.c */ --RTEMS_STUB(int, _link_r (struct _reent *, const char *, const char *)) { return -1; } -+RTEMS_STUB(int, _link_r (struct _reent *r, const char *oldpath, const char *newpath)) { return -1; } - #endif - RTEMS_STUB(_off_t, _lseek_r ( struct _reent *ptr, int fd, _off_t offset, int whence )) { return -1; } - RTEMS_STUB(int, _open_r (struct _reent *r, const char *buf, int flags, int mode)) { return -1; } -@@ -103,14 +106,14 @@ - RTEMS_STUB(int, _rename_r (struct _reent *r, const char *a, const char *b)){ return -1; } - #if !(defined (REENTRANT_SYSCALLS_PROVIDED) || defined (MALLOC_PROVIDED)) - /* cf. newlib/libc/reent/sbrkr.c */ --RTEMS_STUB(void *,_sbrk_r (struct _reent *r, ptrdiff_t)) { return -1; } -+RTEMS_STUB(void *,_sbrk_r (struct _reent *r, ptrdiff_t addr)) { return 0; } - #endif - RTEMS_STUB(int, _stat_r (struct _reent *r, const char *path, struct stat *buf)) { return -1; } - RTEMS_STUB(_CLOCK_T_, _times_r (struct _reent *r, struct tms *ptms)) { return -1; } - RTEMS_STUB(int, _unlink_r (struct _reent *r, const char *path)) { return -1; } - #if !(defined (REENTRANT_SYSCALLS_PROVIDED) || defined (NO_EXEC)) - /* cf. newlib/libc/reent/execr.c */ --RTEMS_STUB(int, _wait_r (struct _reent *r, int *)) { return -1; } -+RTEMS_STUB(int, _wait_r (struct _reent *r, int *status)) { return -1; } - #endif - RTEMS_STUB(_ssize_t, _write_r (struct _reent *r, int fd, const void *buf, size_t nbytes)) { return -1; } - -diff -Naur newlib-1.18.0.orig/newlib/libc/sys/rtems/include/limits.h newlib-1.18.0/newlib/libc/sys/rtems/include/limits.h ---- newlib-1.18.0.orig/newlib/libc/sys/rtems/include/limits.h 2008-11-17 23:05:12.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/sys/rtems/include/limits.h 2011-04-19 03:39:58.591185015 +0200 -@@ -78,7 +78,11 @@ - * Invariant values - */ - -+#if defined(__SIZEOF_SIZE_T__) && defined(__CHAR_BIT__) -+#define SSIZE_MAX ((1UL << (__SIZEOF_SIZE_T__ * __CHAR_BIT__ - 1)) - 1) -+#else /* historic fallback, wrong in most cases */ - #define SSIZE_MAX 32767 -+#endif - - /* - * Maximum Values -diff -Naur newlib-1.18.0.orig/newlib/libc/sys/rtems/machine/_types.h newlib-1.18.0/newlib/libc/sys/rtems/machine/_types.h ---- newlib-1.18.0.orig/newlib/libc/sys/rtems/machine/_types.h 2009-12-17 17:10:41.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/sys/rtems/machine/_types.h 2011-04-19 03:39:58.591185015 +0200 -@@ -31,4 +31,25 @@ - - typedef __int32_t blksize_t; - typedef __int32_t blkcnt_t; -+ -+/* EXPERIMENTAL: Use 64bit types */ -+#if defined(__arm__) || defined(__i386__) || defined(__m68k__) || defined(__mips__) || defined(__PPC__) || defined(__sparc__) -+/* Use 64bit types */ -+typedef __int64_t _off_t; -+#define __off_t_defined 1 -+ -+typedef __int64_t _fpos_t; -+#define __fpos_t_defined 1 -+#else -+/* Use 32bit types */ -+typedef __int32_t _off_t; -+#define __off_t_defined 1 -+ -+typedef __int32_t _fpos_t; -+#define __fpos_t_defined 1 -+#endif -+ -+typedef __uint32_t _mode_t; -+#define __mode_t_defined 1 -+ - #endif -diff -Naur newlib-1.18.0.orig/newlib/libc/sys/rtems/sys/dirent.h newlib-1.18.0/newlib/libc/sys/rtems/sys/dirent.h ---- newlib-1.18.0.orig/newlib/libc/sys/rtems/sys/dirent.h 2004-01-08 20:25:21.000000000 +0100 -+++ newlib-1.18.0/newlib/libc/sys/rtems/sys/dirent.h 2011-04-19 03:39:58.592185033 +0200 -@@ -31,6 +31,10 @@ - void seekdir(DIR *dir, long loc); - long telldir(DIR *dir); - -+#ifdef _COMPILING_NEWLIB -+void _seekdir(DIR *dir, long offset); -+#endif -+ - #include <sys/types.h> - - #include <limits.h> -diff -Naur newlib-1.18.0.orig/newlib/libm/common/fdlibm.h newlib-1.18.0/newlib/libm/common/fdlibm.h ---- newlib-1.18.0.orig/newlib/libm/common/fdlibm.h 2009-11-17 23:35:46.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/fdlibm.h 2011-04-19 03:39:58.592185033 +0200 -@@ -361,3 +361,12 @@ - sf_u.word = (i); \ - (d) = sf_u.value; \ - } while (0) -+ -+/* Macros to avoid undefined behaviour that can arise if the amount -+ of a shift is exactly equal to the size of the shifted operand. */ -+ -+#define SAFE_LEFT_SHIFT(op,amt) \ -+ (((amt) < 8 * sizeof(op)) ? ((op) << (amt)) : 0) -+ -+#define SAFE_RIGHT_SHIFT(op,amt) \ -+ (((amt) < 8 * sizeof(op)) ? ((op) >> (amt)) : 0) -diff -Naur newlib-1.18.0.orig/newlib/libm/common/modfl.c newlib-1.18.0/newlib/libm/common/modfl.c ---- newlib-1.18.0.orig/newlib/libm/common/modfl.c 2009-04-18 00:15:43.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/common/modfl.c 2011-04-19 03:39:58.592185033 +0200 -@@ -36,7 +36,7 @@ - long double - modfl (long double x, long double *iptr) - { -- return modf(x, iptr); -+ return modf(x, (double*) iptr); - } - #endif - -diff -Naur newlib-1.18.0.orig/newlib/libm/common/sf_ilogb.c newlib-1.18.0/newlib/libm/common/sf_ilogb.c ---- newlib-1.18.0.orig/newlib/libm/common/sf_ilogb.c 2001-04-04 15:30:59.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/common/sf_ilogb.c 2011-04-19 03:39:58.594185070 +0200 -@@ -13,8 +13,8 @@ - * ==================================================== - */ - --#include "fdlibm.h" - #include <limits.h> -+#include "fdlibm.h" - - #ifdef __STDC__ - int ilogbf(float x) -@@ -28,11 +28,14 @@ - GET_FLOAT_WORD(hx,x); - hx &= 0x7fffffff; - if(FLT_UWORD_IS_ZERO(hx)) -- return - INT_MAX; /* ilogb(0) = 0x80000001 */ -+ return FP_ILOGB0; /* ilogb(0) = special case error */ - if(FLT_UWORD_IS_SUBNORMAL(hx)) { - for (ix = -126,hx<<=8; hx>0; hx<<=1) ix -=1; - return ix; - } -+ #if FP_ILOGBNAN != INT_MAX -+ else if (FLT_UWORD_IS_NAN(hx)) return FP_ILOGBNAN; /* NAN */ -+ #endif - else if (!FLT_UWORD_IS_FINITE(hx)) return INT_MAX; - else return (hx>>23)-127; - } -diff -Naur newlib-1.18.0.orig/newlib/libm/common/sf_llrint.c newlib-1.18.0/newlib/libm/common/sf_llrint.c ---- newlib-1.18.0.orig/newlib/libm/common/sf_llrint.c 2009-04-03 19:39:24.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/common/sf_llrint.c 2011-04-19 03:39:58.594185070 +0200 -@@ -71,7 +71,7 @@ - GET_FLOAT_WORD (i0, t); - /* Detect the all-zeros representation of plus and - minus zero, which fails the calculation below. */ -- if ((i0 & ~(1 << 31)) == 0) -+ if ((i0 & ~((__uint32_t)1 << 31)) == 0) - return 0; - j0 = ((i0 >> 23) & 0xff) - 0x7f; - i0 &= 0x7fffff; -diff -Naur newlib-1.18.0.orig/newlib/libm/common/sf_log2.c newlib-1.18.0/newlib/libm/common/sf_log2.c ---- newlib-1.18.0.orig/newlib/libm/common/sf_log2.c 2009-03-18 19:11:18.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/sf_log2.c 2011-04-19 03:39:58.595185089 +0200 -@@ -30,7 +30,7 @@ - float x; - #endif - { -- return (logf(x) / (float) M_LOG2_E); -+ return (logf(x) / (float_t) M_LN2); - } - - #ifdef _DOUBLE_IS_32BITS -diff -Naur newlib-1.18.0.orig/newlib/libm/common/sf_rint.c newlib-1.18.0/newlib/libm/common/sf_rint.c ---- newlib-1.18.0.orig/newlib/libm/common/sf_rint.c 2001-04-04 15:30:59.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/common/sf_rint.c 2011-04-19 03:39:58.595185089 +0200 -@@ -57,7 +57,7 @@ - i = (0x007fffff)>>j0; - if((i0&i)==0) return x; /* x is integral */ - i>>=1; -- if((i0&i)!=0) i0 = (i0&(~i))|((0x100000)>>j0); -+ if((i0&i)!=0) i0 = (i0&(~i))|((0x200000)>>j0); - } - } else { - if(!FLT_UWORD_IS_FINITE(ix)) return x+x; /* inf or NaN */ -diff -Naur newlib-1.18.0.orig/newlib/libm/common/sf_round.c newlib-1.18.0/newlib/libm/common/sf_round.c ---- newlib-1.18.0.orig/newlib/libm/common/sf_round.c 2005-02-24 20:02:35.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/sf_round.c 2011-04-19 03:39:58.595185089 +0200 -@@ -38,7 +38,7 @@ - w &= 0x80000000; - if (exponent_less_127 == -1) - /* Result is +1.0 or -1.0. */ -- w |= (127 << 23); -+ w |= ((__uint32_t)127 << 23); - } - else - { -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_ilogb.c newlib-1.18.0/newlib/libm/common/s_ilogb.c ---- newlib-1.18.0.orig/newlib/libm/common/s_ilogb.c 2003-10-20 20:46:37.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/common/s_ilogb.c 2011-04-19 03:39:58.592185033 +0200 -@@ -44,13 +44,24 @@ - RETURNS - - <<ilogb>> and <<ilogbf>> return the power of two used to form the --floating-point argument. If <[val]> is <<0>>, they return <<- --INT_MAX>> (<<INT_MAX>> is defined in limits.h). If <[val]> is --infinite, or NaN, they return <<INT_MAX>>. -+floating-point argument. -+If <[val]> is <<0>>, they return <<FP_ILOGB0>>. -+If <[val]> is infinite, they return <<INT_MAX>>. -+If <[val]> is NaN, they return <<FP_ILOGBNAN>>. -+(<<FP_ILOGB0>> and <<FP_ILOGBNAN>> are defined in math.h, but in turn are -+defined as INT_MIN or INT_MAX from limits.h. The value of FP_ILOGB0 may be -+either INT_MIN or -INT_MAX. The value of FP_ILOGBNAN may be either INT_MAX or -+INT_MIN.) -+ -+@comment The bugs might not be worth noting, given the mass non-C99/POSIX -+@comment behavior of much of the Newlib math library. -+@comment BUGS -+@comment On errors, errno is not set per C99 and POSIX requirements even if -+@comment (math_errhandling & MATH_ERRNO) is non-zero. - - PORTABILITY -- Neither <<ilogb>> nor <<ilogbf>> is required by ANSI C or by -- the System V Interface Definition (Issue 2). */ -+C99, POSIX -+*/ - - /* ilogb(double x) - * return the binary exponent of non-zero x -@@ -58,8 +69,8 @@ - * ilogb(inf/NaN) = 0x7fffffff (no signal is raised) - */ - --#include "fdlibm.h" - #include <limits.h> -+#include "fdlibm.h" - - #ifndef _DOUBLE_IS_32BITS - -@@ -76,7 +87,7 @@ - hx &= 0x7fffffff; - if(hx<0x00100000) { - if((hx|lx)==0) -- return - INT_MAX; /* ilogb(0) = 0x80000001 */ -+ return FP_ILOGB0; /* ilogb(0) = special case error */ - else /* subnormal x */ - if(hx==0) { - for (ix = -1043; lx>0; lx<<=1) ix -=1; -@@ -86,7 +97,10 @@ - return ix; - } - else if (hx<0x7ff00000) return (hx>>20)-1023; -- else return INT_MAX; -+ #if FP_ILOGBNAN != INT_MAX -+ else if (hx>0x7ff00000) return FP_ILOGBNAN; /* NAN */ -+ #endif -+ else return INT_MAX; /* infinite (or, possibly, NAN) */ - } - - #endif /* _DOUBLE_IS_32BITS */ -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_llrint.c newlib-1.18.0/newlib/libm/common/s_llrint.c ---- newlib-1.18.0.orig/newlib/libm/common/s_llrint.c 2009-04-03 19:39:24.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/common/s_llrint.c 2011-04-19 03:39:58.592185033 +0200 -@@ -61,40 +61,56 @@ - - /* Extract exponent field. */ - j0 = ((i0 & 0x7ff00000) >> 20) - 1023; -+ /* j0 in [-1023,1024] */ - - if(j0 < 20) - { -+ /* j0 in [-1023,19] */ - if(j0 < -1) - return 0; - else - { -+ /* j0 in [0,19] */ -+ /* shift amt in [0,19] */ - w = TWO52[sx] + x; - t = w - TWO52[sx]; - GET_HIGH_WORD(i0, t); - /* Detect the all-zeros representation of plus and - minus zero, which fails the calculation below. */ -- if ((i0 & ~(1 << 31)) == 0) -+ if ((i0 & ~((__int32_t)1 << 31)) == 0) - return 0; -+ /* After round: j0 in [0,20] */ - j0 = ((i0 & 0x7ff00000) >> 20) - 1023; - i0 &= 0x000fffff; - i0 |= 0x00100000; -+ /* shift amt in [20,0] */ - result = i0 >> (20 - j0); - } - } - else if (j0 < (int)(8 * sizeof (long long int)) - 1) - { -+ /* 64bit return: j0 in [20,62] */ - if (j0 >= 52) -+ /* 64bit return: j0 in [52,62] */ -+ /* 64bit return: left shift amt in [32,42] */ - result = ((long long int) ((i0 & 0x000fffff) | 0x0010000) << (j0 - 20)) | -+ /* 64bit return: right shift amt in [0,10] */ - (i1 << (j0 - 52)); - else - { -+ /* 64bit return: j0 in [20,51] */ - w = TWO52[sx] + x; - t = w - TWO52[sx]; - EXTRACT_WORDS (i0, i1, t); - j0 = ((i0 & 0x7ff00000) >> 20) - 1023; - i0 &= 0x000fffff; - i0 |= 0x00100000; -- result = ((long long int) i0 << (j0 - 20)) | (i1 >> (52 - j0)); -+ /* After round: -+ * 64bit return: j0 in [20,52] */ -+ /* 64bit return: left shift amt in [0,32] */ -+ /* ***64bit return: right shift amt in [32,0] */ -+ result = ((long long int) i0 << (j0 - 20)) -+ | SAFE_RIGHT_SHIFT (i1, (52 - j0)); - } - } - else -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_llround.c newlib-1.18.0/newlib/libm/common/s_llround.c ---- newlib-1.18.0.orig/newlib/libm/common/s_llround.c 2009-03-25 20:13:01.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/s_llround.c 2011-04-19 03:39:58.592185033 +0200 -@@ -31,8 +31,10 @@ - msw &= 0x000fffff; - msw |= 0x00100000; - -+ /* exponent_less_1023 in [-1023,1024] */ - if (exponent_less_1023 < 20) - { -+ /* exponent_less_1023 in [-1023,19] */ - if (exponent_less_1023 < 0) - { - if (exponent_less_1023 < -1) -@@ -42,20 +44,34 @@ - } - else - { -+ /* exponent_less_1023 in [0,19] */ -+ /* shift amt in [0,19] */ - msw += 0x80000 >> exponent_less_1023; -+ /* shift amt in [20,1] */ - result = msw >> (20 - exponent_less_1023); - } - } - else if (exponent_less_1023 < (8 * sizeof (long long int)) - 1) - { -+ /* 64bit longlong: exponent_less_1023 in [20,62] */ - if (exponent_less_1023 >= 52) -- result = ((long long int) msw << (exponent_less_1023 - 20)) | (lsw << (exponent_less_1023 - 52)); -+ /* 64bit longlong: exponent_less_1023 in [52,62] */ -+ /* 64bit longlong: shift amt in [32,42] */ -+ result = ((long long int) msw << (exponent_less_1023 - 20)) -+ /* 64bit longlong: shift amt in [0,10] */ -+ | (lsw << (exponent_less_1023 - 52)); - else - { -- unsigned int tmp = lsw + (0x80000000 >> (exponent_less_1023 - 20)); -+ /* 64bit longlong: exponent_less_1023 in [20,51] */ -+ unsigned int tmp = lsw -+ /* 64bit longlong: shift amt in [0,31] */ -+ + (0x80000000 >> (exponent_less_1023 - 20)); - if (tmp < lsw) - ++msw; -- result = ((long long int) msw << (exponent_less_1023 - 20)) | (tmp >> (52 - exponent_less_1023)); -+ /* 64bit longlong: shift amt in [0,31] */ -+ result = ((long long int) msw << (exponent_less_1023 - 20)) -+ /* ***64bit longlong: shift amt in [32,1] */ -+ | SAFE_RIGHT_SHIFT (tmp, (52 - exponent_less_1023)); - } - } - else -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_log2.c newlib-1.18.0/newlib/libm/common/s_log2.c ---- newlib-1.18.0.orig/newlib/libm/common/s_log2.c 2009-03-25 20:13:01.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/s_log2.c 2011-04-19 03:39:58.593185051 +0200 -@@ -34,8 +34,8 @@ - rather are derivatives based on <<log>>. (Accuracy might be slightly off from - a direct calculation.) In addition to functions, they are also implemented as - macros defined in math.h: --. #define log2(x) (log (x) / _M_LOG2_E) --. #define log2f(x) (logf (x) / (float) _M_LOG2_E) -+. #define log2(x) (log (x) / _M_LN2) -+. #define log2f(x) (logf (x) / (float) _M_LN2) - To use the functions instead, just undefine the macros first. - - You can use the (non-ANSI) function <<matherr>> to specify error -@@ -79,7 +79,7 @@ - double x; - #endif - { -- return (log(x) / M_LOG2_E); -+ return (log(x) / M_LN2); - } - - #endif /* defined(_DOUBLE_IS_32BITS) */ -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_lrint.c newlib-1.18.0/newlib/libm/common/s_lrint.c ---- newlib-1.18.0.orig/newlib/libm/common/s_lrint.c 2009-04-16 17:39:46.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/common/s_lrint.c 2011-04-19 03:39:58.594185070 +0200 -@@ -98,13 +98,17 @@ - - /* Extract exponent field. */ - j0 = ((i0 & 0x7ff00000) >> 20) - 1023; -+ /* j0 in [-1023,1024] */ - - if(j0 < 20) - { -+ /* j0 in [-1023,19] */ - if(j0 < -1) - return 0; - else - { -+ /* j0 in [0,19] */ -+ /* shift amt in [0,19] */ - w = TWO52[sx] + x; - t = w - TWO52[sx]; - GET_HIGH_WORD(i0, t); -@@ -112,26 +116,43 @@ - minus zero, which fails the calculation below. */ - if ((i0 & ~(1L << 31)) == 0) - return 0; -+ /* After round: j0 in [0,20] */ - j0 = ((i0 & 0x7ff00000) >> 20) - 1023; - i0 &= 0x000fffff; - i0 |= 0x00100000; -+ /* shift amt in [20,0] */ - result = i0 >> (20 - j0); - } - } - else if (j0 < (int)(8 * sizeof (long int)) - 1) - { -+ /* 32bit return: j0 in [20,30] */ -+ /* 64bit return: j0 in [20,62] */ - if (j0 >= 52) -+ /* 64bit return: j0 in [52,62] */ -+ /* 64bit return: left shift amt in [32,42] */ - result = ((long int) ((i0 & 0x000fffff) | 0x0010000) << (j0 - 20)) | -+ /* 64bit return: right shift amt in [0,10] */ - (i1 << (j0 - 52)); - else - { -+ /* 32bit return: j0 in [20,30] */ -+ /* 64bit return: j0 in [20,51] */ - w = TWO52[sx] + x; - t = w - TWO52[sx]; - EXTRACT_WORDS (i0, i1, t); - j0 = ((i0 & 0x7ff00000) >> 20) - 1023; - i0 &= 0x000fffff; - i0 |= 0x00100000; -- result = ((long int) i0 << (j0 - 20)) | (i1 >> (52 - j0)); -+ /* After round: -+ * 32bit return: j0 in [20,31]; -+ * 64bit return: j0 in [20,52] */ -+ /* 32bit return: left shift amt in [0,11] */ -+ /* 64bit return: left shift amt in [0,32] */ -+ /* ***32bit return: right shift amt in [32,21] */ -+ /* ***64bit return: right shift amt in [32,0] */ -+ result = ((long int) i0 << (j0 - 20)) -+ | SAFE_RIGHT_SHIFT (i1, (52 - j0)); - } - } - else -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_lround.c newlib-1.18.0/newlib/libm/common/s_lround.c ---- newlib-1.18.0.orig/newlib/libm/common/s_lround.c 2009-03-25 20:13:01.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/s_lround.c 2011-04-19 03:39:58.594185070 +0200 -@@ -71,9 +71,10 @@ - exponent_less_1023 = ((msw & 0x7ff00000) >> 20) - 1023; - msw &= 0x000fffff; - msw |= 0x00100000; -- -+ /* exponent_less_1023 in [-1023,1024] */ - if (exponent_less_1023 < 20) - { -+ /* exponent_less_1023 in [-1023,19] */ - if (exponent_less_1023 < 0) - { - if (exponent_less_1023 < -1) -@@ -83,20 +84,39 @@ - } - else - { -+ /* exponent_less_1023 in [0,19] */ -+ /* shift amt in [0,19] */ - msw += 0x80000 >> exponent_less_1023; -+ /* shift amt in [20,1] */ - result = msw >> (20 - exponent_less_1023); - } - } - else if (exponent_less_1023 < (8 * sizeof (long int)) - 1) - { -+ /* 32bit long: exponent_less_1023 in [20,30] */ -+ /* 64bit long: exponent_less_1023 in [20,62] */ - if (exponent_less_1023 >= 52) -- result = ((long int) msw << (exponent_less_1023 - 20)) | (lsw << (exponent_less_1023 - 52)); -+ /* 64bit long: exponent_less_1023 in [52,62] */ -+ /* 64bit long: shift amt in [32,42] */ -+ result = ((long int) msw << (exponent_less_1023 - 20)) -+ /* 64bit long: shift amt in [0,10] */ -+ | (lsw << (exponent_less_1023 - 52)); - else - { -- unsigned int tmp = lsw + (0x80000000 >> (exponent_less_1023 - 20)); -+ /* 32bit long: exponent_less_1023 in [20,30] */ -+ /* 64bit long: exponent_less_1023 in [20,51] */ -+ unsigned int tmp = lsw -+ /* 32bit long: shift amt in [0,10] */ -+ /* 64bit long: shift amt in [0,31] */ -+ + (0x80000000 >> (exponent_less_1023 - 20)); - if (tmp < lsw) - ++msw; -- result = ((long int) msw << (exponent_less_1023 - 20)) | (tmp >> (52 - exponent_less_1023)); -+ /* 32bit long: shift amt in [0,10] */ -+ /* 64bit long: shift amt in [0,31] */ -+ result = ((long int) msw << (exponent_less_1023 - 20)) -+ /* ***32bit long: shift amt in [32,22] */ -+ /* ***64bit long: shift amt in [32,1] */ -+ | SAFE_RIGHT_SHIFT (tmp, (52 - exponent_less_1023)); - } - } - else -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_rint.c newlib-1.18.0/newlib/libm/common/s_rint.c ---- newlib-1.18.0.orig/newlib/libm/common/s_rint.c 2009-03-25 20:13:01.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/s_rint.c 2011-04-19 03:39:58.594185070 +0200 -@@ -51,6 +51,16 @@ - * rounding mode. - * Method: - * Using floating addition. -+ * Whenever a fraction is present, if the second or any following bit after -+ * the radix point is set, limit to the second radix point to avoid -+ * possible double rounding in the TWO52 +- steps (in case guard bits are -+ * used). Specifically, if have any, chop off bits past the 2nd place and -+ * set the second place. -+ * (e.g. 2.0625=0b10.0001 => 0b10.01=2.25; -+ * 2.3125=0b10.011 => 0b10.01=2.25; -+ * 1.5625= 0b1.1001 => 0b1.11=1.75; -+ * 1.9375= 0b1.1111 => 0b1.11=1.75. -+ * Pseudo-code: if(x.frac & ~0b0.10) x.frac = (x.frac & 0b0.11) | 0b0.01;). - * Exception: - * Inexact flag raised if x not equal to rint(x). - */ -@@ -81,11 +91,11 @@ - double t; - volatile double w; - EXTRACT_WORDS(i0,i1,x); -- sx = (i0>>31)&1; -- j0 = ((i0>>20)&0x7ff)-0x3ff; -- if(j0<20) { -- if(j0<0) { -- if(((i0&0x7fffffff)|i1)==0) return x; -+ sx = (i0>>31)&1; /* sign */ -+ j0 = ((i0>>20)&0x7ff)-0x3ff; /* exponent */ -+ if(j0<20) { /* no integral bits in LS part */ -+ if(j0<0) { /* x is fractional or 0 */ -+ if(((i0&0x7fffffff)|i1)==0) return x; /* x == 0 */ - i1 |= (i0&0x0fffff); - i0 &= 0xfffe0000; - i0 |= ((i1|-i1)>>12)&0x80000; -@@ -95,13 +105,14 @@ - GET_HIGH_WORD(i0,t); - SET_HIGH_WORD(t,(i0&0x7fffffff)|(sx<<31)); - return t; -- } else { -+ } else { /* x has integer and maybe fraction */ - i = (0x000fffff)>>j0; - if(((i0&i)|i1)==0) return x; /* x is integral */ - i>>=1; - if(((i0&i)|i1)!=0) { -- if(j0==19) i1 = 0x40000000; else -- i0 = (i0&(~i))|((0x20000)>>j0); -+ /* 2nd or any later bit after radix is set */ -+ if(j0==19) i1 = 0x80000000; else i1 = 0; -+ i0 = (i0&(~i))|((0x40000)>>j0); - } - } - } else if (j0>51) { -@@ -119,6 +130,3 @@ - } - - #endif /* _DOUBLE_IS_32BITS */ -- -- -- -diff -Naur newlib-1.18.0.orig/newlib/libm/common/s_round.c newlib-1.18.0/newlib/libm/common/s_round.c ---- newlib-1.18.0.orig/newlib/libm/common/s_round.c 2009-03-25 20:13:01.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/common/s_round.c 2011-04-19 03:39:58.594185070 +0200 -@@ -68,7 +68,7 @@ - msw &= 0x80000000; - if (exponent_less_1023 == -1) - /* Result is +1.0 or -1.0. */ -- msw |= (1023 << 20); -+ msw |= ((__int32_t)1023 << 20); - lsw = 0; - } - else -diff -Naur newlib-1.18.0.orig/newlib/libm/math/e_scalb.c newlib-1.18.0/newlib/libm/math/e_scalb.c ---- newlib-1.18.0.orig/newlib/libm/math/e_scalb.c 2000-02-17 20:39:51.000000000 +0100 -+++ newlib-1.18.0/newlib/libm/math/e_scalb.c 2011-04-19 03:39:58.595185089 +0200 -@@ -17,6 +17,7 @@ - * should use scalbn() instead. - */ - -+#include <limits.h> - #include "fdlibm.h" - - #ifndef _DOUBLE_IS_32BITS -@@ -46,8 +47,17 @@ - else return x/(-fn); - } - if (rint(fn)!=fn) return (fn-fn)/(fn-fn); -+#if (INT_MAX < 65000) -+ if ( fn > (double) INT_MAX) return scalbn(x, INT_MAX); -+#else - if ( fn > 65000.0) return scalbn(x, 65000); -- if (-fn > 65000.0) return scalbn(x,-65000); -+#endif -+ -+#if (INT_MIN > -65000) -+ if (fn < (double) INT_MIN) return scalbn(x,INT_MIN); -+#else -+ if (fn < -65000.0) return scalbn(x,-65000); -+#endif - return scalbn(x,(int)fn); - #endif - } -diff -Naur newlib-1.18.0.orig/newlib/libm/math/wf_tgamma.c newlib-1.18.0/newlib/libm/math/wf_tgamma.c ---- newlib-1.18.0.orig/newlib/libm/math/wf_tgamma.c 2007-09-04 19:33:10.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/math/wf_tgamma.c 2011-04-19 03:39:58.595185089 +0200 -@@ -43,3 +43,17 @@ - return y; - #endif - } -+ -+#ifdef _DOUBLE_IS_32BITS -+ -+#ifdef __STDC__ -+ double tgamma(double x) -+#else -+ double tgamma(x) -+ double x; -+#endif -+{ -+ return (double) tgammaf((float) x); -+} -+ -+#endif /* defined(_DOUBLE_IS_32BITS) */ -diff -Naur newlib-1.18.0.orig/newlib/libm/math/w_tgamma.c newlib-1.18.0/newlib/libm/math/w_tgamma.c ---- newlib-1.18.0.orig/newlib/libm/math/w_tgamma.c 2002-06-07 23:59:56.000000000 +0200 -+++ newlib-1.18.0/newlib/libm/math/w_tgamma.c 2011-04-19 03:39:58.595185089 +0200 -@@ -17,6 +17,8 @@ - - #include "fdlibm.h" - -+#ifndef _DOUBLE_IS_32BITS -+ - #ifdef __STDC__ - double tgamma(double x) - #else -@@ -42,3 +44,5 @@ - return y; - #endif - } -+ -+#endif /* defined(_DOUBLE_IS_32BITS) */ -diff -Naur newlib-1.18.0.orig/newlib/Makefile.am newlib-1.18.0/newlib/Makefile.am ---- newlib-1.18.0.orig/newlib/Makefile.am 2009-08-18 23:48:05.000000000 +0200 -+++ newlib-1.18.0/newlib/Makefile.am 2011-04-19 03:39:58.578184775 +0200 -@@ -81,7 +81,7 @@ - libc.a - endif - --noinst_DATA = stmp-targ-include -+BUILT_SOURCES = stmp-targ-include - - toollib_DATA = $(CRT0) $(CRT1) - -diff -Naur newlib-1.18.0.orig/newlib/Makefile.in newlib-1.18.0/newlib/Makefile.in ---- newlib-1.18.0.orig/newlib/Makefile.in 2009-10-21 00:43:45.000000000 +0200 -+++ newlib-1.18.0/newlib/Makefile.in 2011-04-19 03:39:58.578184775 +0200 -@@ -122,7 +122,7 @@ - install-pdf-recursive install-ps-recursive install-recursive \ - installcheck-recursive installdirs-recursive pdf-recursive \ - ps-recursive uninstall-recursive --DATA = $(noinst_DATA) $(toollib_DATA) -+DATA = $(toollib_DATA) - RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive - AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ -@@ -351,7 +351,7 @@ - @USE_LIBTOOL_FALSE@toollib_LIBRARIES = libm.a \ - @USE_LIBTOOL_FALSE@ libc.a - --noinst_DATA = stmp-targ-include -+BUILT_SOURCES = stmp-targ-include - toollib_DATA = $(CRT0) $(CRT1) - - # The functions ldexp, frexp and modf are traditionally supplied in -@@ -411,7 +411,7 @@ - - # dejagnu support - RUNTESTFLAGS = --all: newlib.h -+all: $(BUILT_SOURCES) newlib.h - $(MAKE) $(AM_MAKEFLAGS) all-recursive - - .SUFFIXES: -@@ -725,14 +725,16 @@ - done - check-am: - $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU --check: check-recursive -+check: $(BUILT_SOURCES) -+ $(MAKE) $(AM_MAKEFLAGS) check-recursive - all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(DATA) newlib.h - installdirs: installdirs-recursive - installdirs-am: - for dir in "$(DESTDIR)$(toollibdir)" "$(DESTDIR)$(toollibdir)" "$(DESTDIR)$(toollibdir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done --install: install-recursive -+install: $(BUILT_SOURCES) -+ $(MAKE) $(AM_MAKEFLAGS) install-recursive - install-exec: install-exec-recursive - install-data: install-data-recursive - uninstall: uninstall-recursive -@@ -758,6 +760,7 @@ - maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) - clean: clean-recursive - - clean-am: clean-generic clean-libtool clean-toollibLIBRARIES \ -@@ -833,8 +836,9 @@ - uninstall-am: uninstall-toollibDATA uninstall-toollibLIBRARIES \ - uninstall-toollibLTLIBRARIES - --.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check-am \ -- ctags-recursive install-am install-strip tags-recursive -+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check \ -+ check-am ctags-recursive install install-am install-strip \ -+ tags-recursive - - .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ - all all-am am--refresh check check-DEJAGNU check-am clean \ diff --git a/contrib/crossrpms/rtems4.10/arm/Makefile.am b/contrib/crossrpms/rtems4.10/arm/Makefile.am index 614b744911..4320677f8c 100644 --- a/contrib/crossrpms/rtems4.10/arm/Makefile.am +++ b/contrib/crossrpms/rtems4.10/arm/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) @@ -22,6 +22,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/arm/gcc-sources.add b/contrib/crossrpms/rtems4.10/arm/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/arm/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/arm/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gcc.spec index e2ccffa900..54eaa7d8b9 100644 --- a/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: arm-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-arm-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-arm-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-arm-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-arm-rtems4.10-binutils Requires: rtems-4.10-arm-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-arm-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-arm-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-arm-rtems4.10-binutils -# Requires: rtems-4.10-arm-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-arm-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for arm-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-arm-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-arm-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-arm-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for arm-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for arm-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gdb.spec index acfc61b455..421e6ca09b 100644 --- a/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/arm/rtems-4.10-arm-rtems4.10-gdb.spec @@ -52,18 +52,30 @@ Name: rtems-4.10-arm-rtems4.10-gdb Summary: Gdb for target arm-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -71,34 +83,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -140,16 +131,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/arm-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -179,20 +163,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libarm-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/arm-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/arm-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/arm-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -243,6 +231,7 @@ GNU gdb targetting arm-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/arm-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/avr/Makefile.am b/contrib/crossrpms/rtems4.10/avr/Makefile.am index 2f159329a8..1e46c34d33 100644 --- a/contrib/crossrpms/rtems4.10/avr/Makefile.am +++ b/contrib/crossrpms/rtems4.10/avr/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/avr/gcc-sources.add b/contrib/crossrpms/rtems4.10/avr/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/avr/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/avr/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gcc.spec index 513c43ff73..e2dd1e6c43 100644 --- a/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: avr-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-avr-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-avr-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-avr-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-avr-rtems4.10-binutils Requires: rtems-4.10-avr-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-avr-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-avr-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,13 +255,9 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} @@ -350,7 +344,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -622,7 +616,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-avr-rtems4.10-binutils -# Requires: rtems-4.10-avr-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-avr-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -640,7 +634,7 @@ Summary: libgcc for avr-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-avr-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-avr-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-avr-rtems4.10-gcc-libgcc @@ -755,7 +749,7 @@ Summary: C Library (newlib) for avr-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -776,7 +770,7 @@ Newlib C Library for avr-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gdb.spec index f9b7a33591..b5264d6b0d 100644 --- a/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/avr/rtems-4.10-avr-rtems4.10-gdb.spec @@ -52,18 +52,30 @@ Name: rtems-4.10-avr-rtems4.10-gdb Summary: Gdb for target avr-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -71,34 +83,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -140,16 +131,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/avr-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -179,20 +163,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libavr-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/avr-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/avr-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/avr-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -243,6 +231,7 @@ GNU gdb targetting avr-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/avr-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/bfin/Makefile.am b/contrib/crossrpms/rtems4.10/bfin/Makefile.am index 25b48a22e5..94c8d29aaf 100644 --- a/contrib/crossrpms/rtems4.10/bfin/Makefile.am +++ b/contrib/crossrpms/rtems4.10/bfin/Makefile.am @@ -12,15 +12,15 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` include ../gcc.am GCC_OPTS += --languages=cxx -GDB_VERS = 6.5 +GDB_VERS = 7.3.1 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 12 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += --disable-infos diff --git a/contrib/crossrpms/rtems4.10/bfin/gcc-sources.add b/contrib/crossrpms/rtems4.10/bfin/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/bfin/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/bfin/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/bfin/gdb-sources.add b/contrib/crossrpms/rtems4.10/bfin/gdb-sources.add index 79f6651c12..c309de489c 100644 --- a/contrib/crossrpms/rtems4.10/bfin/gdb-sources.add +++ b/contrib/crossrpms/rtems4.10/bfin/gdb-sources.add @@ -1,3 +1,13 @@ -Source0: ftp://ftp.gnu.org/pub/gnu/gdb/gdb-%{gdb_version}.tar.bz2 -%{?_without_sources:NoSource: 0} -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gdb-6.5-bfinrtems-20090122.diff +BuildRequires: @rpmprefix@bfin-rtems4.10-binutils +BuildRequires: texinfo + +# The bfin simulator silently tries to conditionally build an SDL based GUI, +# but fails to link correctly +# Force not building the GUI. +%{!?suse:BuildConflicts: SDL-devel} +%{?suse:BuildConflicts: libSDL-devel} + +%if "%{gdb_version}" == "7.3.1" +Source0: ftp://ftp.gnu.org/gnu/gdb/gdb-7.3.1.tar.bz2 +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gdb-7.3.1-rtems4.10-20110919.diff +%endif diff --git a/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gcc.spec index b0ef184eeb..08d003cb0d 100644 --- a/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: bfin-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-bfin-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-bfin-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-bfin-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-bfin-rtems4.10-binutils Requires: rtems-4.10-bfin-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-bfin-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-bfin-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-bfin-rtems4.10-binutils -# Requires: rtems-4.10-bfin-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-bfin-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for bfin-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-bfin-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-bfin-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-bfin-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for bfin-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for bfin-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gdb.spec index 197dad3f76..83d37da7e8 100644 --- a/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/bfin/rtems-4.10-bfin-rtems4.10-gdb.spec @@ -45,24 +45,37 @@ %define _host_rpmprefix %{nil} %endif -%define gdb_version 6.5 -%define gdb_rpmvers %{expand:%(echo 6.5 | tr - _)} +%define gdb_version 7.3.1 +%define gdb_rpmvers %{expand:%(echo 7.3.1 | tr - _)} Name: rtems-4.10-bfin-rtems4.10-gdb Summary: Gdb for target bfin-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 12%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -70,34 +83,23 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - +BuildRequires: rtems-4.10-bfin-rtems4.10-binutils +BuildRequires: texinfo +# The bfin simulator silently tries to conditionally build an SDL based GUI, +# but fails to link correctly +# Force not building the GUI. +%{!?suse:BuildConflicts: SDL-devel} +%{?suse:BuildConflicts: libSDL-devel} -Source0: ftp://ftp.gnu.org/pub/gnu/gdb/gdb-%{gdb_version}.tar.bz2 -%{?_without_sources:NoSource: 0} -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gdb-6.5-bfinrtems-20090122.diff +%if "%{gdb_version}" == "7.3.1" +Source0: ftp://ftp.gnu.org/gnu/gdb/gdb-7.3.1.tar.bz2 +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gdb-7.3.1-rtems4.10-20110919.diff +%endif %description GDB for target bfin-rtems4.10 @@ -128,16 +130,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/bfin-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -161,20 +156,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libbfin-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/bfin-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/bfin-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/bfin-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -225,6 +224,7 @@ GNU gdb targetting bfin-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/bfin-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/h8300/Makefile.am b/contrib/crossrpms/rtems4.10/h8300/Makefile.am index c2bb89b995..9b4a0823c4 100644 --- a/contrib/crossrpms/rtems4.10/h8300/Makefile.am +++ b/contrib/crossrpms/rtems4.10/h8300/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/h8300/gcc-sources.add b/contrib/crossrpms/rtems4.10/h8300/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/h8300/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/h8300/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gcc.spec index 63bdbab0a5..4a9a635487 100644 --- a/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: h8300-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-h8300-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-h8300-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-h8300-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-h8300-rtems4.10-binutils Requires: rtems-4.10-h8300-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-h8300-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-h8300-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-h8300-rtems4.10-binutils -# Requires: rtems-4.10-h8300-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-h8300-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for h8300-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-h8300-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-h8300-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-h8300-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for h8300-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for h8300-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gdb.spec index 0510a37a86..6a6d8425cd 100644 --- a/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/h8300/rtems-4.10-h8300-rtems4.10-gdb.spec @@ -52,22 +52,34 @@ Name: rtems-4.10-h8300-rtems4.10-gdb Summary: Gdb for target h8300-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace %ifos mingw mingw32 # Mingw lacks functions required by the h8300 simulator %define build_sim --disable-sim %endif -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -75,34 +87,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -144,16 +135,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/h8300-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -183,20 +167,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libh8300-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/h8300-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/h8300-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/h8300-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -247,6 +235,7 @@ GNU gdb targetting h8300-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/h8300-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/i386/Makefile.am b/contrib/crossrpms/rtems4.10/i386/Makefile.am index b4978d0b10..e4e6f85983 100644 --- a/contrib/crossrpms/rtems4.10/i386/Makefile.am +++ b/contrib/crossrpms/rtems4.10/i386/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/i386/gcc-sources.add b/contrib/crossrpms/rtems4.10/i386/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/i386/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/i386/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gcc.spec index 6fb8f6696d..bb44e4b328 100644 --- a/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: i386-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-i386-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-i386-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-i386-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-i386-rtems4.10-binutils Requires: rtems-4.10-i386-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-i386-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-i386-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-i386-rtems4.10-binutils -# Requires: rtems-4.10-i386-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-i386-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for i386-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-i386-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-i386-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-i386-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for i386-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for i386-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gdb.spec index 2c9afea19b..e8c9584c63 100644 --- a/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/i386/rtems-4.10-i386-rtems4.10-gdb.spec @@ -52,18 +52,30 @@ Name: rtems-4.10-i386-rtems4.10-gdb Summary: Gdb for target i386-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -71,34 +83,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -140,16 +131,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/i386-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -179,20 +163,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libi386-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/i386-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/i386-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/i386-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -243,6 +231,7 @@ GNU gdb targetting i386-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/i386-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/lm32/Makefile.am b/contrib/crossrpms/rtems4.10/lm32/Makefile.am index b95ff39abc..4f1f477d06 100644 --- a/contrib/crossrpms/rtems4.10/lm32/Makefile.am +++ b/contrib/crossrpms/rtems4.10/lm32/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/lm32/gcc-sources.add b/contrib/crossrpms/rtems4.10/lm32/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/lm32/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/lm32/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gcc.spec index 583551f23a..d4799848e4 100644 --- a/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: lm32-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-lm32-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-lm32-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-lm32-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-lm32-rtems4.10-binutils Requires: rtems-4.10-lm32-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-lm32-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-lm32-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-lm32-rtems4.10-binutils -# Requires: rtems-4.10-lm32-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-lm32-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for lm32-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-lm32-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-lm32-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-lm32-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for lm32-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for lm32-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gdb.spec index 090bbf58b8..f9ac6c0479 100644 --- a/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/lm32/rtems-4.10-lm32-rtems4.10-gdb.spec @@ -52,22 +52,34 @@ Name: rtems-4.10-lm32-rtems4.10-gdb Summary: Gdb for target lm32-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace %ifos mingw mingw32 # Mingw lacks functions required by the lm32 simulator %define build_sim --disable-sim %endif -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -75,34 +87,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -144,16 +135,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/lm32-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -183,20 +167,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/liblm32-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/lm32-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/lm32-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/lm32-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -247,6 +235,7 @@ GNU gdb targetting lm32-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/lm32-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/m32c/Makefile.am b/contrib/crossrpms/rtems4.10/m32c/Makefile.am index 9b13cc93c4..a081892153 100644 --- a/contrib/crossrpms/rtems4.10/m32c/Makefile.am +++ b/contrib/crossrpms/rtems4.10/m32c/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/m32c/gcc-sources.add b/contrib/crossrpms/rtems4.10/m32c/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/m32c/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/m32c/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gcc.spec index 5ae7a36e75..f583ce0187 100644 --- a/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: m32c-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-m32c-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-m32c-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-m32c-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-m32c-rtems4.10-binutils Requires: rtems-4.10-m32c-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-m32c-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-m32c-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,13 +255,9 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} @@ -350,7 +344,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -622,7 +616,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-m32c-rtems4.10-binutils -# Requires: rtems-4.10-m32c-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-m32c-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -640,7 +634,7 @@ Summary: libgcc for m32c-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-m32c-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-m32c-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-m32c-rtems4.10-gcc-libgcc @@ -756,7 +750,7 @@ Summary: C Library (newlib) for m32c-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -777,7 +771,7 @@ Newlib C Library for m32c-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gdb.spec index d518c8fc29..47d6a136c9 100644 --- a/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/m32c/rtems-4.10-m32c-rtems4.10-gdb.spec @@ -52,22 +52,34 @@ Name: rtems-4.10-m32c-rtems4.10-gdb Summary: Gdb for target m32c-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace %ifos mingw mingw32 # Mingw lacks functions required by the m32c simulator %define build_sim --disable-sim %endif -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -75,34 +87,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -144,16 +135,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/m32c-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -183,20 +167,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libm32c-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/m32c-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/m32c-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/m32c-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -247,6 +235,7 @@ GNU gdb targetting m32c-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/m32c-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/m32r/Makefile.am b/contrib/crossrpms/rtems4.10/m32r/Makefile.am index d8f676526f..238ece6b1d 100644 --- a/contrib/crossrpms/rtems4.10/m32r/Makefile.am +++ b/contrib/crossrpms/rtems4.10/m32r/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/m32r/gcc-sources.add b/contrib/crossrpms/rtems4.10/m32r/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/m32r/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/m32r/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gcc.spec index 6b594bdace..a2395b7f76 100644 --- a/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: m32r-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-m32r-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-m32r-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-m32r-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-m32r-rtems4.10-binutils Requires: rtems-4.10-m32r-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-m32r-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-m32r-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,13 +255,9 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} @@ -350,7 +344,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -622,7 +616,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-m32r-rtems4.10-binutils -# Requires: rtems-4.10-m32r-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-m32r-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -640,7 +634,7 @@ Summary: libgcc for m32r-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-m32r-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-m32r-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-m32r-rtems4.10-gcc-libgcc @@ -756,7 +750,7 @@ Summary: C Library (newlib) for m32r-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -777,7 +771,7 @@ Newlib C Library for m32r-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gdb.spec index 8396af614e..321356912a 100644 --- a/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/m32r/rtems-4.10-m32r-rtems4.10-gdb.spec @@ -52,18 +52,30 @@ Name: rtems-4.10-m32r-rtems4.10-gdb Summary: Gdb for target m32r-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -71,34 +83,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -140,16 +131,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/m32r-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -179,20 +163,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libm32r-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/m32r-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/m32r-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/m32r-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -243,6 +231,7 @@ GNU gdb targetting m32r-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/m32r-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/m68k/Makefile.am b/contrib/crossrpms/rtems4.10/m68k/Makefile.am index 7c06a1570a..cac44007ea 100644 --- a/contrib/crossrpms/rtems4.10/m68k/Makefile.am +++ b/contrib/crossrpms/rtems4.10/m68k/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/m68k/gcc-sources.add b/contrib/crossrpms/rtems4.10/m68k/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/m68k/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/m68k/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gcc.spec index d851bce555..1673a8c09a 100644 --- a/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: m68k-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-m68k-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-m68k-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-m68k-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-m68k-rtems4.10-binutils Requires: rtems-4.10-m68k-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-m68k-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-m68k-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-m68k-rtems4.10-binutils -# Requires: rtems-4.10-m68k-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-m68k-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for m68k-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-m68k-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-m68k-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-m68k-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for m68k-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for m68k-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gdb.spec index 529cc8229a..2708f303f6 100644 --- a/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/m68k/rtems-4.10-m68k-rtems4.10-gdb.spec @@ -52,18 +52,30 @@ Name: rtems-4.10-m68k-rtems4.10-gdb Summary: Gdb for target m68k-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -71,34 +83,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -140,16 +131,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/m68k-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -179,20 +163,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libm68k-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/m68k-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/m68k-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/m68k-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -243,6 +231,7 @@ GNU gdb targetting m68k-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/m68k-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/mips/Makefile.am b/contrib/crossrpms/rtems4.10/mips/Makefile.am index 7f54f24471..41e2db7d98 100644 --- a/contrib/crossrpms/rtems4.10/mips/Makefile.am +++ b/contrib/crossrpms/rtems4.10/mips/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/mips/gcc-sources.add b/contrib/crossrpms/rtems4.10/mips/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/mips/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/mips/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gcc.spec index 1b34661ac0..437d1373d8 100644 --- a/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: mips-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-mips-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-mips-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-mips-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-mips-rtems4.10-binutils Requires: rtems-4.10-mips-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-mips-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-mips-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-mips-rtems4.10-binutils -# Requires: rtems-4.10-mips-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-mips-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for mips-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-mips-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-mips-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-mips-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for mips-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for mips-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gdb.spec index 841f60a3f4..caa2ac35d6 100644 --- a/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/mips/rtems-4.10-mips-rtems4.10-gdb.spec @@ -52,18 +52,30 @@ Name: rtems-4.10-mips-rtems4.10-gdb Summary: Gdb for target mips-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -71,34 +83,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -140,16 +131,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/mips-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -179,20 +163,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libmips-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/mips-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/mips-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/mips-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -243,6 +231,7 @@ GNU gdb targetting mips-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/mips-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/mipstx39/Makefile.am b/contrib/crossrpms/rtems4.10/mipstx39/Makefile.am index 2afe5638b2..ec9cbd1706 100644 --- a/contrib/crossrpms/rtems4.10/mipstx39/Makefile.am +++ b/contrib/crossrpms/rtems4.10/mipstx39/Makefile.am @@ -7,6 +7,6 @@ include $(top_srcdir)/mkspec.am # We only want a gdb with a tx39 simulator in it. We share the other tools GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/mipstx39/rtems-4.10-mipstx39-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/mipstx39/rtems-4.10-mipstx39-rtems4.10-gdb.spec index be26d60a71..3d9df4fb26 100644 --- a/contrib/crossrpms/rtems4.10/mipstx39/rtems-4.10-mipstx39-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/mipstx39/rtems-4.10-mipstx39-rtems4.10-gdb.spec @@ -52,22 +52,34 @@ Name: rtems-4.10-mipstx39-rtems4.10-gdb Summary: Gdb for target mipstx39-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace %ifos mingw mingw32 # Mingw lacks functions required by the mipstx39 simulator %define build_sim --disable-sim %endif -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -75,34 +87,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -144,16 +135,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/mipstx39-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -183,20 +167,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libmipstx39-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/mipstx39-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/mipstx39-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/mipstx39-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -247,6 +235,7 @@ GNU gdb targetting mipstx39-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/mipstx39-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/powerpc/Makefile.am b/contrib/crossrpms/rtems4.10/powerpc/Makefile.am index 35143ded9c..6303913926 100644 --- a/contrib/crossrpms/rtems4.10/powerpc/Makefile.am +++ b/contrib/crossrpms/rtems4.10/powerpc/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/powerpc/gcc-sources.add b/contrib/crossrpms/rtems4.10/powerpc/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/powerpc/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/powerpc/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gcc.spec index 4e89e21dad..dbf17387ac 100644 --- a/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: powerpc-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-powerpc-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-powerpc-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-powerpc-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-powerpc-rtems4.10-binutils Requires: rtems-4.10-powerpc-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-powerpc-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-powerpc-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-powerpc-rtems4.10-binutils -# Requires: rtems-4.10-powerpc-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-powerpc-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for powerpc-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-powerpc-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-powerpc-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-powerpc-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for powerpc-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for powerpc-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gdb.spec index a89978fd0a..5f8f40b60e 100644 --- a/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/powerpc/rtems-4.10-powerpc-rtems4.10-gdb.spec @@ -52,23 +52,35 @@ Name: rtems-4.10-powerpc-rtems4.10-gdb Summary: Gdb for target powerpc-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim + +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} %if "%{_build}" != "%{_host}" # psim doesn't support Cdn-X -%define build_sim --disable-sim +%global build_sim --disable-sim %else -%define build_sim --enable-sim --enable-sim-trace +%global build_sim --enable-sim --enable-sim-trace %endif -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -76,34 +88,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -145,16 +136,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/powerpc-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -184,20 +168,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libpowerpc-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/powerpc-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/powerpc-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/powerpc-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -248,6 +236,7 @@ GNU gdb targetting powerpc-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/powerpc-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/sh/Makefile.am b/contrib/crossrpms/rtems4.10/sh/Makefile.am index 3da1ee0b67..c8026c2334 100644 --- a/contrib/crossrpms/rtems4.10/sh/Makefile.am +++ b/contrib/crossrpms/rtems4.10/sh/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/sh/gcc-sources.add b/contrib/crossrpms/rtems4.10/sh/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/sh/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/sh/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gcc.spec index c0b1526748..3a887c1fa5 100644 --- a/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: sh-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-sh-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-sh-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-sh-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-sh-rtems4.10-binutils Requires: rtems-4.10-sh-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-sh-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-sh-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-sh-rtems4.10-binutils -# Requires: rtems-4.10-sh-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-sh-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for sh-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-sh-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-sh-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-sh-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for sh-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for sh-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gdb.spec index 4a013c986e..ee7a66162f 100644 --- a/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/sh/rtems-4.10-sh-rtems4.10-gdb.spec @@ -52,18 +52,30 @@ Name: rtems-4.10-sh-rtems4.10-gdb Summary: Gdb for target sh-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -71,34 +83,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -140,16 +131,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/sh-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -179,20 +163,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libsh-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/sh-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/sh-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/sh-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -243,6 +231,7 @@ GNU gdb targetting sh-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/sh-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 diff --git a/contrib/crossrpms/rtems4.10/sparc/Makefile.am b/contrib/crossrpms/rtems4.10/sparc/Makefile.am index ac5c551ee0..4f3360a6fd 100644 --- a/contrib/crossrpms/rtems4.10/sparc/Makefile.am +++ b/contrib/crossrpms/rtems4.10/sparc/Makefile.am @@ -12,7 +12,7 @@ BINUTILS_OPTS += GCC_VERS = 4.4.6 GCC_PKGVERS = $(GCC_VERS) -GCC_RPMREL = 2 +GCC_RPMREL = 4 NEWLIB_VERS = 1.18.0 NEWLIB_PKGVERS = $(NEWLIB_VERS) NEWLIB_RPMREL = `expr $(GCC_RPMREL) + 23` @@ -21,6 +21,6 @@ GCC_OPTS += --languages=cxx GDB_VERS = 7.2 GDB_PKGVERS = $(GDB_VERS) -GDB_RPMREL = 1 +GDB_RPMREL = 2 include ../gdb.am GDB_OPTS += diff --git a/contrib/crossrpms/rtems4.10/sparc/gcc-sources.add b/contrib/crossrpms/rtems4.10/sparc/gcc-sources.add index 66cfc3e805..3ec3b39505 100644 --- a/contrib/crossrpms/rtems4.10/sparc/gcc-sources.add +++ b/contrib/crossrpms/rtems4.10/sparc/gcc-sources.add @@ -1,19 +1,13 @@ -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} %if %build_cxx -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} diff --git a/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gcc.spec b/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gcc.spec index 276f3bb4df..4ac8621981 100644 --- a/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gcc.spec +++ b/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gcc.spec @@ -58,7 +58,7 @@ Summary: sparc-rtems4.10 gcc Group: Development/Tools Version: %{gcc_rpmvers} -Release: 2%{?dist} +Release: 4%{?dist} License: GPL URL: http://gcc.gnu.org BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -107,12 +107,6 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.3.1 %endif -%if 0%{?fc13} -%global mpc_provided 0.8.1 -%global mpfr_provided 2.4.2 -%global gmp_provided 4.3.1 -%endif - %if 0%{?el6} %global mpc_provided %{nil} %global mpfr_provided 2.4.1 @@ -125,6 +119,12 @@ BuildRequires: %{_host_rpmprefix}gcc %global gmp_provided 4.1.4 %endif +%if 0%{?suse12_1} +%global mpc_provided 0.8.2 +%global mpfr_provided 3.0.1 +%global gmp_provided 5.0.2 +%endif + %if 0%{?suse11_3} %global mpc_provided 0.8.1 %global mpfr_provided 2.4.2 @@ -209,7 +209,6 @@ BuildRequires: %{_host_rpmprefix}libelf-devel >= %{libelf_required} %if %{defined cloog_required} -%{?fc13:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc14:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc15:BuildRequires: cloog-ppl-devel >= %cloog_required} %{?fc16:BuildRequires: cloog-ppl-devel >= %cloog_required} @@ -234,10 +233,9 @@ BuildRequires: %{_host_rpmprefix}mpfr-devel >= %{mpfr_required} BuildRequires: rtems-4.10-sparc-rtems4.10-gcc = %{gcc_rpmvers} %endif -%if "%{gcc_version}" >= "4.2.0" +# Not strictly required, but patches may introduce a need to use them. +# For reasons of simplicity, always require them. BuildRequires: flex bison -%endif - BuildRequires: texinfo >= 4.2 BuildRequires: rtems-4.10-sparc-rtems4.10-binutils @@ -245,7 +243,7 @@ BuildRequires: rtems-4.10-sparc-rtems4.10-binutils Requires: rtems-4.10-gcc-common Requires: rtems-4.10-sparc-rtems4.10-binutils Requires: rtems-4.10-sparc-rtems4.10-gcc-libgcc = %{gcc_rpmvers}-%{release} -Requires: rtems-4.10-sparc-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-sparc-rtems4.10-newlib = %{newlib_version}-27%{?dist} %if "%{gcc_version}" >= "4.5.0" BuildRequires: zlib-devel @@ -257,21 +255,15 @@ BuildRequires: %{_host_rpmprefix}zlib-devel %global _gcclibdir %{_prefix}/lib -%if "%{gcc_version}" == "4.4.5" -Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.5-rtems4.10-20110301.diff -%endif %if "%{gcc_version}" == "4.4.6" Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-core-%{gcc_pkgvers}.tar.bz2 -Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110420.diff +Patch0: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-core-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 0} -%if "%{gcc_version}" == "4.4.5" -Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 -%endif %if "%{gcc_version}" == "4.4.6" Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_pkgvers}/gcc-g++-%{gcc_pkgvers}.tar.bz2 +Patch1: ftp://ftp.rtems.org/pub/rtems/SOURCES/4.10/gcc-g++-4.4.6-rtems4.10-20110829.diff %endif %{?_without_sources:NoSource: 1} @@ -362,7 +354,7 @@ cd .. ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf %endif -echo "RTEMS gcc-%{gcc_version}-2%{?dist}/newlib-%{newlib_version}-25%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE +echo "RTEMS gcc-%{gcc_version}-4%{?dist}/newlib-%{newlib_version}-27%{?dist}" > gcc-%{gcc_pkgvers}/gcc/DEV-PHASE # Fix timestamps @@ -635,7 +627,7 @@ sed -e 's,^[ ]*/usr/lib/rpm/find-debuginfo.sh,./find-debuginfo.sh,' \ # Group: Development/Tools # Version: %{gcc_rpmvers} # Requires: rtems-4.10-sparc-rtems4.10-binutils -# Requires: rtems-4.10-sparc-rtems4.10-newlib = %{newlib_version}-25%{?dist} +# Requires: rtems-4.10-sparc-rtems4.10-newlib = %{newlib_version}-27%{?dist} # License: GPL # %if %build_infos @@ -653,7 +645,7 @@ Summary: libgcc for sparc-rtems4.10-gcc Group: Development/Tools Version: %{gcc_rpmvers} %{?_with_noarch_subpackages:BuildArch: noarch} -Requires: rtems-4.10-sparc-rtems4.10-newlib = %{newlib_version}-25%{?dist} +Requires: rtems-4.10-sparc-rtems4.10-newlib = %{newlib_version}-27%{?dist} License: GPL %description -n rtems-4.10-sparc-rtems4.10-gcc-libgcc @@ -829,7 +821,7 @@ Summary: C Library (newlib) for sparc-rtems4.10 Group: Development/Tools License: Distributable Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} Requires: rtems-4.10-newlib-common @@ -850,7 +842,7 @@ Newlib C Library for sparc-rtems4.10. Summary: Base package for RTEMS newlib C Library Group: Development/Tools Version: %{newlib_version} -Release: 25%{?dist} +Release: 27%{?dist} %{?_with_noarch_subpackages:BuildArch: noarch} License: Distributable diff --git a/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gdb.spec b/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gdb.spec index 4e16ee826b..05a2e1dcf5 100644 --- a/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gdb.spec +++ b/contrib/crossrpms/rtems4.10/sparc/rtems-4.10-sparc-rtems4.10-gdb.spec @@ -52,22 +52,34 @@ Name: rtems-4.10-sparc-rtems4.10-gdb Summary: Gdb for target sparc-rtems4.10 Group: Development/Tools Version: %{gdb_rpmvers} -Release: 1%{?dist} +Release: 2%{?dist} License: GPL/LGPL URL: http://sources.redhat.com/gdb BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: %{_host_rpmprefix}gcc -%define build_sim --enable-sim +%global build_sim --enable-sim -%define build_sim --enable-sim --enable-sim-trace +# Whether to build against system readline +# Default: yes +%bcond_without system_readline + +# Whether to build python support +%if "%{_build}" != "%{_host}" +# Can't build python Cdn-X +%bcond_with python +%else +%bcond_without python +%endif +%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} + +%global build_sim --enable-sim --enable-sim-trace %ifos mingw mingw32 # Mingw lacks functions required by the sparc simulator %define build_sim --disable-sim %endif -%if "%{gdb_version}" >= "6.6" # suse %if "%{?suse}" >= "10.3" BuildRequires: libexpat-devel @@ -75,34 +87,13 @@ BuildRequires: libexpat-devel # Fedora/CentOS/Cygwin/MinGW BuildRequires: %{_host_rpmprefix}expat-devel %endif -%endif -%if "%{gdb_version}" < "6.7" -%if "%{_build}" != "%{_host}" -BuildRequires: %{_host_rpmprefix}termcap-devel -%endif -%bcond_with system_readline -%else -%bcond_without system_readline -%endif %{?with_system_readline:BuildRequires: %{_host_rpmprefix}readline-devel} BuildRequires: %{_host_rpmprefix}ncurses-devel -%if "%{gdb_version}" >= "6.8.50" -%if "%{_build}" != "%{_host}" -# Can't build python Cdn-X -%bcond_with python -%else -%bcond_without python -%endif -%endif -%{?with_python:BuildRequires: %{_host_rpmprefix}python-devel} - # Required for building the infos BuildRequires: /sbin/install-info BuildRequires: texinfo >= 4.2 - - Requires: rtems-4.10-gdb-common %if "%{gdb_version}" == "7.2" @@ -144,16 +135,9 @@ cd .. --disable-werror \ %{build_sim} \ %{?with_system_readline:--with-system-readline} \ -%if "%{gdb_version}" >= "6.6" --with-expat \ -%endif -%if "%{gdb_version}" >= "6.8.50" -%if %{with python} - --with-python \ -%else - --without-python \ -%endif -%endif + %{?with_python:--with-python}%{!?with_python:--without-python} \ + --with-gdb-datadir=%{_datadir}/sparc-rtems4.10-gdb \ --prefix=%{_prefix} --bindir=%{_bindir} \ --includedir=%{_includedir} --libdir=%{_libdir} \ --mandir=%{_mandir} --infodir=%{_infodir} @@ -183,20 +167,24 @@ cd .. # host library, installed to a bogus directory rm -f ${RPM_BUILD_ROOT}%{_libdir}/libsparc-rtems4.10-sim.a -%if "%{gdb_version}" >= "7.0" # Bug in gdb-7.0, bogusly installs linux-only files somethinguseful=0 - for f in ${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls/*.xml; do + for f in ${RPM_BUILD_ROOT}%{_datadir}/sparc-rtems4.10-gdb/syscalls/*.xml; do case $f in *linux.xml) rm -f $f;; *.xml) somethinguseful=1;; esac done if test $somethinguseful -eq 0; then - rm -rf "${RPM_BUILD_ROOT}%{_datadir}/gdb/syscalls" + rm -rf "${RPM_BUILD_ROOT}%{_datadir}/sparc-rtems4.10-gdb/syscalls" fi -%endif +%if "{gdb_version}" >= "7.3" +%if ! %{with python} +# gdb-7.3 doesn't honor --without-python correctly + rm -rf ${RPM_BUILD_ROOT}%{_datadir}/sparc-rtems4.10-gdb/python +%endif +%endif cd .. # Extract %%__os_install_post into os_install_post~ @@ -247,6 +235,7 @@ GNU gdb targetting sparc-rtems4.10. %defattr(-,root,root) %dir %{_prefix} %dir %{_prefix}/share +%{?with_python:%{_datadir}/sparc-rtems4.10-gdb} %dir %{_mandir} %dir %{_mandir}/man1 |