/********************************************************************************
 * Copyright (c) 2015-2018 Contributors to the Eclipse Foundation
 *
 * See the NOTICE file(s) distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 ********************************************************************************/


rootProject.name = 'org.eclipse.mdm.nucleus'

def includeIfExists(String projectPath) {
    if (file(projectPath).exists()) {
        includeBuild projectPath
    }
}

includeIfExists '../org.eclipse.mdm.api.base'
includeIfExists '../org.eclipse.mdm.api.default'
includeIfExists '../org.eclipse.mdm.api.odsadapter'

include 'org.eclipse.mdm.application'
include 'org.eclipse.mdm.connector'
include 'org.eclipse.mdm.businessobjects'
include 'org.eclipse.mdm.filerelease'
include 'org.eclipse.mdm.property'
include 'org.eclipse.mdm.freetextindexer'
include 'org.eclipse.mdm.preferences'

