diff --git a/build/groovy/org/jetbrains/intellij/build/LinuxDistributionCustomizer.groovy b/build/groovy/org/jetbrains/intellij/build/LinuxDistributionCustomizer.groovy index 37dcd5fc0c81..c8fdb2b44a56 100644 --- a/build/groovy/org/jetbrains/intellij/build/LinuxDistributionCustomizer.groovy +++ b/build/groovy/org/jetbrains/intellij/build/LinuxDistributionCustomizer.groovy @@ -34,5 +34,9 @@ abstract class LinuxDistributionCustomizer { */ abstract String rootDirectoryName(String buildNumber) + /** + * Override this method to copy additional files to Linux distribution of the product. + * @param targetDirectory contents of this directory will be packed into .tar.gz archive under {@link #rootDirectoryName(java.lang.String)} + */ void copyAdditionalFiles(BuildContext context, String targetDirectory) {} } diff --git a/build/groovy/org/jetbrains/intellij/build/MacDistributionCustomizer.groovy b/build/groovy/org/jetbrains/intellij/build/MacDistributionCustomizer.groovy index 92af4d0350e5..fea25a526f62 100644 --- a/build/groovy/org/jetbrains/intellij/build/MacDistributionCustomizer.groovy +++ b/build/groovy/org/jetbrains/intellij/build/MacDistributionCustomizer.groovy @@ -19,12 +19,24 @@ package org.jetbrains.intellij.build * @author nik */ abstract class MacDistributionCustomizer { + /** + * Path to icns file containing 32x32 product icon for Mac OS distribution + */ String icnsPath + + /** + * The minimum version of Mac OS where the product is allowed to be installed + */ String minOSXVersion = "10.8" String helpId = "" String docTypes = null List urlSchemes = [] List architectures = ["x86_64"] + + /** + * If {@code true} YourKit agent will be automatically attached when an EAP build of the product starts under Mac OS. This property is + * taken into account only if {@link ProductProperties#enableYourkitAgentInEAP} is {@code true}. + */ boolean enableYourkitAgentInEAP = true /** diff --git a/build/groovy/org/jetbrains/intellij/build/ProductProperties.groovy b/build/groovy/org/jetbrains/intellij/build/ProductProperties.groovy index f0ce127c24b2..a15fb138f608 100644 --- a/build/groovy/org/jetbrains/intellij/build/ProductProperties.groovy +++ b/build/groovy/org/jetbrains/intellij/build/ProductProperties.groovy @@ -106,6 +106,10 @@ public abstract class ProductProperties { * directories of Windows, Linux and Mac OS distributions. If {@code null} no agent files will be bundled. */ String yourkitAgentBinariesDirectoryPath = null + + /** + * If {@code true} YourKit agent will be automatically attached when an EAP build of the product starts. It makes sense only if {@link #yourkitAgentBinariesDirectoryPath} is non-null. + */ boolean enableYourkitAgentInEAP = false List excludedPlugins = [] diff --git a/build/groovy/org/jetbrains/intellij/build/WindowsDistributionCustomizer.groovy b/build/groovy/org/jetbrains/intellij/build/WindowsDistributionCustomizer.groovy index c814d2d2601d..ef315aaa7dfa 100644 --- a/build/groovy/org/jetbrains/intellij/build/WindowsDistributionCustomizer.groovy +++ b/build/groovy/org/jetbrains/intellij/build/WindowsDistributionCustomizer.groovy @@ -54,6 +54,11 @@ abstract class WindowsDistributionCustomizer { */ abstract String rootDirectoryName(String buildNumber) + /** + * Override this method to copy additional files to Windows distribution of the product. + * @param targetDirectory contents of this directory will be packed into zip archive and exe installer, so when the product is installed + * it'll be placed under its root directory. + */ void copyAdditionalFiles(BuildContext context, String targetDirectory) {} String uninstallFeedbackPageUrl(ApplicationInfoProperties applicationInfo) {