build.ck 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /*++
  2. Copyright (c) 2013 Minoca Corp.
  3. This file is licensed under the terms of the GNU General Public License
  4. version 3. Alternative licensing terms are available. Contact
  5. info@minocacorp.com for details. See the LICENSE file at the root of this
  6. project for complete licensing information.
  7. Module Name:
  8. Kernel Test
  9. Abstract:
  10. This executable implements the kernel test application, which loads a
  11. driver, executes kernel mode stress tests, and reports the results back
  12. to user mode.
  13. Author:
  14. Evan Green 5-Nov-2013
  15. Environment:
  16. User
  17. --*/
  18. from menv import application, driver;
  19. function build() {
  20. var app;
  21. var driverDynlibs;
  22. var driverSources;
  23. var dynlibs;
  24. var entries;
  25. var includes;
  26. var ktestDriver;
  27. var sources;
  28. sources = [
  29. "ktest.c"
  30. ];
  31. driverSources = [
  32. "driver/ktestdrv.c",
  33. "driver/tblock.c",
  34. "driver/tdesc.c",
  35. "driver/testsup.c",
  36. "driver/tpool.c",
  37. "driver/tthread.c",
  38. "driver/twork.c"
  39. ];
  40. dynlibs = [
  41. "apps/osbase:libminocaos"
  42. ];
  43. driverDynlibs = [
  44. "kernel:kernel"
  45. ];
  46. includes = [
  47. "$S/apps/libc/include",
  48. "$S/apps/testapps/ktest"
  49. ];
  50. app = {
  51. "label": "ktest",
  52. "inputs": sources + dynlibs,
  53. "orderonly": [":ktestdrv"],
  54. "includes": includes
  55. };
  56. ktestDriver = {
  57. "label": "ktestdrv",
  58. "inputs": driverSources + driverDynlibs,
  59. "includes": includes
  60. };
  61. entries = application(app);
  62. entries += driver(ktestDriver);
  63. return entries;
  64. }