Fixing #270763 - Move clang-tidy integration to nb contrib release82
authorIlia Gromov <ilia@netbeans.org>
Wed, 07 Jun 2017 17:36:09 +0300
branchrelease82
changeset 1842199d684ee4e50
parent 18420 3749f55cbf4b
child 18422 0bdf8b66a76b
Fixing #270763 - Move clang-tidy integration to nb contrib
(transplanted from af737f181106f99c88fbba3a7e80857547d31b29)
analysis.clangtidy.Linux_x86_64/build.xml
analysis.clangtidy.Linux_x86_64/manifest.mf
analysis.clangtidy.Linux_x86_64/nbproject/project.properties
analysis.clangtidy.Linux_x86_64/nbproject/project.xml
analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/Bundle.properties
analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/LICENSE.TXT
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/build.xml
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/manifest.mf
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/build-impl.xml
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/genfiles.properties
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/platform.properties
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/project.properties
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/project.xml
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/Bundle.properties
clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/LICENSE.TXT
ssinstaller/engine/nbproject/build-impl.xml
ssinstaller/engine/nbproject/genfiles.properties
ssinstaller/engine/nbproject/project.properties
     1.1 --- a/analysis.clangtidy.Linux_x86_64/build.xml	Wed Jun 07 14:08:17 2017 +0300
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,8 +0,0 @@
     1.4 -<?xml version="1.0" encoding="UTF-8"?>
     1.5 -<!-- You may freely edit this file. See harness/README in the NetBeans platform -->
     1.6 -<!-- for some information on what you could do (e.g. targets to override). -->
     1.7 -<!-- If you delete this file and reopen the project it will be recreated. -->
     1.8 -<project name="contrib/analysis.clangtidy.Linux_x86_64" default="netbeans" basedir=".">
     1.9 -    <description>Builds, tests, and runs the project com.oracle.tools.analysis.clangtidy.Linux_x86_64.</description>
    1.10 -    <import file="../../nbbuild/templates/projectized.xml"/>
    1.11 -</project>
     2.1 --- a/analysis.clangtidy.Linux_x86_64/manifest.mf	Wed Jun 07 14:08:17 2017 +0300
     2.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.3 @@ -1,6 +0,0 @@
     2.4 -Manifest-Version: 1.0
     2.5 -AutoUpdate-Show-In-Client: true
     2.6 -OpenIDE-Module: org.netbeans.modules.analysis.clangtidy.Linux_x86_64
     2.7 -OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/analysis/clangtidy/Linux_x86_64/Bundle.properties
     2.8 -OpenIDE-Module-Specification-Version: 1.0.2
     2.9 -
     3.1 --- a/analysis.clangtidy.Linux_x86_64/nbproject/project.properties	Wed Jun 07 14:08:17 2017 +0300
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,7 +0,0 @@
     3.4 -javac.source=1.7
     3.5 -javac.compilerargs=-Xlint -Xlint:-serial
     3.6 -license.file=src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/LICENSE.TXT
     3.7 -nbm.executable.files=clang-tidy/**
     3.8 -nbm.homepage=http://clang.llvm.org/extra/clang-tidy/
     3.9 -nbm.module.author=Ilia Gromov
    3.10 -nbm.needs.restart=true
     4.1 --- a/analysis.clangtidy.Linux_x86_64/nbproject/project.xml	Wed Jun 07 14:08:17 2017 +0300
     4.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.3 @@ -1,11 +0,0 @@
     4.4 -<?xml version="1.0" encoding="UTF-8"?>
     4.5 -<project xmlns="http://www.netbeans.org/ns/project/1">
     4.6 -    <type>org.netbeans.modules.apisupport.project</type>
     4.7 -    <configuration>
     4.8 -        <data xmlns="http://www.netbeans.org/ns/nb-module-project/3">
     4.9 -            <code-name-base>org.netbeans.modules.analysis.clangtidy.Linux_x86_64</code-name-base>
    4.10 -            <module-dependencies/>
    4.11 -            <public-packages/>
    4.12 -        </data>
    4.13 -    </configuration>
    4.14 -</project>
     5.1 --- a/analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/Bundle.properties	Wed Jun 07 14:08:17 2017 +0300
     5.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.3 @@ -1,3 +0,0 @@
     5.4 -OpenIDE-Module-Display-Category=Analysis tools
     5.5 -OpenIDE-Module-Name=Linux x86_64 clang-tidy
     5.6 -OpenIDE-Module-Short-Description=Bundled clang-tidy binaries for Linux x86-64
     6.1 --- a/analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/LICENSE.TXT	Wed Jun 07 14:08:17 2017 +0300
     6.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.3 @@ -1,157 +0,0 @@
     6.4 -==============================================================================
     6.5 -LLVM Release License
     6.6 -==============================================================================
     6.7 -University of Illinois/NCSA
     6.8 -Open Source License
     6.9 -
    6.10 -Copyright (c) 2003-2016 University of Illinois at Urbana-Champaign.
    6.11 -All rights reserved.
    6.12 -
    6.13 -Developed by:
    6.14 -
    6.15 -    LLVM Team
    6.16 -
    6.17 -    University of Illinois at Urbana-Champaign
    6.18 -
    6.19 -    http://llvm.org
    6.20 -
    6.21 -Permission is hereby granted, free of charge, to any person obtaining a copy of
    6.22 -this software and associated documentation files (the "Software"), to deal with
    6.23 -the Software without restriction, including without limitation the rights to
    6.24 -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
    6.25 -of the Software, and to permit persons to whom the Software is furnished to do
    6.26 -so, subject to the following conditions:
    6.27 -
    6.28 -    * Redistributions of source code must retain the above copyright notice,
    6.29 -      this list of conditions and the following disclaimers.
    6.30 -
    6.31 -    * Redistributions in binary form must reproduce the above copyright notice,
    6.32 -      this list of conditions and the following disclaimers in the
    6.33 -      documentation and/or other materials provided with the distribution.
    6.34 -
    6.35 -    * Neither the names of the LLVM Team, University of Illinois at
    6.36 -      Urbana-Champaign, nor the names of its contributors may be used to
    6.37 -      endorse or promote products derived from this Software without specific
    6.38 -      prior written permission.
    6.39 -
    6.40 -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    6.41 -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
    6.42 -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
    6.43 -CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    6.44 -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    6.45 -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
    6.46 -SOFTWARE.
    6.47 -
    6.48 -==============================================================================
    6.49 -Copyrights and Licenses for Third Party Software Distributed with LLVM:
    6.50 -==============================================================================
    6.51 -The LLVM software contains code written by third parties.  Such software will
    6.52 -have its own individual LICENSE.TXT file in the directory in which it appears.
    6.53 -This file will describe the copyrights, license, and restrictions which apply
    6.54 -to that code.
    6.55 -
    6.56 -The disclaimer of warranty in the University of Illinois Open Source License
    6.57 -applies to all code in the LLVM Distribution, and nothing in any of the
    6.58 -other licenses gives permission to use the names of the LLVM Team or the
    6.59 -University of Illinois to endorse or promote products derived from this
    6.60 -Software.
    6.61 -
    6.62 -The following pieces of software have additional or alternate copyrights,
    6.63 -licenses, and/or restrictions:
    6.64 -
    6.65 -Program             Directory
    6.66 --------             ---------
    6.67 -Autoconf            llvm/autoconf
    6.68 -                    llvm/projects/ModuleMaker/autoconf
    6.69 -Google Test         llvm/utils/unittest/googletest
    6.70 -OpenBSD regex       llvm/lib/Support/{reg*, COPYRIGHT.regex}
    6.71 -pyyaml tests        llvm/test/YAMLParser/{*.data, LICENSE.TXT}
    6.72 -ARM contributions   llvm/lib/Target/ARM/LICENSE.TXT
    6.73 -md5 contributions   llvm/lib/Support/MD5.cpp llvm/include/llvm/Support/MD5.h
    6.74 -
    6.75 -==============================================================================
    6.76 -LLVM Release License
    6.77 -==============================================================================
    6.78 -University of Illinois/NCSA
    6.79 -Open Source License
    6.80 -
    6.81 -Copyright (c) 2007-2016 University of Illinois at Urbana-Champaign.
    6.82 -All rights reserved.
    6.83 -
    6.84 -Developed by:
    6.85 -
    6.86 -    LLVM Team
    6.87 -
    6.88 -    University of Illinois at Urbana-Champaign
    6.89 -
    6.90 -    http://llvm.org
    6.91 -
    6.92 -Permission is hereby granted, free of charge, to any person obtaining a copy of
    6.93 -this software and associated documentation files (the "Software"), to deal with
    6.94 -the Software without restriction, including without limitation the rights to
    6.95 -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
    6.96 -of the Software, and to permit persons to whom the Software is furnished to do
    6.97 -so, subject to the following conditions:
    6.98 -
    6.99 -    * Redistributions of source code must retain the above copyright notice,
   6.100 -      this list of conditions and the following disclaimers.
   6.101 -
   6.102 -    * Redistributions in binary form must reproduce the above copyright notice,
   6.103 -      this list of conditions and the following disclaimers in the
   6.104 -      documentation and/or other materials provided with the distribution.
   6.105 -
   6.106 -    * Neither the names of the LLVM Team, University of Illinois at
   6.107 -      Urbana-Champaign, nor the names of its contributors may be used to
   6.108 -      endorse or promote products derived from this Software without specific
   6.109 -      prior written permission.
   6.110 -
   6.111 -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
   6.112 -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
   6.113 -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
   6.114 -CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
   6.115 -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
   6.116 -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
   6.117 -SOFTWARE.
   6.118 -
   6.119 -==============================================================================
   6.120 -The LLVM software contains code written by third parties.  Such software will
   6.121 -have its own individual LICENSE.TXT file in the directory in which it appears.
   6.122 -This file will describe the copyrights, license, and restrictions which apply
   6.123 -to that code.
   6.124 -
   6.125 -The disclaimer of warranty in the University of Illinois Open Source License
   6.126 -applies to all code in the LLVM Distribution, and nothing in any of the
   6.127 -other licenses gives permission to use the names of the LLVM Team or the
   6.128 -University of Illinois to endorse or promote products derived from this
   6.129 -Software.
   6.130 -
   6.131 -The following pieces of software have additional or alternate copyrights,
   6.132 -licenses, and/or restrictions:
   6.133 -
   6.134 -Program             Directory
   6.135 --------             ---------
   6.136 -clang-tidy          clang-tidy/cert
   6.137 -
   6.138 -------------------------------------------------------------------------------
   6.139 -clang-tidy CERT Files
   6.140 -------------------------------------------------------------------------------
   6.141 -All clang-tidy files are licensed under the LLVM license with the following
   6.142 -additions:
   6.143 -
   6.144 -Any file referencing a CERT Secure Coding guideline:
   6.145 -Please allow this letter to serve as confirmation that open source projects on
   6.146 -http://llvm.org are permitted to link via hypertext to the CERT(R) secure coding
   6.147 -guidelines available at https://www.securecoding.cert.org.   
   6.148 -
   6.149 -The foregoing is permitted by the Terms of Use as follows:
   6.150 -"Linking to the Service
   6.151 -Because we update many of our Web documents regularly, we would prefer that you
   6.152 -link to our Web pages whenever possible rather than reproduce them. It is not
   6.153 -necessary to request permission to make referential hypertext links to The
   6.154 -Service."
   6.155 -http://www.sei.cmu.edu/legal/ip/index.cfm.
   6.156 -
   6.157 -Please allow this letter to also confirm that no formal permission is required
   6.158 -to reproduce the title of the content being linked to, nor to reproduce any
   6.159 -de Minimis description of such content.
   6.160 -
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/build.xml	Wed Jun 07 17:36:09 2017 +0300
     7.3 @@ -0,0 +1,8 @@
     7.4 +<?xml version="1.0" encoding="UTF-8"?>
     7.5 +<!-- You may freely edit this file. See harness/README in the NetBeans platform -->
     7.6 +<!-- for some information on what you could do (e.g. targets to override). -->
     7.7 +<!-- If you delete this file and reopen the project it will be recreated. -->
     7.8 +<project name="analysis.clangtidy.Linux_x86_64" default="netbeans" basedir=".">
     7.9 +    <description>Builds, tests, and runs the project analysis.clangtidy.Linux_x86_64.</description>
    7.10 +    <import file="nbproject/build-impl.xml"/>
    7.11 +</project>
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/manifest.mf	Wed Jun 07 17:36:09 2017 +0300
     8.3 @@ -0,0 +1,6 @@
     8.4 +Manifest-Version: 1.0
     8.5 +AutoUpdate-Show-In-Client: true
     8.6 +OpenIDE-Module: org.netbeans.modules.analysis.clangtidy.Linux_x86_64
     8.7 +OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/analysis/clangtidy/Linux_x86_64/Bundle.properties
     8.8 +OpenIDE-Module-Specification-Version: 1.0.2
     8.9 +
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/build-impl.xml	Wed Jun 07 17:36:09 2017 +0300
     9.3 @@ -0,0 +1,27 @@
     9.4 +<?xml version="1.0" encoding="UTF-8"?>
     9.5 +<!--
     9.6 +*** GENERATED FROM project.xml - DO NOT EDIT  ***
     9.7 +***         EDIT ../build.xml INSTEAD         ***
     9.8 +-->
     9.9 +<project name="org.netbeans.modules.analysis.clangtidy.Linux_x86_64-impl" basedir="..">
    9.10 +    <property file="nbproject/private/platform-private.properties"/>
    9.11 +    <property file="nbproject/platform.properties"/>
    9.12 +    <macrodef name="property" uri="http://www.netbeans.org/ns/nb-module-project/2">
    9.13 +        <attribute name="name"/>
    9.14 +        <attribute name="value"/>
    9.15 +        <sequential>
    9.16 +            <property name="@{name}" value="${@{value}}"/>
    9.17 +        </sequential>
    9.18 +    </macrodef>
    9.19 +    <property file="${user.properties.file}"/>
    9.20 +    <nbmproject2:property name="harness.dir" value="nbplatform.${nbplatform.active}.harness.dir" xmlns:nbmproject2="http://www.netbeans.org/ns/nb-module-project/2"/>
    9.21 +    <nbmproject2:property name="netbeans.dest.dir" value="nbplatform.${nbplatform.active}.netbeans.dest.dir" xmlns:nbmproject2="http://www.netbeans.org/ns/nb-module-project/2"/>
    9.22 +    <fail message="You must define 'nbplatform.${nbplatform.active}.harness.dir'">
    9.23 +        <condition>
    9.24 +            <not>
    9.25 +                <available file="${harness.dir}" type="dir"/>
    9.26 +            </not>
    9.27 +        </condition>
    9.28 +    </fail>
    9.29 +    <import file="${harness.dir}/build.xml"/>
    9.30 +</project>
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/genfiles.properties	Wed Jun 07 17:36:09 2017 +0300
    10.3 @@ -0,0 +1,5 @@
    10.4 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
    10.5 +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
    10.6 +nbproject/build-impl.xml.data.CRC32=d77a417d
    10.7 +nbproject/build-impl.xml.script.CRC32=395569c1
    10.8 +nbproject/build-impl.xml.stylesheet.CRC32=68e521fc@2.72.1
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/platform.properties	Wed Jun 07 17:36:09 2017 +0300
    11.3 @@ -0,0 +1,16 @@
    11.4 +cluster.path=\
    11.5 +    ${nbplatform.active.dir}/profiler:\
    11.6 +    ${nbplatform.active.dir}/nb:\
    11.7 +    ${nbplatform.active.dir}/websvccommon:\
    11.8 +    ${nbplatform.active.dir}/java:\
    11.9 +    ${nbplatform.active.dir}/platform:\
   11.10 +    ${nbplatform.active.dir}/cnd:\
   11.11 +    ${nbplatform.active.dir}/ergonomics:\
   11.12 +    ${nbplatform.active.dir}/cndext:\
   11.13 +    ${nbplatform.active.dir}/apisupport:\
   11.14 +    ${nbplatform.active.dir}/extide:\
   11.15 +    ${nbplatform.active.dir}/javafx:\
   11.16 +    ${nbplatform.active.dir}/ide:\
   11.17 +    ${nbplatform.active.dir}/dlight:\
   11.18 +    ${nbplatform.active.dir}/harness
   11.19 +nbplatform.active=default
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/project.properties	Wed Jun 07 17:36:09 2017 +0300
    12.3 @@ -0,0 +1,7 @@
    12.4 +javac.source=1.7
    12.5 +javac.compilerargs=-Xlint -Xlint:-serial
    12.6 +license.file=src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/LICENSE.TXT
    12.7 +nbm.executable.files=clang-tidy/**
    12.8 +nbm.homepage=http://clang.llvm.org/extra/clang-tidy/
    12.9 +nbm.module.author=Ilia Gromov
   12.10 +nbm.needs.restart=true
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/nbproject/project.xml	Wed Jun 07 17:36:09 2017 +0300
    13.3 @@ -0,0 +1,12 @@
    13.4 +<?xml version="1.0" encoding="UTF-8"?>
    13.5 +<project xmlns="http://www.netbeans.org/ns/project/1">
    13.6 +    <type>org.netbeans.modules.apisupport.project</type>
    13.7 +    <configuration>
    13.8 +        <data xmlns="http://www.netbeans.org/ns/nb-module-project/3">
    13.9 +            <code-name-base>org.netbeans.modules.analysis.clangtidy.Linux_x86_64</code-name-base>
   13.10 +            <standalone/>
   13.11 +            <module-dependencies/>
   13.12 +            <public-packages/>
   13.13 +        </data>
   13.14 +    </configuration>
   13.15 +</project>
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/Bundle.properties	Wed Jun 07 17:36:09 2017 +0300
    14.3 @@ -0,0 +1,3 @@
    14.4 +OpenIDE-Module-Display-Category=Analysis tools
    14.5 +OpenIDE-Module-Name=Linux x86_64 clang-tidy
    14.6 +OpenIDE-Module-Short-Description=Bundled clang-tidy binaries for Linux x86-64
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/clang-tidy.wrappers/analysis.clangtidy.Linux_x86_64/src/org/netbeans/modules/analysis/clangtidy/Linux_x86_64/LICENSE.TXT	Wed Jun 07 17:36:09 2017 +0300
    15.3 @@ -0,0 +1,157 @@
    15.4 +==============================================================================
    15.5 +LLVM Release License
    15.6 +==============================================================================
    15.7 +University of Illinois/NCSA
    15.8 +Open Source License
    15.9 +
   15.10 +Copyright (c) 2003-2016 University of Illinois at Urbana-Champaign.
   15.11 +All rights reserved.
   15.12 +
   15.13 +Developed by:
   15.14 +
   15.15 +    LLVM Team
   15.16 +
   15.17 +    University of Illinois at Urbana-Champaign
   15.18 +
   15.19 +    http://llvm.org
   15.20 +
   15.21 +Permission is hereby granted, free of charge, to any person obtaining a copy of
   15.22 +this software and associated documentation files (the "Software"), to deal with
   15.23 +the Software without restriction, including without limitation the rights to
   15.24 +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
   15.25 +of the Software, and to permit persons to whom the Software is furnished to do
   15.26 +so, subject to the following conditions:
   15.27 +
   15.28 +    * Redistributions of source code must retain the above copyright notice,
   15.29 +      this list of conditions and the following disclaimers.
   15.30 +
   15.31 +    * Redistributions in binary form must reproduce the above copyright notice,
   15.32 +      this list of conditions and the following disclaimers in the
   15.33 +      documentation and/or other materials provided with the distribution.
   15.34 +
   15.35 +    * Neither the names of the LLVM Team, University of Illinois at
   15.36 +      Urbana-Champaign, nor the names of its contributors may be used to
   15.37 +      endorse or promote products derived from this Software without specific
   15.38 +      prior written permission.
   15.39 +
   15.40 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
   15.41 +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
   15.42 +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
   15.43 +CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
   15.44 +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
   15.45 +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
   15.46 +SOFTWARE.
   15.47 +
   15.48 +==============================================================================
   15.49 +Copyrights and Licenses for Third Party Software Distributed with LLVM:
   15.50 +==============================================================================
   15.51 +The LLVM software contains code written by third parties.  Such software will
   15.52 +have its own individual LICENSE.TXT file in the directory in which it appears.
   15.53 +This file will describe the copyrights, license, and restrictions which apply
   15.54 +to that code.
   15.55 +
   15.56 +The disclaimer of warranty in the University of Illinois Open Source License
   15.57 +applies to all code in the LLVM Distribution, and nothing in any of the
   15.58 +other licenses gives permission to use the names of the LLVM Team or the
   15.59 +University of Illinois to endorse or promote products derived from this
   15.60 +Software.
   15.61 +
   15.62 +The following pieces of software have additional or alternate copyrights,
   15.63 +licenses, and/or restrictions:
   15.64 +
   15.65 +Program             Directory
   15.66 +-------             ---------
   15.67 +Autoconf            llvm/autoconf
   15.68 +                    llvm/projects/ModuleMaker/autoconf
   15.69 +Google Test         llvm/utils/unittest/googletest
   15.70 +OpenBSD regex       llvm/lib/Support/{reg*, COPYRIGHT.regex}
   15.71 +pyyaml tests        llvm/test/YAMLParser/{*.data, LICENSE.TXT}
   15.72 +ARM contributions   llvm/lib/Target/ARM/LICENSE.TXT
   15.73 +md5 contributions   llvm/lib/Support/MD5.cpp llvm/include/llvm/Support/MD5.h
   15.74 +
   15.75 +==============================================================================
   15.76 +LLVM Release License
   15.77 +==============================================================================
   15.78 +University of Illinois/NCSA
   15.79 +Open Source License
   15.80 +
   15.81 +Copyright (c) 2007-2016 University of Illinois at Urbana-Champaign.
   15.82 +All rights reserved.
   15.83 +
   15.84 +Developed by:
   15.85 +
   15.86 +    LLVM Team
   15.87 +
   15.88 +    University of Illinois at Urbana-Champaign
   15.89 +
   15.90 +    http://llvm.org
   15.91 +
   15.92 +Permission is hereby granted, free of charge, to any person obtaining a copy of
   15.93 +this software and associated documentation files (the "Software"), to deal with
   15.94 +the Software without restriction, including without limitation the rights to
   15.95 +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
   15.96 +of the Software, and to permit persons to whom the Software is furnished to do
   15.97 +so, subject to the following conditions:
   15.98 +
   15.99 +    * Redistributions of source code must retain the above copyright notice,
  15.100 +      this list of conditions and the following disclaimers.
  15.101 +
  15.102 +    * Redistributions in binary form must reproduce the above copyright notice,
  15.103 +      this list of conditions and the following disclaimers in the
  15.104 +      documentation and/or other materials provided with the distribution.
  15.105 +
  15.106 +    * Neither the names of the LLVM Team, University of Illinois at
  15.107 +      Urbana-Champaign, nor the names of its contributors may be used to
  15.108 +      endorse or promote products derived from this Software without specific
  15.109 +      prior written permission.
  15.110 +
  15.111 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15.112 +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
  15.113 +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
  15.114 +CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  15.115 +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  15.116 +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
  15.117 +SOFTWARE.
  15.118 +
  15.119 +==============================================================================
  15.120 +The LLVM software contains code written by third parties.  Such software will
  15.121 +have its own individual LICENSE.TXT file in the directory in which it appears.
  15.122 +This file will describe the copyrights, license, and restrictions which apply
  15.123 +to that code.
  15.124 +
  15.125 +The disclaimer of warranty in the University of Illinois Open Source License
  15.126 +applies to all code in the LLVM Distribution, and nothing in any of the
  15.127 +other licenses gives permission to use the names of the LLVM Team or the
  15.128 +University of Illinois to endorse or promote products derived from this
  15.129 +Software.
  15.130 +
  15.131 +The following pieces of software have additional or alternate copyrights,
  15.132 +licenses, and/or restrictions:
  15.133 +
  15.134 +Program             Directory
  15.135 +-------             ---------
  15.136 +clang-tidy          clang-tidy/cert
  15.137 +
  15.138 +------------------------------------------------------------------------------
  15.139 +clang-tidy CERT Files
  15.140 +------------------------------------------------------------------------------
  15.141 +All clang-tidy files are licensed under the LLVM license with the following
  15.142 +additions:
  15.143 +
  15.144 +Any file referencing a CERT Secure Coding guideline:
  15.145 +Please allow this letter to serve as confirmation that open source projects on
  15.146 +http://llvm.org are permitted to link via hypertext to the CERT(R) secure coding
  15.147 +guidelines available at https://www.securecoding.cert.org.   
  15.148 +
  15.149 +The foregoing is permitted by the Terms of Use as follows:
  15.150 +"Linking to the Service
  15.151 +Because we update many of our Web documents regularly, we would prefer that you
  15.152 +link to our Web pages whenever possible rather than reproduce them. It is not
  15.153 +necessary to request permission to make referential hypertext links to The
  15.154 +Service."
  15.155 +http://www.sei.cmu.edu/legal/ip/index.cfm.
  15.156 +
  15.157 +Please allow this letter to also confirm that no formal permission is required
  15.158 +to reproduce the title of the content being linked to, nor to reproduce any
  15.159 +de Minimis description of such content.
  15.160 +
    16.1 --- a/ssinstaller/engine/nbproject/build-impl.xml	Wed Jun 07 14:08:17 2017 +0300
    16.2 +++ b/ssinstaller/engine/nbproject/build-impl.xml	Wed Jun 07 17:36:09 2017 +0300
    16.3 @@ -12,14 +12,21 @@
    16.4    - execution
    16.5    - debugging
    16.6    - javadoc
    16.7 -  - junit compilation
    16.8 -  - junit execution
    16.9 -  - junit debugging
   16.10 +  - test compilation
   16.11 +  - test execution
   16.12 +  - test debugging
   16.13    - applet
   16.14    - cleanup
   16.15  
   16.16          -->
   16.17  <project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="Sun_Studio_Installer_Engine-impl">
   16.18 +    <fail message="Please build using Ant 1.8.0 or higher.">
   16.19 +        <condition>
   16.20 +            <not>
   16.21 +                <antversion atleast="1.8.0"/>
   16.22 +            </not>
   16.23 +        </condition>
   16.24 +    </fail>
   16.25      <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
   16.26      <!-- 
   16.27                  ======================
   16.28 @@ -39,28 +46,78 @@
   16.29          <property file="${user.properties.file}"/>
   16.30          <!-- The two properties below are usually overridden -->
   16.31          <!-- by the active platform. Just a fallback. -->
   16.32 -        <property name="default.javac.source" value="1.4"/>
   16.33 -        <property name="default.javac.target" value="1.4"/>
   16.34 +        <property name="default.javac.source" value="1.6"/>
   16.35 +        <property name="default.javac.target" value="1.6"/>
   16.36      </target>
   16.37      <target depends="-pre-init,-init-private,-init-user" name="-init-project">
   16.38          <property file="nbproject/configs/${config}.properties"/>
   16.39          <property file="nbproject/project.properties"/>
   16.40      </target>
   16.41      <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
   16.42 +        <property name="platform.java" value="${java.home}/bin/java"/>
   16.43          <available file="${manifest.file}" property="manifest.available"/>
   16.44 -        <condition property="manifest.available+main.class">
   16.45 +        <condition property="splashscreen.available">
   16.46              <and>
   16.47 -                <isset property="manifest.available"/>
   16.48 +                <not>
   16.49 +                    <equals arg1="${application.splash}" arg2="" trim="true"/>
   16.50 +                </not>
   16.51 +                <available file="${application.splash}"/>
   16.52 +            </and>
   16.53 +        </condition>
   16.54 +        <condition property="main.class.available">
   16.55 +            <and>
   16.56                  <isset property="main.class"/>
   16.57                  <not>
   16.58                      <equals arg1="${main.class}" arg2="" trim="true"/>
   16.59                  </not>
   16.60              </and>
   16.61          </condition>
   16.62 -        <condition property="manifest.available+main.class+mkdist.available">
   16.63 +        <condition property="profile.available">
   16.64              <and>
   16.65 -                <istrue value="${manifest.available+main.class}"/>
   16.66 +                <isset property="javac.profile"/>
   16.67 +                <length length="0" string="${javac.profile}" when="greater"/>
   16.68 +                <matches pattern="((1\.[89])|9)(\..*)?" string="${javac.source}"/>
   16.69 +            </and>
   16.70 +        </condition>
   16.71 +        <condition property="do.archive">
   16.72 +            <or>
   16.73 +                <not>
   16.74 +                    <istrue value="${jar.archive.disabled}"/>
   16.75 +                </not>
   16.76 +                <istrue value="${not.archive.disabled}"/>
   16.77 +            </or>
   16.78 +        </condition>
   16.79 +        <condition property="do.mkdist">
   16.80 +            <and>
   16.81 +                <isset property="do.archive"/>
   16.82                  <isset property="libs.CopyLibs.classpath"/>
   16.83 +                <not>
   16.84 +                    <istrue value="${mkdist.disabled}"/>
   16.85 +                </not>
   16.86 +            </and>
   16.87 +        </condition>
   16.88 +        <condition property="do.archive+manifest.available">
   16.89 +            <and>
   16.90 +                <isset property="manifest.available"/>
   16.91 +                <istrue value="${do.archive}"/>
   16.92 +            </and>
   16.93 +        </condition>
   16.94 +        <condition property="do.archive+main.class.available">
   16.95 +            <and>
   16.96 +                <isset property="main.class.available"/>
   16.97 +                <istrue value="${do.archive}"/>
   16.98 +            </and>
   16.99 +        </condition>
  16.100 +        <condition property="do.archive+splashscreen.available">
  16.101 +            <and>
  16.102 +                <isset property="splashscreen.available"/>
  16.103 +                <istrue value="${do.archive}"/>
  16.104 +            </and>
  16.105 +        </condition>
  16.106 +        <condition property="do.archive+profile.available">
  16.107 +            <and>
  16.108 +                <isset property="profile.available"/>
  16.109 +                <istrue value="${do.archive}"/>
  16.110              </and>
  16.111          </condition>
  16.112          <condition property="have.tests">
  16.113 @@ -87,6 +144,7 @@
  16.114              </and>
  16.115          </condition>
  16.116          <property name="run.jvmargs" value=""/>
  16.117 +        <property name="run.jvmargs.ide" value=""/>
  16.118          <property name="javac.compilerargs" value=""/>
  16.119          <property name="work.dir" value="${basedir}"/>
  16.120          <condition property="no.deps">
  16.121 @@ -98,6 +156,8 @@
  16.122          <property name="javadoc.preview" value="true"/>
  16.123          <property name="application.args" value=""/>
  16.124          <property name="source.encoding" value="${file.encoding}"/>
  16.125 +        <property name="runtime.encoding" value="${source.encoding}"/>
  16.126 +        <property name="manifest.encoding" value="${source.encoding}"/>
  16.127          <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
  16.128              <and>
  16.129                  <isset property="javadoc.encoding"/>
  16.130 @@ -113,12 +173,58 @@
  16.131          <condition property="do.depend.true">
  16.132              <istrue value="${do.depend}"/>
  16.133          </condition>
  16.134 -        <condition else="" property="javac.compilerargs.jaxws" value="-Djava.endorsed.dirs='${jaxws.endorsed.dir}'">
  16.135 +        <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
  16.136 +        <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
  16.137              <and>
  16.138 -                <isset property="jaxws.endorsed.dir"/>
  16.139 -                <available file="nbproject/jaxws-build.xml"/>
  16.140 +                <isset property="endorsed.classpath"/>
  16.141 +                <not>
  16.142 +                    <equals arg1="${endorsed.classpath}" arg2="" trim="true"/>
  16.143 +                </not>
  16.144              </and>
  16.145          </condition>
  16.146 +        <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}">
  16.147 +            <isset property="profile.available"/>
  16.148 +        </condition>
  16.149 +        <condition else="false" property="jdkBug6558476">
  16.150 +            <and>
  16.151 +                <matches pattern="1\.[56]" string="${java.specification.version}"/>
  16.152 +                <not>
  16.153 +                    <os family="unix"/>
  16.154 +                </not>
  16.155 +            </and>
  16.156 +        </condition>
  16.157 +        <condition else="false" property="javac.fork">
  16.158 +            <or>
  16.159 +                <istrue value="${jdkBug6558476}"/>
  16.160 +                <istrue value="${javac.external.vm}"/>
  16.161 +            </or>
  16.162 +        </condition>
  16.163 +        <property name="jar.index" value="false"/>
  16.164 +        <property name="jar.index.metainf" value="${jar.index}"/>
  16.165 +        <property name="copylibs.rebase" value="true"/>
  16.166 +        <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>
  16.167 +        <condition property="junit.available">
  16.168 +            <or>
  16.169 +                <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
  16.170 +                <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
  16.171 +            </or>
  16.172 +        </condition>
  16.173 +        <condition property="testng.available">
  16.174 +            <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
  16.175 +        </condition>
  16.176 +        <condition property="junit+testng.available">
  16.177 +            <and>
  16.178 +                <istrue value="${junit.available}"/>
  16.179 +                <istrue value="${testng.available}"/>
  16.180 +            </and>
  16.181 +        </condition>
  16.182 +        <condition else="testng" property="testng.mode" value="mixed">
  16.183 +            <istrue value="${junit+testng.available}"/>
  16.184 +        </condition>
  16.185 +        <condition else="" property="testng.debug.mode" value="-mixed">
  16.186 +            <istrue value="${junit+testng.available}"/>
  16.187 +        </condition>
  16.188 +        <property name="java.failonerror" value="true"/>
  16.189      </target>
  16.190      <target name="-post-init">
  16.191          <!-- Empty placeholder for easier customization. -->
  16.192 @@ -146,26 +252,81 @@
  16.193              </sequential>
  16.194          </macrodef>
  16.195      </target>
  16.196 -    <target name="-init-macrodef-javac">
  16.197 +    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
  16.198          <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.199              <attribute default="${src.dir}:${reglib.src.dir}" name="srcdir"/>
  16.200              <attribute default="${build.classes.dir}" name="destdir"/>
  16.201              <attribute default="${javac.classpath}" name="classpath"/>
  16.202 +            <attribute default="${javac.processorpath}" name="processorpath"/>
  16.203 +            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
  16.204              <attribute default="${includes}" name="includes"/>
  16.205              <attribute default="${excludes}" name="excludes"/>
  16.206              <attribute default="${javac.debug}" name="debug"/>
  16.207 -            <attribute default="" name="sourcepath"/>
  16.208 +            <attribute default="${empty.dir}" name="sourcepath"/>
  16.209 +            <attribute default="${empty.dir}" name="gensrcdir"/>
  16.210              <element name="customize" optional="true"/>
  16.211              <sequential>
  16.212 -                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}">
  16.213 +                <property location="${build.dir}/empty" name="empty.dir"/>
  16.214 +                <mkdir dir="${empty.dir}"/>
  16.215 +                <mkdir dir="@{apgeneratedsrcdir}"/>
  16.216 +                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
  16.217 +                    <src>
  16.218 +                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
  16.219 +                            <include name="*"/>
  16.220 +                        </dirset>
  16.221 +                    </src>
  16.222                      <classpath>
  16.223                          <path path="@{classpath}"/>
  16.224                      </classpath>
  16.225 -                    <compilerarg line="${javac.compilerargs} ${javac.compilerargs.jaxws}"/>
  16.226 +                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
  16.227 +                    <compilerarg line="${javac.profile.cmd.line.arg}"/>
  16.228 +                    <compilerarg line="${javac.compilerargs}"/>
  16.229 +                    <compilerarg value="-processorpath"/>
  16.230 +                    <compilerarg path="@{processorpath}:${empty.dir}"/>
  16.231 +                    <compilerarg line="${ap.processors.internal}"/>
  16.232 +                    <compilerarg line="${annotation.processing.processor.options}"/>
  16.233 +                    <compilerarg value="-s"/>
  16.234 +                    <compilerarg path="@{apgeneratedsrcdir}"/>
  16.235 +                    <compilerarg line="${ap.proc.none.internal}"/>
  16.236                      <customize/>
  16.237                  </javac>
  16.238              </sequential>
  16.239          </macrodef>
  16.240 +    </target>
  16.241 +    <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
  16.242 +        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.243 +            <attribute default="${src.dir}:${reglib.src.dir}" name="srcdir"/>
  16.244 +            <attribute default="${build.classes.dir}" name="destdir"/>
  16.245 +            <attribute default="${javac.classpath}" name="classpath"/>
  16.246 +            <attribute default="${javac.processorpath}" name="processorpath"/>
  16.247 +            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
  16.248 +            <attribute default="${includes}" name="includes"/>
  16.249 +            <attribute default="${excludes}" name="excludes"/>
  16.250 +            <attribute default="${javac.debug}" name="debug"/>
  16.251 +            <attribute default="${empty.dir}" name="sourcepath"/>
  16.252 +            <attribute default="${empty.dir}" name="gensrcdir"/>
  16.253 +            <element name="customize" optional="true"/>
  16.254 +            <sequential>
  16.255 +                <property location="${build.dir}/empty" name="empty.dir"/>
  16.256 +                <mkdir dir="${empty.dir}"/>
  16.257 +                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
  16.258 +                    <src>
  16.259 +                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
  16.260 +                            <include name="*"/>
  16.261 +                        </dirset>
  16.262 +                    </src>
  16.263 +                    <classpath>
  16.264 +                        <path path="@{classpath}"/>
  16.265 +                    </classpath>
  16.266 +                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
  16.267 +                    <compilerarg line="${javac.profile.cmd.line.arg}"/>
  16.268 +                    <compilerarg line="${javac.compilerargs}"/>
  16.269 +                    <customize/>
  16.270 +                </javac>
  16.271 +            </sequential>
  16.272 +        </macrodef>
  16.273 +    </target>
  16.274 +    <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
  16.275          <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.276              <attribute default="${src.dir}:${reglib.src.dir}" name="srcdir"/>
  16.277              <attribute default="${build.classes.dir}" name="destdir"/>
  16.278 @@ -182,44 +343,390 @@
  16.279              <attribute default="${build.classes.dir}" name="destdir"/>
  16.280              <sequential>
  16.281                  <fail unless="javac.includes">Must set javac.includes</fail>
  16.282 -                <pathconvert pathsep="," property="javac.includes.binary">
  16.283 +                <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
  16.284                      <path>
  16.285                          <filelist dir="@{destdir}" files="${javac.includes}"/>
  16.286                      </path>
  16.287                      <globmapper from="*.java" to="*.class"/>
  16.288                  </pathconvert>
  16.289 +                <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
  16.290 +                <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
  16.291                  <delete>
  16.292 -                    <files includes="${javac.includes.binary}"/>
  16.293 +                    <files includesfile="${javac.includesfile.binary}"/>
  16.294 +                </delete>
  16.295 +                <delete>
  16.296 +                    <fileset file="${javac.includesfile.binary}"/>
  16.297                  </delete>
  16.298              </sequential>
  16.299          </macrodef>
  16.300      </target>
  16.301 -    <target name="-init-macrodef-junit">
  16.302 +    <target if="${junit.available}" name="-init-macrodef-junit-init">
  16.303 +        <condition else="false" property="nb.junit.batch" value="true">
  16.304 +            <and>
  16.305 +                <istrue value="${junit.available}"/>
  16.306 +                <not>
  16.307 +                    <isset property="test.method"/>
  16.308 +                </not>
  16.309 +            </and>
  16.310 +        </condition>
  16.311 +        <condition else="false" property="nb.junit.single" value="true">
  16.312 +            <and>
  16.313 +                <istrue value="${junit.available}"/>
  16.314 +                <isset property="test.method"/>
  16.315 +            </and>
  16.316 +        </condition>
  16.317 +    </target>
  16.318 +    <target name="-init-test-properties">
  16.319 +        <property name="test.binaryincludes" value="&lt;nothing&gt;"/>
  16.320 +        <property name="test.binarytestincludes" value=""/>
  16.321 +        <property name="test.binaryexcludes" value=""/>
  16.322 +    </target>
  16.323 +    <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
  16.324          <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.325              <attribute default="${includes}" name="includes"/>
  16.326              <attribute default="${excludes}" name="excludes"/>
  16.327              <attribute default="**" name="testincludes"/>
  16.328 +            <attribute default="" name="testmethods"/>
  16.329 +            <element name="customize" optional="true"/>
  16.330              <sequential>
  16.331 -                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" showoutput="true">
  16.332 -                    <batchtest todir="${build.test.results.dir}">
  16.333 -                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
  16.334 -                            <filename name="@{testincludes}"/>
  16.335 -                        </fileset>
  16.336 -                    </batchtest>
  16.337 -                    <classpath>
  16.338 -                        <path path="${run.test.classpath}"/>
  16.339 -                    </classpath>
  16.340 +                <property name="junit.forkmode" value="perTest"/>
  16.341 +                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
  16.342 +                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
  16.343                      <syspropertyset>
  16.344                          <propertyref prefix="test-sys-prop."/>
  16.345                          <mapper from="test-sys-prop.*" to="*" type="glob"/>
  16.346                      </syspropertyset>
  16.347                      <formatter type="brief" usefile="false"/>
  16.348                      <formatter type="xml"/>
  16.349 -                    <jvmarg line="${run.jvmargs}"/>
  16.350 +                    <jvmarg value="-ea"/>
  16.351 +                    <customize/>
  16.352                  </junit>
  16.353              </sequential>
  16.354          </macrodef>
  16.355      </target>
  16.356 +    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
  16.357 +        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.358 +            <attribute default="${includes}" name="includes"/>
  16.359 +            <attribute default="${excludes}" name="excludes"/>
  16.360 +            <attribute default="**" name="testincludes"/>
  16.361 +            <attribute default="" name="testmethods"/>
  16.362 +            <element name="customize" optional="true"/>
  16.363 +            <sequential>
  16.364 +                <property name="junit.forkmode" value="perTest"/>
  16.365 +                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
  16.366 +                    <batchtest todir="${build.test.results.dir}">
  16.367 +                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
  16.368 +                            <filename name="@{testincludes}"/>
  16.369 +                        </fileset>
  16.370 +                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
  16.371 +                            <filename name="${test.binarytestincludes}"/>
  16.372 +                        </fileset>
  16.373 +                    </batchtest>
  16.374 +                    <syspropertyset>
  16.375 +                        <propertyref prefix="test-sys-prop."/>
  16.376 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
  16.377 +                    </syspropertyset>
  16.378 +                    <formatter type="brief" usefile="false"/>
  16.379 +                    <formatter type="xml"/>
  16.380 +                    <jvmarg value="-ea"/>
  16.381 +                    <customize/>
  16.382 +                </junit>
  16.383 +            </sequential>
  16.384 +        </macrodef>
  16.385 +    </target>
  16.386 +    <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
  16.387 +    <target if="${testng.available}" name="-init-macrodef-testng">
  16.388 +        <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.389 +            <attribute default="${includes}" name="includes"/>
  16.390 +            <attribute default="${excludes}" name="excludes"/>
  16.391 +            <attribute default="**" name="testincludes"/>
  16.392 +            <attribute default="" name="testmethods"/>
  16.393 +            <element name="customize" optional="true"/>
  16.394 +            <sequential>
  16.395 +                <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
  16.396 +                    <isset property="test.method"/>
  16.397 +                </condition>
  16.398 +                <union id="test.set">
  16.399 +                    <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
  16.400 +                        <filename name="@{testincludes}"/>
  16.401 +                    </fileset>
  16.402 +                </union>
  16.403 +                <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
  16.404 +                <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="Sun_Studio_Installer_Engine" testname="TestNG tests" workingDir="${work.dir}">
  16.405 +                    <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
  16.406 +                    <propertyset>
  16.407 +                        <propertyref prefix="test-sys-prop."/>
  16.408 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
  16.409 +                    </propertyset>
  16.410 +                    <customize/>
  16.411 +                </testng>
  16.412 +            </sequential>
  16.413 +        </macrodef>
  16.414 +    </target>
  16.415 +    <target name="-init-macrodef-test-impl">
  16.416 +        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.417 +            <attribute default="${includes}" name="includes"/>
  16.418 +            <attribute default="${excludes}" name="excludes"/>
  16.419 +            <attribute default="**" name="testincludes"/>
  16.420 +            <attribute default="" name="testmethods"/>
  16.421 +            <element implicit="true" name="customize" optional="true"/>
  16.422 +            <sequential>
  16.423 +                <echo>No tests executed.</echo>
  16.424 +            </sequential>
  16.425 +        </macrodef>
  16.426 +    </target>
  16.427 +    <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
  16.428 +        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.429 +            <attribute default="${includes}" name="includes"/>
  16.430 +            <attribute default="${excludes}" name="excludes"/>
  16.431 +            <attribute default="**" name="testincludes"/>
  16.432 +            <attribute default="" name="testmethods"/>
  16.433 +            <element implicit="true" name="customize" optional="true"/>
  16.434 +            <sequential>
  16.435 +                <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
  16.436 +                    <customize/>
  16.437 +                </j2seproject3:junit>
  16.438 +            </sequential>
  16.439 +        </macrodef>
  16.440 +    </target>
  16.441 +    <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
  16.442 +        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.443 +            <attribute default="${includes}" name="includes"/>
  16.444 +            <attribute default="${excludes}" name="excludes"/>
  16.445 +            <attribute default="**" name="testincludes"/>
  16.446 +            <attribute default="" name="testmethods"/>
  16.447 +            <element implicit="true" name="customize" optional="true"/>
  16.448 +            <sequential>
  16.449 +                <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
  16.450 +                    <customize/>
  16.451 +                </j2seproject3:testng>
  16.452 +            </sequential>
  16.453 +        </macrodef>
  16.454 +    </target>
  16.455 +    <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
  16.456 +        <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.457 +            <attribute default="${includes}" name="includes"/>
  16.458 +            <attribute default="${excludes}" name="excludes"/>
  16.459 +            <attribute default="**" name="testincludes"/>
  16.460 +            <attribute default="" name="testmethods"/>
  16.461 +            <sequential>
  16.462 +                <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
  16.463 +                    <customize>
  16.464 +                        <classpath>
  16.465 +                            <path path="${run.test.classpath}"/>
  16.466 +                        </classpath>
  16.467 +                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
  16.468 +                        <jvmarg line="${run.jvmargs}"/>
  16.469 +                        <jvmarg line="${run.jvmargs.ide}"/>
  16.470 +                    </customize>
  16.471 +                </j2seproject3:test-impl>
  16.472 +            </sequential>
  16.473 +        </macrodef>
  16.474 +    </target>
  16.475 +    <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
  16.476 +        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.477 +            <attribute default="${includes}" name="includes"/>
  16.478 +            <attribute default="${excludes}" name="excludes"/>
  16.479 +            <attribute default="**" name="testincludes"/>
  16.480 +            <attribute default="" name="testmethods"/>
  16.481 +            <element name="customize" optional="true"/>
  16.482 +            <sequential>
  16.483 +                <property name="junit.forkmode" value="perTest"/>
  16.484 +                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
  16.485 +                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
  16.486 +                    <syspropertyset>
  16.487 +                        <propertyref prefix="test-sys-prop."/>
  16.488 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
  16.489 +                    </syspropertyset>
  16.490 +                    <formatter type="brief" usefile="false"/>
  16.491 +                    <formatter type="xml"/>
  16.492 +                    <jvmarg value="-ea"/>
  16.493 +                    <jvmarg line="${debug-args-line}"/>
  16.494 +                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
  16.495 +                    <customize/>
  16.496 +                </junit>
  16.497 +            </sequential>
  16.498 +        </macrodef>
  16.499 +    </target>
  16.500 +    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
  16.501 +        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.502 +            <attribute default="${includes}" name="includes"/>
  16.503 +            <attribute default="${excludes}" name="excludes"/>
  16.504 +            <attribute default="**" name="testincludes"/>
  16.505 +            <attribute default="" name="testmethods"/>
  16.506 +            <element name="customize" optional="true"/>
  16.507 +            <sequential>
  16.508 +                <property name="junit.forkmode" value="perTest"/>
  16.509 +                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
  16.510 +                    <batchtest todir="${build.test.results.dir}">
  16.511 +                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
  16.512 +                            <filename name="@{testincludes}"/>
  16.513 +                        </fileset>
  16.514 +                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
  16.515 +                            <filename name="${test.binarytestincludes}"/>
  16.516 +                        </fileset>
  16.517 +                    </batchtest>
  16.518 +                    <syspropertyset>
  16.519 +                        <propertyref prefix="test-sys-prop."/>
  16.520 +                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
  16.521 +                    </syspropertyset>
  16.522 +                    <formatter type="brief" usefile="false"/>
  16.523 +                    <formatter type="xml"/>
  16.524 +                    <jvmarg value="-ea"/>
  16.525 +                    <jvmarg line="${debug-args-line}"/>
  16.526 +                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
  16.527 +                    <customize/>
  16.528 +                </junit>
  16.529 +            </sequential>
  16.530 +        </macrodef>
  16.531 +    </target>
  16.532 +    <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
  16.533 +        <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.534 +            <attribute default="${includes}" name="includes"/>
  16.535 +            <attribute default="${excludes}" name="excludes"/>
  16.536 +            <attribute default="**" name="testincludes"/>
  16.537 +            <attribute default="" name="testmethods"/>
  16.538 +            <element implicit="true" name="customize" optional="true"/>
  16.539 +            <sequential>
  16.540 +                <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
  16.541 +                    <customize/>
  16.542 +                </j2seproject3:junit-debug>
  16.543 +            </sequential>
  16.544 +        </macrodef>
  16.545 +    </target>
  16.546 +    <target if="${testng.available}" name="-init-macrodef-testng-debug">
  16.547 +        <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.548 +            <attribute default="${main.class}" name="testClass"/>
  16.549 +            <attribute default="" name="testMethod"/>
  16.550 +            <element name="customize2" optional="true"/>
  16.551 +            <sequential>
  16.552 +                <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
  16.553 +                    <isset property="test.method"/>
  16.554 +                </condition>
  16.555 +                <condition else="-suitename Sun_Studio_Installer_Engine -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
  16.556 +                    <matches pattern=".*\.xml" string="@{testClass}"/>
  16.557 +                </condition>
  16.558 +                <delete dir="${build.test.results.dir}" quiet="true"/>
  16.559 +                <mkdir dir="${build.test.results.dir}"/>
  16.560 +                <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}">
  16.561 +                    <customize>
  16.562 +                        <customize2/>
  16.563 +                        <jvmarg value="-ea"/>
  16.564 +                        <arg line="${testng.debug.mode}"/>
  16.565 +                        <arg line="-d ${build.test.results.dir}"/>
  16.566 +                        <arg line="-listener org.testng.reporters.VerboseReporter"/>
  16.567 +                        <arg line="${testng.cmd.args}"/>
  16.568 +                    </customize>
  16.569 +                </j2seproject3:debug>
  16.570 +            </sequential>
  16.571 +        </macrodef>
  16.572 +    </target>
  16.573 +    <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
  16.574 +        <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.575 +            <attribute default="${main.class}" name="testClass"/>
  16.576 +            <attribute default="" name="testMethod"/>
  16.577 +            <element implicit="true" name="customize2" optional="true"/>
  16.578 +            <sequential>
  16.579 +                <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
  16.580 +                    <customize2/>
  16.581 +                </j2seproject3:testng-debug>
  16.582 +            </sequential>
  16.583 +        </macrodef>
  16.584 +    </target>
  16.585 +    <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
  16.586 +        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.587 +            <attribute default="${includes}" name="includes"/>
  16.588 +            <attribute default="${excludes}" name="excludes"/>
  16.589 +            <attribute default="**" name="testincludes"/>
  16.590 +            <attribute default="" name="testmethods"/>
  16.591 +            <attribute default="${main.class}" name="testClass"/>
  16.592 +            <attribute default="" name="testMethod"/>
  16.593 +            <sequential>
  16.594 +                <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
  16.595 +                    <customize>
  16.596 +                        <classpath>
  16.597 +                            <path path="${run.test.classpath}"/>
  16.598 +                        </classpath>
  16.599 +                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
  16.600 +                        <jvmarg line="${run.jvmargs}"/>
  16.601 +                        <jvmarg line="${run.jvmargs.ide}"/>
  16.602 +                    </customize>
  16.603 +                </j2seproject3:test-debug-impl>
  16.604 +            </sequential>
  16.605 +        </macrodef>
  16.606 +    </target>
  16.607 +    <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
  16.608 +        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.609 +            <attribute default="${includes}" name="includes"/>
  16.610 +            <attribute default="${excludes}" name="excludes"/>
  16.611 +            <attribute default="**" name="testincludes"/>
  16.612 +            <attribute default="" name="testmethods"/>
  16.613 +            <attribute default="${main.class}" name="testClass"/>
  16.614 +            <attribute default="" name="testMethod"/>
  16.615 +            <sequential>
  16.616 +                <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
  16.617 +                    <customize2>
  16.618 +                        <syspropertyset>
  16.619 +                            <propertyref prefix="test-sys-prop."/>
  16.620 +                            <mapper from="test-sys-prop.*" to="*" type="glob"/>
  16.621 +                        </syspropertyset>
  16.622 +                    </customize2>
  16.623 +                </j2seproject3:testng-debug-impl>
  16.624 +            </sequential>
  16.625 +        </macrodef>
  16.626 +    </target>
  16.627 +    <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
  16.628 +    <!--
  16.629 +                pre NB7.2 profiling section; consider it deprecated
  16.630 +            -->
  16.631 +    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
  16.632 +    <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
  16.633 +        <!-- Empty placeholder for easier customization. -->
  16.634 +        <!-- You can override this target in the ../build.xml file. -->
  16.635 +    </target>
  16.636 +    <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
  16.637 +        <!-- Empty placeholder for easier customization. -->
  16.638 +        <!-- You can override this target in the ../build.xml file. -->
  16.639 +    </target>
  16.640 +    <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile">
  16.641 +        <macrodef name="resolve">
  16.642 +            <attribute name="name"/>
  16.643 +            <attribute name="value"/>
  16.644 +            <sequential>
  16.645 +                <property name="@{name}" value="${env.@{value}}"/>
  16.646 +            </sequential>
  16.647 +        </macrodef>
  16.648 +        <macrodef name="profile">
  16.649 +            <attribute default="${main.class}" name="classname"/>
  16.650 +            <element name="customize" optional="true"/>
  16.651 +            <sequential>
  16.652 +                <property environment="env"/>
  16.653 +                <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>
  16.654 +                <java classname="@{classname}" dir="${profiler.info.dir}" failonerror="${java.failonerror}" fork="true" jvm="${profiler.info.jvm}">
  16.655 +                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
  16.656 +                    <jvmarg value="${profiler.info.jvmargs.agent}"/>
  16.657 +                    <jvmarg line="${profiler.info.jvmargs}"/>
  16.658 +                    <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
  16.659 +                    <arg line="${application.args}"/>
  16.660 +                    <classpath>
  16.661 +                        <path path="${run.classpath}"/>
  16.662 +                    </classpath>
  16.663 +                    <syspropertyset>
  16.664 +                        <propertyref prefix="run-sys-prop."/>
  16.665 +                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
  16.666 +                    </syspropertyset>
  16.667 +                    <customize/>
  16.668 +                </java>
  16.669 +            </sequential>
  16.670 +        </macrodef>
  16.671 +    </target>
  16.672 +    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check">
  16.673 +        <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
  16.674 +        <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
  16.675 +    </target>
  16.676 +    <!--
  16.677 +                end of pre NB7.2 profiling section
  16.678 +            -->
  16.679      <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
  16.680          <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
  16.681              <attribute default="${main.class}" name="name"/>
  16.682 @@ -270,10 +777,14 @@
  16.683              <attribute default="${debug.classpath}" name="classpath"/>
  16.684              <element name="customize" optional="true"/>
  16.685              <sequential>
  16.686 -                <java classname="@{classname}" dir="${work.dir}" fork="true">
  16.687 +                <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true">
  16.688 +                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
  16.689                      <jvmarg line="${debug-args-line}"/>
  16.690                      <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
  16.691 +                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
  16.692 +                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
  16.693                      <jvmarg line="${run.jvmargs}"/>
  16.694 +                    <jvmarg line="${run.jvmargs.ide}"/>
  16.695                      <classpath>
  16.696                          <path path="@{classpath}"/>
  16.697                      </classpath>
  16.698 @@ -289,12 +800,18 @@
  16.699      <target name="-init-macrodef-java">
  16.700          <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
  16.701              <attribute default="${main.class}" name="classname"/>
  16.702 +            <attribute default="${run.classpath}" name="classpath"/>
  16.703 +            <attribute default="jvm" name="jvm"/>
  16.704              <element name="customize" optional="true"/>
  16.705              <sequential>
  16.706 -                <java classname="@{classname}" dir="${work.dir}" fork="true">
  16.707 +                <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true">
  16.708 +                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
  16.709 +                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
  16.710 +                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
  16.711                      <jvmarg line="${run.jvmargs}"/>
  16.712 +                    <jvmarg line="${run.jvmargs.ide}"/>
  16.713                      <classpath>
  16.714 -                        <path path="${run.classpath}"/>
  16.715 +                        <path path="@{classpath}"/>
  16.716                      </classpath>
  16.717                      <syspropertyset>
  16.718                          <propertyref prefix="run-sys-prop."/>
  16.719 @@ -305,22 +822,105 @@
  16.720              </sequential>
  16.721          </macrodef>
  16.722      </target>
  16.723 +    <target name="-init-macrodef-copylibs">
  16.724 +        <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3">
  16.725 +            <attribute default="${manifest.file}" name="manifest"/>
  16.726 +            <element name="customize" optional="true"/>
  16.727 +            <sequential>
  16.728 +                <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
  16.729 +                <pathconvert property="run.classpath.without.build.classes.dir">
  16.730 +                    <path path="${run.classpath}"/>
  16.731 +                    <map from="${build.classes.dir.resolved}" to=""/>
  16.732 +                </pathconvert>
  16.733 +                <pathconvert pathsep=" " property="jar.classpath">
  16.734 +                    <path path="${run.classpath.without.build.classes.dir}"/>
  16.735 +                    <chainedmapper>
  16.736 +                        <flattenmapper/>
  16.737 +                        <filtermapper>
  16.738 +                            <replacestring from=" " to="%20"/>
  16.739 +                        </filtermapper>
  16.740 +                        <globmapper from="*" to="lib/*"/>
  16.741 +                    </chainedmapper>
  16.742 +                </pathconvert>
  16.743 +                <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
  16.744 +                <copylibs compress="${jar.compress}" excludeFromCopy="${copylibs.excludes}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" manifestencoding="UTF-8" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
  16.745 +                    <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>
  16.746 +                    <manifest>
  16.747 +                        <attribute name="Class-Path" value="${jar.classpath}"/>
  16.748 +                        <customize/>
  16.749 +                    </manifest>
  16.750 +                </copylibs>
  16.751 +            </sequential>
  16.752 +        </macrodef>
  16.753 +    </target>
  16.754      <target name="-init-presetdef-jar">
  16.755          <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">
  16.756 -            <jar compress="${jar.compress}" jarfile="${dist.jar}">
  16.757 -                <j2seproject1:fileset dir="${build.classes.dir}"/>
  16.758 +            <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}" manifestencoding="UTF-8">
  16.759 +                <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/>
  16.760              </jar>
  16.761          </presetdef>
  16.762      </target>
  16.763 -    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-junit,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar" name="init"/>
  16.764 +    <target name="-init-ap-cmdline-properties">
  16.765 +        <property name="annotation.processing.enabled" value="true"/>
  16.766 +        <property name="annotation.processing.processors.list" value=""/>
  16.767 +        <property name="annotation.processing.processor.options" value=""/>
  16.768 +        <property name="annotation.processing.run.all.processors" value="true"/>
  16.769 +        <property name="javac.processorpath" value="${javac.classpath}"/>
  16.770 +        <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
  16.771 +        <condition property="ap.supported.internal" value="true">
  16.772 +            <not>
  16.773 +                <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
  16.774 +            </not>
  16.775 +        </condition>
  16.776 +    </target>
  16.777 +    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
  16.778 +        <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
  16.779 +            <isfalse value="${annotation.processing.run.all.processors}"/>
  16.780 +        </condition>
  16.781 +        <condition else="" property="ap.proc.none.internal" value="-proc:none">
  16.782 +            <isfalse value="${annotation.processing.enabled}"/>
  16.783 +        </condition>
  16.784 +    </target>
  16.785 +    <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
  16.786 +        <property name="ap.cmd.line.internal" value=""/>
  16.787 +    </target>
  16.788 +    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/>
  16.789      <!--
  16.790                  ===================
  16.791                  COMPILATION SECTION
  16.792                  ===================
  16.793              -->
  16.794 -    <target depends="init" name="deps-jar" unless="no.deps">
  16.795 -        <ant antfile="${project.NBI_Engine}/build.xml" inheritall="false" target="jar"/>
  16.796 -        <ant antfile="${project.org_netbeans_modules_reglib}/build.xml" inheritall="false" target="netbeans"/>
  16.797 +    <target name="-deps-jar-init" unless="built-jar.properties">
  16.798 +        <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/>
  16.799 +        <delete file="${built-jar.properties}" quiet="true"/>
  16.800 +    </target>
  16.801 +    <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
  16.802 +        <echo level="warn" message="Cycle detected: Sun Studio Installer Engine was already built"/>
  16.803 +    </target>
  16.804 +    <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
  16.805 +        <mkdir dir="${build.dir}"/>
  16.806 +        <touch file="${built-jar.properties}" verbose="false"/>
  16.807 +        <property file="${built-jar.properties}" prefix="already.built.jar."/>
  16.808 +        <antcall target="-warn-already-built-jar"/>
  16.809 +        <propertyfile file="${built-jar.properties}">
  16.810 +            <entry key="${basedir}" value=""/>
  16.811 +        </propertyfile>
  16.812 +        <antcall target="-maybe-call-dep">
  16.813 +            <param name="call.built.properties" value="${built-jar.properties}"/>
  16.814 +            <param location="${project.NBI_Engine}" name="call.subproject"/>
  16.815 +            <param location="${project.NBI_Engine}/build.xml" name="call.script"/>
  16.816 +            <param name="call.target" value="jar"/>
  16.817 +            <param name="transfer.built-jar.properties" value="${built-jar.properties}"/>
  16.818 +            <param name="transfer.not.archive.disabled" value="true"/>
  16.819 +        </antcall>
  16.820 +        <antcall target="-maybe-call-dep">
  16.821 +            <param name="call.built.properties" value="${built-jar.properties}"/>
  16.822 +            <param location="${project.org_netbeans_modules_reglib}" name="call.subproject"/>
  16.823 +            <param location="${project.org_netbeans_modules_reglib}/build.xml" name="call.script"/>
  16.824 +            <param name="call.target" value="netbeans"/>
  16.825 +            <param name="transfer.built-jar.properties" value="${built-jar.properties}"/>
  16.826 +            <param name="transfer.not.archive.disabled" value="true"/>
  16.827 +        </antcall>
  16.828      </target>
  16.829      <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
  16.830      <target depends="init" name="-check-automatic-build">
  16.831 @@ -337,15 +937,26 @@
  16.832          <!-- You can override this target in the ../build.xml file. -->
  16.833      </target>
  16.834      <target if="do.depend.true" name="-compile-depend">
  16.835 -        <j2seproject3:depend/>
  16.836 +        <pathconvert property="build.generated.subdirs">
  16.837 +            <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false">
  16.838 +                <include name="*"/>
  16.839 +            </dirset>
  16.840 +        </pathconvert>
  16.841 +        <j2seproject3:depend srcdir="${src.dir}:${reglib.src.dir}:${build.generated.subdirs}"/>
  16.842      </target>
  16.843 -    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile,-compile-depend" if="have.sources" name="-do-compile">
  16.844 -        <j2seproject3:javac/>
  16.845 +    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
  16.846 +        <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
  16.847          <copy todir="${build.classes.dir}">
  16.848              <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
  16.849              <fileset dir="${reglib.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
  16.850          </copy>
  16.851      </target>
  16.852 +    <target if="has.persistence.xml" name="-copy-persistence-xml">
  16.853 +        <mkdir dir="${build.classes.dir}/META-INF"/>
  16.854 +        <copy todir="${build.classes.dir}/META-INF">
  16.855 +            <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/>
  16.856 +        </copy>
  16.857 +    </target>
  16.858      <target name="-post-compile">
  16.859          <!-- Empty placeholder for easier customization. -->
  16.860          <!-- You can override this target in the ../build.xml file. -->
  16.861 @@ -358,13 +969,13 @@
  16.862      <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
  16.863          <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
  16.864          <j2seproject3:force-recompile/>
  16.865 -        <j2seproject3:javac excludes="" includes="${javac.includes}" sourcepath="${src.dir}:${reglib.src.dir}"/>
  16.866 +        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}:${reglib.src.dir}"/>
  16.867      </target>
  16.868      <target name="-post-compile-single">
  16.869          <!-- Empty placeholder for easier customization. -->
  16.870          <!-- You can override this target in the ../build.xml file. -->
  16.871      </target>
  16.872 -    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
  16.873 +    <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
  16.874      <!--
  16.875                  ====================
  16.876                  JAR BUILDING SECTION
  16.877 @@ -378,57 +989,67 @@
  16.878          <!-- Empty placeholder for easier customization. -->
  16.879          <!-- You can override this target in the ../build.xml file. -->
  16.880      </target>
  16.881 -    <target depends="init,compile,-pre-pre-jar,-pre-jar" name="-do-jar-without-manifest" unless="manifest.available">
  16.882 -        <j2seproject1:jar/>
  16.883 +    <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available">
  16.884 +        <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
  16.885 +        <touch file="${tmp.manifest.file}" verbose="false"/>
  16.886      </target>
  16.887 -    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available" name="-do-jar-with-manifest" unless="manifest.available+main.class">
  16.888 -        <j2seproject1:jar manifest="${manifest.file}"/>
  16.889 +    <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest">
  16.890 +        <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
  16.891 +        <copy encoding="${manifest.encoding}" file="${manifest.file}" outputencoding="UTF-8" tofile="${tmp.manifest.file}"/>
  16.892      </target>
  16.893 -    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available+main.class" name="-do-jar-with-mainclass" unless="manifest.available+main.class+mkdist.available">
  16.894 -        <j2seproject1:jar manifest="${manifest.file}">
  16.895 -            <j2seproject1:manifest>
  16.896 -                <j2seproject1:attribute name="Main-Class" value="${main.class}"/>
  16.897 -            </j2seproject1:manifest>
  16.898 -        </j2seproject1:jar>
  16.899 -        <echo>To run this application from the command line without Ant, try:</echo>
  16.900 +    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass">
  16.901 +        <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update">
  16.902 +            <attribute name="Main-Class" value="${main.class}"/>
  16.903 +        </manifest>
  16.904 +    </target>
  16.905 +    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile">
  16.906 +        <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update">
  16.907 +            <attribute name="Profile" value="${javac.profile}"/>
  16.908 +        </manifest>
  16.909 +    </target>
  16.910 +    <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen">
  16.911 +        <basename file="${application.splash}" property="splashscreen.basename"/>
  16.912 +        <mkdir dir="${build.classes.dir}/META-INF"/>
  16.913 +        <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/>
  16.914 +        <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update">
  16.915 +            <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/>
  16.916 +        </manifest>
  16.917 +    </target>
  16.918 +    <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.mkdist" name="-do-jar-copylibs">
  16.919 +        <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
  16.920 +        <echo level="info">To run this application from the command line without Ant, try:</echo>
  16.921 +        <property location="${dist.jar}" name="dist.jar.resolved"/>
  16.922 +        <echo level="info">java -jar "${dist.jar.resolved}"</echo>
  16.923 +    </target>
  16.924 +    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen" if="do.archive" name="-do-jar-jar" unless="do.mkdist">
  16.925 +        <j2seproject1:jar manifest="${tmp.manifest.file}"/>
  16.926          <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
  16.927          <property location="${dist.jar}" name="dist.jar.resolved"/>
  16.928          <pathconvert property="run.classpath.with.dist.jar">
  16.929              <path path="${run.classpath}"/>
  16.930              <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>
  16.931          </pathconvert>
  16.932 -        <echo>java -cp "${run.classpath.with.dist.jar}" ${main.class}</echo>
  16.933 +        <condition else="" property="jar.usage.message" value="To run this application from the command line without Ant, try:${line.separator}${platform.java} -cp ${run.classpath.with.dist.jar} ${main.class}">
  16.934 +            <isset property="main.class.available"/>
  16.935 +        </condition>
  16.936 +        <condition else="debug" property="jar.usage.level" value="info">
  16.937 +            <isset property="main.class.available"/>
  16.938 +        </condition>
  16.939 +        <echo level="${jar.usage.level}" message="${jar.usage.message}"/>
  16.940      </target>
  16.941 -    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="manifest.available+main.class+mkdist.available" name="-do-jar-with-libraries">
  16.942 -        <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
  16.943 -        <pathconvert property="run.classpath.without.build.classes.dir">
  16.944 -            <path path="${run.classpath}"/>
  16.945 -            <map from="${build.classes.dir.resolved}" to=""/>
  16.946 -        </pathconvert>
  16.947 -        <pathconvert pathsep=" " property="jar.classpath">
  16.948 -            <path path="${run.classpath.without.build.classes.dir}"/>
  16.949 -            <chainedmapper>
  16.950 -                <flattenmapper/>
  16.951 -                <globmapper from="*" to="lib/*"/>
  16.952 -            </chainedmapper>
  16.953 -        </pathconvert>
  16.954 -        <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
  16.955 -        <copylibs compress="${jar.compress}" jarfile="${dist.jar}" manifest="${manifest.file}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
  16.956 -            <fileset dir="${build.classes.dir}"/>
  16.957 -            <manifest>
  16.958 -                <attribute name="Main-Class" value="${main.class}"/>
  16.959 -                <attribute name="Class-Path" value="${jar.classpath}"/>
  16.960 -            </manifest>
  16.961 -        </copylibs>
  16.962 -        <echo>To run this application from the command line without Ant, try:</echo>
  16.963 -        <property location="${dist.jar}" name="dist.jar.resolved"/>
  16.964 -        <echo>java -jar "${dist.jar.resolved}"</echo>
  16.965 +    <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest">
  16.966 +        <delete>
  16.967 +            <fileset file="${tmp.manifest.file}"/>
  16.968 +        </delete>
  16.969      </target>
  16.970 +    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-jar,-do-jar-delete-manifest" name="-do-jar-without-libraries"/>
  16.971 +    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-copylibs,-do-jar-delete-manifest" name="-do-jar-with-libraries"/>
  16.972      <target name="-post-jar">
  16.973          <!-- Empty placeholder for easier customization. -->
  16.974          <!-- You can override this target in the ../build.xml file. -->
  16.975      </target>
  16.976 -    <target depends="init,compile,-pre-jar,-do-jar-with-manifest,-do-jar-without-manifest,-do-jar-with-mainclass,-do-jar-with-libraries,-post-jar" description="Build JAR." name="jar"/>
  16.977 +    <target depends="init,compile,-pre-jar,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/>
  16.978 +    <target depends="init,compile,-pre-jar,-do-jar,-post-jar" description="Build JAR." name="jar"/>
  16.979      <!--
  16.980                  =================
  16.981                  EXECUTION SECTION
  16.982 @@ -444,10 +1065,14 @@
  16.983      <target name="-do-not-recompile">
  16.984          <property name="javac.includes.binary" value=""/>
  16.985      </target>
  16.986 -    <target depends="init,-do-not-recompile,compile-single" name="run-single">
  16.987 +    <target depends="init,compile-single" name="run-single">
  16.988          <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
  16.989          <j2seproject1:java classname="${run.class}"/>
  16.990      </target>
  16.991 +    <target depends="init,compile-test-single" name="run-test-with-main">
  16.992 +        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
  16.993 +        <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
  16.994 +    </target>
  16.995      <!--
  16.996                  =================
  16.997                  DEBUGGING SECTION
  16.998 @@ -456,6 +1081,9 @@
  16.999      <target depends="init" if="netbeans.home" name="-debug-start-debugger">
 16.1000          <j2seproject1:nbjpdastart name="${debug.class}"/>
 16.1001      </target>
 16.1002 +    <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
 16.1003 +        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
 16.1004 +    </target>
 16.1005      <target depends="init,compile" name="-debug-start-debuggee">
 16.1006          <j2seproject3:debug>
 16.1007              <customize>
 16.1008 @@ -472,7 +1100,12 @@
 16.1009          <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
 16.1010          <j2seproject3:debug classname="${debug.class}"/>
 16.1011      </target>
 16.1012 -    <target depends="init,-do-not-recompile,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
 16.1013 +    <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
 16.1014 +    <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
 16.1015 +        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
 16.1016 +        <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
 16.1017 +    </target>
 16.1018 +    <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
 16.1019      <target depends="init" name="-pre-debug-fix">
 16.1020          <fail unless="fix.includes">Must set fix.includes</fail>
 16.1021          <property name="javac.includes" value="${fix.includes}.java"/>
 16.1022 @@ -482,23 +1115,149 @@
 16.1023      </target>
 16.1024      <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
 16.1025      <!--
 16.1026 +                =================
 16.1027 +                PROFILING SECTION
 16.1028 +                =================
 16.1029 +            -->
 16.1030 +    <!--
 16.1031 +                pre NB7.2 profiler integration
 16.1032 +            -->
 16.1033 +    <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
 16.1034 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
 16.1035 +        <nbprofiledirect>
 16.1036 +            <classpath>
 16.1037 +                <path path="${run.classpath}"/>
 16.1038 +            </classpath>
 16.1039 +        </nbprofiledirect>
 16.1040 +        <profile/>
 16.1041 +    </target>
 16.1042 +    <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72">
 16.1043 +        <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>
 16.1044 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
 16.1045 +        <nbprofiledirect>
 16.1046 +            <classpath>
 16.1047 +                <path path="${run.classpath}"/>
 16.1048 +            </classpath>
 16.1049 +        </nbprofiledirect>
 16.1050 +        <profile classname="${profile.class}"/>
 16.1051 +    </target>
 16.1052 +    <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72">
 16.1053 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
 16.1054 +        <nbprofiledirect>
 16.1055 +            <classpath>
 16.1056 +                <path path="${run.classpath}"/>
 16.1057 +            </classpath>
 16.1058 +        </nbprofiledirect>
 16.1059 +        <profile classname="sun.applet.AppletViewer">
 16.1060 +            <customize>
 16.1061 +                <arg value="${applet.url}"/>
 16.1062 +            </customize>
 16.1063 +        </profile>
 16.1064 +    </target>
 16.1065 +    <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
 16.1066 +        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
 16.1067 +        <nbprofiledirect>
 16.1068 +            <classpath>
 16.1069 +                <path path="${run.test.classpath}"/>
 16.1070 +            </classpath>
 16.1071 +        </nbprofiledirect>
 16.1072 +        <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
 16.1073 +            <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
 16.1074 +            <jvmarg value="${profiler.info.jvmargs.agent}"/>
 16.1075 +            <jvmarg line="${profiler.info.jvmargs}"/>
 16.1076 +            <test name="${profile.class}"/>
 16.1077 +            <classpath>
 16.1078 +                <path path="${run.test.classpath}"/>
 16.1079 +            </classpath>
 16.1080 +            <syspropertyset>
 16.1081 +                <propertyref prefix="test-sys-prop."/>
 16.1082 +                <mapper from="test-sys-prop.*" to="*" type="glob"/>
 16.1083 +            </syspropertyset>
 16.1084 +            <formatter type="brief" usefile="false"/>
 16.1085 +            <formatter type="xml"/>
 16.1086 +        </junit>
 16.1087 +    </target>
 16.1088 +    <!--
 16.1089 +                end of pre NB72 profiling section
 16.1090 +            -->
 16.1091 +    <target if="netbeans.home" name="-profile-check">
 16.1092 +        <condition property="profiler.configured">
 16.1093 +            <or>
 16.1094 +                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
 16.1095 +                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
 16.1096 +            </or>
 16.1097 +        </condition>
 16.1098 +    </target>
 16.1099 +    <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
 16.1100 +        <startprofiler/>
 16.1101 +        <antcall target="run"/>
 16.1102 +    </target>
 16.1103 +    <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent">
 16.1104 +        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
 16.1105 +        <startprofiler/>
 16.1106 +        <antcall target="run-single"/>
 16.1107 +    </target>
 16.1108 +    <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/>
 16.1109 +    <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs">
 16.1110 +        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
 16.1111 +        <startprofiler/>
 16.1112 +        <antcall target="test-single"/>
 16.1113 +    </target>
 16.1114 +    <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main">
 16.1115 +        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
 16.1116 +        <startprofiler/>
 16.1117 +        <antcall target="run-test-with-main"/>
 16.1118 +    </target>
 16.1119 +    <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent">
 16.1120 +        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
 16.1121 +        <startprofiler/>
 16.1122 +        <antcall target="run-applet"/>
 16.1123 +    </target>
 16.1124 +    <!--
 16.1125                  ===============
 16.1126                  JAVADOC SECTION
 16.1127                  ===============
 16.1128              -->
 16.1129 -    <target depends="init" name="-javadoc-build">
 16.1130 +    <target depends="init" if="have.sources" name="-javadoc-build">
 16.1131          <mkdir dir="${dist.javadoc.dir}"/>
 16.1132 -        <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
 16.1133 +        <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}">
 16.1134 +            <and>
 16.1135 +                <isset property="endorsed.classpath.cmd.line.arg"/>
 16.1136 +                <not>
 16.1137 +                    <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/>
 16.1138 +                </not>
 16.1139 +            </and>
 16.1140 +        </condition>
 16.1141 +        <condition else="" property="bug5101868workaround" value="*.java">
 16.1142 +            <matches pattern="1\.[56](\..*)?" string="${java.version}"/>
 16.1143 +        </condition>
 16.1144 +        <javadoc additionalparam="-J-Dfile.encoding=${file.encoding} ${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
 16.1145              <classpath>
 16.1146                  <path path="${javac.classpath}"/>
 16.1147              </classpath>
 16.1148 -            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
 16.1149 +            <fileset dir="${src.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}">
 16.1150                  <filename name="**/*.java"/>
 16.1151              </fileset>
 16.1152 -            <fileset dir="${reglib.src.dir}" excludes="${excludes}" includes="${includes}">
 16.1153 +            <fileset dir="${reglib.src.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}">
 16.1154                  <filename name="**/*.java"/>
 16.1155              </fileset>
 16.1156 +            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
 16.1157 +                <include name="**/*.java"/>
 16.1158 +                <exclude name="*.java"/>
 16.1159 +            </fileset>
 16.1160 +            <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>
 16.1161          </javadoc>
 16.1162 +        <copy todir="${dist.javadoc.dir}">
 16.1163 +            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
 16.1164 +                <filename name="**/doc-files/**"/>
 16.1165 +            </fileset>
 16.1166 +            <fileset dir="${reglib.src.dir}" excludes="${excludes}" includes="${includes}">
 16.1167 +                <filename name="**/doc-files/**"/>
 16.1168 +            </fileset>
 16.1169 +            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
 16.1170 +                <include name="**/doc-files/**"/>
 16.1171 +            </fileset>
 16.1172 +        </copy>
 16.1173      </target>
 16.1174      <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview">
 16.1175          <nbbrowse file="${dist.javadoc.dir}/index.html"/>
 16.1176 @@ -506,7 +1265,7 @@
 16.1177      <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
 16.1178      <!--
 16.1179                  =========================
 16.1180 -                JUNIT COMPILATION SECTION
 16.1181 +                TEST COMPILATION SECTION
 16.1182                  =========================
 16.1183              -->
 16.1184      <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
 16.1185 @@ -519,8 +1278,8 @@
 16.1186      <target if="do.depend.true" name="-compile-test-depend">
 16.1187          <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
 16.1188      </target>
 16.1189 -    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
 16.1190 -        <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
 16.1191 +    <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
 16.1192 +        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.src.dir}"/>
 16.1193          <copy todir="${build.test.classes.dir}">
 16.1194              <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
 16.1195          </copy>
 16.1196 @@ -534,10 +1293,10 @@
 16.1197          <!-- Empty placeholder for easier customization. -->
 16.1198          <!-- You can override this target in the ../build.xml file. -->
 16.1199      </target>
 16.1200 -    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
 16.1201 +    <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
 16.1202          <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
 16.1203          <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
 16.1204 -        <j2seproject3:javac classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/>
 16.1205 +        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/>
 16.1206          <copy todir="${build.test.classes.dir}">
 16.1207              <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
 16.1208          </copy>
 16.1209 @@ -549,17 +1308,17 @@
 16.1210      <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
 16.1211      <!--
 16.1212                  =======================
 16.1213 -                JUNIT EXECUTION SECTION
 16.1214 +                TEST EXECUTION SECTION
 16.1215                  =======================
 16.1216              -->
 16.1217      <target depends="init" if="have.tests" name="-pre-test-run">
 16.1218          <mkdir dir="${build.test.results.dir}"/>
 16.1219      </target>
 16.1220      <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
 16.1221 -        <j2seproject3:junit testincludes="**/*Test.java"/>
 16.1222 +        <j2seproject3:test includes="${includes}" testincludes="**/*Test.java"/>
 16.1223      </target>
 16.1224      <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
 16.1225 -        <fail if="tests.failed">Some tests failed; see details above.</fail>
 16.1226 +        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
 16.1227      </target>
 16.1228      <target depends="init" if="have.tests" name="test-report"/>
 16.1229      <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
 16.1230 @@ -569,39 +1328,40 @@
 16.1231      </target>
 16.1232      <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
 16.1233          <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
 16.1234 -        <j2seproject3:junit excludes="" includes="${test.includes}"/>
 16.1235 +        <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
 16.1236      </target>
 16.1237      <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
 16.1238 -        <fail if="tests.failed">Some tests failed; see details above.</fail>
 16.1239 +        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
 16.1240      </target>
 16.1241 -    <target depends="init,-do-not-recompile,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
 16.1242 +    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
 16.1243 +    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
 16.1244 +        <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
 16.1245 +        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
 16.1246 +        <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
 16.1247 +    </target>
 16.1248 +    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
 16.1249 +        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
 16.1250 +    </target>
 16.1251 +    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/>
 16.1252      <!--
 16.1253                  =======================
 16.1254 -                JUNIT DEBUGGING SECTION
 16.1255 +                TEST DEBUGGING SECTION
 16.1256                  =======================
 16.1257              -->
 16.1258 -    <target depends="init,compile-test" if="have.tests" name="-debug-start-debuggee-test">
 16.1259 +    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
 16.1260          <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
 16.1261 -        <property location="${build.test.results.dir}/TEST-${test.class}.xml" name="test.report.file"/>
 16.1262 -        <delete file="${test.report.file}"/>
 16.1263 -        <mkdir dir="${build.test.results.dir}"/>
 16.1264 -        <j2seproject3:debug classname="org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner" classpath="${ant.home}/lib/ant.jar:${ant.home}/lib/ant-junit.jar:${debug.test.classpath}">
 16.1265 -            <customize>
 16.1266 -                <syspropertyset>
 16.1267 -                    <propertyref prefix="test-sys-prop."/>
 16.1268 -                    <mapper from="test-sys-prop.*" to="*" type="glob"/>
 16.1269 -                </syspropertyset>
 16.1270 -                <arg value="${test.class}"/>
 16.1271 -                <arg value="showoutput=true"/>
 16.1272 -                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.BriefJUnitResultFormatter"/>
 16.1273 -                <arg value="formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,${test.report.file}"/>
 16.1274 -            </customize>
 16.1275 -        </j2seproject3:debug>
 16.1276 +        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
 16.1277 +    </target>
 16.1278 +    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
 16.1279 +        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
 16.1280 +        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
 16.1281 +        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
 16.1282      </target>
 16.1283      <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
 16.1284          <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
 16.1285      </target>
 16.1286 -    <target depends="init,-do-not-recompile,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
 16.1287 +    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
 16.1288 +    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
 16.1289      <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
 16.1290          <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
 16.1291      </target>
 16.1292 @@ -638,17 +1398,64 @@
 16.1293                  CLEANUP SECTION
 16.1294                  ===============
 16.1295              -->
 16.1296 -    <target depends="init" name="deps-clean" unless="no.deps">
 16.1297 -        <ant antfile="${project.NBI_Engine}/build.xml" inheritall="false" target="clean"/>
 16.1298 -        <ant antfile="${project.org_netbeans_modules_reglib}/build.xml" inheritall="false" target="clean"/>
 16.1299 +    <target name="-deps-clean-init" unless="built-clean.properties">
 16.1300 +        <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/>
 16.1301 +        <delete file="${built-clean.properties}" quiet="true"/>
 16.1302 +    </target>
 16.1303 +    <target if="already.built.clean.${basedir}" name="-warn-already-built-clean">
 16.1304 +        <echo level="warn" message="Cycle detected: Sun Studio Installer Engine was already built"/>
 16.1305 +    </target>
 16.1306 +    <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
 16.1307 +        <mkdir dir="${build.dir}"/>
 16.1308 +        <touch file="${built-clean.properties}" verbose="false"/>
 16.1309 +        <property file="${built-clean.properties}" prefix="already.built.clean."/>
 16.1310 +        <antcall target="-warn-already-built-clean"/>
 16.1311 +        <propertyfile file="${built-clean.properties}">
 16.1312 +            <entry key="${basedir}" value=""/>
 16.1313 +        </propertyfile>
 16.1314 +        <antcall target="-maybe-call-dep">
 16.1315 +            <param name="call.built.properties" value="${built-clean.properties}"/>
 16.1316 +            <param location="${project.NBI_Engine}" name="call.subproject"/>
 16.1317 +            <param location="${project.NBI_Engine}/build.xml" name="call.script"/>
 16.1318 +            <param name="call.target" value="clean"/>
 16.1319 +            <param name="transfer.built-clean.properties" value="${built-clean.properties}"/>
 16.1320 +            <param name="transfer.not.archive.disabled" value="true"/>
 16.1321 +        </antcall>
 16.1322 +        <antcall target="-maybe-call-dep">
 16.1323 +            <param name="call.built.properties" value="${built-clean.properties}"/>
 16.1324 +            <param location="${project.org_netbeans_modules_reglib}" name="call.subproject"/>
 16.1325 +            <param location="${project.org_netbeans_modules_reglib}/build.xml" name="call.script"/>
 16.1326 +            <param name="call.target" value="clean"/>
 16.1327 +            <param name="transfer.built-clean.properties" value="${built-clean.properties}"/>
 16.1328 +            <param name="transfer.not.archive.disabled" value="true"/>
 16.1329 +        </antcall>
 16.1330      </target>
 16.1331      <target depends="init" name="-do-clean">
 16.1332          <delete dir="${build.dir}"/>
 16.1333 -        <delete dir="${dist.dir}"/>
 16.1334 +        <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/>
 16.1335      </target>
 16.1336      <target name="-post-clean">
 16.1337          <!-- Empty placeholder for easier customization. -->
 16.1338          <!-- You can override this target in the ../build.xml file. -->
 16.1339      </target>
 16.1340      <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
 16.1341 +    <target name="-check-call-dep">
 16.1342 +        <property file="${call.built.properties}" prefix="already.built."/>
 16.1343 +        <condition property="should.call.dep">
 16.1344 +            <and>
 16.1345 +                <not>
 16.1346 +                    <isset property="already.built.${call.subproject}"/>
 16.1347 +                </not>
 16.1348 +                <available file="${call.script}"/>
 16.1349 +            </and>
 16.1350 +        </condition>
 16.1351 +    </target>
 16.1352 +    <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
 16.1353 +        <ant antfile="${call.script}" inheritall="false" target="${call.target}">
 16.1354 +            <propertyset>
 16.1355 +                <propertyref prefix="transfer."/>
 16.1356 +                <mapper from="transfer.*" to="*" type="glob"/>
 16.1357 +            </propertyset>
 16.1358 +        </ant>
 16.1359 +    </target>
 16.1360  </project>
    17.1 --- a/ssinstaller/engine/nbproject/genfiles.properties	Wed Jun 07 14:08:17 2017 +0300
    17.2 +++ b/ssinstaller/engine/nbproject/genfiles.properties	Wed Jun 07 17:36:09 2017 +0300
    17.3 @@ -4,5 +4,5 @@
    17.4  # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
    17.5  # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
    17.6  nbproject/build-impl.xml.data.CRC32=5ec25142
    17.7 -nbproject/build-impl.xml.script.CRC32=c8bb3874
    17.8 -nbproject/build-impl.xml.stylesheet.CRC32=61b4e419
    17.9 +nbproject/build-impl.xml.script.CRC32=e32f5d42
   17.10 +nbproject/build-impl.xml.stylesheet.CRC32=830a3534@1.80.1.48
    18.1 --- a/ssinstaller/engine/nbproject/project.properties	Wed Jun 07 14:08:17 2017 +0300
    18.2 +++ b/ssinstaller/engine/nbproject/project.properties	Wed Jun 07 17:36:09 2017 +0300
    18.3 @@ -41,6 +41,7 @@
    18.4  # This directory is removed when the project is cleaned:
    18.5  build.dir=build
    18.6  build.generated.dir=${build.dir}/generated
    18.7 +build.generated.sources.dir=${build.dir}/generated-sources
    18.8  # Only compile against the classpath explicitly listed here:
    18.9  build.sysclasspath=ignore
   18.10  build.test.classes.dir=${build.dir}/test/classes