manifest.me 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  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: '${BIN}/self.*',
  54. to: '${etc}/',
  55. }, {
  56. from: [
  57. '${TOP}/src/web/index.html',
  58. '${TOP}/src/web/favicon.ico'
  59. ],
  60. to: '${web}/',
  61. exclude: /mgmt|bench|test/,
  62. }, {
  63. from: [
  64. '${TOP}/src/auth.txt',
  65. '${TOP}/src/route.txt'
  66. ],
  67. to: '${etc}/'
  68. }
  69. ],
  70. libs: [
  71. {
  72. from: 'libgo${SHOBJ}',
  73. to: '${abin}/',
  74. enable: '!me.settings.static',
  75. }
  76. ],
  77. doc: [
  78. {
  79. from: '${TOP}/doc/dist/man/*.1',
  80. to: '${adoc}/man/man1/',
  81. symlink: '${man}/man1/',
  82. enable: "me.platform.like == 'unix'",
  83. }
  84. ],
  85. source: [
  86. {
  87. from: '${TOP}/*.md',
  88. to: '${src}/',
  89. fold: true,
  90. patch: true,
  91. }, {
  92. from: '${TOP}/configure',
  93. to: '${src}/',
  94. permissions: 0755,
  95. }, {
  96. home: '${TOP}',
  97. from: [
  98. 'Makefile',
  99. 'make.bat',
  100. 'main.me',
  101. 'pak.json',
  102. 'paks',
  103. 'src',
  104. 'doc',
  105. 'projects',
  106. 'installs',
  107. 'test'
  108. ],
  109. exclude: /\.old$|\.tmp$|xcuserdata|xcworkspace|project.guid|-mine/,
  110. to: '${src}/',
  111. flatten: false,
  112. },
  113. ],
  114. pak: [
  115. {
  116. from: '${TOP}/installs/goahead.me',
  117. to: '${src}/dist/goahead.me',
  118. }, {
  119. from: '${TOP}/src/goahead.h',
  120. to: '${src}/dist/goahead.h',
  121. append: true,
  122. filter: /^#inc.*customize.*$/mg,
  123. }, {
  124. from: [
  125. '${TOP}/src/*.c',
  126. ],
  127. exclude: /\/utils\//,
  128. to: '${src}/dist/goahead.c',
  129. append: true,
  130. header: '/*\n * ${settings.title} Library Source\n */\n\n#include \"goahead.h\"\n\n#if ME_COM_GOAHEAD',
  131. divider: true,
  132. footer: '#endif /* ME_COM_GOAHEAD */',
  133. filter: /^#inc.*goahead.*$|^#inc.*customize.*$/mg,
  134. }
  135. ]
  136. }
  137. }
  138. })