Sugar Network/Recipe Specification: Difference between revisions

No edit summary
Line 115: Line 115:
=== [Buid] ===
=== [Buid] ===


How to build binaries. If package contains binary implementations, this section should be present to describe the building process.
This section is required if package needs additional work to prepare ready-to-use installation. To prepare valid Zero packages, it is important to use [[#Predefined_options|predefined constants]] for options that contain shell commands. All shell commands will be executed from {{Code|%(SRCDIR)s}} directory.


'''NOTE''' The commands in this section will be executed, not only in the developer's environment, but also in the user's, if a proper binary wasn't found; so move all development-related commands, like autogen.sh, to the ''[Maintain]'' section.
'''NOTE''' The commands in this section will be executed, not only in the developer's environment, but also in the user's, if a proper binary wasn't found; so move all development-related commands, like {{Code|autogen.sh}}, to the ''[Source]'' section.


  '''requires''' = <dependency-name> [(=|>=|<) <version>] [; ...]
  '''requires''' = <dependency-name> [(=|>=|<) <version>] [; ...]
Line 125: Line 125:
  '''configure''' = <shell-command>
  '''configure''' = <shell-command>


Shell command to configure sources before building, e.g., invoking the ''configure'' script in auto-tools-based projects. It is important to use [[#Predefined_options|predefined constants]], at least ''%(PREFIX)s'', during configuration to prepare valid Zero packages. If the source code does not require a configuration stage, this option could be omited.
Shell command to configure sources before building, e.g., invoking the configure script in auto-tools-based projects. If the source code does not require a configuration stage, this option could be omited.


  '''make''' = <shell-command>
  '''make''' = <shell-command>
Line 133: Line 133:
  '''install''' = <shell-command>
  '''install''' = <shell-command>


Shell command to place files that are ready for distribution into the ''%(DISTDIR)s'' directory. If option is missing, the entire ???? (excepting temporary files) will be copied.
Shell command to place files that are ready for distribution into the ''%(DISTDIR)s'' directory. If ''install'' is missing, the entire {{Code|%(SRCDIR)s}} (excepting temporary files) will be copied.
: >> Please clarify the last sentence. Which option? the entire SRCDIR or package? --[[User:FGrose|FGrose]] 10:58, 21 October 2010 (EDT)


  '''implement''' = <shell-command>
  '''implement''' = <shell-command>