wlasnie probuje zmusic rpm by poslusznie (czyli bez wymuszenia --target)
budowal mi pakiety dla pentium3 tak jak robi to np. dla athlona.
poprawilem juz makra rpm, gcc sie przebudowalo z --target=pentium3
i pozostal tylko problem z instalacja pakietow, ktora nie przejdzie
bez --ignorearch.
czy rpm analizuje `uname -p` podczas detekcji architektury?
bo chyba nie opiera sie na `uname -m`, ktore dla athlonaxp zwraca i686.
# uname -mp
i686 Celeron_(Coppermine)
# uname -mp
i686 AMD_Athlon(tm)_XP_2400+
--
The only thing necessary for the triumph of evil
is for good men to do nothing.
- Edmund Burke
diff -uNr /usr/lib/rpm.orig/macros /usr/lib/rpm/macros
--- /usr/lib/rpm.orig/macros 2004-02-08 14:04:21.000000000 +0100
+++ /usr/lib/rpm/macros 2004-02-24 19:23:18.804869200 +0100
@@ -1116,7 +1116,7 @@
# rpm can use regular expressions against target platforms in macro
# conditionals.
#
-%ix86 i386 i486 i586 i686 athlon
+%ix86 i386 i486 i586 i686 pentium3 athlon
#------------------------------------------------------------------------
# Use in %install to generate locale specific file lists. For example,
diff -uNr /usr/lib/rpm.orig/pentium3-linux/macros /usr/lib/rpm/pentium3-linux/macros
--- /usr/lib/rpm.orig/pentium3-linux/macros 1970-01-01 01:00:00.000000000 +0100
+++ /usr/lib/rpm/pentium3-linux/macros 2004-02-24 19:20:14.437897240 +0100
@@ -0,0 +1,95 @@
+# Per-platform rpm configuration file.
+
+#==============================================================================
+# ---- per-platform macros.
+#
+%_arch i386
+%_vendor pld
+%_os linux
+%_gnu -gnu
+%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
+%optflags -O2 -march=pantium3%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_ia32: %{specflags_ia32}}%{?specflags_pentium3: %{specflags_pentium3}}}
+
+#==============================================================================
+# ---- configure macros.
+#
+%_prefix /usr
+%_exec_prefix /usr
+%_bindir /usr/bin
+%_sbindir /usr/sbin
+%_libexecdir /usr/lib
+%_datadir /usr/share
+%_sysconfdir /etc
+%_sharedstatedir /var/lib
+%_localstatedir /var
+%_lib lib
+%_libdir /usr/%{_lib}
+%_includedir /usr/include
+%_oldincludedir /usr/include
+%_infodir /usr/share/info
+%_mandir /usr/share/man
+%_initrddir %{_sysconfdir}/rc.d/init.d
+
+%_defaultdocdir %{_usr}/share/doc
+
+%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
+ && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
+ [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
+
+#---------------------------------------------------------------------
+# Multilibs
+%_multilibno 1
+%_multilibpatt (/%{_lib}|/usr/%{_lib}(|/gconv)|/usr/local/%{_lib}|/usr/X11R6/%{_lib}|/opt/%{_lib})/[^/]*\\.([oa]|la|so[0-9.]*)$
+
+#==============================================================================
+# ---- Build policy macros.
+#
+#---------------------------------------------------------------------
+# Expanded at end of %install scriptlet.
+#
+
+%__arch_install_post %{nil}
+
+%__os_install_post \
+ /usr/lib/rpm/brp-compress \
+ /usr/lib/rpm/brp-strip \
+ /usr/lib/rpm/brp-strip-static-archive \
+ /usr/lib/rpm/brp-strip-comment-note \
+%{nil}
+
+%__spec_install_post\
+ %{?__debug_package:%{__debug_install_post}}\
+ %{__arch_install_post}\
+ %{__os_install_post}\
+%{nil}
+
+# Executed at after copying %doc to DOCDIR, with $DOCDIR set
+%__compress_doc /usr/lib/rpm/compress-doc%{?_noautocompressdoc: --noautocompressdoc='%{_noautocompressdoc}'}
+
+
+
+# PLD rpm macros
+%_exec_prefix %{_prefix}
+%_bindir %{_exec_prefix}/bin
+%_sbindir %{_exec_prefix}/sbin
+%_datadir %{_prefix}/share
+%_sharedstatedir /var/lib
+%_lib lib
+%_libdir %{_exec_prefix}/%{_lib}
+%_libexecdir %{_exec_prefix}/%{_lib}
+%_includedir %{_prefix}/include
+%_oldincludedir /usr/include
+%_sysconfdir /etc
+%_localstatedir /var
+%_infodir /usr/share/info
+%_mandir %{_prefix}/share/man
+%_defaultdocdir /usr/share/doc
+
+%__os_install_post \
+%{__spec_install_post_strip}\
+%{__spec_install_post_chrpath}\
+%{__spec_install_post_compress_docs}\
+%{__spec_install_post_compress_modules}\
+%{__arch_install_post}\
+%{nil}
+
diff -uNr /usr/lib/rpm.orig/rpmrc /usr/lib/rpm/rpmrc
--- /usr/lib/rpm.orig/rpmrc 2004-02-08 14:04:21.000000000 +0100
+++ /usr/lib/rpm/rpmrc 2004-02-24 19:14:37.335144648 +0100
@@ -16,6 +16,7 @@
optflags: i486 -O2 -march=i486%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_ia32: %{specflags_ia32}}%{?specflags_i486: %{specflags_i486}}}
optflags: i586 -O2 -march=i586%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_ia32: %{specflags_ia32}}%{?specflags_i586: %{specflags_i586}}}
optflags: i686 -O2 -march=i686%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_ia32: %{specflags_ia32}}%{?specflags_i686: %{specflags_i686}}}
+optflags: pentium3 -O2 -march=pentium3%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_ia32: %{specflags_ia32}}%{?specflags_pentium3: %{specflags_pentium3}}}
optflags: athlon -O2 -march=athlon%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_ia32: %{specflags_ia32}}%{?specflags_athlon: %{specflags_athlon}}}
optflags: ia64 -O2%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_ia64: %{specflags_ia64}}}
optflags: x86_64 -O2%{!?nospecflags:%{?specflags: %{specflags}}%{?specflags_x86_64: %{specflags_x86_64}} %{?specflags_amd64: %{specflags_amd64}} }
@@ -68,6 +69,7 @@
# Canonical arch names and numbers
arch_canon: athlon: athlon 1
+arch_canon: pentium3: pentium3 1
arch_canon: i686: i686 1
arch_canon: i586: i586 1
arch_canon: i486: i486 1
@@ -218,6 +220,7 @@
arch_compat: alpha: axp noarch
arch_compat: athlon: i686
+arch_compat: pentium3: i686
arch_compat: i686: i586
arch_compat: i586: i486
arch_compat: i486: i386
__________________________________________________________
nie pytaj co inni zrobili dla pld, pomysl ile sam zrobiles