aboutsummaryrefslogtreecommitdiff
path: root/java/intellij
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2016-02-27 19:54:46 +0000
committerKurt Jaeger <pi@FreeBSD.org>2016-02-27 19:54:46 +0000
commit0ccad4810ba43bb56731d7f90b37dde795a0bc9e (patch)
treee092ff053c6d39ef1d1c66aa94d8a0f469f2e4e1 /java/intellij
parent261593e7c5c6111fe6dc1cef8211b1cf8fec4777 (diff)
downloadports-0ccad4810ba43bb56731d7f90b37dde795a0bc9e.tar.gz
ports-0ccad4810ba43bb56731d7f90b37dde795a0bc9e.zip
java/intellij: 15.0.3 -> 15.0.4
- Thanks to Jiri B <jirib@devio.us> and Roman Shevchenko [1] for contributing a libinotify-based replacement for IntelliJ's fsnotifier. IntelliJ now has native (faster) file notification support on FreeBSD (and OpenBSD). - Because of remaining problems with watching large trees with libinotify [2], fsnotifier is still disabled by default. - fsnotifier and native pty4j support need to be compiled. In the interest of reducing port complexity, the building of pty support and fsnotifier is moved to separate ports: - java/intellij-pty4j - java/intellij-fsnotifier [1] https://youtrack.jetbrains.com/issue/IDEA-151815 [2] https://github.com/dmatveev/libinotify-kqueue/pull/34 PR: 207474 Submitted by: Tobias Kortkamp <t@tobik.me> (maintainer)
Notes
Notes: svn path=/head/; revision=409684
Diffstat (limited to 'java/intellij')
-rw-r--r--java/intellij/Makefile68
-rw-r--r--java/intellij/common.mk5
-rw-r--r--java/intellij/distinfo6
-rw-r--r--java/intellij/files/pkg-message.in8
-rw-r--r--java/intellij/pkg-plist59
5 files changed, 62 insertions, 84 deletions
diff --git a/java/intellij/Makefile b/java/intellij/Makefile
index 12445d812ad7..b0e939c11966 100644
--- a/java/intellij/Makefile
+++ b/java/intellij/Makefile
@@ -5,65 +5,34 @@
# Vadim Zhukov <zhuk@openbsd.org>
PORTNAME= intellij
-PORTVERSION= 15.0.3
+PORTVERSION= 15.0.4
CATEGORIES= java devel
-MASTER_SITES= https://download.jetbrains.com/idea/:jetbrains \
- http://download.jetbrains.com/idea/:jetbrains \
- GH:pty4j
-DISTFILES= ideaIC-${PORTVERSION}.tar.gz:jetbrains \
- ${DISTNAME}.tar.gz:pty4j
+MASTER_SITES= https://download.jetbrains.com/idea/ \
+ http://download.jetbrains.com/idea/
+DISTNAME= ideaIC-${PORTVERSION}
MAINTAINER= t@tobik.me
COMMENT= IntelliJ IDEA Community Edition
LICENSE= APACHE20
-# Upstream has merged pty4j FreeBSD support but no offical release/tag
-# with it yet
-USE_GITHUB= yes
-GH_ACCOUNT= traff
-GH_PROJECT= pty4j
-GH_TAGNAME= 335982264104fd4529f2ee75f08d1e1d9f9d544a
+RUN_DEPENDS= intellij-fsnotifier>0:${PORTSDIR}/java/intellij-fsnotifier \
+ intellij-pty4j>0:${PORTSDIR}/java/intellij-pty4j
USE_JAVA= yes
JAVA_VERSION= 1.7+
-WRKDIST= ${WRKDIR}/idea-IC-143.1821.5
+NO_ARCH= yes
+NO_BUILD= yes
-IDEA_HOME= ${PREFIX}/${PORTNAME}
+WRKDIST= ${WRKDIR}/idea-IC-143.2287.1
-USES= gmake
+.include "common.mk"
-PLIST_SUB+= IDEA_HOME=${IDEA_HOME} \
- PTY4J_ARCH=${PTY4J_ARCH}
-SUB_FILES+= idea idea.desktop
+PLIST_SUB+= IDEA_HOME=${IDEA_HOME}
+SUB_FILES+= idea idea.desktop pkg-message
SUB_LIST+= IDEA_HOME=${IDEA_HOME}
-.include <bsd.port.options.mk>
-
-# The directory we need to install Pty4J's native library in depends
-# on the install target's architecture. We rebuild libpty.so instead
-# of using one of the bundled ones which are FreeBSD 10.x only.
-.if ${ARCH} == "amd64"
-PTY4J_ARCH= x86_64
-.elif ${ARCH} == "i386"
-PTY4J_ARCH= x86
-.else
-PTY4J_ARCH=
-.endif
-
-.if ${PTY4J_ARCH} != ""
-# Despite what the name might suggest using the linux_x86_64 target
-# will always build libpty.so for the native platform.
-BUILD_WRKSRC= ${WRKSRC}/native
-MAKEFILE= Makefile_freebsd
-ALL_TARGET= linux_x86_64
-.else
-# If native Pty4J support is missing IntelliJ IDEA will still work but
-# without the ability to open terminals.
-NO_BUILD= yes
-.endif
-
do-install:
${MKDIR} ${STAGEDIR}${IDEA_HOME}
@${TAR} -czf - -C ${WRKDIST} . | ${TAR} xzf - -C ${STAGEDIR}${IDEA_HOME}
@@ -79,20 +48,19 @@ do-install:
${STAGEDIR}${IDEA_HOME}/plugins/gradle/lib/native-platform-osx-i386-0.10.jar \
${STAGEDIR}${IDEA_HOME}/plugins/gradle/lib/native-platform-windows-amd64-0.10.jar \
${STAGEDIR}${IDEA_HOME}/plugins/gradle/lib/native-platform-windows-i386-0.10.jar
-# Remove the bundled native Pty4J support libraries and replace with our own
+# Remove the bundled native Pty4J support libraries, they are replaced
+# by java/intellij-pty4j
@${RM} -r ${STAGEDIR}${IDEA_HOME}/lib/libpty
-.if ${PTY4J_ARCH} != ""
- ${MKDIR} ${STAGEDIR}${IDEA_HOME}/lib/libpty/freebsd/${PTY4J_ARCH}
-# See above why we always use freebsd/x86_64/ here
- ${INSTALL_LIB} ${WRKSRC}/os/freebsd/x86_64/libpty.so ${STAGEDIR}${IDEA_HOME}/lib/libpty/freebsd/${PTY4J_ARCH}/
- ${INSTALL_DATA} ${WRKSRC}/build/pty4j-0.5.jar ${STAGEDIR}${IDEA_HOME}/lib/pty4j-0.5.jar
-.endif
+ @${RM} ${STAGEDIR}${IDEA_HOME}/lib/pty4j-0.5.jar
${INSTALL_SCRIPT} ${WRKDIR}/idea ${STAGEDIR}${PREFIX}/bin/idea
${INSTALL_MAN} ${FILESDIR}/idea.1 ${STAGEDIR}${PREFIX}/man/man1
${INSTALL_DATA} ${WRKDIR}/idea.desktop ${STAGEDIR}${PREFIX}/share/applications/
cd ${WRKDIST}/lib && ${JAVA_HOME}/bin/jar xf icons.jar
${INSTALL_DATA} ${WRKDIST}/lib/icon.png ${STAGEDIR}${IDEA_HOME}/idea.png
+# TODO: Remove and enable fsnotifier when devel/libinotify is fixed
# Disable filewatcher warning message on IDEA startup
${ECHO} "idea.filewatcher.disabled=true" >> ${STAGEDIR}${IDEA_HOME}/bin/idea.properties
+# Use fsnotifier replacement provided by java/intellij-fsnotifier
+# ${ECHO} "idea.filewatcher.executable.path=${IDEA_HOME}/bin/fsnotifier" >> ${STAGEDIR}${IDEA_HOME}/bin/idea.properties
.include <bsd.port.mk>
diff --git a/java/intellij/common.mk b/java/intellij/common.mk
new file mode 100644
index 000000000000..1c714f51569b
--- /dev/null
+++ b/java/intellij/common.mk
@@ -0,0 +1,5 @@
+# $FreeBSD$
+
+# Common settings for the java/intellij* ports
+
+IDEA_HOME=${PREFIX}/intellij
diff --git a/java/intellij/distinfo b/java/intellij/distinfo
index d808444fd137..8a795acfddc7 100644
--- a/java/intellij/distinfo
+++ b/java/intellij/distinfo
@@ -1,4 +1,2 @@
-SHA256 (ideaIC-15.0.3.tar.gz) = 0a4b755f3a48b3b5ad1000e17a92462c33ad5a8cc4912d6e276bbc4bf1241296
-SIZE (ideaIC-15.0.3.tar.gz) = 232760076
-SHA256 (traff-pty4j-15.0.3-335982264104fd4529f2ee75f08d1e1d9f9d544a_GH0.tar.gz) = bf2ffe37e9ecc5cbca879023ce7822461b1996c4affc50aa71265bce5cda6e93
-SIZE (traff-pty4j-15.0.3-335982264104fd4529f2ee75f08d1e1d9f9d544a_GH0.tar.gz) = 4856849
+SHA256 (ideaIC-15.0.4.tar.gz) = 7653edd0687de6948b3c5b128c0683c96f89dea96bedd995a279f4d359816a16
+SIZE (ideaIC-15.0.4.tar.gz) = 234258484
diff --git a/java/intellij/files/pkg-message.in b/java/intellij/files/pkg-message.in
new file mode 100644
index 000000000000..79346fb43909
--- /dev/null
+++ b/java/intellij/files/pkg-message.in
@@ -0,0 +1,8 @@
+There is experimental native (faster) file watching support which is
+disabled by default. Currently there are problems with watching large
+trees. To enable edit %%IDEA_HOME%%/bin/idea.properties and append
+
+ idea.filewatcher.disabled=false
+ idea.filewatcher.executable.path=%%IDEA_HOME%%/bin/fsnotifier
+
+Only enable fsnotifier if your projects have < 600 files.
diff --git a/java/intellij/pkg-plist b/java/intellij/pkg-plist
index fd9978f2f96a..64571fd4a72a 100644
--- a/java/intellij/pkg-plist
+++ b/java/intellij/pkg-plist
@@ -1,22 +1,16 @@
-bin/idea
-%%IDEA_HOME%%/idea.png
%%IDEA_HOME%%/Install-Linux-tar.txt
%%IDEA_HOME%%/LICENSE.txt
%%IDEA_HOME%%/NOTICE.txt
%%IDEA_HOME%%/bin/appletviewer.policy
-@comment %%IDEA_HOME%%/bin/fsnotifier
-@comment %%IDEA_HOME%%/bin/fsnotifier-arm
-@comment %%IDEA_HOME%%/bin/fsnotifier64
%%IDEA_HOME%%/bin/idea.png
%%IDEA_HOME%%/bin/idea.properties
%%IDEA_HOME%%/bin/idea.sh
%%IDEA_HOME%%/bin/idea.vmoptions
%%IDEA_HOME%%/bin/idea64.vmoptions
%%IDEA_HOME%%/bin/inspect.sh
-@comment %%IDEA_HOME%%/bin/libbreakgen.so
-@comment %%IDEA_HOME%%/bin/libbreakgen64.so
%%IDEA_HOME%%/bin/log.xml
%%IDEA_HOME%%/build.txt
+%%IDEA_HOME%%/idea.png
%%IDEA_HOME%%/lib/annotations.jar
%%IDEA_HOME%%/lib/ant/INSTALL
%%IDEA_HOME%%/lib/ant/KEYS
@@ -136,18 +130,6 @@ bin/idea
%%IDEA_HOME%%/lib/jzlib-1.1.1.jar
%%IDEA_HOME%%/lib/kotlin-reflect.jar
%%IDEA_HOME%%/lib/kotlin-runtime.jar
-%%IDEA_HOME%%/lib/libpty/freebsd/%%PTY4J_ARCH%%/libpty.so
-@comment %%IDEA_HOME%%/lib/libpty/linux/x86/libpty.so
-@comment %%IDEA_HOME%%/lib/libpty/linux/x86_64/libpty.so
-@comment %%IDEA_HOME%%/lib/libpty/macosx/x86/libpty.dylib
-@comment %%IDEA_HOME%%/lib/libpty/macosx/x86_64/libpty.dylib
-@comment %%IDEA_HOME%%/lib/libpty/win/x86/libwinpty.dll
-@comment %%IDEA_HOME%%/lib/libpty/win/x86/winpty-agent.exe
-@comment %%IDEA_HOME%%/lib/libpty/win/x86_64/cyglaunch.exe
-@comment %%IDEA_HOME%%/lib/libpty/win/x86_64/libwinpty.dll
-@comment %%IDEA_HOME%%/lib/libpty/win/x86_64/winpty-agent.exe
-@comment %%IDEA_HOME%%/lib/libpty/win/xp/libwinpty.dll
-@comment %%IDEA_HOME%%/lib/libpty/win/xp/winpty-agent.exe
%%IDEA_HOME%%/lib/log4j.jar
%%IDEA_HOME%%/lib/markdown4j-2.2.jar
%%IDEA_HOME%%/lib/markdownj-core-0.4.2-SNAPSHOT.jar
@@ -162,7 +144,6 @@ bin/idea
%%IDEA_HOME%%/lib/picocontainer.jar
%%IDEA_HOME%%/lib/protobuf-2.5.0.jar
%%IDEA_HOME%%/lib/proxy-vole_20131209.jar
-%%IDEA_HOME%%/lib/pty4j-0.5.jar
%%IDEA_HOME%%/lib/purejavacomm.jar
%%IDEA_HOME%%/lib/resolver.jar
%%IDEA_HOME%%/lib/resources.jar
@@ -254,7 +235,9 @@ bin/idea
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/android-compiler-plugin.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-android-sdk-annotations.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-ant.jar
+%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-build-common.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-compiler.jar
+%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-daemon-client.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-jdk-annotations.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-jslib-sources.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-jslib.jar
@@ -263,6 +246,7 @@ bin/idea
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-runner.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-runtime-sources.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-runtime.jar
+%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-test.jar
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/license/LICENSE.txt
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/license/NOTICE.txt
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/license/third_party/args4j_LICENSE.txt
@@ -276,13 +260,11 @@ bin/idea
%%IDEA_HOME%%/plugins/Kotlin/kotlinc/license/third_party/rhino_LICENSE.txt
%%IDEA_HOME%%/plugins/Kotlin/lib/javax.inject.jar
%%IDEA_HOME%%/plugins/Kotlin/lib/jps/kotlin-jps-plugin.jar
+%%IDEA_HOME%%/plugins/Kotlin/lib/kotlin-android-extensions-compiler-plugin.jar
+%%IDEA_HOME%%/plugins/Kotlin/lib/kotlin-android-extensions-plugin.jar
%%IDEA_HOME%%/plugins/Kotlin/lib/kotlin-plugin.jar
%%IDEA_HOME%%/plugins/Kotlin/lib/kotlin-reflect.jar
%%IDEA_HOME%%/plugins/Kotlin/lib/kotlin-runtime.jar
-%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-daemon-client.jar
-%%IDEA_HOME%%/plugins/Kotlin/kotlinc/lib/kotlin-test.jar
-%%IDEA_HOME%%/plugins/Kotlin/lib/kotlin-android-extensions-compiler-plugin.jar
-%%IDEA_HOME%%/plugins/Kotlin/lib/kotlin-android-extensions-plugin.jar
%%IDEA_HOME%%/plugins/Kotlin/lib/markdown.jar
%%IDEA_HOME%%/plugins/android/lib/GoogleFeedback.jar
%%IDEA_HOME%%/plugins/android/lib/android-common.jar
@@ -1462,12 +1444,6 @@ bin/idea
%%IDEA_HOME%%/plugins/gradle/lib/native-platform-0.10.jar
%%IDEA_HOME%%/plugins/gradle/lib/native-platform-freebsd-amd64-0.10.jar
%%IDEA_HOME%%/plugins/gradle/lib/native-platform-freebsd-i386-0.10.jar
-@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-linux-amd64-0.10.jar
-@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-linux-i386-0.10.jar
-@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-osx-amd64-0.10.jar
-@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-osx-i386-0.10.jar
-@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-windows-amd64-0.10.jar
-@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-windows-i386-0.10.jar
%%IDEA_HOME%%/plugins/gradle/lib/objenesis-1.2.jar
%%IDEA_HOME%%/plugins/gradle/lib/reflectasm-1.07.jar
%%IDEA_HOME%%/plugins/gradle/lib/resources_en.jar
@@ -1637,5 +1613,28 @@ bin/idea
%%IDEA_HOME%%/plugins/xslt-debugger/lib/xslt-debugger-engine.jar
%%IDEA_HOME%%/plugins/xslt-debugger/lib/xslt-debugger.jar
%%IDEA_HOME%%/redist/annotations-java8.jar
+@comment %%IDEA_HOME%%/bin/fsnotifier
+@comment %%IDEA_HOME%%/bin/fsnotifier-arm
+@comment %%IDEA_HOME%%/bin/fsnotifier64
+@comment %%IDEA_HOME%%/bin/libbreakgen.so
+@comment %%IDEA_HOME%%/bin/libbreakgen64.so
+@comment %%IDEA_HOME%%/lib/libpty/linux/x86/libpty.so
+@comment %%IDEA_HOME%%/lib/libpty/linux/x86_64/libpty.so
+@comment %%IDEA_HOME%%/lib/libpty/macosx/x86/libpty.dylib
+@comment %%IDEA_HOME%%/lib/libpty/macosx/x86_64/libpty.dylib
+@comment %%IDEA_HOME%%/lib/libpty/win/x86/libwinpty.dll
+@comment %%IDEA_HOME%%/lib/libpty/win/x86/winpty-agent.exe
+@comment %%IDEA_HOME%%/lib/libpty/win/x86_64/cyglaunch.exe
+@comment %%IDEA_HOME%%/lib/libpty/win/x86_64/libwinpty.dll
+@comment %%IDEA_HOME%%/lib/libpty/win/x86_64/winpty-agent.exe
+@comment %%IDEA_HOME%%/lib/libpty/win/xp/libwinpty.dll
+@comment %%IDEA_HOME%%/lib/libpty/win/xp/winpty-agent.exe
+@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-linux-amd64-0.10.jar
+@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-linux-i386-0.10.jar
+@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-osx-amd64-0.10.jar
+@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-osx-i386-0.10.jar
+@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-windows-amd64-0.10.jar
+@comment %%IDEA_HOME%%/plugins/gradle/lib/native-platform-windows-i386-0.10.jar
+bin/idea
man/man1/idea.1.gz
share/applications/idea.desktop