#!/bin/sh
#
# $Id: native-elf-format 3293 2016-01-07 19:26:27Z emaste $
#
# Find the native ELF format for a host platform by compiling a
# test object and examining the resulting object.
#
# This script is used if there is no easy way to determine this
# information statically at compile time.

program=`basename $0`
tmp_c=`mktemp -u nefXXXXXX`.c
tmp_o=`echo ${tmp_c} | sed -e 's/.c$/.o/'`

trap "rm -f ${tmp_c} ${tmp_o}"	0 1 2 3 15

touch ${tmp_c}

echo "/* Generated by ${program} on `date` */"

cc -c ${tmp_c} -o ${tmp_o}
LC_ALL=C readelf -h ${tmp_o} | awk '
$1 ~ "Class:" {
        sub("ELF","",$2); elfclass = $2;
    }
$1 ~ "Data:"  {
        if (match($0, "little")) {
            elfdata = "LSB";
 	} else {
            elfdata = "MSB";
	}
    }
$1 ~ "Machine:" {
        if (match($0, "Intel.*386")) {
            elfarch = "EM_386";
        } else if (match($0, "MIPS")) {
            elfarch = "EM_MIPS";
        } else if (match($0, ".*[xX]86-64")) {
            elfarch = "EM_X86_64";
        } else if (match($0, "RISC-V")) {
            elfarch = "EM_RISCV";
        } else if (match($0, "AArch64")) {
            elfarch = "EM_AARCH64";
        } else if (match($0, "ARM")) {
            elfarch = "EM_ARM";
        } else {
            elfarch = "unknown";
        }
    }
END {
    printf("#define	ELFTC_CLASS	ELFCLASS%s\n", elfclass);
    printf("#define	ELFTC_ARCH	%s\n", elfarch);
    printf("#define	ELFTC_BYTEORDER	ELFDATA2%s\n", elfdata);
}'

