/*
 * 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.
 */

plugins {
    id 'base'
    id 'io.spring.dependency-management' version '1.0.10.RELEASE' apply false
    id 'net.freudasoft.gradle-cmake-plugin' version '0.0.2' apply false
    id 'com.github.johnrengelman.shadow' version '6.1.0' apply false
    id 'com.google.osdetector' version '1.6.2' apply false
}

project.gradle.startParameter.excludedTaskNames.add('test')

allprojects  {
  group = 'org.apache.mnemonic'
  version = '0.15.0-SNAPSHOT'
  // tasks.withType(JavaCompile) {
  //     // show details of deprecated classes
  //     options.deprecation = true
  //     // show details of unsafe or unchecked operations
  //     options.compilerArgs.addAll(['-Xlint:unchecked'])
  // }
}

subprojects {
  apply plugin: 'java-library'
  apply plugin: 'io.spring.dependency-management'

  dependencyManagement {
    dependencies {
      dependency 'org.apache.commons:commons-lang3:3.4'
      dependency 'org.testng:testng:6.8.17'
      dependency 'commons-cli:commons-cli:1.3.1'
      dependency 'com.squareup:javapoet:1.13.0'
      dependency 'org.apache.logging.log4j:log4j-api:2.11.0'
      dependency 'org.apache.logging.log4j:log4j-core:2.11.0'
      dependency 'org.apache.logging.log4j:log4j-1.2-api:2.11.0'
      dependency 'org.apache.logging.log4j:log4j-slf4j-impl:2.11.0'
      dependency 'org.apache.logging.log4j:log4j-web:2.11.0'
      dependency 'org.slf4j:slf4j-api:1.7.26'
      dependency 'com.lmax:disruptor:3.3.7'
      dependency 'ch.qos.logback:logback-classic:1.2.8'
      dependency 'ch.qos.logback:logback-core:1.2.8'
    }
  }

  repositories {
    maven { url "https://repo.maven.apache.org/maven2" }
    mavenCentral()
  }

  sourceCompatibility = 14
  targetCompatibility = 14
  tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
  }

  configurations.all {
  }
}
