Home | History | Annotate | Download | only in antlr-3.4
      1 <?xml version="1.0" encoding="UTF-8"?>
      2 
      3 <!--
      4 
      5     This is the assembly descriptor for building a full source code
      6     distribution of ANTLR and all its related components. This assembly
      7     only includes the Java oriented source code, hence only the Java runtime
      8     is included in the resulting jar.
      9 
     10     The resulting jar is distribution that can be expanded with:
     11 
     12       jar xvf antlr-master-3.x.x-src.jar
     13 
     14     The output directory will be antlr-master-3.x.x and in here will be
     15     the BUILD.txt fie, which explains how to build ANTLR.
     16 
     17     Jim Idle - May, 2009
     18  -->
     19 <assembly>
     20 
     21     <!-- The name of this assembly descriptor, which is referenced in
     22          the master pom.xml using <assemblyRef> (although in fact we
     23          reference the file name that contains it to avoid cluttering
     24          the pom.
     25       -->
     26     <id>src</id>
     27 
     28     <!-- We have elected to produce only a jar output and to use the line
     29          endings of whatever platform we are running on. More formats
     30          can be added for simultaneous production, such as <format>zip</format>
     31       -->
     32     <formats>
     33         <format>jar</format>
     34     </formats>
     35 
     36     <!--
     37         The resulting archives will have a base directory named after the master
     38         artifact, rather than just extract into the current directory.
     39       -->
     40     <includeBaseDirectory>true</includeBaseDirectory>
     41 
     42     <!-- We need to described the source code of each of the modules we want
     43          including in the archive. In the main this is because we did not store
     44          the modules in perforce using directory names that match the module
     45          names. This was for historic reasons as we already moved everything
     46          about massively, just to move to Maven in the first place.
     47       -->
     48     <moduleSets>
     49 
     50         <!-- Describe the gUnit source code.
     51           -->
     52         <moduleSet>
     53 
     54             <!-- The Maven artifact name tells the assembly artifact a bunch
     55                  of information to start with, such as its location in the current
     56                  tree and so on.
     57               -->
     58             <includes>
     59                 <include>org.antlr:antlr-runtime</include>
     60             </includes>
     61 
     62             <!-- What sources do we wish to include from this module?
     63               -->
     64             <sources>
     65 
     66                 <!-- Because the Java runtime source is not in a directory
     67                      called antlr-runtime, directly underneath the master
     68                      directory, we need to map the output directory so that
     69                      instead of starting with the name of the artifact, it
     70                      is in the place where the build expects it.
     71                   -->
     72                 <outputDirectoryMapping>runtime/Java</outputDirectoryMapping>
     73 
     74                 <fileSets>
     75                      <!-- We have one file set, being the src sub-directory, which in
     76                           the output archive, we also want to be called src/
     77                        -->
     78                     <fileSet>
     79                         <directory>src</directory>
     80                         <outputDirectory>src</outputDirectory>
     81                     </fileSet>
     82 
     83                     <!-- In the base runtime/Java directory, we need to include a number
     84                          of files that either document the module or control the
     85                          build. These are not underneath the src directory of course
     86                          so they need to be named here (which nicely documents what
     87                          is included.
     88                       -->
     89                     <fileSet>
     90                         <includes>
     91                             <include>pom.xml</include>
     92                             <include>doxyfile</include>
     93                             <include>antlr.config</include>
     94                         </includes>
     95                     </fileSet>
     96                 </fileSets>
     97             </sources>
     98 
     99         </moduleSet>
    100 
    101         <!-- Describe the ANTLR tool source code.
    102           -->
    103         <moduleSet>
    104             <includes>
    105                 <include>org.antlr:antlr</include>
    106             </includes>
    107 
    108             <!-- What sources do we wish to include from this module?
    109               -->
    110             <sources>
    111 
    112                 <!-- Because the tool source code is not in a directory
    113                      called antlr, nor directly underneath the master
    114                      directory, we need to map the output directory so that
    115                      instead of starting with the name of the artifact, it
    116                      is in the place where the build expects it.
    117                   -->
    118                 <outputDirectoryMapping>tool</outputDirectoryMapping>
    119 
    120 
    121                 <fileSets>
    122 
    123                     <!-- We have one file set, being the src sub-directory, which in
    124                          the output archive, we also want to be called src/
    125                       -->
    126                     <fileSet>
    127                         <directory>src</directory>
    128                         <outputDirectory>src</outputDirectory>
    129                     </fileSet>
    130 
    131                     <!-- In the base tool directory, we need to include a number
    132                          of files that either document the module or control the
    133                          build. These are not underneath the src directory of course
    134                          so they need to be named here (which nicely documents what
    135                          is included.
    136                       -->
    137                     <fileSet>
    138                         <includes>
    139                             <include>pom.xml</include>
    140                             <include>CHANGES.txt</include>
    141                             <include>LICENSE.txt</include>
    142                             <include>README.txt</include>
    143                             <include>antlr.config</include>
    144                         </includes>
    145                     </fileSet>
    146 
    147                 </fileSets>
    148 
    149             </sources>
    150 
    151         </moduleSet>
    152 
    153     </moduleSets>
    154 
    155     <!-- In the base directory of the master build directory (the root of all
    156          the other sources), there are a number of files that describe or control
    157          the build (such as the master pom.xml and the BUILD.txt files). Hence
    158          we need to describe them in their own fileset. No output mapping is required here
    159          of course.
    160       -->
    161     <fileSets>
    162         <fileSet>
    163             <includes>
    164                 <include>pom.xml</include>
    165                 <include>antlrjar.xml</include>
    166                 <include>antlrsources.xml</include>
    167                 <include>BUILD.txt</include>
    168             </includes>
    169         </fileSet>
    170     </fileSets>
    171 
    172 </assembly>
    173