/usr/share/ioquake3/q3arch is in ioquake3-server 1.36+u20140116+gdde36d9-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 | #!/bin/sh
# Usage: q3arch arch|platform|compat_arch BUILD|HOST
#
# Output an architecture or platform name that Quake 3 could use for the
# build or host CPU architecture or operating system.
set -e
case $1 in
arch|compat_arch)
# In the upstream Makefile the architecture is given by uname -m, with the
# following substitutions:
#
# i.86 -> x86 (used to be i386)
# powerpc -> ppc
# powerpc64 -> ppc64
# axp -> alpha on Linux and FreeBSD (used to be axp)
#
# However, for most architectures the build system doesn't actually care,
# it's just "some other architecture", so we can get away with using the
# GNU CPU as-is. i386, ppc and x86_64 are the unusual ones.
#
# On the other hand, in q_platform.h it all becomes rather more
# significant: the engine expects to see one of:
#
# x86, x86_64, AXP (Windows)
# x86, x86_64, ppc64, ppc, s390, s390x, ia64, alpha, sparc, arm, cris,
# hppa, mips, sh (Linux, kFreeBSD)
# some subset of the Linux set (Mac OS, *BSD, SunOS, Irix)
DEB_X_GNU_CPU=`dpkg-architecture -qDEB_$2_GNU_CPU`
COMPAT_Q3ARCH=
case ${DEB_X_GNU_CPU} in
i?86)
Q3ARCH=x86
COMPAT_Q3ARCH=i386
;;
alpha)
Q3ARCH=alpha
COMPAT_Q3ARCH=axp
;;
powerpc)
Q3ARCH=ppc
;;
powerpc64)
Q3ARCH=ppc64
;;
mipsel)
Q3ARCH=mips
;;
x86_64|s390|s390x|ia64|sparc|hppa|mips|arm)
Q3ARCH=${DEB_X_GNU_CPU}
;;
sh4)
Q3ARCH=sh
;;
*)
echo "CPU ${DEB_X_GNU_CPU} not supported by Quake 3, might not work" >&2
Q3ARCH=${DEB_X_GNU_CPU}
;;
esac
case $1 in
(arch)
echo "DEB_$2_GNU_CPU = ${DEB_X_GNU_CPU}, using Q3 architecture ${Q3ARCH}">&2
echo ${Q3ARCH}
;;
(compat_arch)
if test -n "${COMPAT_ARCH}"; then
echo "DEB_$2_GNU_CPU = ${DEB_X_GNU_CPU}, older ioquake3 would use ${COMPAT_ARCH}">&2
echo ${COMPAT_ARCH}
fi
;;
esac
;;
platform)
# In the upstream Makefile the platform is given by uname, with the
# following substitutions:
#
# anything after _ removed
# folded to lower case
# / -> _
#
# This would result in Debian builds being done for linux, gnu_kfreebsd and
# gnu.
#
# However, for most platform names the build system doesn't actually care,
# it's just "some other platform", so we can get away with using the
# GNU system as-is.
#
# (For instance, on Debian kFreeBSD buildd, uname says GNU/kFreeBSD whereas
# the GNU CPU type is kfreebsd-gnu, but that's not important because the
# Makefile doesn't actually do anything different.)
DEB_X_GNU_SYSTEM=`dpkg-architecture -qDEB_$2_GNU_SYSTEM`
case ${DEB_X_GNU_SYSTEM} in
linux-gnu*)
# including, but not limited to:
# arm-linux-gnueabi (Debian armel: ARM EABI, LE)
# arm-linux-gnueabihf (Debian armhf: ARM EABI, LE, hardfloat)
# powerpc-linux-gnuspe (Debian powerpcspe: Signal Processing Extension)
Q3OS=linux
;;
*)
Q3OS=${DEB_X_GNU_SYSTEM}
;;
esac
echo "DEB_$2_GNU_SYSTEM = ${DEB_X_GNU_SYSTEM}, using Q3 platform ${Q3OS}">&2
echo ${Q3OS}
;;
*)
echo "Usage: sh q3arch.sh arch|compat_arch|platform BUILD|HOST" >&2
exit 1
;;
esac
# Copyright 2009-2013 Simon McVittie <smcv@debian.org>
# Copying and distribution of this file, with or without modification, are
# permitted in any medium without royalty provided this notice is preserved.
# This file is offered as-is, without any warranty.
|