Warning: This file has been marked up for HTML

<!-- $ NMAS ClearPwd Login Client Method $ -->
<!--
 ******************************************************************************
 * Copyright (C) 2004 Novell, Inc. All Rights Reserved.
 *
 ******************************************************************************
-->
<!-- =======================================================================
<    ClearPwdLCM build file
<    ======================================================================= -->
<project name="ClearPwdLCM" default="debug" basedir=".">

    <property name="plugin.name"      value="ClearPwdLCM"/>
    <property name="manifest.version" value="1.0.0"/>
    <property name="jarname"          value="${plugin.name}.jar"/>

    <property name="lcm.top" location="."/>
    <property name="external" location="${lcm.top}/../../../external"/>
    <property name="src" location="${lcm.top}/src"/>
    
    <property name="release_path" location="${src}/classes"/>
    <property name="debug_path" location="${src}/classes_debug"/>
    <property name="lib" location="${src}/lib"/>
    <property name="lib.debug" location="${src}/lib_debug"/>
    
    <property name="doc.developer" value="doc"/>
    
    <property name="pkg" location="${lcm.top}/pkg"/>
    <property name="pkg.bin" location="${pkg}/bin"/>
    <property name="pkg.lib" location="${pkg}/lib"/>
    <property name="pkg.lib.debug" location="${pkg}/lib_debug"/>
    <property name="pkg.samples" location="${pkg}/samples"/>
    <property name="pkg.doc" location="${pkg}/doc"/>
    <property name="pkg.release" location="${pkg}/release"/>

    <!-- ===================================================================
    -    initialization
    -    =================================================================== -->
    <target name="init">
        <tstamp/>
    </target>

    <target name="help">
        <echo message="build targets for the NMAS ClearPwdLCM project"/>
        <echo message="   clean    - Cleans all generated class files"/>
        <echo message="   cleanpkg - Cleans all files from the package directroy"/>
        <echo message="   compile  - Builds debug and release classes and jar files"/>
        <echo message="   doc      - Builds javadoc"/>
        <echo message="   install  - Copies generated files to package area (pkg directory)"/>
        <echo message="   all      - Synonym for clean, cleanpkg, compile, doc, install"/>
    </target>
    
    <!-- ===================================================================
    -    clean class files
    -    =================================================================== -->
    <target name="clean" depends="init">
        <echo message="Cleaning files"/>
        <delete dir="${release_path}"/>
        <delete dir="${debug_path}"/>
        <delete dir="${lib}"/>
        <delete dir="${lib.debug}"/>
    </target>

    <target name="cleanpkg" depends="init">
        <echo message="Cleaning package files"/>
        <delete dir="${pkg}"/>
    </target>

    <target name="all" depends="clean, cleanpkg, compile, doc, install, install_debug"/>
 
    <target name="compile" depends="debug, release"/>
    
    <target name="doc" depends="docapi"/>
    
    <!-- ===================================================================
    -    compile java files - release
    -    =================================================================== -->
    <target name="release" depends="init">
        <mkdir dir="${release_path}"/>
        <javac  srcdir="${src}"
                includes="**/*.java"
                destdir="${release_path}"
                deprecation="off"
                debug="off"
                optimize="on">
                <classpath>
                   <pathelement location="${external}/LCM/servlet.jar"/>
                   <pathelement location="${external}/LCM/nmasclient.jar"/>
                </classpath>            
        </javac>
        
        <echo message="Creating RELEASE ClearPwdLCM.jar file"/>
        <mkdir dir="${lib}"/>
        <jar jarfile="${lib}/${jarname}"
            basedir="${release_path}"
        />
    </target>

    <!-- ===================================================================
    -    compile java files - debug
    -    =================================================================== -->
    <target name="debug" depends="init">
        <mkdir dir="${debug_path}"/>
        <javac  srcdir="${src}"
                includes="**/*.java"
                destdir="${debug_path}"
                deprecation="on"
                debug="on"
                optimize="off">
                <classpath>
                   <pathelement location="${external}/LCM/servlet.jar"/>
                   <pathelement location="${external}/LCM/nmasclient.jar"/>
                </classpath>            
        </javac>
        
        <echo message="Creating DEBUG ClearPwdLCM.jar file"/>
        <mkdir dir="${lib.debug}"/>
        <jar jarfile="${lib.debug}/${jarname}"
            basedir="${debug_path}"
        />
    </target>

    <!-- ===================================================================
    -    create javadoc for NMAS ClearPwdLCM classes
    -    =================================================================== -->
    <target name="docapi">
        <echo message="Creating distribution NMAS ClearPwdLCM javadoc"/>
        <javadoc
            sourcepath="${src}"
            destdir="${pkg.doc}"
            classpath="${external}/LCM/servlet.jar;${external}/LCM/nmasclient.jar"
            packagenames="com/novell/security/nmas/lcm/Clrpwd"
            overview="overview.html"
            Windowtitle="Java NMAS Clear Password LCM Classes"
            Splitindex="true"
            Doctitle="Novell, Inc. Java NMAS ClearPasswordLCM Classes"
            Header="&lt;b>NMAS ClearPwdLCM Classes&lt;/b>&lt;br>&lt;font size=-1>NMAS ClearPwdLCM Classes&lt;/font>"
            Bottom="&lt;font size=-1>Copyright &#169; 2004 Novell, Inc. All Rights Reserved. &lt;br>Novell, Inc.&lt;br>1800 South Novell Place&lt;br>Provo, Ut 84606&lt;br>Phone: (801) 861-5000&lt;/font>"
        />
    </target>

    <!-- ===================================================================
    -    Creates the installation (pkg) directory
    -    Build the release ClearPwdLCM.npg
    -    =================================================================== -->
    <target name="install" depends="compile">
        <!-- Setup the main gadget version for all gadgets -->
        <delete dir="${pkg.release}"/>
        <mkdir dir="${pkg.release}"/>
        <mkdir dir="${pkg.release}/gadgets"/>
        <mkdir dir="${pkg.release}/gadgets/gadgetsetup"/>

        <!-- ChallengeResponseLCM.npg -->
        <delete file="${pkg.release}/gadgets/gadgetsetup/GadgetSetup.xml"/>
        <copy preservelastmodified="no" file="${lcm.top}/GadgetSetup.xml" tofile="${pkg.release}/gadgets/gadgetsetup/GadgetSetup.xml"/>
        <echo file="${pkg.release}/gadgets/gadgetsetup/GadgetSetup.xml" append="true">&lt;GADGETVERSION&gt;${manifest.version}&lt;/GADGETVERSION&gt;&lt;/SETUPDATA&gt;</echo>
        <zip zipfile="${pkg.release}/${plugin.name}.npg" filesonly="true">                       
           <zipfileset dir="${src}/lib" prefix="bin/lib" includes="${jarname}"/>
           <zipfileset dir="${lcm.top}/xsl" prefix="bin/resources"/>         
           <zipfileset dir="${pkg.release}/gadgets/gadgetsetup" includes="GadgetSetup.xml" fullpath="GadgetSetup.xml"/>         
        </zip>

        <!-- Clean up -->
        <delete dir="${pkg.release}/gadgets"/>
    </target>

    <!-- ===================================================================
    -    Creates the installation (pkg) directory
    -    Build the debug ChallengeResponseLCM.npg
    -    =================================================================== -->
    <target name="install_debug" depends="compile">
        <!-- Setup the main gadget version for all gadgets -->
        <delete dir="${pkg.release}/debug"/>
        <mkdir dir="${pkg.release}/debug"/>
        <mkdir dir="${pkg.release}/debug/gadgets"/>
        <mkdir dir="${pkg.release}/debug/gadgets/gadgetsetup"/>

        <!-- ChallengeResponseLCM.npg -->
        <delete file="${pkg.release}/debug/gadgets/gadgetsetup/GadgetSetup.xml"/>
        <copy preservelastmodified="no" file="${lcm.top}/GadgetSetup.xml" tofile="${pkg.release}/debug/gadgets/gadgetsetup/GadgetSetup.xml"/>
        <echo file="${pkg.release}/debug/gadgets/gadgetsetup/GadgetSetup.xml" append="true">&lt;GADGETVERSION&gt;${manifest.version}&lt;/GADGETVERSION&gt;&lt;/SETUPDATA&gt;</echo>
        <zip zipfile="${pkg.release}/debug/${plugin.name}.npg" filesonly="true">                       
           <zipfileset dir="${src}/lib_debug" prefix="bin/lib" includes="${jarname}"/>
           <zipfileset dir="${lcm.top}/xsl" prefix="bin/resources"/>         
           <zipfileset dir="${pkg.release}/debug/gadgets/gadgetsetup" includes="GadgetSetup.xml" fullpath="GadgetSetup.xml"/>         
        </zip>

        <!-- Clean up -->
        <delete dir="${pkg.release}/debug/gadgets"/>
    </target>

</project>