create_config 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. #!/bin/sh
  2. echo "/* Automatically generated by create_config - do not modify */"
  3. while read line; do
  4. case $line in
  5. VERSION=*) # configuration
  6. version=${line#*=}
  7. echo "#define QEMU_VERSION \"$version\""
  8. ;;
  9. PKGVERSION=*) # configuration
  10. pkgversion=${line#*=}
  11. echo "#define QEMU_PKGVERSION \"$pkgversion\""
  12. ;;
  13. prefix=* | [a-z]*dir=*) # directory configuration
  14. name=${line%=*}
  15. value=${line#*=}
  16. define_name=`echo $name | tr '[:lower:]' '[:upper:]'`
  17. eval "define_value=\"$value\""
  18. echo "#define CONFIG_QEMU_$define_name \"$define_value\""
  19. # save for the next definitions
  20. eval "$name=\$define_value"
  21. ;;
  22. CONFIG_AUDIO_DRIVERS=*)
  23. drivers=${line#*=}
  24. echo "#define CONFIG_AUDIO_DRIVERS \\"
  25. for drv in $drivers; do
  26. echo " &${drv}_audio_driver,\\"
  27. done
  28. echo ""
  29. ;;
  30. CONFIG_BDRV_WHITELIST=*)
  31. echo "#define CONFIG_BDRV_WHITELIST \\"
  32. for drv in ${line#*=}; do
  33. echo " \"${drv}\",\\"
  34. done
  35. echo " NULL"
  36. ;;
  37. CONFIG_*=y) # configuration
  38. name=${line%=*}
  39. echo "#define $name 1"
  40. ;;
  41. CONFIG_*=*) # configuration
  42. name=${line%=*}
  43. value=${line#*=}
  44. echo "#define $name $value"
  45. ;;
  46. ARCH=*) # configuration
  47. arch=${line#*=}
  48. arch_name=`echo $arch | tr '[:lower:]' '[:upper:]'`
  49. echo "#define HOST_$arch_name 1"
  50. ;;
  51. HOST_USB=*)
  52. # do nothing
  53. ;;
  54. HOST_CC=*)
  55. # do nothing
  56. ;;
  57. HOST_*=y) # configuration
  58. name=${line%=*}
  59. echo "#define $name 1"
  60. ;;
  61. HOST_*=*) # configuration
  62. name=${line%=*}
  63. value=${line#*=}
  64. echo "#define $name $value"
  65. ;;
  66. TARGET_ARCH=*) # configuration
  67. target_arch=${line#*=}
  68. echo "#define TARGET_ARCH \"$target_arch\""
  69. ;;
  70. TARGET_BASE_ARCH=*) # configuration
  71. target_base_arch=${line#*=}
  72. if [ "$target_base_arch" != "$target_arch" ]; then
  73. base_arch_name=`echo $target_base_arch | tr '[:lower:]' '[:upper:]'`
  74. echo "#define TARGET_$base_arch_name 1"
  75. fi
  76. ;;
  77. TARGET_XML_FILES=*)
  78. # do nothing
  79. ;;
  80. TARGET_ABI_DIR=*)
  81. # do nothing
  82. ;;
  83. TARGET_ARCH2=*)
  84. # do nothing
  85. ;;
  86. TARGET_DIRS=*)
  87. # do nothing
  88. ;;
  89. TARGET_*=y) # configuration
  90. name=${line%=*}
  91. echo "#define $name 1"
  92. ;;
  93. TARGET_*=*) # configuration
  94. name=${line%=*}
  95. value=${line#*=}
  96. echo "#define $name $value"
  97. ;;
  98. esac
  99. done # read