#!/bin/bash

# This sets environment variables used by scripts/make.sh

# People run ./configure out of habit, so do "defconfig" for them.

if [ "$(basename "$0")" == configure ]
then
  echo "Assuming you want 'make defconfig', but you should probably check the README."
  make defconfig
  exit $?
fi

# A synonym.
[ -z "$CROSS_COMPILE" ] && CROSS_COMPILE="$CROSS"

# CFLAGS and OPTIMIZE are different so you can add extra CFLAGS without
# disabling default optimizations
[ -z "$CFLAGS" ] && CFLAGS="-Wall -Wundef -Wno-char-subscripts -Werror=implicit-function-declaration"
# Required for our expected ABI. we're 8-bit clean thus "char" must be unsigned.
CFLAGS="$CFLAGS -funsigned-char"
[ -z "$OPTIMIZE" ] && OPTIMIZE="-Os -ffunction-sections -fdata-sections -fno-asynchronous-unwind-tables -fno-strict-aliasing"

# We accept LDFLAGS, but by default don't have anything in it
[ -z "$LDOPTIMIZE" ] && LDOPTIMIZE="-Wl,--gc-sections"

# The makefile provides defaults for these, so this only gets used if
# you call scripts/make.sh and friends directly.

[ -z "$CC" ] && CC=cc

# If HOSTCC needs CFLAGS or LDFLAGS, just add them to the variable
# ala HOSTCC="blah-cc --static"
[ -z "$HOSTCC" ] && HOSTCC=cc
