Commit Graph

494 Commits

Author SHA1 Message Date
Ilya Gorbunov 6e961be1a1 No need to fork ant under jdk8 to build annotation-processing 2017-04-08 08:31:03 +03:00
Ilya Gorbunov eef835f6c1 Remove ant targets that are superseded by gradle build. 2017-04-08 08:31:01 +03:00
Ilya Gorbunov 356f8dd0d1 Killswitch: do not build runtime with ant, switch to gradle artifacts. 2017-04-06 20:32:37 +03:00
Ilya Gorbunov df44f3bfe6 Launch kotlin runtime gradle build from ant.
Fork ant to build compiler as it requires a lot of memory.
Pass build.number to gradle build.
2017-04-06 20:32:37 +03:00
Ilya Chernikov a309511adf Add actual sources to compiler and daemon client jars 2017-04-06 10:02:46 +02:00
Ilya Chernikov 7ceaca133a Add new artifact kotlin-compiler-client-embeddable.jar 2017-04-06 10:02:44 +02:00
Ilya Chernikov 32d0d7a4d5 Remove xerces from compiler uberjar, pack compiler with explicit jar names
xercesImpl was unnecessarily added to the compiler uberjar during migration
to the idea platform 171. This caused NCDFE about classes from org.w3c
package.
And to simplify application of this commit and to ensure that only required
jars are packed into the uberjar, the build.xml was altered to use
explicit list of the jars from the ideaSdk/core directory, rather than
a mask.

Fixes #KT-17143 and #KT-17157

(cherry picked from commit 5595bea)
2017-04-04 15:14:46 +02:00
Ilya Gorbunov c740c0b177 Do not produce javadoc for kotlin-compiler and do not attach it to maven artifacts 2017-04-01 04:32:01 +03:00
Alexander Udalov a5d70cfa68 Support running Kotlin compiler CLI on Java 9 on Unix
Workaround IDEA-170005, IDEA-170494 and similar issues by opening the
required packages from java.base to the unnamed module

 #KT-14988 In Progress
2017-03-30 13:04:41 +03:00
Ilya Chernikov 4b430b49a7 Implement source sections compiler plugin
allows to compile only parts of the source files, denoted by top-level
"sections" (function with lambda param calls), but preserving original
file line/column numbers for easier diagnostics. Allow e.g. to compile
gradle "buildscript" section without preprocessing original file in
advance. See tests for examples.
2017-03-21 16:30:46 +01:00
Dmitry Jemerov 3a8cf68541 Keep class file version during shrinking; generate Java 8 bytecode
sometimes
2017-03-20 18:45:59 +01:00
Alexey Sedunov 73b879ea89 Misc: Include cli-parser 1.1.2 sources into the project under different package and drop original library dependency
This would allow building the project with Kotlin JPS plugin on TeamCity where older library takes precendence due to appearing earlier in JPS classpath
2017-03-14 15:33:06 +03:00
Dmitry Jemerov 1d86bd5610 Build multiplatform stdlib docs 2017-03-01 16:08:38 +01:00
Dmitry Jemerov adc937c57d Extract separate target for preprocessing JS stdlib sources 2017-03-01 16:08:28 +01:00
Alexander Udalov c10524586a Use proguard to remove unused symbols from kotlin-reflect.jar
#KT-16268 Fixed
2017-02-15 10:46:48 +03:00
Alexander Udalov e5680565b3 JS: drop "-kjsm" flag, merge logic with "-meta-info"
#KT-16049 Fixed
2017-01-30 11:31:03 +03:00
Alexander Udalov 46bf057b47 JS: do not generate .meta.js and .kjsm for built-ins 2017-01-30 11:31:02 +03:00
Zalim Bashorov 29ac01f2e2 KJS: allow to use packages with names starting with "kotlin" only if the -Xallow-kotlin-package command line option is specified
#KT-14668 Fixed
2017-01-29 17:21:01 +03:00
Ilya Gorbunov 0df31f1223 Build kotlin-stdlib-js.jar in ant
#KT-15940
2017-01-27 22:19:40 +03:00
Ilya Gorbunov f9e552e3c2 Build kotlin-stdlib in addition to kotlin-runtime in ant build. 2017-01-24 22:38:05 +03:00
Ilya Gorbunov a0cfd8d35e Change builtins module name to kotlin-runtime to match that of maven built artifact. 2017-01-24 22:04:46 +03:00
Ilya Gorbunov 9b9852cdc9 kotlin-test: rename shared module to common.
Do not use shared kotlin-test while building js stdlib.
2017-01-24 19:39:05 +03:00
Sergey Mashkov 98075c17c9 kotlin-test: extract from JS library, convert to multiplatform 2017-01-23 15:43:02 +03:00
Alexander Udalov fc637eb420 Change runtime component from "Core" to "Main"
This is needed to allow the old compiler have the new runtime libraries in the
classpath. See the previous commit for a more elaborate explanation
2017-01-21 12:57:15 +03:00
Zalim Bashorov 7f10ce072f KJS: move js part of "kotlin.js" and related files to "js.libraries" module 2017-01-18 14:25:36 +03:00
Zalim Bashorov cb4c3ed686 KJS: rename "js.dart-ast" module to "js.ast" 2017-01-09 17:13:23 +03:00
Alexander Udalov c4f731b987 Write Kotlin-Version to runtime artifacts built with Maven
Add a test that checks that Kotlin-Version and Kotlin-Runtime-Component have
been written to all relevant runtime libraries
2016-12-26 17:46:36 +03:00
Alexey Tsvetkov f40a3eff20 Move IC from Gradle to compiler
Reasons for moving:
1. Integration with Kotlin daemon for Gradle.
Gradle bundles Kotlin compiler (kotlin-compiler-embeddable) since Gradle 3.2.
There is no plugin isolation in Gradle, so strange compilation errors/exceptions may happen.
We decided to fix this problem by compiling out-of-process using Kotlin daemon.

Reasons for moving IC to the compiler:
* Better isolation from Gradle process.
* Incremental compilation logic is not scattered across two process and multiple modules.
* Makes it possible to implement standalone CLI IC
2016-12-19 22:46:12 +03:00
Alexander Udalov 90eb229036 Extract compiler-for-maven target in build.xml
To be used after "compiler-quick" to quickly test changes to the compiler in
the Maven build
2016-12-15 12:11:31 +03:00
Dmitry Petrov 1866a33781 Check classpath version consistency.
Add 'Kotlin-version' attribute to kotlin-runtime and kotlin-reflect JARs.
2016-12-13 21:08:59 +03:00
Yan Zhulanow de15003706 Minor: Add sam-with-receiver to Ultimate project classpath, fix cli plugin path in build.xml 2016-12-09 20:26:41 +03:00
Yan Zhulanow cbef0250aa Allow to turn the first parameter of a SAM-converted lambda into the receiver (KT-12848) 2016-12-09 20:01:21 +03:00
Yan Zhulanow e626b121ad NoArg: Add compiler plugin 2016-12-09 20:01:10 +03:00
Yan Zhulanow 6abde4223b AllOpen: Add IDE integration 2016-12-09 20:01:07 +03:00
Yan Zhulanow 58f408e173 Allopen: Add allopen compiler plugin 2016-12-09 20:00:54 +03:00
Yan Zhulanow bd9d33fe44 Kapt3: Replace kapt2 in Ant and Maven artifacts with kapt3 2016-12-05 19:57:34 +03:00
Alexey Andreev 20669c1b97 JS: fix building stubs for JS library that contains classes in default package 2016-11-24 17:49:11 +03:00
Alexey Andreev 23428c9544 JS: fix coroutine test. Fix hanging IDEA tests 2016-11-23 17:01:03 +03:00
Ilya Gorbunov 491ca582b3 Include collection type aliases into mock-runtime as they are used extremely often in tests 2016-11-21 18:20:33 +03:00
Ilya Gorbunov ed3c54dbd0 Include new type aliases into mock runtime. 2016-11-16 18:47:42 +03:00
Alexey Andreev 5ef8879aae JS: fixes after code review 2016-11-11 16:26:39 +03:00
Alexey Andreev a452260da6 JS: simplify merging kotlin.js 2016-11-11 16:26:38 +03:00
Alexey Andreev f244bbaae3 JS: change how declarations are exported from modules. Change how parts of kotlin.js merged 2016-11-11 16:26:36 +03:00
Alexey Andreev e13d34e08d JS: rewrite stdlib to compile with new flat structure 2016-11-11 16:26:31 +03:00
Alexander Udalov f9a48857f5 Add IR sources to kotlin-compiler-sources.jar 2016-10-31 11:27:04 +03:00
Alexander Udalov e0989caf46 Load built-ins from module dependencies in JVM compiler
Introduce a new method KotlinClassFinder#findBuiltInsData, which is only
implemented correctly in the JvmCliVirtualFileFinder because it's only used in
the compiler code at the moment.

Introduce JvmBuiltInsPackageFragmentProvider, the purpose of which is to look
for .kotlin_builtins files in the classpath and provide definitions of
built-ins from those files.

Also exclude script.runtime from compilation because, as other excluded
modules, it has no dependency on the stdlib and is no longer compilable from
the IDE now, because it cannot resolve built-ins from anywhere
2016-10-26 16:31:09 +03:00
Michael Bogdanov 99e7df7035 Remove duplicated line from build.xml 2016-10-18 09:09:33 +03:00
Michael Bogdanov 0838b28e10 Add IR modules to build.xml 2016-10-18 09:09:22 +03:00
Zalim Bashorov 0a0a05d211 Add tasks to download node.js (platform independently) and tasks to publish packages to npm; extract some common things to common.xml 2016-10-13 23:22:36 +03:00
Ilya Chernikov 846797ff61 Switch to templates in the separate script runtime 2016-10-12 15:38:52 +02:00