if (fcolor & RPMFC_INCLUDE)
break;
}
+@@ -1152,7 +1152,10 @@
+ color = RPMFC_ELF64;
+ break;
+ case ELFCLASS32:
+- color = RPMFC_ELF32;
++ if (ehdr.e_machine == EM_X86_64)
++ color = RPMFC_ELFX32;
++ else
++ color = RPMFC_ELF32;
+ break;
+ }
+ elf_end(elf);
diff -ur rpm-4.15.1.orig/build/rpmfc.h rpm-4.15.1/build/rpmfc.h
--- rpm-4.15.1.orig/build/rpmfc.h 2019-06-26 16:17:31.397985717 +0200
+++ rpm-4.15.1/build/rpmfc.h 2019-12-29 13:45:05.936980833 +0100
ISANAME=x86
ISABITS=64
CANONARCH=x86_64
+- CANONCOLOR=3
+ CANONCOLOR=7
+ ;;
+ x32)
+ ISANAME=x86
+ ISABITS=32
+ CANONARCH=x32
- CANONCOLOR=3
-+ RPMRC_GNU="${RPMRC_GNU}x32"
++ CANONCOLOR=4
++ FORCE_RPMRC_GNU="${RPMRC_GNU}x32"
+ TARGETCPU="x86_64"
;;
ia64)
PPD="${DESTDIR}/${platformdir}/${ARCH}-${OS}"
[ -d $PPD ] || mkdir -p $PPD
-@@ -202,6 +215,7 @@
+@@ -201,7 +214,8 @@
+ | sed -e "s,@RPMRC_OPTFLAGS@,$RPMRC_OPTFLAGS," \
-e "s,@RPMCANONARCH@,$CANONARCH,g" \
-e "s,@RPMCANONCOLOR@,$CANONCOLOR," \
- -e "s,@RPMRC_GNU@,$RPMRC_GNU," \
+- -e "s,@RPMRC_GNU@,$RPMRC_GNU," \
++ -e "s,@RPMRC_GNU@,${FORCE_RPMRC_GNU:-$RPMRC_GNU}," \
+ -e "s,@TARGETCPU@,$TARGETCPU," \
-e "s,@LIB@,$LIB," \
-e "s,@ARCH_INSTALL_POST@,$ARCH_INSTALL_POST," \
-e '/\${\w*:-/!s,\${,%{_,' \
+@@ -212,6 +226,8 @@
+ | ${FILTER} \
+ > ${PPD}/macros
+
++ FORCE_RPMRC_GNU=
++
+ done
+
+ # gently adjust undefined autoconf variables to rpm macros...
diff -ur rpm-4.15.1.orig/platform.in rpm-4.15.1/platform.in
--- rpm-4.15.1.orig/platform.in 2019-11-13 10:19:29.371710954 +0100
+++ rpm-4.15.1/platform.in 2019-12-29 14:47:30.886959421 +0100
return marker;
}
+--- rpm-4.15.1/fileattrs/pythondist.attr~ 2019-06-26 23:17:31.000000000 +0900
++++ rpm-4.15.1/fileattrs/pythondist.attr 2020-01-04 23:34:05.680366882 +0900
+@@ -1,3 +1,3 @@
+ %__pythondist_provides %{_rpmconfigdir}/pythondistdeps.py --provides --majorver-provides
+ %__pythondist_requires %{_rpmconfigdir}/pythondistdeps.py --requires
+-%__pythondist_path /lib(64)?/python[[:digit:]]\\.[[:digit:]]+/site-packages/[^/]+\\.(dist-info|egg-info|egg-link)$
++%__pythondist_path /lib(64|x32)?/python[[:digit:]]\\.[[:digit:]]+/site-packages/[^/]+\\.(dist-info|egg-info|egg-link)$
+--- rpm-4.16.0/fileattrs/python.attr.orig 2020-08-31 11:14:07.991087349 +0200
++++ rpm-4.16.0/fileattrs/python.attr 2020-10-03 10:47:16.560360859 +0200
+@@ -14,14 +14,15 @@
+ %__python_requires() %{lua:
+ -- Match buildroot paths of the form
+ -- /PATH/OF/BUILDROOT/usr/lib/pythonMAJOR.MINOR/ and
+- -- /PATH/OF/BUILDROOT/usr/lib64/pythonMAJOR.MINOR/
++ -- /PATH/OF/BUILDROOT/usr/lib64/pythonMAJOR.MINOR/ and
++ -- /PATH/OF/BUILDROOT/usr/libx32/pythonMAJOR.MINOR/
+ -- generating a line of the form:
+ -- python(abi) = MAJOR.MINOR
+ local path = rpm.expand('%1')
+- if path:match('/usr/lib%d*/python%d+%.%d+/.*') then
+- local requires = path:gsub('.*/usr/lib%d*/python(%d+%.%d+)/.*', 'python(abi) = %1')
++ if path:match('/usr/lib%w*/python%d+%.%d+/.*') then
++ local requires = path:gsub('.*/usr/lib%w*/python(%d+%.%d+)/.*', 'python(abi) = %1')
+ print(requires)
+ end
+ }
+
+-%__python_path ^((%{_prefix}/lib(64)?/python[[:digit:]]+\\.[[:digit:]]+/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$
++%__python_path ^((%{_prefix}/lib(64|x32)?/python[[:digit:]]+\\.[[:digit:]]+/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$