summaryrefslogtreecommitdiffstats
path: root/compat32-tools/gccwrapper
blob: 96b6c37feac7763b60ec62ba77f5bfce781d994d (plain)
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
#!/bin/bash
# $Id$
# Copyright (C) 2007  Frederick Emmott <mail@fredemmott.co.uk>
# Copyright 2009  Eric Hameleers, Eindhoven, NL
# Based on the file with the same name which is part of
# the Slamd64 Linux project (www.slamd64.com)

# Distributed under the GNU General Public License, version 2, as
# published by the Free Software Foundation.

# Find the stub gcc's directory:
STUBPATH=$(cd $(dirname $0); pwd)

# Now find the "real" gcc
REALCC=$(PATH="$(echo $PATH | sed "s#\(.*\):\?$STUBPATH/\?:\?#\1#")" which $(basename $0))

# Filter out -m64 from $@ (this is sometimes added even though we specify -m32)
declare -a Arguments
for i; do
  case "$i" in 
    -m64)
      ;;
    *)
      Arguments[${#Arguments[@]}]="$i"
      ;;
  esac
done

# Compiling a 32bit program requires we call gcc with -m32
$REALCC -m32 "${Arguments[@]}"

# Exit with $REALCC's exit code
exit $?