build.ck 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. /*++
  2. Copyright (c) 2012 Minoca Corp. All Rights Reserved
  3. Module Name:
  4. Input/Output
  5. Abstract:
  6. This library contains the I/O (Input/Output) functionality of the
  7. kernel. The I/O library manages devices, connects them to drivers, and
  8. coordinates exposing their functionality to other kernel components and
  9. user mode.
  10. Author:
  11. Evan Green 16-Sep-2012
  12. Environment:
  13. Kernel
  14. --*/
  15. function build() {
  16. base_sources = [
  17. "arb.c",
  18. "cachedio.c",
  19. "cstate.c",
  20. "device.c",
  21. "devinfo.c",
  22. "devrem.c",
  23. "devres.c",
  24. "driver.c",
  25. "fileobj.c",
  26. "filesys.c",
  27. "flock.c",
  28. "info.c",
  29. "init.c",
  30. "intrface.c",
  31. "intrupt.c",
  32. "iobase.c",
  33. "iohandle.c",
  34. "irp.c",
  35. "mount.c",
  36. "obfs.c",
  37. "pagecach.c",
  38. "path.c",
  39. "perm.c",
  40. "pipe.c",
  41. "pminfo.c",
  42. "power.c",
  43. "pstate.c",
  44. "pty.c",
  45. "pwropt.c",
  46. "shmemobj.c",
  47. "socket.c",
  48. "stream.c",
  49. "testhook.c",
  50. "unsocket.c",
  51. "userio.c"
  52. ];
  53. if ((arch == "armv7") || (arch == "armv6")) {
  54. arch_sources = [
  55. "armv7/archio.c",
  56. "armv7/archpm.c"
  57. ];
  58. } else if ((arch == "x86") || (arch == "x64")) {
  59. arch_sources = [
  60. "x86/archio.c",
  61. "x86/archpm.c",
  62. "x86/intelcst.c"
  63. ];
  64. }
  65. lib = {
  66. "label": "io",
  67. "inputs": base_sources + arch_sources,
  68. };
  69. entries = static_library(lib);
  70. return entries;
  71. }
  72. return build();