project.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. let project = new Project("amake");
  2. {
  3. // alang
  4. project.add_define("NO_GC");
  5. project.add_define("NO_IRON_API");
  6. project.add_define("NO_IRON_START");
  7. project.add_tsfiles("./"); // alang.ts
  8. project.add_include_dir("./"); // iron.h
  9. project.add_cfiles("build/iron.c");
  10. project.add_include_dir("../../sources");
  11. project.add_cfiles("../../sources/iron_string.c");
  12. project.add_cfiles("../../sources/iron_array.c");
  13. project.add_cfiles("../../sources/iron_map.c");
  14. project.add_cfiles("../../sources/iron_armpack.c");
  15. project.add_cfiles("../../sources/iron_json.c");
  16. project.add_cfiles("../../sources/iron_gc.c");
  17. }
  18. project.add_include_dir("../../sources/libs");
  19. project.add_cfiles("../../sources/libs/quickjs-amalgam.c");
  20. project.add_define("JS_DEFAULT_STACK_SIZE=8388608"); // 8 * 1024 * 1024
  21. project.add_define("QJS_BUILD_LIBC");
  22. project.add_cfiles("main.c");
  23. project.add_cfiles("aimage.c");
  24. {
  25. project.add_cfiles("ashader.c");
  26. project.add_cfiles('../../sources/libs/kong/libs/*.c');
  27. project.add_cfiles('../../sources/libs/kong/*.c');
  28. project.add_cfiles('../../sources/libs/kong/backends/*.c');
  29. // project.add_cfiles('../../sources/libs/kong/backends/*.cpp'); // d3d12.cpp
  30. if (platform === "windows") {
  31. project.add_define('_CRT_SECURE_NO_WARNINGS');
  32. project.add_lib('d3dcompiler');
  33. // project.add_include_dir('../../sources/libs/kong/libs/dxc/inc');
  34. // project.add_lib('../../sources/libs/kong/libs/dxc/lib/x64/dxcompiler');
  35. }
  36. }
  37. if (platform === "windows") {
  38. // hlslbin
  39. project.add_lib("dxguid");
  40. }
  41. else if (platform === "macos") {
  42. project.add_cfiles("../../sources/backends/data/mac.plist");
  43. }
  44. else if (platform === "linux") {
  45. project.add_lib('dl');
  46. }
  47. return project;