genie.lua 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. --
  2. -- Copyright 2010-2015 Branimir Karadzic. All rights reserved.
  3. -- License: http://www.opensource.org/licenses/BSD-2-Clause
  4. --
  5. solution "bx"
  6. configurations {
  7. "Debug",
  8. "Release",
  9. }
  10. platforms {
  11. "x32",
  12. "x64",
  13. "Native", -- for targets where bitness is not specified
  14. }
  15. language "C++"
  16. BX_DIR = path.getabsolute("..")
  17. local BX_BUILD_DIR = path.join(BX_DIR, ".build")
  18. local BX_THIRD_PARTY_DIR = path.join(BX_DIR, "3rdparty")
  19. defines {
  20. "BX_CONFIG_ENABLE_MSVC_LEVEL4_WARNINGS=1"
  21. }
  22. dofile "toolchain.lua"
  23. toolchain(BX_BUILD_DIR, BX_THIRD_PARTY_DIR)
  24. function copyLib()
  25. end
  26. dofile "bx.lua"
  27. dofile "unittest++.lua"
  28. dofile "bin2c.lua"
  29. project "bx.test"
  30. uuid "8a653da8-23d6-11e3-acb4-887628d43830"
  31. kind "ConsoleApp"
  32. debugdir (path.join(BX_DIR, "tests"))
  33. removeflags {
  34. "NoExceptions",
  35. }
  36. includedirs {
  37. path.join(BX_DIR, "include"),
  38. path.join(BX_THIRD_PARTY_DIR, "UnitTest++/src"),
  39. }
  40. links {
  41. "UnitTest++",
  42. }
  43. files {
  44. path.join(BX_DIR, "tests/**.cpp"),
  45. path.join(BX_DIR, "tests/**.H"),
  46. }
  47. configuration { "vs*" }
  48. configuration { "android*" }
  49. kind "ConsoleApp"
  50. targetextension ".so"
  51. linkoptions {
  52. "-shared",
  53. }
  54. configuration { "nacl or nacl-arm" }
  55. kind "ConsoleApp"
  56. targetextension ".nexe"
  57. links {
  58. "ppapi",
  59. "pthread",
  60. }
  61. configuration { "pnacl" }
  62. kind "ConsoleApp"
  63. targetextension ".pexe"
  64. links {
  65. "ppapi",
  66. "pthread",
  67. }
  68. configuration { "linux-*" }
  69. links {
  70. "pthread",
  71. }
  72. configuration { "osx" }
  73. links {
  74. "Cocoa.framework",
  75. }
  76. configuration {}
  77. strip()