manifest.me 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. /*
  2. manifest.me - MakeMe manifest for GoAhead
  3. */
  4. Me.load({
  5. /*
  6. Package manifest instructions
  7. The sets used are: binary, doc, dev, package, source
  8. */
  9. manifest: {
  10. home: me.dir.bin,
  11. root: true,
  12. packages: {
  13. install: {
  14. inherit: 'package-manifest',
  15. prefixes: [ 'root', 'app', 'vapp', 'bin', 'man', 'web', 'etc'],
  16. sets: [ 'core', 'libs', 'doc' ],
  17. platforms: [ 'unix', 'windows' ]
  18. },
  19. binary: {
  20. inherit: 'package-manifest',
  21. prefixes: [ 'root', 'app', 'vapp', 'bin', 'man', 'web', 'etc'],
  22. formats: [ 'native', 'tar' ],
  23. sets: [ 'core', 'libs', 'doc', 'package' ],
  24. platforms: [ 'freebsd', 'linux', 'macosx', 'windows' ]
  25. },
  26. source: {
  27. inherit: 'package-manifest',
  28. prefixes: [ 'root', 'src' ],
  29. formats: [ 'tar' ],
  30. sets: [ 'source' ],
  31. },
  32. pak: {
  33. inherit: 'package-manifest',
  34. prefixes: [ 'src'],
  35. formats: [ 'tar' ],
  36. sets: [ 'pak' ],
  37. },
  38. },
  39. sets: {
  40. core: [
  41. {
  42. mkdir: [ '${man}/man1' ],
  43. permissions: 0755,
  44. }, {
  45. from: 'goahead${EXE}',
  46. to: '${abin}/',
  47. symlink: '${bin}/',
  48. permissions: 0755,
  49. }, {
  50. from: '${BIN}/roots.crt',
  51. to: '${abin}/',
  52. }, {
  53. from: [
  54. '${TOP}/src/web/index.html',
  55. '${TOP}/src/web/favicon.ico'
  56. ],
  57. to: '${web}/',
  58. exclude: /mgmt|bench|test/,
  59. }, {
  60. from: [
  61. '${TOP}/src/auth.txt',
  62. '${TOP}/src/route.txt'
  63. ],
  64. to: '${etc}/'
  65. }
  66. ],
  67. libs: [
  68. {
  69. from: 'libgo${SHOBJ}',
  70. to: '${abin}/',
  71. enable: '!me.settings.static',
  72. }
  73. ],
  74. doc: [
  75. {
  76. from: '${TOP}/doc/dist/man/*.1',
  77. to: '${adoc}/man/man1/',
  78. symlink: '${man}/man1/',
  79. enable: "me.platform.like == 'unix'",
  80. }
  81. ],
  82. source: [
  83. {
  84. from: '${TOP}/*.md',
  85. to: '${src}/',
  86. fold: true,
  87. patch: true,
  88. }, {
  89. from: '${TOP}/configure',
  90. to: '${src}/',
  91. permissions: 0755,
  92. }, {
  93. home: '${TOP}',
  94. from: [
  95. 'Makefile',
  96. 'make.bat',
  97. 'main.me',
  98. 'package.json',
  99. 'paks',
  100. 'src',
  101. 'doc',
  102. 'projects',
  103. 'installs',
  104. 'test'
  105. ],
  106. exclude: /\.old$|\.tmp$|xcuserdata|xcworkspace|project.guid|-mine/,
  107. to: '${src}/',
  108. flatten: false,
  109. },
  110. ],
  111. pak: [
  112. {
  113. from: '${TOP}/installs/goahead.me',
  114. to: '${src}/dist/goahead.me',
  115. }, {
  116. from: '${TOP}/src/goahead.h',
  117. to: '${src}/dist/goahead.h',
  118. append: true,
  119. filter: /^#inc.*customize.*$/mg,
  120. }, {
  121. from: [
  122. '${TOP}/src/*.c',
  123. ],
  124. exclude: /\/utils\//,
  125. to: '${src}/dist/goahead.c',
  126. append: true,
  127. header: '/*\n * ${settings.title} Library Source\n */\n\n#include \"goahead.h\"\n\n#if ME_COM_GOAHEAD',
  128. divider: true,
  129. footer: '#endif /* ME_COM_GOAHEAD */',
  130. filter: /^#inc.*goahead.*$|^#inc.*customize.*$/mg,
  131. }
  132. ]
  133. }
  134. }
  135. })