summaryrefslogtreecommitdiffstats
path: root/data
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 18:35:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 18:35:28 +0000
commitea314d2f45c40a006c0104157013ab4b857f665f (patch)
tree3ef2971cb3675c318b8d9effd987854ad3f6d3e8 /data
parentInitial commit. (diff)
downloaddpkg-ea314d2f45c40a006c0104157013ab4b857f665f.tar.xz
dpkg-ea314d2f45c40a006c0104157013ab4b857f665f.zip
Adding upstream version 1.22.4.upstream/1.22.4
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'data')
-rw-r--r--data/abitable13
-rw-r--r--data/cputable54
-rw-r--r--data/no-pie-compile.specs2
-rw-r--r--data/no-pie-link.specs2
-rw-r--r--data/ostable41
-rw-r--r--data/pie-compile.specs2
-rw-r--r--data/pie-link.specs2
-rw-r--r--data/tupletable69
8 files changed, 185 insertions, 0 deletions
diff --git a/data/abitable b/data/abitable
new file mode 100644
index 0000000..18fa367
--- /dev/null
+++ b/data/abitable
@@ -0,0 +1,13 @@
+# Version=2.0
+#
+# This file contains the table of arch ABI attribute overrides.
+#
+# If the ABI is not present here then the attribute information for a
+# Debian arch tuple matches the one on the cputable.
+#
+# - Column 1 is the Debian name for the ABI.
+# - Column 2 is the size (in bits) of the ABI pointers.
+#
+# <Debian name> <Bits>
+abin32 32
+x32 32
diff --git a/data/cputable b/data/cputable
new file mode 100644
index 0000000..575c008
--- /dev/null
+++ b/data/cputable
@@ -0,0 +1,54 @@
+# Version=1.0
+#
+# This file contains the table of known CPU names.
+#
+# Architecture names are formed as a combination of the system name
+# (from ostable) and CPU name (from this table) after mapping from
+# the Debian arch tuple (from tupletable).
+#
+# - Column 1 is the Debian name for the CPU, used to form the cpu part in
+# the Debian arch tuple.
+# - Column 2 is the GNU name for the CPU, used to output build, host and
+# target variables in ‘dpkg-architecture’.
+# - Column 3 is an extended regular expression used to fully match against
+# the CPU part of the output of the GNU config.guess script. The order of
+# this column is important when using wildcards as it is used in a first
+# match basis.
+# - Column 4 is the size (in bits) of pointers.
+# - Column 5 is the endianness (byte ordering in numbers).
+#
+# <Debian name> <GNU name> <config.guess regex> <Bits> <Endianness>
+alpha alpha alpha.* 64 little
+amd64 x86_64 (amd64|x86_64) 64 little
+arc arc arc 32 little
+armeb armeb arm.*b 32 big
+arm arm arm.* 32 little
+arm64 aarch64 aarch64 64 little
+hppa hppa hppa.* 32 big
+loong64 loongarch64 loongarch64 64 little
+i386 i686 (i[34567]86|pentium) 32 little
+ia64 ia64 ia64 64 little
+m68k m68k m68k 32 big
+mips mips mips(eb)? 32 big
+mipsel mipsel mipsel 32 little
+mipsr6 mipsisa32r6 mipsisa32r6 32 big
+mipsr6el mipsisa32r6el mipsisa32r6el 32 little
+mips64 mips64 mips64 64 big
+mips64el mips64el mips64el 64 little
+mips64r6 mipsisa64r6 mipsisa64r6 64 big
+mips64r6el mipsisa64r6el mipsisa64r6el 64 little
+nios2 nios2 nios2 32 little
+or1k or1k or1k 32 big
+powerpc powerpc (powerpc|ppc) 32 big
+powerpcel powerpcle powerpcle 32 little
+ppc64 powerpc64 (powerpc|ppc)64 64 big
+ppc64el powerpc64le powerpc64le 64 little
+riscv64 riscv64 riscv64 64 little
+s390 s390 s390 32 big
+s390x s390x s390x 64 big
+sh3 sh3 sh3 32 little
+sh3eb sh3eb sh3eb 32 big
+sh4 sh4 sh4 32 little
+sh4eb sh4eb sh4eb 32 big
+sparc sparc sparc 32 big
+sparc64 sparc64 sparc64 64 big
diff --git a/data/no-pie-compile.specs b/data/no-pie-compile.specs
new file mode 100644
index 0000000..2277b97
--- /dev/null
+++ b/data/no-pie-compile.specs
@@ -0,0 +1,2 @@
+*self_spec:
++ %{!r:%{!fpie:%{!fPIE:%{!fpic:%{!fPIC:%{!fno-pic:-fno-PIE}}}}}}
diff --git a/data/no-pie-link.specs b/data/no-pie-link.specs
new file mode 100644
index 0000000..54db649
--- /dev/null
+++ b/data/no-pie-link.specs
@@ -0,0 +1,2 @@
+*self_spec:
++ %{!shared:%{!r:%{!fPIE:%{!pie:-fno-PIE -no-pie}}}}
diff --git a/data/ostable b/data/ostable
new file mode 100644
index 0000000..64f4244
--- /dev/null
+++ b/data/ostable
@@ -0,0 +1,41 @@
+# Version=2.0
+#
+# This file contains the table of known operating system names.
+#
+# Architecture names are formed as a combination of the system name
+# (from this table) and CPU name (from cputable) after mapping from
+# the Debian arch tuple (from tupletable).
+#
+# - Column 1 is the Debian name for the system, used to form the system part
+# in the Debian arch tuple.
+# - Column 2 is the GNU name for the system, used to output build, host and
+# target variables in ‘dpkg-architecture’.
+# - Column 3 is an extended regular expression used to fully match against
+# the system part of the output of the GNU config.guess script. The order
+# of this column is important when using wildcards as it is used in a first
+# match basis.
+#
+# <Debian name> <GNU name> <config.guess regex>
+eabi-uclibc-linux linux-uclibceabi linux[^-]*-uclibceabi
+base-uclibc-linux linux-uclibc linux[^-]*-uclibc
+eabihf-musl-linux linux-musleabihf linux[^-]*-musleabihf
+base-musl-linux linux-musl linux[^-]*-musl
+eabihf-gnu-linux linux-gnueabihf linux[^-]*-gnueabihf
+eabi-gnu-linux linux-gnueabi linux[^-]*-gnueabi
+abin32-gnu-linux linux-gnuabin32 linux[^-]*-gnuabin32
+abi64-gnu-linux linux-gnuabi64 linux[^-]*-gnuabi64
+spe-gnu-linux linux-gnuspe linux[^-]*-gnuspe
+x32-gnu-linux linux-gnux32 linux[^-]*-gnux32
+base-gnu-linux linux-gnu linux[^-]*(-gnu.*)?
+eabihf-gnu-kfreebsd kfreebsd-gnueabihf kfreebsd[^-]*-gnueabihf
+base-gnu-kfreebsd kfreebsd-gnu kfreebsd[^-]*(-gnu.*)?
+base-gnu-kopensolaris kopensolaris-gnu kopensolaris[^-]*(-gnu.*)?
+base-gnu-hurd gnu gnu[^-]*
+base-bsd-darwin darwin darwin[^-]*
+base-bsd-dragonflybsd dragonflybsd dragonfly[^-]*
+base-bsd-freebsd freebsd freebsd[^-]*
+base-bsd-netbsd netbsd netbsd[^-]*
+base-bsd-openbsd openbsd openbsd[^-]*
+base-sysv-aix aix aix[^-]*
+base-sysv-solaris solaris solaris[^-]*
+base-tos-mint mint mint[^-]*
diff --git a/data/pie-compile.specs b/data/pie-compile.specs
new file mode 100644
index 0000000..74d8215
--- /dev/null
+++ b/data/pie-compile.specs
@@ -0,0 +1,2 @@
+*self_spec:
++ %{!r:%{!fpie:%{!fPIE:%{!fpic:%{!fPIC:%{!fno-pic:%{!fno-PIE:%{!no-pie:-fPIE}}}}}}}}
diff --git a/data/pie-link.specs b/data/pie-link.specs
new file mode 100644
index 0000000..94c122f
--- /dev/null
+++ b/data/pie-link.specs
@@ -0,0 +1,2 @@
+*self_spec:
++ %{!static:%{!shared:%{!r:%{!fno-PIE:%{!no-pie:-fPIE -pie}}}}}
diff --git a/data/tupletable b/data/tupletable
new file mode 100644
index 0000000..ae9f2dd
--- /dev/null
+++ b/data/tupletable
@@ -0,0 +1,69 @@
+# Version=1.0
+#
+# Bidirectional mapping between a Debian arch tuple and a Debian arch name.
+#
+# Debian arch tuple names are formed as a combination of the Debian system
+# name (from the ostable) and the Debian CPU name (from the cputable) after
+# applying the variable substitutions.
+#
+# Debian arch names are the result of historical naming conventions in Debian,
+# where the predominant system architectures have many of their parts in
+# implicit form, by only exposing the CPU with the ABI bolted on, where less
+# common architectures have their OS part spelled out, and where even less
+# common ones, have their libc spelled out. This table maps between the ideal
+# architecture tuple, with the current messy reality.
+#
+# - Column 1 is the Debian arch tuple name, as the normalized form of the
+# architecture names, used as the internal representation.
+# - Column 2 is the Debian arch name, as the abbreviated form of the
+# architecture names, used as the public interface.
+#
+# Supported variables: <cpu>
+#
+# <Debian arch tuple> <Debian arch name>
+eabi-uclibc-linux-arm uclibc-linux-armel
+base-uclibc-linux-<cpu> uclibc-linux-<cpu>
+eabihf-musl-linux-arm musl-linux-armhf
+base-musl-linux-<cpu> musl-linux-<cpu>
+eabihf-gnu-linux-arm armhf
+eabi-gnu-linux-arm armel
+abin32-gnu-linux-mips64r6el mipsn32r6el
+abin32-gnu-linux-mips64r6 mipsn32r6
+abin32-gnu-linux-mips64el mipsn32el
+abin32-gnu-linux-mips64 mipsn32
+abi64-gnu-linux-mips64r6el mips64r6el
+abi64-gnu-linux-mips64r6 mips64r6
+abi64-gnu-linux-mips64el mips64el
+abi64-gnu-linux-mips64 mips64
+spe-gnu-linux-powerpc powerpcspe
+x32-gnu-linux-amd64 x32
+base-gnu-linux-<cpu> <cpu>
+base-gnu-kfreebsd-amd64 kfreebsd-amd64
+base-gnu-kfreebsd-i386 kfreebsd-i386
+base-gnu-kopensolaris-amd64 kopensolaris-amd64
+base-gnu-kopensolaris-i386 kopensolaris-i386
+base-gnu-hurd-amd64 hurd-amd64
+base-gnu-hurd-i386 hurd-i386
+base-bsd-dragonflybsd-amd64 dragonflybsd-amd64
+base-bsd-freebsd-amd64 freebsd-amd64
+base-bsd-freebsd-arm freebsd-arm
+base-bsd-freebsd-arm64 freebsd-arm64
+base-bsd-freebsd-i386 freebsd-i386
+base-bsd-freebsd-powerpc freebsd-powerpc
+base-bsd-freebsd-ppc64 freebsd-ppc64
+base-bsd-freebsd-riscv freebsd-riscv
+base-bsd-openbsd-<cpu> openbsd-<cpu>
+base-bsd-netbsd-<cpu> netbsd-<cpu>
+base-bsd-darwin-amd64 darwin-amd64
+base-bsd-darwin-arm darwin-arm
+base-bsd-darwin-arm64 darwin-arm64
+base-bsd-darwin-i386 darwin-i386
+base-bsd-darwin-powerpc darwin-powerpc
+base-bsd-darwin-ppc64 darwin-ppc64
+base-sysv-aix-powerpc aix-powerpc
+base-sysv-aix-ppc64 aix-ppc64
+base-sysv-solaris-amd64 solaris-amd64
+base-sysv-solaris-i386 solaris-i386
+base-sysv-solaris-sparc solaris-sparc
+base-sysv-solaris-sparc64 solaris-sparc64
+base-tos-mint-m68k mint-m68k