#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.

cluster.config=release
clusters.prefix=libnb

clusters.config.release.list=\
        ${clusters.config.java.list},\
        nb.cluster.apisupport,\
        nb.cluster.webcommon,\
        nb.cluster.php,\
        nb.cluster.groovy,\
        nb.cluster.enterprise,\
        nb.cluster.ergonomics
# ergonomics must be last

clusters.config.platform.list=\
        nb.cluster.harness,\
        nb.cluster.bootstrap,\
        nb.cluster.platform

clusters.config.basic.list=\
        ${clusters.config.java.list},\
        nb.cluster.apisupport,\
        nb.cluster.ergonomics
# ergonomics must be last

clusters.config.standard.list=\
        ${clusters.config.java.list},\
        nb.cluster.apisupport,\
        nb.cluster.webcommon,\
        nb.cluster.enterprise

clusters.config.full.list=\
        nb.cluster.groovy,\
        nb.cluster.php,\
        ${clusters.config.standard.list},\
        nb.cluster.ergonomics
# ergonomics must be last

clusters.config.php.list=\
        ${clusters.config.platform.list},\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.webcommon,\
        nb.cluster.php,\
        nb.cluster.websvccommon,\
        nb.cluster.nb

clusters.config.groovy.list=\
        ${clusters.config.java.list},\
        nb.cluster.groovy

clusters.config.cnd.list=\
        ${clusters.config.platform.list},\
        nb.cluster.ide,\
        nb.cluster.cnd,\
        nb.cluster.nb,\
        nb.cluster.dlight

clusters.config.cndext.list=\
        ${clusters.config.cnd.list},\
	nb.cluster.cndext,\
	nb.cluster.extide,\
        nb.cluster.java

clusters.config.dlight.list=\
        nb.cluster.platform,\
        nb.cluster.harness,\
        nb.cluster.ide,\
        nb.cluster.dlight,\
        nb.cluster.nb

clusters.config.java.list=\
        ${clusters.config.platform.list},\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.websvccommon,\
        nb.cluster.java,\
        nb.cluster.javafx,\
        nb.cluster.profiler,\
        nb.cluster.3rdparty,\
        nb.cluster.nb

clusters.config.enterprise.list=\
        ${clusters.config.java.list},\
        nb.cluster.webcommon,\
        nb.cluster.enterprise

clusters.config.identity.list=\
        ${clusters.config.enterprise.list},\
        nb.cluster.identity

clusters.config.mobility.list=\
        ${clusters.config.enterprise.list},\
        nb.cluster.mobility

clusters.config.jdev.list=\
        ${clusters.config.platform.list},\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.websvccommon,\
        nb.cluster.java,\
        nb.cluster.profiler,\
        nb.cluster.jira,\
        nb.cluster.odcs

clusters.config.bloated.list=\
        nb.cluster.identity,\
        ${clusters.config.full.list}
# ergonomics must be last

# For technical reasons, nb.cluster.experimental is a superset of nb.cluster.betauc and nb.cluster.stableuc, so cannot list at once:
clusters.config.experimental.list=\
        ${clusters.config.bloated.list},\
        nb.cluster.jira,\
        nb.cluster.team,\
        nb.cluster.experimental

clusters.config.stableuc.list=\
        ${clusters.config.full.list},\
        nb.cluster.jira,\
        nb.cluster.team,\
        nb.cluster.stableuc
# could put ergonomics last, but undesirable to also do so for clusters.config.experimental.list, so exclude stableuc from ergonomics processing

clusters.config.betauc.list=\
        ${clusters.config.full.list},\
        nb.cluster.jira,\
        nb.cluster.team,\
        nb.cluster.betauc

clusters.config.minimal.list=\
        ${clusters.config.platform.list},\
        nb.cluster.ide,\
        nb.cluster.nb

clusters.config.javacard.list=\
        ${clusters.config.java.list},\
        nb.cluster.javacard

clusters.config.remote.list=\
        ${clusters.config.java.list},\
        nb.cluster.remote

clusters.config.python.list=\
        ${clusters.config.minimal.list},\
        nb.cluster.python

clusters.config.odcs.list=\
        ${clusters.config.minimal.list},\
        nb.cluster.odcs

clusters.list=\
        ${clusters.config.full.list}

# Bootstrap 'cluster' serves just to group modules which are needed to process
# module-auto-deps.xml during compilation; other clusters can then benefit
# from autodeps during compilation
nb.cluster.bootstrap.dir=platform
nb.cluster.bootstrap.depends=
nb.cluster.bootstrap=\
        core.startup,\
        core.startup.base,\
        libs.asm,\
        o.n.bootstrap,\
        openide.filesystems,\
        openide.modules,\
        openide.util,\
        openide.util.lookup,\
        openide.util.ui

nb.cluster.platform.dir=platform
nb.cluster.platform.depends=nb.cluster.bootstrap
nb.cluster.platform=\
        api.annotations.common,\
        api.htmlui,\
        api.intent,\
        api.io,\
        api.progress,\
        api.progress.compat8,\
        api.progress.nb,\
        api.scripting,\
        api.search,\
        api.templates,\
        api.visual,\
        applemenu,\
        autoupdate.cli,\
        autoupdate.services,\
        autoupdate.ui,\
        core.execution,\
        core.io.ui,\
        core.kit,\
        core.multitabs,\
        core.multiview,\
        core.nativeaccess,\
        core.netigso,\
        core.network,\
        core.osgi,\
        core.output2,\
        core.ui,\
        core.windows,\
        editor.mimelookup,\
        editor.mimelookup.impl,\
        favorites,\
        javahelp,\
        junitlib,\
        keyring,\
        keyring.fallback,\
        keyring.impl,\
        lib.uihandler,\
        libs.felix,\
        libs.javafx,\
        libs.jna,\
        libs.jna.platform,\
        libs.jsr223,\
        libs.junit4,\
        libs.junit5,\
        libs.osgi,\
        libs.testng,\
        masterfs,\
        masterfs.linux,\
        masterfs.macosx,\
        masterfs.nio2,\
        masterfs.ui,\
        masterfs.windows,\
        net.java.html,\
        net.java.html.boot,\
        net.java.html.boot.fx,\
        net.java.html.boot.script,\
        net.java.html.geo,\
        net.java.html.json,\
        net.java.html.sound,\
        netbinox,\
        o.n.core,\
        o.n.html.ko4j,\
        o.n.html.xhr4j,\
        o.n.swing.outline,\
        o.n.swing.plaf,\
        o.n.swing.tabcontrol,\
        openide.actions,\
        openide.awt,\
        openide.compat,\
        openide.dialogs,\
        openide.execution,\
        openide.execution.compat8,\
        openide.explorer,\
        openide.filesystems.compat8,\
        openide.filesystems.nb,\
        openide.io,\
        openide.loaders,\
        openide.nodes,\
        openide.options,\
        openide.text,\
        openide.util.enumerations,\
        openide.windows,\
        options.api,\
        options.keymap,\
        print,\
        progress.ui,\
        queries,\
        sampler,\
        sendopts,\
        settings,\
        spi.actions,\
        spi.quicksearch,\
        templates,\
        templatesui,\
        uihandler
validation.nb.cluster.platform=\
        o.n.core,\
        core.windows,\
        javahelp

nb.cluster.ide.dir=ide
nb.cluster.ide.depends=\
        nb.cluster.platform,\
        nb.cluster.harness
nb.cluster.ide=\
        api.debugger,\
        api.java.classpath,\
        api.xml,\
        api.xml.ui,\
        bugtracking,\
        bugtracking.bridge,\
        bugtracking.commons,\
        bugzilla,\
        c.google.gson,\
        c.google.guava,\
        c.googlecode.javaewah.JavaEWAH,\
        c.jcraft.jsch,\
        c.jcraft.jzlib,\
        code.analysis,\
        core.browser,\
        core.browser.webview,\
        core.ide,\
        core.multitabs.project,\
        csl.api,\
        csl.types,\
        css.editor,\
        css.lib,\
        css.model,\
        css.prep,\
        css.visual,\
        db,\
        db.core,\
        db.dataview,\
        db.drivers,\
        db.kit,\
        db.metadata.model,\
        db.mysql,\
        db.sql.editor,\
        db.sql.visualeditor,\
        dbapi,\
        defaults,\
        derby,\
        diff,\
        dlight.nativeexecution,\
        dlight.nativeexecution.nb,\
        dlight.terminal,\
        docker.api,\
        docker.editor,\
        docker.ui,\
        editor,\
        editor.actions,\
        editor.bookmarks,\
        editor.bracesmatching,\
        editor.breadcrumbs,\
        editor.codetemplates,\
        editor.completion,\
        editor.deprecated.pre65formatting,\
        editor.document,\
        editor.errorstripe,\
        editor.errorstripe.api,\
        editor.fold,\
        editor.fold.nbui,\
        editor.global.format,\
        editor.guards,\
        editor.indent,\
        editor.indent.project,\
        editor.indent.support,\
        editor.kit,\
        editor.lib,\
        editor.lib2,\
        editor.macros,\
        editor.plain,\
        editor.plain.lib,\
        editor.search,\
        editor.settings,\
        editor.settings.lib,\
        editor.settings.storage,\
        editor.structure,\
        editor.tools.storage,\
        editor.util,\
        extbrowser,\
        extexecution,\
        extexecution.base,\
        extexecution.impl,\
        extexecution.process,\
        extexecution.process.jdk9,\
        git,\
        gototest,\
        gsf.codecoverage,\
        gsf.testrunner,\
        gsf.testrunner.ui,\
        html,\
        html.custom,\
        html.editor,\
        html.editor.lib,\
        html.lexer,\
        html.parser,\
        html.validation,\
        httpserver,\
        hudson,\
        hudson.git,\
        hudson.mercurial,\
        hudson.subversion,\
        hudson.tasklist,\
	hudson.ui,\
        ide.kit,\
        image,\
        javascript2.debug,\
        javascript2.debug.ui,\
        jellytools.ide,\
        jumpto,\
        languages,\
        languages.diff,\
        languages.manifest,\
        languages.yaml,\
        lexer,\
        lexer.nbbridge,\
        lib.terminalemulator,\
        libs.antlr3.runtime,\
        libs.antlr4.runtime,\
        libs.bytelist,\
        libs.commons_compress,\
        libs.commons_net,\
        libs.freemarker,\
        libs.git,\
        libs.graalsdk,\
        libs.ini4j,\
        libs.jaxb,\
        libs.jsch.agentproxy,\
	libs.json_simple,\
        libs.jvyamlb,\
        libs.lucene,\
        libs.smack,\
        libs.svnClientAdapter,\
        libs.svnClientAdapter.javahl,\
        libs.xerces,\
        localhistory,\
        localtasks,\
        lsp.client,\
        mercurial,\
        mylyn.util,\
        notifications,\
        o.apache.commons.codec,\
        o.apache.commons.httpclient,\
        o.apache.commons.io,\
        o.apache.commons.lang,\
        o.apache.commons.logging,\
        o.apache.ws.commons.util,\
        o.apache.xml.resolver,\
        o.apache.xmlrpc,\
        o.eclipse.core.contenttype,\
        o.eclipse.core.jobs,\
        o.eclipse.core.net,\
        o.eclipse.core.runtime,\
        o.eclipse.core.runtime.compatibility.auth,\
        o.eclipse.equinox.app,\
        o.eclipse.equinox.common,\
        o.eclipse.equinox.preferences,\
        o.eclipse.equinox.registry,\
        o.eclipse.equinox.security,\
        o.eclipse.jgit,\
        o.eclipse.jgit.java7,\
        o.eclipse.mylyn.bugzilla.core,\
        o.eclipse.mylyn.commons.core,\
        o.eclipse.mylyn.commons.net,\
        o.eclipse.mylyn.commons.repositories.core,\
        o.eclipse.mylyn.commons.xmlrpc,\
        o.eclipse.mylyn.tasks.core,\
        o.eclipse.mylyn.wikitext.confluence.core,\
        o.eclipse.mylyn.wikitext.core,\
        o.eclipse.mylyn.wikitext.markdown.core,\
        o.eclipse.mylyn.wikitext.textile.core,\
        o.n.swing.dirchooser,\
        o.openidex.util,\
        options.editor,\
        parsing.api,\
        parsing.indexing,\
        parsing.lucene,\
        parsing.nb,\
        parsing.ui,\
        print.editor,\
        project.ant,\
        project.ant.compat8,\
        project.ant.ui,\
        project.indexingbridge,\
        project.libraries,\
        project.libraries.ui,\
        project.spi.intern,\
        project.spi.intern.impl,\
        projectapi,\
        projectapi.nb,\
        projectui,\
        projectui.buildmenu,\
        projectuiapi,\
        projectuiapi.base,\
        properties,\
        properties.syntax,\
        refactoring.api,\
        schema2beans,\
        selenium2,\
        selenium2.server,\
        server,\
        servletapi,\
        spellchecker,\
        spellchecker.apimodule,\
        spellchecker.bindings.htmlxml,\
        spellchecker.bindings.properties,\
        spellchecker.dictionary_en,\
        spellchecker.kit,\
        spi.debugger.ui,\
        spi.editor.hints,\
        spi.editor.hints.projects,\
        spi.navigator,\
        spi.palette,\
        spi.tasklist,\
        spi.viewmodel,\
        subversion,\
        swing.validation,\
        target.iterator,\
        tasklist.kit,\
        tasklist.projectint,\
        tasklist.todo,\
        tasklist.ui,\
        team.commons,\
        team.ide,\
        terminal,\
        terminal.nb,\
        textmate.lexer,\
        usersguide,\
        utilities,\
        utilities.project,\
        versioning,\
        versioning.core,\
        versioning.indexingbridge,\
        versioning.masterfs,\
        versioning.system.cvss.installer,\
        versioning.ui,\
        versioning.util,\
	web.browser.api,\
        web.common,\
        web.common.ui,\
        web.indent,\
        web.webkit.debugging,\
        xml,\
        xml.axi,\
        xml.catalog,\
        xml.catalog.ui,\
        xml.core,\
        xml.jaxb.api,\
        xml.lexer,\
        xml.multiview,\
        xml.retriever,\
        xml.schema.completion,\
        xml.schema.model,\
        xml.tax,\
        xml.text,\
        xml.text.obsolete90,\
        xml.tools,\
        xml.wsdl.model,\
        xml.xam,\
        xml.xdm,\
        xsl
validation.nb.cluster.ide=\
        ide.kit

nb.cluster.java.dir=java
nb.cluster.java.depends=\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.platform,\
        nb.cluster.websvccommon,\
        nb.cluster.harness
nb.cluster.java=\
        ant.browsetask,\
        ant.debugger,\
        ant.freeform,\
        ant.grammar,\
        ant.kit,\
        api.debugger.jpda,\
        api.java,\
        api.maven,\
        beans,\
        classfile,\
        dbschema,\
        debugger.jpda,\
        debugger.jpda.ant,\
        debugger.jpda.js,\
        debugger.jpda.jsui,\
        debugger.jpda.kit,\
        debugger.jpda.projects,\
        debugger.jpda.projectsui,\
        debugger.jpda.truffle,\
        debugger.jpda.trufflenode,\
        debugger.jpda.ui,\
        debugger.jpda.visual,\
        editor.htmlui,\
        findbugs.installer,\
        form,\
        form.kit,\
        form.nb,\
        form.refactoring,\
        hudson.ant,\
        hudson.maven,\
        i18n,\
        i18n.form,\
        j2ee.core.utilities,\
        j2ee.eclipselink,\
        j2ee.eclipselinkmodelgen,\
        j2ee.jpa.refactoring,\
        j2ee.jpa.verification,\
        j2ee.metadata,\
        j2ee.metadata.model.support,\
        j2ee.persistence,\
        j2ee.persistence.kit,\
        j2ee.persistenceapi,\
        java.api.common,\
        java.completion,\
        java.debug,\
        java.editor,\
        java.editor.base,\
        java.editor.lib,\
        java.examples,\
        java.freeform,\
        java.graph,\
        java.guards,\
        java.hints,\
        java.hints.declarative,\
        java.hints.declarative.test,\
        java.hints.legacy.spi,\
        java.hints.test,\
        java.hints.ui,\
        java.j2sedeploy,\
        java.j2seembedded,\
        java.j2semodule,\
        java.j2seplatform,\
        java.j2seprofiles,\
        java.j2seproject,\
        java.kit,\
        java.lexer,\
        java.metrics,\
        java.module.graph,\
        java.navigation,\
        java.openjdk.project,\
        java.platform,\
        java.platform.ui,\
        java.preprocessorbridge,\
        java.project,\
        java.project.ui,\
        java.source,\
        java.source.ant,\
        java.source.base,\
        java.source.compat8,\
        java.source.nbjavac,\
        java.source.queries,\
        java.source.queriesimpl,\
        java.sourceui,\
        java.testrunner,\
        java.testrunner.ant,\
        java.testrunner.ui,\
        javadoc,\
        javaee.injection,\
        javawebstart,\
        jellytools.java,\
        jshell.support,\
        junit,\
        junit.ant,\
        junit.ant.ui,\
        junit.ui,\
        lib.jshell.agent,\
        lib.nbjavac,\
        lib.nbjshell,\
        lib.nbjshell9,\
        libs.cglib,\
        libs.javacapi,\
        libs.javacimpl,\
        libs.jshell.compile,\
        libs.springframework,\
        maven,\
        maven.checkstyle,\
        maven.coverage,\
        maven.embedder,\
        maven.grammar,\
        maven.graph,\
        maven.hints,\
        maven.htmlui,\
        maven.indexer,\
        maven.indexer.ui,\
        maven.junit,\
        maven.junit.ui,\
        maven.kit,\
        maven.model,\
        maven.osgi,\
        maven.persistence,\
        maven.refactoring,\
        maven.repository,\
        maven.search,\
        maven.spring,\
        nashorn.execution,\
        performance,\
        performance.java,\
        projectimport.eclipse.core,\
        projectimport.eclipse.j2se,\
        refactoring.java,\
        selenium2.java,\
        selenium2.maven,\
        spellchecker.bindings.java,\
        spi.debugger.jpda.ui,\
        spi.java.hints,\
        spring.beans,\
        testng,\
        testng.ant,\
        testng.maven,\
        testng.ui,\
        websvc.jaxws21,\
        websvc.jaxws21api,\
        websvc.saas.codegen.java,\
        whitelist,\
        xml.jaxb,\
        xml.tools.java
validation.nb.cluster.java=\
        java.hints,\
        java.kit

nb.cluster.apisupport.dir=apisupport
nb.cluster.apisupport.depends=\
        nb.cluster.java,\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.platform,\
        nb.cluster.harness
nb.cluster.apisupport=\
        apisupport.ant,\
        apisupport.installer,\
        apisupport.installer.maven,\
        apisupport.kit,\
        apisupport.project,\
        apisupport.refactoring,\
        apisupport.wizards,\
        maven.apisupport,\
        timers

nb.cluster.enterprise.dir=enterprise
nb.cluster.enterprise.depends=\
        nb.cluster.java,\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.profiler,\
        nb.cluster.webcommon,\
        nb.cluster.websvccommon,\
        nb.cluster.platform,\
        nb.cluster.harness
nb.cluster.enterprise=\
        api.web.webmodule,\
        cloud.amazon,\
        cloud.common,\
        el.lexer,\
        glassfish.common,\
        glassfish.eecommon,\
        glassfish.javaee,\
        glassfish.tooling,\
        j2ee.ant,\
        j2ee.api.ejbmodule,\
        j2ee.clientproject,\
        j2ee.common,\
        j2ee.core,\
        j2ee.dd,\
        j2ee.dd.webservice,\
        j2ee.ddloaders,\
        j2ee.earproject,\
        j2ee.ejbcore,\
        j2ee.ejbjarproject,\
        j2ee.ejbrefactoring,\
        j2ee.ejbverification,\
        j2ee.genericserver,\
        j2ee.kit,\
        j2ee.platform,\
        j2ee.sun.appsrv,\
        j2ee.sun.dd,\
        j2ee.sun.ddui,\
        j2eeapis,\
        j2eeserver,\
        javaee.api,\
        javaee.beanvalidation,\
        javaee.project,\
        javaee.resources,\
        javaee.specs.support,\
        javaee7.api,\
        jellytools.enterprise,\
        jsp.lexer,\
        libs.amazon,\
        libs.commons_fileupload,\
        libs.elimpl,\
        libs.glassfish_logging,\
        libs.jstl,\
        maven.j2ee,\
        maven.jaxws,\
        performance.javaee,\
        performance.scripting,\
        performance.web,\
        profiler.j2ee,\
        projectimport.eclipse.web,\
        servletjspapi,\
        spring.webmvc,\
        tomcat5,\
        web.beans,\
        web.client.rest,\
        web.core,\
        web.core.syntax,\
        web.debug,\
        web.el,\
        web.freeform,\
        web.jsf,\
        web.jsf.editor,\
        web.jsf.icefaces,\
        web.jsf.kit,\
        web.jsf.navigation,\
        web.jsf.richfaces,\
        web.jsf12,\
        web.jsf12ri,\
        web.jsf20,\
        web.jsfapi,\
        web.jspparser,\
        web.kit,\
        web.monitor,\
        web.primefaces,\
        web.project,\
        web.refactoring,\
        web.struts,\
        weblogic.common,\
	websocket,\
        websvc.clientapi,\
        websvc.core,\
        websvc.customization,\
        websvc.design,\
        websvc.editor.hints,\
        websvc.jaxws.lightapi,\
        websvc.jaxwsapi,\
        websvc.jaxwsmodel,\
        websvc.kit,\
        websvc.manager,\
        websvc.metro.lib,\
        websvc.owsm,\
        websvc.projectapi,\
        websvc.rest,\
        websvc.restapi,\
        websvc.restkit,\
        websvc.restlib,\
        websvc.saas.codegen.j2ee,\
        websvc.utilities,\
        websvc.websvcapi,\
        websvc.wsstackapi

nb.cluster.ergonomics.dir=ergonomics
nb.cluster.ergonomics.depends=nb.cluster.ide,nb.cluster.platform
nb.cluster.ergonomics=\
        ide.ergonomics,\
        performance.ergonomics
validation.nb.cluster.ergonomics=\
        ide.ergonomics

nb.cluster.nb.dir=nb
nb.cluster.nb.depends=\
        nb.cluster.platform,\
        nb.cluster.ide,\
        nb.cluster.3rdparty,\
        nb.cluster.harness
nb.cluster.nb=\
        autoupdate.pluginimporter,\
        bugzilla.exceptionreporter,\
        deadlock.detector,\
        ide.branding,\
        ide.branding.kit,\
        ko4j.debugging,\
        o.n.upgrader,\
        uihandler.exceptionreporter,\
        updatecenters,\
        welcome

nb.cluster.3rdparty.dir=extra
nb.cluster.3rdparty.depends=\
        nb.cluster.platform
nb.cluster.3rdparty=\
        libs.javafx.linux,\
        libs.javafx.macosx,\
        libs.javafx.win


nb.cluster.harness.dir=harness
nb.cluster.harness.depends=nb.cluster.platform
nb.cluster.harness=\
        apisupport.harness,\
        jellytools.platform,\
        jemmy,\
        libs.nbi.ant,\
        libs.nbi.engine,\
        nbjunit,\
        o.n.insane

nb.cluster.profiler.dir=profiler
nb.cluster.profiler.depends=\
        nb.cluster.ide,\
        nb.cluster.java,\
        nb.cluster.extide,\
        nb.cluster.platform
nb.cluster.profiler=\
        debugger.jpda.heapwalk,\
        lib.profiler,\
        lib.profiler.charts,\
        lib.profiler.common,\
        lib.profiler.ui,\
        maven.profiler,\
        profiler,\
        profiler.api,\
        profiler.attach,\
        profiler.freeform,\
        profiler.heapwalker,\
        profiler.j2se,\
        profiler.kit,\
        profiler.nbimpl,\
        profiler.nbmodule,\
        profiler.options,\
        profiler.oql,\
        profiler.oql.language,\
        profiler.ppoints,\
        profiler.projectsupport,\
        profiler.snaptracer,\
        profiler.utilities
validation.nb.cluster.profiler=\
        profiler.kit

nb.cluster.php.dir=php
nb.cluster.php.depends=\
        nb.cluster.platform,\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.webcommon,\
        nb.cluster.websvccommon
nb.cluster.php=\
        hudson.php,\
        languages.neon,\
        libs.javacup,\
        php.api.annotation,\
        php.api.documentation,\
        php.api.editor,\
        php.api.executable,\
        php.api.framework,\
        php.api.phpmodule,\
        php.api.templates,\
        php.api.testing,\
        php.apigen,\
        php.atoum,\
        php.code.analysis,\
        php.codeception,\
        php.composer,\
        php.dbgp,\
        php.doctrine2,\
        php.editor,\
        php.kit,\
        php.latte,\
        php.nette.tester,\
        php.nette2,\
        php.phing,\
        php.phpdoc,\
        php.phpunit,\
        php.project,\
        php.refactoring,\
        php.samples,\
        php.smarty,\
        php.symfony,\
        php.symfony2,\
        php.twig,\
        php.zend,\
        php.zend2,\
        selenium2.php,\
        spellchecker.bindings.php,\
        websvc.saas.codegen.php
validation.nb.cluster.php=\
        php.editor

nb.cluster.groovy.dir=groovy
nb.cluster.groovy.depends=\
        nb.cluster.platform,\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.java
nb.cluster.groovy=\
        gradle,\
        gradle.java,\
        gradle.kit,\
        gradle.persistence,\
        gradle.spring,\
        gradle.test,\
        groovy.and.gradle.kit,\
        groovy.antproject,\
        groovy.editor,\
        groovy.gsp,\
        groovy.kit,\
        groovy.refactoring,\
        groovy.samples,\
        groovy.support,\
        libs.groovy,\
        maven.groovy

nb.cluster.mobility.dir=mobility
nb.cluster.mobility.depends=\
        nb.cluster.platform,\
        nb.cluster.java,\
        nb.cluster.websvccommon,\
        nb.cluster.apisupport,\
        nb.cluster.ide,\
        nb.cluster.enterprise,\
        nb.cluster.extide
nb.cluster.mobility=\
        api.mobility,\
        j2me.common.ant,\
        j2me.keystore,\
        j2me.kit,\
        j2me.project,\
        mobility.cldcplatform,\
        mobility.databindingme,\
        mobility.end2end,\
        mobility.jsr172,\
        mobility.licensing,\
        mobility.project.ant

nb.cluster.identity.dir=identity
nb.cluster.identity.depends=\
        nb.cluster.platform,\
        nb.cluster.java,\
        nb.cluster.ide,\
        nb.cluster.enterprise,\
        nb.cluster.extide
nb.cluster.identity=\
        identity.ant,\
        identity.kit,\
        identity.profile.api,\
        identity.profile.ui,\
        identity.samples,\
        identity.server.manager

nb.cluster.cnd.dir=cnd
nb.cluster.cnd.depends=\
        nb.cluster.harness,\
        nb.cluster.platform,\
        nb.cluster.dlight,\
        nb.cluster.ide
nb.cluster.cnd=\
        cnd,\
        cnd.analysis.api,\
        cnd.analysis.impl,\
        cnd.antlr,\
        cnd.api.model,\
        cnd.api.project,\
        cnd.api.remote,\
        cnd.api.remote.ui,\
        cnd.apt,\
        cnd.asm,\
        cnd.callgraph,\
        cnd.classview,\
        cnd.cncppunit,\
        cnd.completion,\
        cnd.debugger.common2,\
        cnd.debugger.dbx,\
        cnd.debugger.gdb2,\
        cnd.discovery,\
        cnd.dwarfdiscovery,\
        cnd.dwarfdump,\
        cnd.editor,\
        cnd.gotodeclaration,\
        cnd.highlight,\
        cnd.indexing,\
        cnd.kit,\
        cnd.lexer,\
        cnd.makeproject,\
        cnd.makeproject.source.bridge,\
        cnd.makeproject.ui,\
        cnd.model.jclank.bridge,\
        cnd.model.services,\
        cnd.modeldiscovery,\
        cnd.modelimpl,\
        cnd.modelui,\
        cnd.modelutil,\
        cnd.navigation,\
        cnd.qnavigator,\
        cnd.refactoring,\
        cnd.remote,\
        cnd.remote.projectui,\
        cnd.remote.ui,\
        cnd.repository,\
        cnd.repository.api,\
        cnd.script,\
        cnd.search,\
        cnd.simpleunit,\
        cnd.source,\
        cnd.spellchecker.bindings,\
        cnd.testrunner,\
        cnd.toolchain,\
        cnd.toolchain.ui,\
        cnd.ui,\
        cnd.utils,\
        cnd.utils.ui,\
        jellytools.cnd,\
        libs.clank,\
        libs.dbx.support
validation.nb.cluster.cnd=\
        cnd.kit

nb.cluster.cndext.dir=cndext
nb.cluster.cndext=\
	cnd.mixeddev

nb.cluster.cndext.depends=\
	nb.cluster.cnd,\
	nb.cluster.extide,\
	nb.cluster.java

nb.cluster.dlight.dir=dlight
nb.cluster.dlight.depends=\
        nb.cluster.platform,\
        nb.cluster.ide
nb.cluster.dlight=\
        dlight.kit,\
        dlight.libs.common,\
        dlight.remote,\
        dlight.remote.impl,\
        dlight.remote.ui,\
        dlight.sendto,\
        git.remote,\
        git.remote.cli,\
        mercurial.remote,\
        remotefs.versioning,\
        remotefs.versioning.api,\
        subversion.remote

nb.cluster.jira.dir=extra
nb.cluster.jira.depends=\
        nb.cluster.harness,\
        nb.cluster.platform,\
        nb.cluster.ide
nb.cluster.jira=\
        c.atlassian.connector.eclipse.commons.core,\
        c.atlassian.connector.eclipse.jira.core,\
        c.atlassian.connector.eclipse.jira.core.rest,\
        c.s.jersey,\
        c.s.mail.javax.mail,\
        javax.servlet,\
        javax.wsdl,\
        javax.xml.rpc,\
        javax.xml.soap,\
        jira,\
        jira.rest,\
        jira.xmlrpc,\
        libs.jira.rest,\
        o.apache.axis,\
        o.apache.commons.discovery,\
        o.codehaus.jettison,\
        o.eclipse.mylyn.commons.soap,\
        o.eclipse.mylyn.monitor.ui.dummy,\
        o.joda.time

nb.cluster.team.dir=extra
nb.cluster.team.depends=\
        nb.cluster.harness,\
        nb.cluster.platform,\
        nb.cluster.ide
nb.cluster.team=\
        bugtracking.kenai,\
        c.tasktop.c2c.server.cloud.api,\
        c.tasktop.c2c.server.common.api,\
        c.tasktop.c2c.server.profile.api,\
        c.tasktop.c2c.server.scm.api,\
        c.tasktop.c2c.server.tasks.api,\
        c.tasktop.c2c.server.wiki.api,\
        kenai,\
        kenai.kit,\
        kenai.maven,\
        kenai.ui,\
        lib.cvsclient,\
        o.codehaus.jackson.core,\
        o.codehaus.jackson.mapper,\
        odcs,\
        odcs.git,\
        odcs.hudson,\
        odcs.kit,\
        odcs.tasks,\
        odcs.tasks.bridge,\
        odcs.ui,\
        odcs.versioning,\
        oracle.clouddev.server.profile.activity.client.api,\
        oracle.clouddev.server.profile.activity.client.rest,\
        oracle.eclipse.tools.cloud.dev.tasks,\
        team.server,\
        team.server.nb,\
        versioning.kenai,\
        versioning.system.cvss

nb.cluster.odcs.dir=extra
nb.cluster.odcs.depends=
nb.cluster.odcs=\
        c.tasktop.c2c.server.cloud.api,\
        c.tasktop.c2c.server.common.api,\
        c.tasktop.c2c.server.profile.api,\
        c.tasktop.c2c.server.scm.api,\
        c.tasktop.c2c.server.tasks.api,\
        c.tasktop.c2c.server.wiki.api,\
        o.codehaus.jackson.core,\
        o.codehaus.jackson.mapper,\
        odcs,\
        odcs.git,\
        odcs.hudson,\
        odcs.kit,\
        odcs.tasks,\
        odcs.tasks.bridge,\
        odcs.ui,\
        odcs.versioning,\
        oracle.clouddev.server.profile.activity.client.api,\
        oracle.clouddev.server.profile.activity.client.rest,\
        oracle.eclipse.tools.cloud.dev.tasks,\
        team.server,\
        team.server.nb

nb.cluster.stableuc.dir=extra
nb.cluster.stableuc.depends=${clusters.config.full.list}
nb.cluster.stableuc=\
        apisupport.apidocs,\
        cloud.oracle,\
        db.mysql.sakila,\
        deployment.deviceanywhere,\
        findbugs,\
        j2me.cdc.kit,\
        j2me.cdc.platform,\
        j2me.cdc.platform.nokias80,\
        j2me.cdc.platform.ojec,\
        j2me.cdc.platform.semc,\
        j2me.cdc.platform.sjmc,\
        j2me.cdc.platform.sun,\
        j2me.cdc.project,\
        j2me.cdc.project.execui,\
        j2me.cdc.project.execuiimpl,\
        j2me.cdc.project.nokiaS80,\
        j2me.cdc.project.ojec,\
        j2me.cdc.project.savaje,\
        j2me.cdc.project.semc,\
        j2me.cdc.project.sjmc,\
        jconsole,\
        jmx,\
        jmx.common,\
        libs.aguiswinglayout,\
        libs.findbugs,\
        libs.oracle.cloud,\
        libs.ppawtlayout,\
        loadgenerator,\
	maven.util,\
        mobility.antext,\
        mobility.cldcplatform.catalog,\
        mobility.deployment.ftpscp,\
        mobility.deployment.nokia,\
        mobility.deployment.sonyericsson,\
        mobility.deployment.webdav,\
        mobility.editor,\
        mobility.j2meunit,\
        mobility.kit,\
        mobility.plugins.mpowerplayer,\
        mobility.project,\
        mobility.project.bridge,\
        mobility.project.bridge.impl,\
        mobility.svgcore,\
        mvd,\
        o.apache.tools.ant.module.docs,\
	o.n.swing.laf.dark,\
        otherlicenses/mobility.proguard,\
        profiler.commandrunner,\
        profiler.loadgen,\
        svg.perseus,\
        swingapplib,\
        vmd.analyzer,\
        vmd.codegen,\
        vmd.components.midp,\
        vmd.components.midp.pda,\
        vmd.components.midp.wma,\
        vmd.components.svg,\
        vmd.componentssupport,\
        vmd.examples,\
        vmd.flow,\
        vmd.game,\
        vmd.inspector,\
        vmd.io,\
        vmd.io.javame,\
        vmd.kit,\
        vmd.midp,\
        vmd.midp.converter,\
        vmd.midpnb,\
        vmd.model,\
        vmd.palette,\
        vmd.properties,\
        vmd.screen,\
        vmd.structure

nb.cluster.betauc.dir=extra
nb.cluster.betauc.depends=${clusters.config.full.list}
nb.cluster.betauc=\
        ${nb.cluster.stableuc},\
        clearcase,\
        coherence,\
        contrib/ant.freeform.samples,\
        contrib/api.workqueues,\
        contrib/apisupport.projectinspector,\
        contrib/autoproject.core,\
        contrib/autoproject.java,\
        contrib/autoproject.profiler,\
        contrib/autoproject.web,\
        contrib/cnd.debugger.gdbserver,\
        contrib/docbook,\
        contrib/docbook.project,\
        contrib/imagepaste,\
        contrib/insertunicode,\
        contrib/j2ee.geronimo2,\
        contrib/j2ee.jetty,\
        contrib/libs.selenium,\
        contrib/libs.selenium.server,\
        contrib/logmanagement,\
        contrib/masterfs.suspend,\
        contrib/modulemanager,\
        contrib/quickfilechooser,\
        contrib/selenium,\
        contrib/selenium.maven,\
        contrib/selenium.php,\
        contrib/selenium.server,\
        o.apache.jmeter.module,\
        websvc.rest.wadl.design,\
        websvc.rest.wadl.model

nb.cluster.experimental.dir=extra
nb.cluster.experimental.depends=${clusters.config.full.list}
nb.cluster.experimental=\
        ${nb.cluster.betauc},\
        avatar_js.project,\
        c.s.collablet,\
        c.s.collablet.moxc,\
        collab.channel.chat,\
        collab.channel.chat.html,\
        collab.channel.chat.java,\
        collab.channel.chat.text,\
        collab.channel.chat.xml,\
        collab.channel.filesharing,\
        collab.channel.output,\
        collab.kit,\
        collab.provider.im,\
        collab.ui,\
        contrib/a11y,\
        contrib/accelerators.terminal,\
        contrib/apisupport.beanbrowser,\
        contrib/apisupport.tc.cobertura,\
        contrib/archiver,\
        contrib/autosave,\
        contrib/c.ericsson.otp.erlang,\
        contrib/codetemplatetools,\
        contrib/de.hunsicker.jalopy.plugin.netbeans,\
        contrib/editor.deprecated.pre61completion,\
        contrib/editor.deprecated.pre61settings,\
        contrib/editor.fold.support,\
        contrib/editor.hints.i18n,\
        contrib/editor.nexterror,\
        contrib/encoding,\
        contrib/explorefromhere,\
        contrib/fisheye,\
        contrib/folder2html,\
        contrib/formatmany,\
        contrib/genericnavigator,\
        contrib/graphicclassview,\
        contrib/group,\
        contrib/gsf,\
        contrib/gsf.api,\
        contrib/gsfpath.api,\
        contrib/hexeditor,\
        contrib/htmlprojects,\
        contrib/j2ee.oc4j,\
        contrib/j2ee.sun.ws7,\
        contrib/java.debugjavac,\
        contrib/java.ext.editor,\
        contrib/javahints,\
        contrib/javanavigators,\
        contrib/jemmysupport,\
        contrib/languages.execution,\
        contrib/languages.prolog,\
        contrib/languages.tcl,\
        contrib/languages.velocity,\
        contrib/libs.commons_lang,\
        contrib/libs.ical4j,\
        contrib/libs.jcalendar,\
        contrib/licensechanger,\
        contrib/loaderswitcher,\
        contrib/moduleresolver,\
        contrib/mount,\
        contrib/nbignore,\
        contrib/nborgsourcebrowse,\
        contrib/o.jython,\
        contrib/o.jython.distro,\
        contrib/o.n.contrib.debuggerretry,\
        contrib/o.n.erdbeans,\
        contrib/o.n.misc.diff,\
        contrib/performance.insane,\
        contrib/perspective,\
        contrib/python.console,\
        contrib/python.core,\
        contrib/python.debugger,\
        contrib/python.editor,\
        contrib/python.help,\
        contrib/python.hints,\
        contrib/python.kit,\
        contrib/python.options,\
        contrib/python.platform,\
        contrib/python.project,\
        contrib/python.project2,\
        contrib/python.samples,\
        contrib/python.source,\
        contrib/python.testrunner,\
        contrib/showtodos,\
        contrib/sysprops,\
        contrib/tanui,\
        contrib/websvc.saas.services.rtm,\
        contrib/whichproject,\
        j2ee.websphere6,\
        j2me.cdc.platform.bdj,\
        j2me.cdc.project.bdj,\
        keyring.jps,\
        languages.refactoring,\
        libs.xmlbeans,\
        mercurial.search,\
        o.n.bluej,\
        o.n.bluej.ui,\
        projectimport.jbuilder,\
        traceio,\
        uihandler.interactive,\
        web.domdiff,\
        web.facelets010114,\
        web.jsf.extensions,\
        web.livehtml,\
        websvc.axis2,\
        websvc.jaxrpc,\
        websvc.jaxrpc16,\
        websvc.jaxrpckit,\
        websvc.registry

nb.cluster.extide.dir=extide
nb.cluster.extide.depends=\
        nb.cluster.ide,\
        nb.cluster.platform
nb.cluster.extide=\
        o.apache.tools.ant.module,\
        options.java

# XXX needs updates to build:
#        contrib/c.s.fortress,\
#        contrib/fortress.editing,\

nb.cluster.webcommon.dir=webcommon
nb.cluster.webcommon.depends=\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.platform
nb.cluster.webcommon=\
        api.knockout,\
        cordova,\
        cordova.platforms,\
        cordova.platforms.android,\
        extbrowser.chrome,\
        html.angular,\
        html.knockout,\
        html.ojet,\
        javascript.bower,\
        javascript.cdnjs,\
        javascript.grunt,\
        javascript.gulp,\
        javascript.jstestdriver,\
        javascript.karma,\
        javascript.nodejs,\
        javascript.v8debug,\
        javascript.v8debug.ui,\
        javascript2.doc,\
        javascript2.editor,\
        javascript2.extdoc,\
        javascript2.extjs,\
	javascript2.jade,\
        javascript2.jquery,\
        javascript2.jsdoc,\
        javascript2.json,\
        javascript2.kit,\
        javascript2.knockout,\
        javascript2.lexer,\
        javascript2.model,\
	javascript2.nodejs,\
        javascript2.prototypejs,\
        javascript2.react,\
	javascript2.requirejs,\
        javascript2.sdoc,\
        javascript2.source.query,\
        javascript2.types,\
        languages.apacheconf,\
        languages.ini,\
        lib.v8debug,\
        libs.graaljs,\
        libs.jstestdriver,\
        libs.nashorn,\
        libs.plist,\
        libs.truffleapi,\
        netserver,\
        selenium2.webclient,\
        selenium2.webclient.mocha,\
        selenium2.webclient.protractor,\
        web.client.kit,\
        web.client.samples,\
        web.clientproject,\
        web.clientproject.api,\
        web.inspect,\
        web.javascript.debugger,\
        web.webkit.tooling

nb.cluster.websvccommon.dir=websvccommon
nb.cluster.websvccommon.depends=\
        nb.cluster.ide,\
        nb.cluster.platform
nb.cluster.websvccommon=\
        websvc.jaxwsmodelapi,\
        websvc.saas.api,\
        websvc.saas.codegen,\
        websvc.saas.kit,\
        websvc.saas.ui

nb.cluster.javacard.dir=javacard
nb.cluster.javacard.depends=\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.platform,\
        nb.cluster.java
nb.cluster.javacard=\
        javacard.apdu.io,\
        javacard.apdufile,\
        javacard.common,\
        javacard.console,\
        javacard.filemodels,\
        javacard.kit,\
        javacard.oberthur,\
        javacard.platform.ui,\
        javacard.project,\
        javacard.ri.bundle,\
        javacard.ri.platform,\
        javacard.spi,\
        properties.based.dataobjects,\
        simple.project.templates,\
        swing.customizerlayout

nb.cluster.javafx.dir=javafx
nb.cluster.javafx.depends=\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.platform,\
        nb.cluster.java,\
        nb.cluster.websvccommon,\
        nb.cluster.harness
nb.cluster.javafx=\
        javafx2.editor,\
        javafx2.kit,\
        javafx2.platform,\
        javafx2.project,\
        javafx2.samples,\
        javafx2.scenebuilder

nb.cluster.remote.dir=extra
nb.cluster.remote.depends=\
        nb.cluster.java,\
        nb.cluster.ide,\
        nb.cluster.extide,\
        nb.cluster.platform,\
        nb.cluster.harness
nb.cluster.remote=\
       contrib/dew4nb,\
       contrib/json,\
       contrib/remote.project.finder,\
       contrib/remote.server

nb.cluster.python.depends=\
        nb.cluster.ide
nb.cluster.python=\
        contrib/o.jython,\
        contrib/o.jython.distro,\
        contrib/python.console,\
        contrib/python.core,\
        contrib/python.debugger,\
        contrib/python.editor,\
        contrib/python.help,\
        contrib/python.hints,\
        contrib/python.kit,\
        contrib/python.options,\
        contrib/python.platform,\
        contrib/python.project,\
        contrib/python.project2,\
        contrib/python.samples,\
        contrib/python.source,\
        contrib/python.testrunner
