aboutsummaryrefslogtreecommitdiffstats
path: root/build/conf
diff options
context:
space:
mode:
authorsvidyuk <svidyuk@yandex-team.ru>2022-02-10 16:47:12 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:47:12 +0300
commite23df0602fedd83374b43b6137a296baa2aad3f6 (patch)
tree1facb78b6535ac70f17ba39ed606d949f932fcea /build/conf
parent92661c40a019d4809586c8ce322075d197427346 (diff)
downloadydb-e23df0602fedd83374b43b6137a296baa2aad3f6.tar.gz
Restoring authorship annotation for <svidyuk@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'build/conf')
-rw-r--r--build/conf/java.ymake.conf344
-rw-r--r--build/conf/jbuild.ymake.conf242
2 files changed, 293 insertions, 293 deletions
diff --git a/build/conf/java.ymake.conf b/build/conf/java.ymake.conf
index ed85153c78..9a95c6a44b 100644
--- a/build/conf/java.ymake.conf
+++ b/build/conf/java.ymake.conf
@@ -1,179 +1,179 @@
-YMAKE_JAVA_MODULES=yes
-JBUILD_JAVA_MODULES=no
-
-macro _INPUT_WITH_FLAG(Flag, IN[]) {
- .CMD=$_INPUT_WITH_FLAG_IMPL(${pre=$Flag :IN} IN $IN)
-}
-
-macro _INPUT_WITH_FLAG_IMPL(IN{input}[], Args...) {
- .CMD=$Args ${input;hide:IN}
-}
-
-macro ACCELEO(XSD{input}[], MTL{input}[], MTL_ROOT="${MODDIR}", LANG{input}[], OUT{output}[], OUT_NOAUTO{output}[], OUTPUT_INCLUDES[], DEBUG?"stdout2stderr":"stderr2stdout") {
+YMAKE_JAVA_MODULES=yes
+JBUILD_JAVA_MODULES=no
+
+macro _INPUT_WITH_FLAG(Flag, IN[]) {
+ .CMD=$_INPUT_WITH_FLAG_IMPL(${pre=$Flag :IN} IN $IN)
+}
+
+macro _INPUT_WITH_FLAG_IMPL(IN{input}[], Args...) {
+ .CMD=$Args ${input;hide:IN}
+}
+
+macro ACCELEO(XSD{input}[], MTL{input}[], MTL_ROOT="${MODDIR}", LANG{input}[], OUT{output}[], OUT_NOAUTO{output}[], OUTPUT_INCLUDES[], DEBUG?"stdout2stderr":"stderr2stdout") {
.PEERDIR=build/platform/java/jdk $JDK_RESOURCE_PEERDIR
- .CMD=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON ${input;pre=build/scripts/:DEBUG.py} $JDK_RESOURCE/bin/java -Dfile.encoding=utf8 -classpath ${RUN_JAR_PROG_CP_PRE}${tool:"tools/acceleo"}${RUN_JAR_PROG_CP_SUF} ru.yandex.se.logsng.tool.Cli $_INPUT_WITH_FLAG(--xsd IN $XSD) $_INPUT_WITH_FLAG(--mtl IN $MTL) $_INPUT_WITH_FLAG(--lang IN $LANG) --output-dir $BINDIR --build-root ${ARCADIA_BUILD_ROOT} --source-root ${ARCADIA_ROOT} --mtl-root $MTL_ROOT ${output_include;hide:OUTPUT_INCLUDES} ${output;hide:OUT} ${output;noauto;hide:OUT_NOAUTO} ${kv;hide:"p JV"} ${kv;hide:"pc light-blue"} ${kv;hide:"show_out"}
-}
-
-### @usage: JAVA_LIBRARY()
-###
-### The module describing java library build.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/java/
-module JAVA_LIBRARY: JAR_LIBRARY {
+ .CMD=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON ${input;pre=build/scripts/:DEBUG.py} $JDK_RESOURCE/bin/java -Dfile.encoding=utf8 -classpath ${RUN_JAR_PROG_CP_PRE}${tool:"tools/acceleo"}${RUN_JAR_PROG_CP_SUF} ru.yandex.se.logsng.tool.Cli $_INPUT_WITH_FLAG(--xsd IN $XSD) $_INPUT_WITH_FLAG(--mtl IN $MTL) $_INPUT_WITH_FLAG(--lang IN $LANG) --output-dir $BINDIR --build-root ${ARCADIA_BUILD_ROOT} --source-root ${ARCADIA_ROOT} --mtl-root $MTL_ROOT ${output_include;hide:OUTPUT_INCLUDES} ${output;hide:OUT} ${output;noauto;hide:OUT_NOAUTO} ${kv;hide:"p JV"} ${kv;hide:"pc light-blue"} ${kv;hide:"show_out"}
+}
+
+### @usage: JAVA_LIBRARY()
+###
+### The module describing java library build.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/java/
+module JAVA_LIBRARY: JAR_LIBRARY {
.ALIASES=REQUIREMENTS=JAVA_REQUIREMENTS
-}
-
-### @usage: JAVA_PROGRAM()
-###
-### The module describing java programs build.
-### Output artifacts: .jar and directory with all the jar to the classpath of the formation.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/java/
-multimodule JAVA_PROGRAM {
- module JAR_RUNABLE: _JAR_RUNABLE {
- .ALLOWED=JAVA_RUNTIME_PEERDIR JAVA_RUNTIME_EXCLUDE
- # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
- # * A -> B -> C -> lib-v1.4
- # | |-> DM(lib-v1.1)
- # | |-> EXCLUDE(lib-v1.4)
- # | |-> FORBID_CONFLICT_DM_RECENT = OK
- # |-> DM(lib-v1.1)
- # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
- .IGNORED=RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
- .ALIASES=JAVA_RUNTIME_PEERDIR=PEERDIR JAVA_RUNTIME_EXCLUDE=EXCLUDE
- .PEERDIRSELF=JAR_COMPILATION
-
- SET(MODULE_TYPE JAVA_PROGRAM)
- }
- module JAR_COMPILATION: JAR_LIBRARY {
- .IGNORED=JAVA_RUNTIME_PEERDIR JAVA_RUNTIME_EXCLUDE
+}
+
+### @usage: JAVA_PROGRAM()
+###
+### The module describing java programs build.
+### Output artifacts: .jar and directory with all the jar to the classpath of the formation.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/java/
+multimodule JAVA_PROGRAM {
+ module JAR_RUNABLE: _JAR_RUNABLE {
+ .ALLOWED=JAVA_RUNTIME_PEERDIR JAVA_RUNTIME_EXCLUDE
+ # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
+ # * A -> B -> C -> lib-v1.4
+ # | |-> DM(lib-v1.1)
+ # | |-> EXCLUDE(lib-v1.4)
+ # | |-> FORBID_CONFLICT_DM_RECENT = OK
+ # |-> DM(lib-v1.1)
+ # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
+ .IGNORED=RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
+ .ALIASES=JAVA_RUNTIME_PEERDIR=PEERDIR JAVA_RUNTIME_EXCLUDE=EXCLUDE
+ .PEERDIRSELF=JAR_COMPILATION
+
+ SET(MODULE_TYPE JAVA_PROGRAM)
+ }
+ module JAR_COMPILATION: JAR_LIBRARY {
+ .IGNORED=JAVA_RUNTIME_PEERDIR JAVA_RUNTIME_EXCLUDE
.ALIASES=JAVA_RUNTIME_PEERDIR=_NOOP_MACRO JAVA_RUNTIME_EXCLUDE=_NOOP_MACRO REQUIREMENTS=JAVA_REQUIREMENTS
- .FINAL_TARGET=no
- SET(MODULE_TYPE JAVA_PROGRAM)
- }
-}
-
-multimodule JUNIT5 {
- module JAR_TESTABLE: _JAR_TEST {
- .ALLOWED=YT_SPEC
- # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
- # * A -> B -> C -> lib-v1.4
- # | |-> DM(lib-v1.1)
- # | |-> EXCLUDE(lib-v1.4)
- # | |-> FORBID_CONFLICT_DM_RECENT = OK
- # |-> DM(lib-v1.1)
- # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
- .IGNORED=JAVA_SRCS RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
- .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
- .PEERDIRSELF=JAR_COMPILATION
-
- SET(MODULE_TYPE JUNIT5)
- }
- module JAR_COMPILATION: JAR_LIBRARY {
- .ALLOWED=YT_SPEC
- .ALIASES=JAVA_TEST_PEERDIR=_NOOP_MACRO JAVA_TEST_EXCLUDE=_NOOP_MACRO
- .FINAL_TARGET=no
-
- PEERDIR(devtools/junit5-runner build/platform/java/jacoco-agent)
- SET(MODULE_TYPE JUNIT5)
- }
-}
-
-multimodule JTEST {
- module JAR_TESTABLE: _JAR_TEST {
- .ALLOWED=YT_SPEC
- # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
- # * A -> B -> C -> lib-v1.4
- # | |-> DM(lib-v1.1)
- # | |-> EXCLUDE(lib-v1.4)
- # | |-> FORBID_CONFLICT_DM_RECENT = OK
- # |-> DM(lib-v1.1)
- # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
- .IGNORED=JAVA_SRCS RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
- .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
- .PEERDIRSELF=JAR_COMPILATION
-
- SET(MODULE_TYPE JTEST)
- PEERDIR(devtools/junit-runner)
- DEPENDENCY_MANAGEMENT(contrib/java/com/google/code/gson/gson/2.8.6 contrib/java/com/beust/jcommander/1.72 contrib/java/junit/junit/4.12)
- }
- module JAR_COMPILATION: JAR_LIBRARY {
- .ALLOWED=YT_SPEC
- .ALIASES=JAVA_TEST_PEERDIR=_NOOP_MACRO JAVA_TEST_EXCLUDE=_NOOP_MACRO
- .FINAL_TARGET=no
-
- SET(MODULE_TYPE JTEST)
- DEPENDS(contrib/java/org/sonarsource/scanner/cli/sonar-scanner-cli/2.8)
- PEERDIR(build/platform/java/jacoco-agent)
- }
-}
-
-multimodule JTEST_FOR {
- module JAR_TESTABLE: _JAR_TEST {
- .ALLOWED=YT_SPEC
- # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
- # * A -> B -> C -> lib-v1.4
- # | |-> DM(lib-v1.1)
- # | |-> EXCLUDE(lib-v1.4)
- # | |-> FORBID_CONFLICT_DM_RECENT = OK
- # |-> DM(lib-v1.1)
- # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
- .IGNORED=JAVA_SRCS RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
- .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
- .PEERDIRSELF=JAR_COMPILATION
-
- SET(MODULE_TYPE JTEST_FOR)
- PEERDIR(${UNITTEST_DIR} devtools/junit-runner)
- DEPENDENCY_MANAGEMENT(contrib/java/com/google/code/gson/gson/2.8.6 contrib/java/com/beust/jcommander/1.72 contrib/java/junit/junit/4.12)
- }
- module JAR_COMPILATION: JAR_LIBRARY {
- .ALLOWED=YT_SPEC
- .ALIASES=JAVA_TEST_PEERDIR=_NOOP_MACRO JAVA_TEST_EXCLUDE=_NOOP_MACRO
- .FINAL_TARGET=no
-
- SET(MODULE_TYPE JTEST_FOR)
- DEPENDS(contrib/java/org/sonarsource/scanner/cli/sonar-scanner-cli/2.8)
- PEERDIR(devtools/junit-runner build/platform/java/jacoco-agent ${UNITTEST_DIR})
- }
-}
-
-multimodule JAVA_CONTRIB_PROGRAM {
- module JAR_RUNABLE: _JAR_RUNABLE {
- .IGNORED=JAVA_SRCS RUN_JAR_PROGRAM RUN_JAVA_PROGRAM JAR_RESOURCE SRC_RESOURCE LOCAL_JAR
- .PEERDIRSELF=JAR_COMPILATION
-
- SET(MODULE_TYPE JAVA_PROGRAM)
- ENABLE(DISABLE_SCRIPTGEN)
- }
- module JAR_COMPILATION: JAVA_CONTRIB {
- .ALIASES=JAVA_RUNTIME_PEERDIR=_NOOP_MACRO JAVA_RUNTIME_EXCLUDE=_NOOP_MACRO
- .FINAL_TARGET=no
- }
-}
-
-module _DLL_COMPATIBLE_JAVA_LIBRARY: EXTERNAL_JAVA_LIBRARY {
+ .FINAL_TARGET=no
+ SET(MODULE_TYPE JAVA_PROGRAM)
+ }
+}
+
+multimodule JUNIT5 {
+ module JAR_TESTABLE: _JAR_TEST {
+ .ALLOWED=YT_SPEC
+ # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
+ # * A -> B -> C -> lib-v1.4
+ # | |-> DM(lib-v1.1)
+ # | |-> EXCLUDE(lib-v1.4)
+ # | |-> FORBID_CONFLICT_DM_RECENT = OK
+ # |-> DM(lib-v1.1)
+ # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
+ .IGNORED=JAVA_SRCS RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
+ .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
+ .PEERDIRSELF=JAR_COMPILATION
+
+ SET(MODULE_TYPE JUNIT5)
+ }
+ module JAR_COMPILATION: JAR_LIBRARY {
+ .ALLOWED=YT_SPEC
+ .ALIASES=JAVA_TEST_PEERDIR=_NOOP_MACRO JAVA_TEST_EXCLUDE=_NOOP_MACRO
+ .FINAL_TARGET=no
+
+ PEERDIR(devtools/junit5-runner build/platform/java/jacoco-agent)
+ SET(MODULE_TYPE JUNIT5)
+ }
+}
+
+multimodule JTEST {
+ module JAR_TESTABLE: _JAR_TEST {
+ .ALLOWED=YT_SPEC
+ # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
+ # * A -> B -> C -> lib-v1.4
+ # | |-> DM(lib-v1.1)
+ # | |-> EXCLUDE(lib-v1.4)
+ # | |-> FORBID_CONFLICT_DM_RECENT = OK
+ # |-> DM(lib-v1.1)
+ # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
+ .IGNORED=JAVA_SRCS RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
+ .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
+ .PEERDIRSELF=JAR_COMPILATION
+
+ SET(MODULE_TYPE JTEST)
+ PEERDIR(devtools/junit-runner)
+ DEPENDENCY_MANAGEMENT(contrib/java/com/google/code/gson/gson/2.8.6 contrib/java/com/beust/jcommander/1.72 contrib/java/junit/junit/4.12)
+ }
+ module JAR_COMPILATION: JAR_LIBRARY {
+ .ALLOWED=YT_SPEC
+ .ALIASES=JAVA_TEST_PEERDIR=_NOOP_MACRO JAVA_TEST_EXCLUDE=_NOOP_MACRO
+ .FINAL_TARGET=no
+
+ SET(MODULE_TYPE JTEST)
+ DEPENDS(contrib/java/org/sonarsource/scanner/cli/sonar-scanner-cli/2.8)
+ PEERDIR(build/platform/java/jacoco-agent)
+ }
+}
+
+multimodule JTEST_FOR {
+ module JAR_TESTABLE: _JAR_TEST {
+ .ALLOWED=YT_SPEC
+ # TODO(svidyuk) JAVA_DEPENDENCIES_CONFIGURATION must not be ignored here but there are diagnostics issues in case of ECLUDE in the middle:
+ # * A -> B -> C -> lib-v1.4
+ # | |-> DM(lib-v1.1)
+ # | |-> EXCLUDE(lib-v1.4)
+ # | |-> FORBID_CONFLICT_DM_RECENT = OK
+ # |-> DM(lib-v1.1)
+ # |-> FORBID_CONFLICT_DM_RECENT = FAIL (because downgrade from v1.4 to v1.1 is detected before understanding that v1.4 was excuded on the examined path)
+ .IGNORED=JAVA_SRCS RUN_JAVA_PROGRAM JAVA_DEPENDENCIES_CONFIGURATION
+ .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
+ .PEERDIRSELF=JAR_COMPILATION
+
+ SET(MODULE_TYPE JTEST_FOR)
+ PEERDIR(${UNITTEST_DIR} devtools/junit-runner)
+ DEPENDENCY_MANAGEMENT(contrib/java/com/google/code/gson/gson/2.8.6 contrib/java/com/beust/jcommander/1.72 contrib/java/junit/junit/4.12)
+ }
+ module JAR_COMPILATION: JAR_LIBRARY {
+ .ALLOWED=YT_SPEC
+ .ALIASES=JAVA_TEST_PEERDIR=_NOOP_MACRO JAVA_TEST_EXCLUDE=_NOOP_MACRO
+ .FINAL_TARGET=no
+
+ SET(MODULE_TYPE JTEST_FOR)
+ DEPENDS(contrib/java/org/sonarsource/scanner/cli/sonar-scanner-cli/2.8)
+ PEERDIR(devtools/junit-runner build/platform/java/jacoco-agent ${UNITTEST_DIR})
+ }
+}
+
+multimodule JAVA_CONTRIB_PROGRAM {
+ module JAR_RUNABLE: _JAR_RUNABLE {
+ .IGNORED=JAVA_SRCS RUN_JAR_PROGRAM RUN_JAVA_PROGRAM JAR_RESOURCE SRC_RESOURCE LOCAL_JAR
+ .PEERDIRSELF=JAR_COMPILATION
+
+ SET(MODULE_TYPE JAVA_PROGRAM)
+ ENABLE(DISABLE_SCRIPTGEN)
+ }
+ module JAR_COMPILATION: JAVA_CONTRIB {
+ .ALIASES=JAVA_RUNTIME_PEERDIR=_NOOP_MACRO JAVA_RUNTIME_EXCLUDE=_NOOP_MACRO
+ .FINAL_TARGET=no
+ }
+}
+
+module _DLL_COMPATIBLE_JAVA_LIBRARY: EXTERNAL_JAVA_LIBRARY {
SET(DONT_RESOLVE_INCLUDES yes)
-}
-
-### @usage: DLL_JAVA()
-###
-### DLL built using swig for Java. Produces dynamic library and a .jar.
-### Dynamic library is treated the same as in the case of PEERDIR from Java to DLL.
-### .jar goes on the classpath.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/java/#integracijascpp/pythonsborkojj
-multimodule DLL_JAVA {
- module JNI_DLL: DLL {
- .ALIASES=SRCS=_SWIG_LANG_FILTERED_SRCS
- SET(SWIG_LANG jni_cpp)
+}
+
+### @usage: DLL_JAVA()
+###
+### DLL built using swig for Java. Produces dynamic library and a .jar.
+### Dynamic library is treated the same as in the case of PEERDIR from Java to DLL.
+### .jar goes on the classpath.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/java/#integracijascpp/pythonsborkojj
+multimodule DLL_JAVA {
+ module JNI_DLL: DLL {
+ .ALIASES=SRCS=_SWIG_LANG_FILTERED_SRCS
+ SET(SWIG_LANG jni_cpp)
.FINAL_TARGET=no
- }
- module JAR_COMPILATION: _DLL_COMPATIBLE_JAVA_LIBRARY {
- .ALIASES=SRCS=_SWIG_LANG_FILTERED_SRCS PEERDIR=_NOOP_MACRO
- .PEERDIRSELF=JNI_DLL
- SET(SWIG_LANG jni_java)
- PEERDIR+=build/platform/java/jdk
+ }
+ module JAR_COMPILATION: _DLL_COMPATIBLE_JAVA_LIBRARY {
+ .ALIASES=SRCS=_SWIG_LANG_FILTERED_SRCS PEERDIR=_NOOP_MACRO
+ .PEERDIRSELF=JNI_DLL
+ SET(SWIG_LANG jni_java)
+ PEERDIR+=build/platform/java/jdk
PEERDIR+=$JDK_RESOURCE_PEERDIR
.FINAL_TARGET=yes
- }
-}
+ }
+}
diff --git a/build/conf/jbuild.ymake.conf b/build/conf/jbuild.ymake.conf
index 945a7cc979..08dcb14624 100644
--- a/build/conf/jbuild.ymake.conf
+++ b/build/conf/jbuild.ymake.conf
@@ -1,122 +1,122 @@
-YMAKE_JAVA_MODULES=no
-JBUILD_JAVA_MODULES=yes
-
-EXTERNAL_JAR_VALUE=
-### @usage: EXTERNAL_JAR(library.jar)
-###
-### Provide an external name for built JAVA_LIBRARY() or JAVA_PROGRAM()
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/java/#ispolzovanievneshnixmavenbibliotek
-macro EXTERNAL_JAR(Args...) {
- SET_APPEND(EXTERNAL_JAR_VALUE $ARGS_DELIM $Args)
-}
-
-### @usage: JAVA_LIBRARY()
-###
-### The module describing java library build.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/java/
-module JAVA_LIBRARY: _JAVA_PLACEHOLDER {
- SET(MODULE_TYPE JAVA_LIBRARY)
-}
-
-### @usage: JAVA_PROGRAM()
-###
-### The module describing java programs build.
-### Output artifacts: .jar and directory with all the jar to the classpath of the formation.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/java/
-module JAVA_PROGRAM: _JAVA_PLACEHOLDER {
- .ALIASES=JAVA_RUNTIME_PEERDIR=PEERDIR JAVA_RUNTIME_EXCLUDE=EXCLUDE
- SET(MODULE_TYPE JAVA_PROGRAM)
-}
-
-### @usage: JUNIT5()
-###
-### Java tests module based on JUnit 5 framework.
-###
-### If requested, build system will scan the source code of the module for the presence of junit tests and run them.
-### Output artifacts: a jar, a directory of exhaust tests(if required run the tests) - test logs, system logs testiranja, temporary files, tests, etc.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/test/#testynajava
-module JUNIT5: _JAVA_PLACEHOLDER {
- .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
- SET(MODULE_TYPE JUNIT5)
- SET(TEST_RUNNER devtools/junit5-runner)
- SET(TEST_CLASSPATH_VALUE ${MODDIR} ${TEST_RUNNER})
- # Used as place to add managed dependencies for test execution and take them into account
- # during traverses properly.
- _RUN_JAVA(TOOL ${TEST_RUNNER} OUT fake.out.java_test_cmd)
-
- PEERDIR(${TEST_RUNNER})
- PEERDIR(build/platform/java/jacoco-agent)
- JAVA_TEST()
-}
-
-### @usage: JTEST()
-###
-### Java tests module based on JUnit 4 framework.
-###
-### If requested, build system will scan the source code of the module for the presence of junit tests and run them.
-### Output artifacts: a jar, a directory of exhaust tests(if required run the tests) - test logs, system logs testiranja, temporary files, tests, etc.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/test/#testynajava
-module JTEST: _JAVA_PLACEHOLDER {
- .ALLOWED=YT_SPEC
- .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
- SET(MODULE_TYPE JTEST)
- SET(TEST_RUNNER devtools/junit-runner)
- SET(TEST_CLASSPATH_VALUE ${MODDIR} ${TEST_RUNNER})
- # Used as place to add managed dependencies for test execution and take them into account
- # during traverses properly.
- _RUN_JAVA(TOOL ${TEST_RUNNER} OUT fake.out.java_test_cmd)
-
- # TODO: if <needs_sonar>
- DEPENDS(contrib/java/org/sonarsource/scanner/cli/sonar-scanner-cli/2.8)
- DEPENDS(${TEST_RUNNER})
- _GHOST_PEERDIR(${TEST_RUNNER})
- PEERDIR(build/platform/java/jacoco-agent)
- JAVA_TEST()
-
- SET_APPEND(_MAKEFILE_INCLUDE_LIKE_DEPS canondata/result.json)
-}
-
-### @usage: JTEST_FOR(ModuleDir)
-###
-### Convinience java tests module based on JUnit 4 framework for specified library or program.
-###
-### In contrast to the JTEST, the build system will scan for the presence of the test sources of the module in ModuleDir . As ModuleDir should contain JAVA_PROGRAM or JAVA_LIBRARY . JTEST_FOR also can have its own source, in this case they will be compiled and added to the classpath of a test run.
-### Output artifacts: a jar, a directory of exhaust tests(if requested tests are run).
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/test/#testynajava
-module JTEST_FOR: JTEST {
- .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
- SET(MODULE_TYPE JTEST_FOR)
- SET(TEST_CLASSPATH_VALUE ${MODDIR} ${TEST_RUNNER} ${UNITTEST_DIR})
-
- PEERDIR($UNITTEST_DIR)
- SET(REALPRJNAME jtest)
- JAVA_TEST()
-}
-
-module JAVA_CONTRIB_PROGRAM: JAVA_CONTRIB {
- SET(MODULE_TYPE JAVA_PROGRAM)
- ENABLE(DISABLE_SCRIPTGEN)
-}
-
-### @usage: DLL_JAVA()
-###
-### DLL built using swig for Java. Produces dynamic library and a .jar.
-### Dynamic library is treated the same as in the case of PEERDIR from Java to DLL.
-### .jar goes on the classpath.
-###
-### Documentation: https://wiki.yandex-team.ru/yatool/java/#integracijascpp/pythonsborkojj
-module DLL_JAVA: DLL {
- .EXTS=.o .obj .jsrc .java .mf
- .CMD=SWIG_DLL_JAR_CMD
- PEERDIR(build/platform/java/jdk)
+YMAKE_JAVA_MODULES=no
+JBUILD_JAVA_MODULES=yes
+
+EXTERNAL_JAR_VALUE=
+### @usage: EXTERNAL_JAR(library.jar)
+###
+### Provide an external name for built JAVA_LIBRARY() or JAVA_PROGRAM()
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/java/#ispolzovanievneshnixmavenbibliotek
+macro EXTERNAL_JAR(Args...) {
+ SET_APPEND(EXTERNAL_JAR_VALUE $ARGS_DELIM $Args)
+}
+
+### @usage: JAVA_LIBRARY()
+###
+### The module describing java library build.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/java/
+module JAVA_LIBRARY: _JAVA_PLACEHOLDER {
+ SET(MODULE_TYPE JAVA_LIBRARY)
+}
+
+### @usage: JAVA_PROGRAM()
+###
+### The module describing java programs build.
+### Output artifacts: .jar and directory with all the jar to the classpath of the formation.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/java/
+module JAVA_PROGRAM: _JAVA_PLACEHOLDER {
+ .ALIASES=JAVA_RUNTIME_PEERDIR=PEERDIR JAVA_RUNTIME_EXCLUDE=EXCLUDE
+ SET(MODULE_TYPE JAVA_PROGRAM)
+}
+
+### @usage: JUNIT5()
+###
+### Java tests module based on JUnit 5 framework.
+###
+### If requested, build system will scan the source code of the module for the presence of junit tests and run them.
+### Output artifacts: a jar, a directory of exhaust tests(if required run the tests) - test logs, system logs testiranja, temporary files, tests, etc.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/test/#testynajava
+module JUNIT5: _JAVA_PLACEHOLDER {
+ .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
+ SET(MODULE_TYPE JUNIT5)
+ SET(TEST_RUNNER devtools/junit5-runner)
+ SET(TEST_CLASSPATH_VALUE ${MODDIR} ${TEST_RUNNER})
+ # Used as place to add managed dependencies for test execution and take them into account
+ # during traverses properly.
+ _RUN_JAVA(TOOL ${TEST_RUNNER} OUT fake.out.java_test_cmd)
+
+ PEERDIR(${TEST_RUNNER})
+ PEERDIR(build/platform/java/jacoco-agent)
+ JAVA_TEST()
+}
+
+### @usage: JTEST()
+###
+### Java tests module based on JUnit 4 framework.
+###
+### If requested, build system will scan the source code of the module for the presence of junit tests and run them.
+### Output artifacts: a jar, a directory of exhaust tests(if required run the tests) - test logs, system logs testiranja, temporary files, tests, etc.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/test/#testynajava
+module JTEST: _JAVA_PLACEHOLDER {
+ .ALLOWED=YT_SPEC
+ .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
+ SET(MODULE_TYPE JTEST)
+ SET(TEST_RUNNER devtools/junit-runner)
+ SET(TEST_CLASSPATH_VALUE ${MODDIR} ${TEST_RUNNER})
+ # Used as place to add managed dependencies for test execution and take them into account
+ # during traverses properly.
+ _RUN_JAVA(TOOL ${TEST_RUNNER} OUT fake.out.java_test_cmd)
+
+ # TODO: if <needs_sonar>
+ DEPENDS(contrib/java/org/sonarsource/scanner/cli/sonar-scanner-cli/2.8)
+ DEPENDS(${TEST_RUNNER})
+ _GHOST_PEERDIR(${TEST_RUNNER})
+ PEERDIR(build/platform/java/jacoco-agent)
+ JAVA_TEST()
+
+ SET_APPEND(_MAKEFILE_INCLUDE_LIKE_DEPS canondata/result.json)
+}
+
+### @usage: JTEST_FOR(ModuleDir)
+###
+### Convinience java tests module based on JUnit 4 framework for specified library or program.
+###
+### In contrast to the JTEST, the build system will scan for the presence of the test sources of the module in ModuleDir . As ModuleDir should contain JAVA_PROGRAM or JAVA_LIBRARY . JTEST_FOR also can have its own source, in this case they will be compiled and added to the classpath of a test run.
+### Output artifacts: a jar, a directory of exhaust tests(if requested tests are run).
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/test/#testynajava
+module JTEST_FOR: JTEST {
+ .ALIASES=JAVA_TEST_PEERDIR=PEERDIR JAVA_TEST_EXCLUDE=EXCLUDE
+ SET(MODULE_TYPE JTEST_FOR)
+ SET(TEST_CLASSPATH_VALUE ${MODDIR} ${TEST_RUNNER} ${UNITTEST_DIR})
+
+ PEERDIR($UNITTEST_DIR)
+ SET(REALPRJNAME jtest)
+ JAVA_TEST()
+}
+
+module JAVA_CONTRIB_PROGRAM: JAVA_CONTRIB {
+ SET(MODULE_TYPE JAVA_PROGRAM)
+ ENABLE(DISABLE_SCRIPTGEN)
+}
+
+### @usage: DLL_JAVA()
+###
+### DLL built using swig for Java. Produces dynamic library and a .jar.
+### Dynamic library is treated the same as in the case of PEERDIR from Java to DLL.
+### .jar goes on the classpath.
+###
+### Documentation: https://wiki.yandex-team.ru/yatool/java/#integracijascpp/pythonsborkojj
+module DLL_JAVA: DLL {
+ .EXTS=.o .obj .jsrc .java .mf
+ .CMD=SWIG_DLL_JAR_CMD
+ PEERDIR(build/platform/java/jdk)
PEERDIR+=$JDK_RESOURCE_PEERDIR
-
- PROPAGATES_MANAGEABLE_PEERS=yes
- SET(SWIG_LANG java)
-}
+
+ PROPAGATES_MANAGEABLE_PEERS=yes
+ SET(SWIG_LANG java)
+}