unicorn/qemu/scripts/create_config
2015-08-28 21:05:38 -07:00

116 lines
2.6 KiB
Bash
Executable file

#!/bin/sh
echo "/* Automatically generated by create_config - do not modify */"
while read line; do
case $line in
VERSION=*) # configuration
version=${line#*=}
echo "#define QEMU_VERSION \"$version\""
;;
PKGVERSION=*) # configuration
pkgversion=${line#*=}
echo "#define QEMU_PKGVERSION \"$pkgversion\""
;;
qemu_*dir=*) # qemu-specific directory configuration
name=${line%=*}
value=${line#*=}
define_name=`echo $name | LC_ALL=C tr '[a-z]' '[A-Z]'`
eval "define_value=\"$value\""
echo "#define CONFIG_$define_name \"$define_value\""
# save for the next definitions
eval "$name=\$define_value"
;;
prefix=*)
# save for the next definitions
prefix=${line#*=}
;;
IASL=*) # iasl executable
value=${line#*=}
echo "#define CONFIG_IASL $value"
;;
CONFIG_AUDIO_DRIVERS=*)
drivers=${line#*=}
echo "#define CONFIG_AUDIO_DRIVERS \\"
for drv in $drivers; do
echo " &${drv}_audio_driver,\\"
done
echo ""
;;
CONFIG_BDRV_RW_WHITELIST=*)
echo "#define CONFIG_BDRV_RW_WHITELIST\\"
for drv in ${line#*=}; do
echo " \"${drv}\",\\"
done
echo " NULL"
;;
CONFIG_BDRV_RO_WHITELIST=*)
echo "#define CONFIG_BDRV_RO_WHITELIST\\"
for drv in ${line#*=}; do
echo " \"${drv}\",\\"
done
echo " NULL"
;;
CONFIG_*=y) # configuration
name=${line%=*}
echo "#define $name 1"
;;
CONFIG_*=*) # configuration
name=${line%=*}
value=${line#*=}
echo "#define $name $value"
;;
ARCH=*) # configuration
arch=${line#*=}
arch_name=`echo $arch | LC_ALL=C tr '[a-z]' '[A-Z]'`
echo "#define HOST_$arch_name 1"
;;
HOST_USB=*)
# do nothing
;;
HOST_CC=*)
# do nothing
;;
HOST_*=y) # configuration
name=${line%=*}
echo "#define $name 1"
;;
HOST_*=*) # configuration
name=${line%=*}
value=${line#*=}
echo "#define $name $value"
;;
TARGET_BASE_ARCH=*) # configuration
target_base_arch=${line#*=}
base_arch_name=`echo $target_base_arch | LC_ALL=C tr '[a-z]' '[A-Z]'`
echo "#define TARGET_$base_arch_name 1"
;;
TARGET_XML_FILES=*)
# do nothing
;;
TARGET_ABI_DIR=*)
# do nothing
;;
TARGET_NAME=*)
target_name=${line#*=}
echo "#define TARGET_NAME \"$target_name\""
;;
TARGET_DIRS=*)
# do nothing
;;
TARGET_*=y) # configuration
name=${line%=*}
echo "#define $name 1"
;;
TARGET_*=*) # configuration
name=${line%=*}
value=${line#*=}
echo "#define $name $value"
;;
DSOSUF=*)
echo "#define HOST_DSOSUF \"${line#*=}\""
;;
esac
done # read