diff -urp rpm-4.13.0-rc1/installplatform r/installplatform --- rpm-4.13.0-rc1/installplatform 2015-08-26 15:52:41.856044288 +0200 +++ r/installplatform 2015-11-24 21:53:09.146590589 +0100 @@ -138,6 +138,30 @@ for ARCH in noarch `grep ^arch_canon $RP CANONARCH=mips64el CANONCOLOR=3 ;; + mipsr6) + ISANAME=mipsr6 + ISABITS=32 + CANONARCH=mipsr6 + CANONCOLOR=0 + ;; + mipsr6el) + ISANAME=mipsr6 + ISABITS=32 + CANONARCH=mipsr6el + CANONCOLOR=0 + ;; + mips64r6) + ISANAME=mipsr6 + ISABITS=64 + CANONARCH=mips64r6 + CANONCOLOR=3 + ;; + mips64r6el) + ISANAME=mipsr6 + ISABITS=64 + CANONARCH=mips64r6el + CANONCOLOR=3 + ;; m68k) ISANAME=m68k ISABITS=32 diff -urp rpm-4.13.0-rc1/lib/rpmrc.c r/lib/rpmrc.c --- rpm-4.13.0-rc1/lib/rpmrc.c 2015-08-28 15:14:50.593500511 +0200 +++ r/lib/rpmrc.c 2015-11-24 21:37:41.966760327 +0100 @@ -1057,21 +1057,45 @@ static void defaultMachine(rpmrcCtx ctx, # if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) /* little endian */ -# if defined(__LP64__) || defined(_LP64) +# if defined(__mips64) /* 64-bit */ - strcpy(un.machine, "mips64el"); +# if !defined(__mips_isa_rev) || __mips_isa_rev < 6 + /* r1-r5 */ + strcpy(un.machine, "mips64el"); +# else + /* r6 */ + strcpy(un.machine, "mips64r6el"); +# endif # else /* 32-bit */ - strcpy(un.machine, "mipsel"); +# if !defined(__mips_isa_rev) || __mips_isa_rev < 6 + /* r1-r5 */ + strcpy(un.machine, "mipsel"); +# else + /* r6 */ + strcpy(un.machine, "mipsr6el"); +# endif # endif # elif defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) /* big endian */ -# if defined(__LP64__) || defined(_LP64) +# if defined(__mips64) /* 64-bit */ - strcpy(un.machine, "mips64"); +# if !defined(__mips_isa_rev) || __mips_isa_rev < 6 + /* r1-r5 */ + strcpy(un.machine, "mips64"); +# else + /* r6 */ + strcpy(un.machine, "mips64r6"); +# endif # else /* 32-bit */ - strcpy(un.machine, "mips"); +# if !defined(__mips_isa_rev) || __mips_isa_rev < 6 + /* r1-r5 */ + strcpy(un.machine, "mips"); +# else + /* r6 */ + strcpy(un.machine, "mipsr6"); +# endif # endif # endif diff -urp rpm-4.13.0-rc1/macros.in r/macros.in --- rpm-4.13.0-rc1/macros.in 2015-11-24 19:44:16.862367540 +0100 +++ r/macros.in 2015-11-24 19:54:11.208427621 +0100 @@ -1025,8 +1025,24 @@ done \ %arm armv3l armv4b armv4l armv4tl armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl #------------------------------------------------------------------------------ +# arch macro for 32-bit MIPS processors +%mips32 mips mipsel mipsr6 mipsr6el + +#------------------------------------------------------------------------------ +# arch macro for 64-bit MIPS processors +%mips64 mips64 mips64el mips64r6 mips64r6el + +#------------------------------------------------------------------------------ +# arch macro for big endian MIPS processors +%mipseb mips mipsr6 mips64 mips64r6 + +#------------------------------------------------------------------------------ +# arch macro for little endian MIPS processors +%mipsel mipsel mipsr6el mips64el mips64r6el + +#------------------------------------------------------------------------------ # arch macro for all supported MIPS processors -%mips mips mipsel mips64 mips64el +%mips %{mips32} %{mips64} #------------------------------------------------------------------------------ # arch macro for all supported Sparc processors diff -urp rpm-4.13.0-rc1/rpmrc.in r/rpmrc.in --- rpm-4.13.0-rc1/rpmrc.in 2015-11-24 19:44:16.858367519 +0100 +++ r/rpmrc.in 2015-11-24 19:50:36.544322671 +0100 @@ -62,6 +62,11 @@ optflags: mipsel -O2 -g optflags: mips64 -O2 -g optflags: mips64el -O2 -g +optflags: mipsr6 -O2 -g +optflags: mipsr6el -O2 -g +optflags: mips64r6 -O2 -g +optflags: mips64r6el -O2 -g + optflags: armv3l -O2 -g -march=armv3 optflags: armv4b -O2 -g -march=armv4 optflags: armv4l -O2 -g -march=armv4 @@ -121,6 +126,11 @@ archcolor: mipsel 1 archcolor: mips64 2 archcolor: mips64el 2 +archcolor: mipsr6 1 +archcolor: mipsr6el 1 +archcolor: mips64r6 2 +archcolor: mips64r6el 2 + archcolor: m68k 1 archcolor: m68kmint 1 @@ -228,6 +238,11 @@ arch_canon: sh4a: sh4a 17 arch_canon: xtensa: xtensa 18 arch_canon: aarch64: aarch64 19 +arch_canon: mipsr6: mipsr6 20 +arch_canon: mipsr6el: mipsr6el 20 +arch_canon: mips64r6: mips64r6 21 +arch_canon: mips64r6el: mips64r6el 21 + ############################################################# # Canonical OS names and numbers @@ -323,6 +338,11 @@ buildarchtranslate: mipsel: mipsel buildarchtranslate: mips64: mips64 buildarchtranslate: mips64el: mips64el +buildarchtranslate: mipsr6: mipsr6 +buildarchtranslate: mipsr6el: mipsr6el +buildarchtranslate: mips64r6: mips64r6 +buildarchtranslate: mips64r6el: mips64r6el + buildarchtranslate: m68k: m68k buildarchtranslate: atarist: m68kmint @@ -404,6 +424,11 @@ arch_compat: mipsel: noarch arch_compat: mips64: mips arch_compat: mips64el: mipsel +arch_compat: mipsr6: noarch +arch_compat: mipsr6el: noarch +arch_compat: mips64r6: mipsr6 +arch_compat: mips64r6el: mipsr6el + arch_compat: hppa2.0: hppa1.2 arch_compat: hppa1.2: hppa1.1 arch_compat: hppa1.1: hppa1.0 @@ -527,6 +552,11 @@ buildarch_compat: mipsel: noarch buildarch_compat: mips64: noarch buildarch_compat: mips64el: noarch +buildarch_compat: mipsr6: noarch +buildarch_compat: mipsr6el: noarch +buildarch_compat: mips64r6: noarch +buildarch_compat: mips64r6el: noarch + buildarch_compat: armv4b: noarch buildarch_compat: armv7l: armv6l buildarch_compat: armv6l: armv5tejl