<?xml version="1.0" encoding="UTF-8"?>
<!--

    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.

-->

<configurationDescriptor version="35">
  <logicalFolder name="root" displayName="root" projectFiles="true">
    <logicalFolder name="SourceFiles"
                   displayName="Source Files"
                   projectFiles="true">
      <itemPath>../.common/src/CommonUtils.c</itemPath>
      <itemPath>../.unix/src/jni_UnixNativeUtils.c</itemPath>
    </logicalFolder>
    <logicalFolder name="HeaderFiles"
                   displayName="Header Files"
                   projectFiles="true">
      <itemPath>../.common/src/CommonUtils.h</itemPath>
      <itemPath>../.unix/src/jni_UnixNativeUtils.h</itemPath>
    </logicalFolder>
    <logicalFolder name="ResourceFiles"
                   displayName="Resource Files"
                   projectFiles="true">
    </logicalFolder>
    <logicalFolder name="ExternalFiles"
                   displayName="Important Files"
                   projectFiles="false">
      <itemPath>Makefile</itemPath>
    </logicalFolder>
  </logicalFolder>
  <projectmakefile>Makefile</projectmakefile>
  <defaultConf>0</defaultConf>
  <confs>
    <conf name="Debug" type="2">
      <toolsSet>
        <compilerSet>Sun12</compilerSet>
        <cRequired>true</cRequired>
        <cppRequired>true</cppRequired>
        <fortranRequired>false</fortranRequired>
        <platform>0</platform>
      </toolsSet>
      <compileType>
        <cCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-m32 -shared -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -xO2 -Xa</commandLine>
        </cCompilerTool>
        <ccCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-m32 -shared -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -xO2 -Xa</commandLine>
        </ccCompilerTool>
        <linkerTool>
          <output>dist/solaris-sparc.so</output>
          <stripSymbols>true</stripSymbols>
          <linkerNorunpath>false</linkerNorunpath>
          <linkerLibItems>
          </linkerLibItems>
        </linkerTool>
      </compileType>
      <item path="../.common/src/CommonUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.common/src/CommonUtils.h">
        <itemTool>3</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.h">
        <itemTool>3</itemTool>
      </item>
    </conf>
    <conf name="Release" type="2">
      <toolsSet>
        <compilerSet>GNU</compilerSet>
        <cRequired>true</cRequired>
        <cppRequired>true</cppRequired>
        <fortranRequired>false</fortranRequired>
        <platform>0</platform>
      </toolsSet>
      <compileType>
        <cCompilerTool>
          <developmentMode>5</developmentMode>
        </cCompilerTool>
        <ccCompilerTool>
          <developmentMode>5</developmentMode>
        </ccCompilerTool>
        <fortranCompilerTool>
          <developmentMode>5</developmentMode>
        </fortranCompilerTool>
        <linkerTool>
          <linkerLibItems>
          </linkerLibItems>
        </linkerTool>
      </compileType>
      <item path="../.common/src/CommonUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.common/src/CommonUtils.h">
        <itemTool>3</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.h">
        <itemTool>3</itemTool>
      </item>
    </conf>
    <conf name="Debug_x64" type="2">
      <toolsSet>
        <compilerSet>Sun12</compilerSet>
        <cRequired>true</cRequired>
        <cppRequired>true</cppRequired>
        <fortranRequired>false</fortranRequired>
        <platform>0</platform>
      </toolsSet>
      <compileType>
        <cCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <sixtyfourBits>true</sixtyfourBits>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-fPIC -shared -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -xO2 -Xa</commandLine>
        </cCompilerTool>
        <ccCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <sixtyfourBits>true</sixtyfourBits>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-fPIC -shared -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -xO2 -Xa</commandLine>
        </ccCompilerTool>
        <linkerTool>
          <output>dist/solaris-sparcv9.so</output>
          <stripSymbols>true</stripSymbols>
          <linkerNorunpath>false</linkerNorunpath>
          <linkerLibItems>
          </linkerLibItems>
        </linkerTool>
      </compileType>
      <item path="../.common/src/CommonUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.common/src/CommonUtils.h">
        <itemTool>3</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.h">
        <itemTool>3</itemTool>
      </item>
    </conf>
    <conf name="Debug_gnu" type="2">
      <toolsSet>
        <compilerSet>GNU</compilerSet>
        <cRequired>true</cRequired>
        <cppRequired>true</cppRequired>
        <fortranRequired>false</fortranRequired>
        <platform>0</platform>
      </toolsSet>
      <compileType>
        <cCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-m32 -fPIC -shared -static-libgcc -mimpure-text -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE</commandLine>
        </cCompilerTool>
        <ccCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-m32 -fPIC -shared -static-libgcc -mimpure-text -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE</commandLine>
        </ccCompilerTool>
        <linkerTool>
          <output>dist/solaris-sparc.so</output>
          <stripSymbols>true</stripSymbols>
          <linkerNorunpath>false</linkerNorunpath>
          <linkerLibItems>
          </linkerLibItems>
        </linkerTool>
      </compileType>
      <item path="../.common/src/CommonUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.common/src/CommonUtils.h">
        <itemTool>3</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.h">
        <itemTool>3</itemTool>
      </item>
    </conf>
    <conf name="Debug_x64_gnu" type="2">
      <toolsSet>
        <compilerSet>GNU</compilerSet>
        <cRequired>true</cRequired>
        <cppRequired>true</cppRequired>
        <fortranRequired>false</fortranRequired>
        <platform>0</platform>
      </toolsSet>
      <compileType>
        <cCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <sixtyfourBits>true</sixtyfourBits>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-fPIC -shared -static-libgcc -mimpure-text -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE</commandLine>
        </cCompilerTool>
        <ccCompilerTool>
          <developmentMode>0</developmentMode>
          <stripSymbols>true</stripSymbols>
          <sixtyfourBits>true</sixtyfourBits>
          <includeDirectories>
            <directoryPath>/usr/java/include</directoryPath>
            <directoryPath>/usr/java/include/solaris</directoryPath>
          </includeDirectories>
          <commandLine>-fPIC -shared -static-libgcc -mimpure-text -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE</commandLine>
        </ccCompilerTool>
        <linkerTool>
          <output>dist/solaris-sparcv9.so</output>
          <stripSymbols>true</stripSymbols>
          <linkerNorunpath>false</linkerNorunpath>
          <linkerLibItems>
          </linkerLibItems>
        </linkerTool>
      </compileType>
      <item path="../.common/src/CommonUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.common/src/CommonUtils.h">
        <itemTool>3</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.c">
        <itemTool>0</itemTool>
      </item>
      <item path="../.unix/src/jni_UnixNativeUtils.h">
        <itemTool>3</itemTool>
      </item>
    </conf>
  </confs>
</configurationDescriptor>
