<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.

-->
<!--
Usage notes:

To build NTEventLogAppender.dll using MinGW, place mingw\bin on path for Windows or install mingw
package on other platforms.  Build will execute gcc and windres on Windows and
i586-mingw32msvc-gcc and i586-mingw32msvc-windres on other platforms.

To build NTEventLogAppender.dll using Microsoft tools, run the appropriate vcvars for the
target platform and specify -Dntdll_target=msbuild on the mvn command line.

-->        
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.randomnoun.log4j</groupId><!-- was log4j -->
  <artifactId>log4j-good-bits</artifactId><!-- was log4j -->
  <packaging>bundle</packaging>
  <name>Apache Log4j</name>
  <version>1.2.17-1</version><!-- was 1.2.18-SNAPSHOT -->
  <description>Apache Log4j 1.2</description>
  <url>http://logging.apache.org/log4j/1.2/</url>
  <issueManagement>
    <system>Bugzilla</system>
    <url>https://issues.apache.org/bugzilla/describecomponents.cgi?product=Log4j</url>
  </issueManagement>
  <ciManagement>
    <system>Gump</system>
    <url>http://vmgump.apache.org/gump/public/logging-log4j-12/logging-log4j-12/index.html</url>
  </ciManagement>
  <inceptionYear>1999</inceptionYear>
  <mailingLists>
    <mailingList>
      <name>log4j-user</name>
      <subscribe>log4j-user-subscribe@logging.apache.org</subscribe>
      <unsubscribe>log4j-user-unsubscribe@logging.apache.org</unsubscribe>
      <post>log4j-user@logging.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/logging-log4j-user/</archive>
      <otherArchives>
        <otherArchive>http://marc.info/?l=log4j-user</otherArchive>
        <otherArchive>http://dir.gmane.org/gmane.comp.jakarta.log4j.user</otherArchive>
      </otherArchives>
    </mailingList>
    <mailingList>
      <name>log4j-dev</name>
      <subscribe>log4j-dev-subscribe@logging.apache.org</subscribe>
      <unsubscribe>log4j-dev-unsubscribe@logging.apache.org</unsubscribe>
      <post>log4j-dev@logging.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/logging-log4j-dev/</archive>
      <otherArchives>
        <otherArchive>http://marc.info/?l=log4j-dev</otherArchive>
        <otherArchive>http://dir.gmane.org/gmane.comp.jakarta.log4j.devel</otherArchive>
      </otherArchives>
    </mailingList>
  </mailingLists>
  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <scm>
        <connection>scm:git:http://gitlab.dev.randomnoun/randomnoun/log4j-good-bits.git</connection>
        <developerConnection>scm:git:http://gitlab.dev.randomnoun/randomnoun/log4j-good-bits.git</developerConnection>
        <url>http://gitlab.dev.randomnoun/randomnoun/log4j-good-bits</url>
      <tag>log4j-good-bits-1.2.17-1</tag>
  </scm>


  <organization>
    <name>Apache Software Foundation</name>
    <url>http://www.apache.org</url>
  </organization>
  <developers>
        <!-- I didn't write most of this, but sonatype needs a developer section these days -->
        <developer>
            <id>knoxg</id>
            <name>Greg Knox</name>
            <email>knoxg@randomnoun.com</email>
            <organization>randomnoun</organization>
            <organizationUrl>http://www.randomnoun.com</organizationUrl>
            <roles>
                <role>Software Gazelle</role>
            </roles>
            <timezone>+10</timezone>
            <properties>
                <picUrl>http://www.gravatar.com/avatar/10b6f00fa8d70d6f4e042558a9433086.jpg?s=32</picUrl>
            </properties>
        </developer>
    </developers>
    
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <configuration>
          <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.5</version>
        <configuration>
          <workingDirectory>tests</workingDirectory>
          <reportFormat>plain</reportFormat>
          <forkMode>pertest</forkMode>
          <skip>false</skip>
          <includes>
            <include>org/apache/log4j/LevelTest.java</include>
            <include>org/apache/log4j/PriorityTest.java</include>
            <include>org/apache/log4j/CategoryTest.java</include>
            <include>org/apache/log4j/FileAppenderTest.java</include>
            <include>org/apache/log4j/LogManagerTest.java</include>
            <include>org/apache/log4j/helpers.LogLogTest.java</include>
            <include>org/apache/log4j/LayoutTest.java</include>
            <include>org/apache/log4j/helpers.DateLayoutTest.java</include>
            <include>org/apache/log4j/TTCCLayoutTest.java</include>
            <include>org/apache/log4j/xml.XMLLayoutTest.java</include>
            <include>org/apache/log4j/HTMLLayoutTest.java</include>
            <include>org/apache/log4j/PatternLayoutTest.java</include>
            <include>org/apache/log4j/spi.LoggingEventTest.java</include>
            <include>org/apache/log4j/spi.ThrowableInformationTest.java</include>
            <include>org/apache/log4j/spi.LocationInfoTest.java</include>
            <include>org/apache/log4j/PropertyConfiguratorTest.java</include>
            <include>org/apache/log4j/MinimumTestCase.java</include>
            <include>org/apache/log4j/LoggerTestCase.java</include>
            <include>org/apache/log4j/PatternLayoutTestCase.java</include>
            <include>org/apache/log4j/HierarchyThresholdTestCase.java</include>
            <include>org/apache/log4j/xml/DOMTestCase.java</include>
            <include>org/apache/log4j/xml/CustomLevelTestCase.java</include>
            <include>org/apache/log4j/customLogger/XLoggerTestCase.java</include>
            <!-- DefaultInit -->
            <!-- SocketServer -->
            <include>org/apache/log4j/xml/XMLLayoutTestCase.java</include>
            <include>org/apache/log4j/xml/AsyncAppenderTestCase.java</include>
            <include>org/apache/log4j/varia/LevelMatchFilterTestCase.java</include>
            <!-- ErrorHandlerTestCase is not run in Ant build either <include>org/apache/log4j/varia/ErrorHandlerTestCase.java</include> -->
            <!-- include>org/apache/log4j/helpers/OptionConverterTestCase.java</include -->
            <include>org/apache/log4j/helpers/BoundedFIFOTestCase.java</include>
            <include>org/apache/log4j/helpers/CyclicBufferTestCase.java</include>
            <include>org/apache/log4j/helpers/PatternParserTestCase.java</include>
            <include>org/apache/log4j/or/ORTestCase.java</include>
            <include>org/apache/log4j/DRFATestCase.java</include>
            <include>org/apache/log4j/RFATestCase.java</include>
            <include>org/apache/log4j/varia/ERFATestCase.java</include>
            <include>org/apache/log4j/net/SyslogAppenderTest</include>
            <include>org/apache/log4j/nt/NTEventLogAppenderTest</include>
            <include>org/apache/log4j/net/SocketAppenderTest</include>
          </includes>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.1</version>
        <configuration>
          <source>1.6</source> <!-- was 1.4 -->
          <target>1.6</target> <!-- was 1.4 -->
          <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-jar-plugin</artifactId>
        <version>2.3</version>
        <configuration>
          <archive>
            <manifestSections>
              <manifestSection>
                <name>org/apache/log4j/</name>
                <manifestEntries>
                  <DynamicImport-Package>*</DynamicImport-Package>
                  <Implementation-Title>log4j</Implementation-Title>
                  <Implementation-Version>${project.version}</Implementation-Version>
                  <Implementation-Vendor>"Apache Software Foundation"</Implementation-Vendor>
                </manifestEntries>
              </manifestSection>
            </manifestSections>
          </archive>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-antrun-plugin</artifactId>
        <version>1.2</version><!-- 3.1.0 -->
        <executions>
          <!-- generate NTEventLogAppender.dll -->
          <execution>
            <phase>process-classes</phase>
            <id>ntdll</id>
            <configuration>
              <tasks>
                <ant antfile="src/ntdll/build.xml" target="${ntdll_target}">
                  <property name="target.dir" location="target" />
                  <property name="classes.dir" location="target/classes" />
                  <property name="src.dir" location="src/ntdll" />
                  <property name="jni.include.dir" location="${java.home}/../include" />
                </ant>
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
          <!-- create tests/output prior to test run -->
            <!--

            TODO: several tests are run from tests/build.xml,
            for example longUnit

            Refactor these tests to run with Surefire


          <execution>
            <phase>test-compile</phase>
            <id>mkdir_tests_output</id>
            <configuration>
              <tasks>
                <mkdir dir="tests/output" />
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
          <execution>
            <phase>clean</phase>
            <id>rmdir_tests_output</id>
            <configuration>
              <tasks>
                <delete dir="tests/output" />
                <delete dir="tests/classes" />
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
          <execution>
            <phase>test</phase>
            <id>runAll</id>
            <configuration>
              <tasks>
                <ant dir="tests" target="runAll">
                  <property name="m2_repo" location="${m2_repo}" />
                  <property name="log4j.jar" location="target/classes" />
                  <property name="project.lib.home" location="target" />
                </ant>
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
          -->

            <!--

            TODO: checks out a site from svn. Is that necessary?

          <execution>
            <phase>post-site</phase>
            <id>post-site</id>
            <configuration>
              <tasks>
                <ant target="post-site" />
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>

          -->


            <!--

            TODO: this is doable from maven

          <execution>
            <phase>site-deploy</phase>
            <id>site-deploy</id>
            <configuration>
              <tasks>
                <ant target="site-deploy" />
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
          -->

          <execution>
            <id>javadoc.resources</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <tasks>
                <copy todir="${project.build.directory}/apidocs/META-INF">
                  <fileset dir="${basedir}">
                    <include name="LICENSE" />
                    <include name="NOTICE" />
                  </fileset>
                </copy>
              </tasks>
            </configuration>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>ant</groupId>
            <artifactId>ant-nodeps</artifactId>
            <version>1.6.5</version>
          </dependency>
          <dependency>
            <groupId>ant-contrib</groupId>
            <artifactId>ant-contrib</artifactId>
            <version>1.0b2</version>
          </dependency>
          <dependency>
            <groupId>ant</groupId>
            <artifactId>ant-junit</artifactId>
            <version>1.6.5</version>
          </dependency>
          <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>compile</scope>
          </dependency>
          <!-- removed
          <dependency>
            <groupId>sun.jdk</groupId>
            <artifactId>tools</artifactId>
            <version>1.4.2</version>
            <scope>system</scope>
            <systemPath>${tools.jar}</systemPath>
          </dependency>
          -->
        </dependencies>
      </plugin>
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.2-beta-5</version>
        <configuration>
          <descriptors>
            <descriptor>src/assembly/bin.xml</descriptor>
          </descriptors>
          <appendAssemblyId>false</appendAssemblyId>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>assembly</goal>
            </goals>
          </execution>
        </executions>

      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.2.0</version>
        <!-- 
          this configuration is used during the javadoc:jar goal during the release
          configuration for the reports is in the <reporting> section  
        -->
        <configuration>
            <additionalparam>-Xdoclint:none</additionalparam>
            <failOnError>false</failOnError>
            <javadocDirectory>${project.basedir}/src/main/javadoc</javadocDirectory>
            <docfilessubdirs>true</docfilessubdirs>
            <excludedocfilessubdir>.svn</excludedocfilessubdir>
            <encoding>UTF-8</encoding>
            <docEncoding>UTF-8</docEncoding>
            <author>true</author>
            <linksource>true</linksource>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>jar</goal>
              <goal>javadoc</goal>
            </goals>
          </execution>
          <!--          
          <execution>
            <id>site</id>
            <phase>pre-site</phase>
            <goals>
              <goal>javadoc</goal>
            </goals>
          </execution>
          -->
        </executions>
    </plugin>
                
      <!--
      <plugin>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.0-beta-9</version>
        <configuration>
          <goals>package site-deploy assembly:attached deploy</goals>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.1.1</version>
        <executions>
          <execution>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      -->
      <!-- clirr:check will fail with NullPointerException due to missing javax.jms.MessageListener, however it will trigger 
        download of supporting components which can allow "ant clirr" to succeed. Could possibly run on a JavaEE platform. -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>clirr-maven-plugin</artifactId>
        <version>2.2.2</version>
        <configuration>
          <comparisonVersion>1.2.15</comparisonVersion>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>rat-maven-plugin</artifactId>
        <version>1.0-alpha-3</version>
        <configuration>
          <excludes>
            <exclude>tests/witness/**</exclude>
            <exclude>tests/output/**</exclude>
            <exclude>tests/classes/**</exclude>
          </excludes>
        </configuration>
      </plugin>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <version>2.1.0</version>
            <extensions>true</extensions>
            <configuration>
                <instructions>
                    <Bundle-SymbolicName>org.apache.log4j</Bundle-SymbolicName>
                    <Export-Package>org.apache.log4j.*;version=${project.version};-noimport:=true</Export-Package>
                    <Import-Package>
                        javax.jmdns.*;resolution:=optional,
                        javax.jms.*;resolution:=optional,
                        javax.mail.*;resolution:=optional,
                        *
                    </Import-Package>
                    <Bundle-DocURL>http://logging.apache.org/log4j/1.2</Bundle-DocURL>
                    <Eclipse-BuddyPolicy>registered</Eclipse-BuddyPolicy>
                    <Bundle-RequiredExecutionEnvironment>J2SE-1.4</Bundle-RequiredExecutionEnvironment>
                </instructions>
            </configuration>
        </plugin>
        <!--
      <plugin>
        <artifactId>maven-site-plugin</artifactId>
        <version>3.1</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>site</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      -->
    </plugins>
    <testSourceDirectory>tests/src/java</testSourceDirectory>
    <testResources>
      <testResource>
        <directory>tests/resources</directory>
      </testResource>
    </testResources>
  </build>
  <reporting>
    <plugins>
      <plugin>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>2.4</version>
        <reportSets>
          <reportSet>
            <reports>
              <report>scm</report>
              <report>dependencies</report>
              <report>cim</report>
              <report>issue-tracking</report>
              <report>mailing-list</report>
              <report>license</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <artifactId>maven-jxr-plugin</artifactId>
        <version>2.1</version>
      </plugin>
      <plugin>
        <artifactId>maven-changes-plugin</artifactId>
        <version>2.7</version>
        <reportSets>
          <reportSet>
            <reports>
              <report>changes-report</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
    </plugins>
  </reporting>
  <profiles>
    <profile>
      <id>mac</id>
      <activation>
        <os>
          <family>mac</family>
        </os>
      </activation>
      <properties>
        <tools.jar>${java.home}/../Classes/classes.jar</tools.jar>
        <m2_repo>${user.home}/.m2/repository</m2_repo>
        <ntdll_target>build</ntdll_target>
      </properties>
    </profile>
    <profile>
      <id>default</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <properties>
        <tools.jar>${java.home}/../lib/tools.jar</tools.jar>
        <m2_repo>${user.home}/.m2/repository</m2_repo>
        <ntdll_target>build</ntdll_target>
      </properties>
    </profile>
  </profiles>
  <repositories>
    <repository>
      <id>maven2-repository.dev.java.net</id>
      <name>Java.net Repository for Maven</name>
      <url>http://download.java.net/maven/2/</url>
      <layout>default</layout>
    </repository>
  </repositories>
  <dependencies>
    <dependency>
      <groupId>javax.mail</groupId>
      <artifactId>mail</artifactId>
      <version>1.4.3</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.openejb</groupId>
      <artifactId>javaee-api</artifactId>
      <version>5.0-2</version>
      <type>jar</type>
      <scope>provided</scope>
    </dependency>
    <!-- the following dependency is not needed on JDK 1.5 and higher <dependency> <groupId>com.sun.jmx</groupId> <artifactId>jmxri</artifactId> 
      <version>1.2.1</version> <optional>true</optional> </dependency> -->
    <dependency>
      <groupId>oro</groupId>
      <artifactId>oro</artifactId>
      <version>2.0.8</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.2</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-jms_1.1_spec</artifactId>
      <version>1.0</version>
      <optional>true</optional>
    </dependency>
  </dependencies>
  
  <distributionManagement>
        <repository>
            <id>releases</id>
            <name>randomnoun releases</name>
            <url>http://nexus2.dev.randomnoun/nexus/content/repositories/releases/</url>
        </repository>
        <snapshotRepository>
            <id>snapshots</id>
            <name>randomnoun snapshots</name>
            <url>http://nexus2.dev.randomnoun/nexus/content/repositories/snapshots/</url>
            <uniqueVersion>false</uniqueVersion>
        </snapshotRepository>
    </distributionManagement>
    
</project>

