build/msys-perl-wrapper
author Ted Mielczarek <ted.mielczarek@gmail.com>
Tue, 29 Sep 2009 08:31:50 -0400
changeset 33292 5642cd4a7e88fdc016fcd95248cc6109b60be1f8
parent 32951 1c4751f81b1d5665ece3d21c5862b16973897ae4
child 94857 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
bug 518641 - fix the "unify" script to properly handle Java .class files. r=bsmedberg Java .class files and Mach-O fat binaries use the same 4-byte magic number at the start of the file. 'unify' uses the magic number to detect Mach-O binaries, so it chokes on Java .class files. This change makes us use the same heuristic as file(1), which is to check the second 4 bytes in the file. Java class files put a version number there, and Mach-O fat binaries put the number of contained architectures there. Conveniently, Mach defines only 18 architectures, and Java's lowest shipping version number is 43, so there's no overlap in valid values.

#!/bin/sh

args=""

for i in "${@}"
do
    case "$i" in
    -I?:/*)
        i="$(echo "${i}" | sed -e 's|^-I\(.\):/|-I/\1/|')"
	;;
    esac

    args="${args} '${i}'"
done

eval "exec perl $args"