source: project/wiki/Metafile reference @ 14293

Last change on this file since 14293 was 14293, checked in by felix winkelmann, 11 years ago

documented 'depends' and 'test-depends'

File size: 3.7 KB
Line 
1== Metafile reference
2
3The {{.meta}} file describes properties of a downloadable extension
4(see [[eggs tutorial]] for an explanation of extensions and meta files).
5
6The following properties are supported:
7
8 (synopsis STRING)
9
10A short description of the extension (required).
11
12 (author STRING)
13
14The author, optionally with an e-mail address, if desired (required).
15
16  (maintainer STRING)
17
18The maintainer, if not identical to the author.
19
20 (files STRING ...)
21
22The names of all files that should be contained in the egg (required).
23
24 (egg STRING)
25
26The name of the egg file (required).
27
28 (license STRING)
29
30The license under which the code is released. Please make sure you
31use the proper license if you package code written by others (required).  Read [[eggs licencing]] for details on how to format this string!
32
33 (category SYMBOL)
34
35A category under which the egg should be listed on the egg-index
36page at
37[[http://www.call-with-current-continuation.org/eggs/index.html]]
38(required).
39
40Currently the set of categories is fixed, use one of:
41
42    code-generation:  Code generation
43    crypt:            Cryptography
44    data:             Algorithms and data-structures
45    db:               Databases
46    debugging:        Debugging tools
47    doc-tools:        Documentation tools
48    egg-tools:        Egg tools
49    ffi:              Interfacing to other languages
50    graphics:         Graphics
51    io:               Input/Output
52    lang-exts:        Language extensions
53    logic:            Logic programming
54    macros:           Macros and meta-syntax
55    math:             Mathematical libraries
56    misc:             Miscellaneous
57    net:              Networking
58    oop:              Object-oriented programming
59    os:               OS interface
60    parsing:          Data formats and parsing
61    sound:            Sound related stuff
62    testing:          Unit-testing
63    tools:            Command line tools
64    ui:               User interface toolkits
65    web:              Web programming
66    xml:              XML processing
67
68
69 (needs EXTENSION-ID ...)
70
71Any extensions needed to build and use this extension. This should
72normally be the raw extension-identifier, the same that you would use in a
73{{require-extension}} form. Alternatively, {{EXTENSION-ID}} may be an
74arbitrary Scheme expression that is evaluated and should return a list of
75extension-ids. This is intended to test the executing system for particular
76platform- or installation-specific features before computing a set of
77required extensions to be available before the installation of the original
78extension commences.
79
80 (depends EXT ...)
81
82Similar to {{needs}}, but {{EXT}} may also be of the form {{(EXTENSION-ID VERSION)}}
83to specify a particular version of an extension this extension depends on.
84
85 (test-depends EXT ...)
86
87Specifies dependencies that are required to run the included test-suite.
88
89 (doc-from-wiki)
90
91Marks this extension as having a documentation page in the
92associated CHICKEN wiki at [[http://chicken.wiki.br]].
93
94 (eggdoc FILENAME)
95
96Marks this extension as having a documentation page in
97[[eggdoc]] format. The eggdoc file should exist in the extension directory
98and will be executed when the egg is packaged.
99
100 (hidden)
101
102Marks this extension as being "hidden", that is: it is available
103for download and the documentation page is generated, but it will
104not appear in the official list (mainly intended for preliminary
105eggs and testing).
106
107 (platform ID ...)
108
109Identifies the platforms where this extension can be used. {{ID ...}}
110should be one or more ''feature ID''s, i.e. symbols returned by
111{{build-platform}}, {{software-version}}, {{software-type}},
112{{machine-type}} and {{machine-byte-order}}. If a particular type of
113feature ID is not given, it implies that this egg is portable across
114all platforms that are described by this type.
Note: See TracBrowser for help on using the repository browser.