This file is indexed.

/usr/lib/mpich/bin/tarch is in mpich-bin 1.2.7-10ubuntu1.

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
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
#! /bin/sh
# set -x
#
if [ "$1" = "-echo" ] ; then 
    set -x
    shift
fi
#  Returns the arch of the machine. This file is from MPICH.
#
# First, try some special cases:
if [ -d "/dev/elan" ] ; then
  FARCH="meiko"
elif [ -f /usr/bin/uxpm ] && /usr/bin/uxpm ; then
  FARCH="UXPM"
elif [ -f /usr/bin/uxpv ] && /usr/bin/uxpv ; then
  FARCH="uxpv"
fi
if [ -n "$FARCH" ] ; then
    echo $FARCH
    exit 0
fi
#
# Try to find uname
for dir in /bin /usr/bin /usr/local/bin ; do
    if [ -x $dir/uname ] ; then
	UNAME="$dir/uname"
        break
    fi
done
#
# Get uname -s, uname -m, and arch values
#
if [ -n "$UNAME" ] ; then
    ARCHLIST="`uname -s`"
    ARCHLIST="$ARCHLIST `uname -m`"
fi
#
# Get ARCH variable name
if [ -n "$ARCH" ] ; then
    ARCHLIST="$ARCHLIST $ARCH"
fi
#
# Get arch command
if [ -x /bin/arch ] ; then
    ARCHLIST="$ARCHLIST `/bin/arch`"
elif [ -x /usr/local/bin/arch ] ; then
    ARCHLIST="$ARCHLIST `/usr/local/bin/arch`"
fi
#
# GARCH is a guess if we don't find something better
GARCH=
# Now, weed through all of these values until we find something useful.
for LARCH in $ARCHLIST ; do
   # Remove blanks
   LARCH=`echo $LARCH | sed 's/ //g'`
   # Get the first 4 characters (you'd be surprised)
   #   LARCH4=`expr "$LARCH" : "\(....\)"`
   #   LARCH6=`expr "$LARCH" : "\(......\)"`
   case $LARCH in
        SUPER-UX) FARCH=SX4; break ;;
	AIX|RIOS) FARCH=rs6000; break ;;
	HP-UX) 
 	if [ -a /dev/kmem ] ; then
 	    FARCH=hpux ;
 	else
 	    FARCH=sppux ;
 	fi
        break ;;

	IRIX64|IRIX) FARCH=$LARCH ; break ;;
 
        Linux|GNU)  
	    # Pick between i86, alpha, and PowerPC LINUX
            LINUXARCH=`$UNAME -m`
	    case $LINUXARCH in 
		*alpha*)
		FARCH=LINUX_ALPHA ; break ;;
		*Power*|*power*)
		FARCH=LINUX_PPC ; break ;;
		*86*)
		FARCH=LINUX ; break ;;
		*)
		# Hope for the best
		FARCH=LINUX ; break ;;
	    esac
            break ;;
	i586|i486|i686|i86pc)
	    GARCH=$LARCH 
	    if [ -n "$UNAME" ] ; then
  	        SysName=`$UNAME -s`
  	        if [ "$SysName" = "SunOS" ] ; then
	            FARCH="solaris86"
                else
		    # Try to get a short name (eliminate any numbers)
		    # (include the hyphen for any subsequent tests.
		    ShortSysName=`expr "$SysName" : "\([A-Za-z_-]*\)"`
		    if [ "$ShortSysName" = "CYGWIN_NT" -o \
			 "$ShortSysName" = "CYGWIN_NT-" ] ; then
			FARCH="CYGWIN_NT"
		    fi
		fi
	    fi
	;;
	sun4*|SunOS)
	Version=`$UNAME -r`
        # In "improving" SunOS, the useful feature of "substr" was withdrawn 
        # from expr.  Can't let the users have life too easy, can we?  This 
        # means that we can't just use 
        #   set MajorVersion = `expr substr $Version 1 1`
        # because it won't work on Solaris systems.  The following should work
        # on both:
        MajorVersion=`expr "$Version" : "\(.\)"`
        if [ "$MajorVersion" -ge 5 ] ; then
	    # Check for solaris86
            if [ -n "$UNAME" ] ; then
                hardware=`$UNAME -i`
		case $hardware in
		*86*) FARCH="solaris86" ;;
		*)    FARCH="solaris"   ;;
                esac
            else
                FARCH=solaris
            fi
	else
	    FARCH=sun4
	fi
	break ;;
	hp9000*|hp7000*)
 	if [ -a /dev/kmem ] ; then
 	    FARCH=hpux ;
 	else
 	    FARCH=sppux ;
 	fi
 	break ;;
	mips|dec-5000)   FARCH=dec5000 ; break ;;
        IP12|iris-4d)    GARCH=IRIX ;;
        cray|CRAY*)      GARCH=CRAY ;;
        next)            FARCH=NeXT ; break ;;	
	KSR1|KSR2)       FARCH=ksr ; break ;;	
        FreeBSD)         FARCH=freebsd ; break ;;
        GNU/kFreeBSD)         FARCH=freebsd ; break ;;
	NetBSD)          FARCH=netbsd ; break ;;
	i386)            GARCH=ipsc2 ;;
	ULTRIX|RISC)     GARCH=dec5000 ;;
	OSF*)            
	    # Guess that this is a Compaq Alpha running some version of
            # Tru64; 
            machtype=`uname -m`
	    if [ "$machtype" = "alpha" ] ; then
                GARCH=ALPHA
            fi
        break;;
	Darwin|Macintosh) 
	    # We must distinquish the processor architecture
            FARCH=freebsd_ppc ; break ;;
   esac
   LLARCH=$LARCH
done
if [ -z "$FARCH" ] ; then
    FARCH=$GARCH
    if [ -z "$FARCH" ] ; then
	FARCH=$LLARCH
    fi
    if [ -z "$FARCH" ] ; then
	FARCH=unknown
    fi
fi
echo $FARCH
exit 0