﻿# Apache Thrift © The Apache Software Foundation
# http://www.apache.org/licenses/LICENSE-2.0
# SPDX-License-Identifier: Apache-2.0

# File: sonar-project.properties
# Apache Thrift configuration file for Sonar https://analysis.apache.org/
# Sonar is an open platform to manage code quality http://www.sonarsource.org/


# required metadata
sonar.projectKey=org.apache.thrift
sonar.projectName=Apache Thrift
sonar.projectDescription=
The Apache Thrift software framework, for scalable cross-language services
development, combines a software stack with a code generation engine to build
services that work efficiently and seamlessly between all major languages.

# Apache Thrift Version
sonar.projectVersion=1.0.0-dev
# use this to set another version string
# $ sonar-runner -D sonar.projectVersion=`git rev-parse HEAD`
# set projectDate in combination with projectVersion for imports of old releases
#sonar.projectDate=yyyy-MM-dd

# TODO add website (sonar.projectUrl does not work)
#sonar.XXXX=http//thrift.apache.org

# Some properties that will be inherited by the modules
sonar.sources=src
sonar.language=java,js,c++,py,c
sonar.sourceEncoding=UTF-8

# scm
sonar.scm.url=scm:git:https://git-wip-us.apache.org/repos/asf/thrift

# cppcheck -q --error-exitcode=0 --xml . 2> cppcheck-result.xml
sonar.cxx.cppcheck.reportPath=cppcheck-result.xml

# List of the module identifiers
sonar.modules=module1,module3,module4,module5,module6,module7,module8,module9,module10,module11,module12,module14



# we need sonar-runner 2.1 for this, see http://jira.codehaus.org/browse/SONARPLUGINS-2421
#sonar.modules=module2

# delph plugin is broken
#sonar.modules=module13

# phpunit plugin is broken
#sonar.modules=module15

module1.sonar.projectName=Apache Thrift - Java Library
module1.sonar.projectBaseDir=lib/java
module1.sonar.sources=src
module1.sonar.tests=test
module1.sonar.binaries=build/libthrift-1.0.0.jar
module1.sonar.libraries=build/lib/*.jar
module1.sonar.language=java

module2.sonar.projectName=Apache Thrift - Java Tutorial
module2.sonar.projectBaseDir=.
module2.sonar.sources=tutorial/java/src, tutorial/java/gen-java
module2.sonar.binaries=tutorial/java/tutorial.jar
module2.sonar.libraries=lib/java/build/lib/*.jar,lib/java/build/libthrift-1.0.0.jar
module2.sonar.language=java

module3.sonar.projectName=Apache Thrift - JavaScript Library
module3.sonar.projectBaseDir=lib/js
module3.sonar.sources=.
module3.sonar.exclusions=test/**/*
module3.sonar.language=js

module4.sonar.projectName=Apache Thrift - JavaScript Tutorial
module4.sonar.projectBaseDir=tutorial/js
module4.sonar.sources=.
module4.sonar.language=web

module5.sonar.projectName=Apache Thrift - C++ Library
module5.sonar.projectBaseDir=lib/cpp
module5.sonar.sources=src
module5.sonar.tests=test
module5.sonar.language=c++

module6.sonar.projectName=Apache Thrift - C++ Tutorial
module6.sonar.projectBaseDir=tutorial/cpp
module6.sonar.sources=.
module6.sonar.exclusions=gen-cpp/**/*
module6.sonar.language=c++

module7.sonar.projectName=Apache Thrift - C++ Cross Language Test
module7.sonar.projectBaseDir=test/cpp
module7.sonar.sources=src
module7.sonar.language=c++

module8.sonar.projectName=Apache Thrift - Compiler
module8.sonar.projectBaseDir=compiler/cpp
module8.sonar.sources=src
module8.sonar.language=c++

module9.sonar.projectName=Apache Thrift - Python Library
module9.sonar.projectBaseDir=lib/py
module9.sonar.sources=src
module9.sonar.language=py

module10.sonar.projectName=Apache Thrift - Python Tutorial
module10.sonar.projectBaseDir=tutorial/py
module10.sonar.sources=.
module10.sonar.exclusions=gen-py/**/*
module10.sonar.language=py

module11.sonar.projectName=Apache Thrift - Python Cross Language Test
module11.sonar.projectBaseDir=test/py
module11.sonar.sources=.
module11.sonar.exclusions=gen-*/**/*
module11.sonar.language=py

module12.sonar.projectName=Apache Thrift - c_glib Library
module12.sonar.projectBaseDir=lib/c_glib
module12.sonar.sources=src
module12.sonar.language=c

module13.sonar.projectName=Apache Thrift - Delphi Library
module13.sonar.projectBaseDir=lib/delphi
module13.sonar.sources=src
module13.sonar.tests=test
module13.sonar.language=delph

module14.sonar.projectName=Apache Thrift - Flex (as3) Library
module14.sonar.projectBaseDir=lib/as3
module14.sonar.sources=src
module14.sonar.language=flex

module15.sonar.projectName=Apache Thrift - PHP Library
module15.sonar.projectBaseDir=lib/php
module15.sonar.sources=src
module15.sonar.language=php

# TODO add some more languages here

