crown-editor.lua 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. --
  2. -- Copyright (c) 2012-2025 Daniele Bartolini et al.
  3. -- SPDX-License-Identifier: MIT
  4. --
  5. project "crown-editor"
  6. kind "WindowedApp"
  7. language "Vala"
  8. configuration { "debug" }
  9. defines {
  10. "CROWN_DEBUG",
  11. }
  12. configuration { "linux" }
  13. defines {
  14. "CROWN_PLATFORM_LINUX"
  15. }
  16. configuration { "windows" }
  17. defines {
  18. "CROWN_PLATFORM_WINDOWS"
  19. }
  20. local CROWN_BUILD_DIR = (CROWN_DIR .. "build/")
  21. configuration { "linux-*" }
  22. targetdir (CROWN_BUILD_DIR .. "linux64" .. "/bin")
  23. objdir (CROWN_BUILD_DIR .. "linux64" .. "/obj")
  24. buildoptions_vala { "--pkg posix" }
  25. configuration { "mingw*" }
  26. targetdir (CROWN_BUILD_DIR .. "mingw64" .. "/bin")
  27. objdir (CROWN_BUILD_DIR .. "mingw64" .. "/obj")
  28. configuration {}
  29. removelinkoptions {
  30. "-static"
  31. }
  32. removelinks {
  33. "dl"
  34. }
  35. links {
  36. "gdk-3.0",
  37. "gee-0.8",
  38. "gio-2.0",
  39. "glib-2.0",
  40. "gtk+-3.0",
  41. }
  42. buildoptions {
  43. "-Wno-deprecated-declarations",
  44. "-Wno-incompatible-pointer-types",
  45. "-Wno-discarded-qualifiers",
  46. "-Wno-sign-compare",
  47. "-Wno-unused-function",
  48. "-Wno-unused-label",
  49. "-Wno-unused-variable",
  50. "-Wno-unused-parameter",
  51. "-Wno-unused-but-set-variable",
  52. "-Wno-cast-function-type",
  53. "-Wno-missing-field-initializers",
  54. "-Wno-incompatible-pointer-types",
  55. "-Wno-unused-value",
  56. "-D VALA_STRICT_C",
  57. }
  58. linkoptions {
  59. "-lm",
  60. "-lfreetype",
  61. }
  62. buildoptions_vala {
  63. "--target-glib=2.64.6",
  64. "--pkg tinyexpr",
  65. "--pkg md5",
  66. "--pkg ufbx",
  67. }
  68. vapidirs {
  69. CROWN_DIR .. "tools/vapi"
  70. }
  71. buildoptions {
  72. "-I" .. CROWN_DIR .. "3rdparty/tinyexpr",
  73. "-I" .. CROWN_DIR .. "3rdparty/md5",
  74. "-I" .. CROWN_DIR .. "3rdparty/ufbx",
  75. "-I" .. CROWN_DIR .. "3rdparty/stb",
  76. }
  77. files {
  78. CROWN_DIR .. "tools/**.vala",
  79. CROWN_DIR .. "tools/**.c",
  80. CROWN_DIR .. "tools/level_editor/resources/resources.gresource.xml",
  81. CROWN_DIR .. "3rdparty/tinyexpr/tinyexpr.c",
  82. CROWN_DIR .. "3rdparty/md5/md5.c",
  83. CROWN_DIR .. "3rdparty/ufbx/ufbx.c",
  84. }
  85. strip()
  86. configuration {}