<?xml version="1.0"?>
<project name="jar-manifest">

  <!-- # Macros for help generating manifest files -->
  <macrodef name="coremail-manifest">
    <attribute name="destfile"   default="${target.jar.file}" />
    <attribute name="module"     default="${project.title}" />
    <attribute name="build"      default="${project.build}" />
    <element name="other-attributes" optional="yes" implicit="yes" />
    <sequential>
      <jar destfile="@{destfile}" update="yes">
        <manifest>
          <other-attributes />
          <attribute name="Specification-Title"    value="Coremail" />
          <attribute name="Specification-Version"  value="${coremail.version}" />
          <attribute name="Specification-Vendor"   value="Mailtech.cn Ltd" />
          <attribute name="Implementation-Title"   value="Coremail @{module}" />
          <attribute name="Implementation-Version" value="${coremail.version} @{build}" />
          <attribute name="Implementation-Vendor"  value="Mailtech.cn Ltd" />
        </manifest>
      </jar>
    </sequential>
  </macrodef>

  <macrodef name="mailtech-manifest">
    <attribute name="destfile"   default="${target.jar.file}" />
    <attribute name="title"      default="${project.title}" />
    <attribute name="build"      default="${project.build}" />
    <attribute name="version"    default="${project.version}" />
    <element name="other-attributes" optional="yes" implicit="yes" />
    <sequential>
      <jar destfile="@{destfile}" update="yes">
        <manifest>
          <other-attributes />
          <attribute name="Specification-Title"    value="@{title}" />
          <attribute name="Specification-Version"  value="@{version}" />
          <attribute name="Specification-Vendor"   value="Mailtech.cn Ltd" />
          <attribute name="Implementation-Title"   value="@{title}" />
          <attribute name="Implementation-Version" value="@{version} @{build}" />
          <attribute name="Implementation-Vendor"  value="Mailtech.cn Ltd" />
        </manifest>
      </jar>
    </sequential>
  </macrodef>

  <macrodef name="coremail-manifest-section">
    <attribute name="destfile"   default="${target.jar.file}" />
    <attribute name="name"    />
    <attribute name="module"     default="${project.title}" />
    <attribute name="build"      default="${project.build}" />
    <element name="other-attributes" optional="yes" implicit="yes" />
    <sequential>
      <jar destfile="@{destfile}" update="yes">
        <manifest>
          <section name="@{name}">
            <attribute name="Specification-Title"    value="Coremail @{module}" />
            <attribute name="Specification-Version"  value="${coremail.version}" />
            <attribute name="Specification-Vendor"   value="Mailtech.cn Ltd" />
            <attribute name="Implementation-Title"   value="Coremail @{module}" />
            <attribute name="Implementation-Version" value="${coremail.version} @{build}" />
            <attribute name="Implementation-Vendor"  value="Mailtech.cn Ltd" />
            <other-attributes />
          </section>
        </manifest>
      </jar>
    </sequential>
  </macrodef>

  <macrodef name="mailtech-manifest-section">
    <attribute name="destfile"   default="${target.jar.file}" />
    <attribute name="name"    />
    <attribute name="title"      default="${project.title}" />
    <attribute name="version"    default="${project.version}" />
    <attribute name="build"      default="${project.build}" />
    <element name="other-attributes" optional="yes" implicit="yes" />
    <sequential>
      <jar destfile="@{destfile}" update="yes">
        <manifest>
          <section name="@{name}">
            <attribute name="Specification-Title"    value="@{title}" />
            <attribute name="Specification-Version"  value="@{version}" />
            <attribute name="Specification-Vendor"   value="Mailtech.cn Ltd" />
            <attribute name="Implementation-Title"   value="@{title}" />
            <attribute name="Implementation-Version" value="@{version} @{build}" />
            <attribute name="Implementation-Vendor"  value="Mailtech.cn Ltd" />
          </section>
          <other-attributes />
        </manifest>
      </jar>
    </sequential>
  </macrodef>
</project>
