diff --git a/srcpkgs/CLion/INSTALL.msg b/srcpkgs/CLion/INSTALL.msg new file mode 100644 index 00000000000..860cb2fb6b5 --- /dev/null +++ b/srcpkgs/CLion/INSTALL.msg @@ -0,0 +1,11 @@ +CLion has the following optional dependencies: + cmake: CMake tools/build system + gdb: Native GNU debugger + lldb: Native LLVM debugger + gcc: GNU compiler + clang: LLVM compiler + gtest: C++ testing + python: Python 2 programming language support + python3: Python 3 programming language support + doxygen: Code documentation generation + libdbusmenu-glib: For global menu support diff --git a/srcpkgs/CLion/template b/srcpkgs/CLion/template new file mode 100644 index 00000000000..2a3717ba1f4 --- /dev/null +++ b/srcpkgs/CLion/template @@ -0,0 +1,64 @@ +# Template file for 'CLion' +pkgname=CLion +version=2019.1.4 +revision=1 +archs="i686 x86_64" +wrksrc="clion-${version}" +depends="virtual?java-environment giflib libXtst" +short_desc="Smart cross-platform IDE for C and C++" +maintainer="Anton Afanasyev " +license="custom:Commercial" +homepage="https://www.jetbrains.com/clion" +distfiles="https://download.jetbrains.com/cpp/CLion-${version}.tar.gz" +checksum=c9249f7a378b66071e4c4308a339bfd3afa38765e9316ffaaeeec66fcb3b8bb1 +repository=nonfree +restricted=yes +nopie=yes + +post_extract() { + # Remove files for other CPU architectures + rm -rf bin/fsnotifier-arm + rm -rf lib/pty4j-native/linux/ppc64le + + case "$XBPS_TARGET_MACHINE" in + x86_64) + rm -rf bin/fsnotifier + rm -rf bin/clion.vmoptions + rm -rf bin/libyjpagent-linux.so + rm -rf lib/pty4j-native/linux/x86 + ;; + i686) + rm -rf bin/fsnotifier64 + rm -rf bin/clion64.vmoptions + rm -rf bin/libyjpagent-linux64.so + rm -rf lib/pty4j-native/linux/x86_64 + ;; + esac + + # Remove JetBrains JDK + rm -rf jre64 + + # TODO: JetBrains' LLDB, GDB, and CMake can be made installable via separate subpackages + # bin/lldb bin/gdb bin/cmake +} + +do_install() { + TARGET_PATH="usr/lib/${pkgname}" + LICENSE_PATH="usr/share/licenses/${pkgname}" + + vmkdir usr/bin + vmkdir ${TARGET_PATH} + vmkdir ${LICENSE_PATH} + + # Ideally vlicense should be called here, but vcopy is more terse. + vcopy license/* ${LICENSE_PATH} + + vcopy bin ${TARGET_PATH} + vcopy help ${TARGET_PATH} + vcopy lib ${TARGET_PATH} + vcopy plugins ${TARGET_PATH} + vcopy product-info.json ${TARGET_PATH} + vcopy build.txt ${TARGET_PATH} + + ln -sf /${TARGET_PATH}/bin/clion.sh ${DESTDIR}/usr/bin/${pkgname} +} diff --git a/srcpkgs/CLion/update b/srcpkgs/CLion/update new file mode 100644 index 00000000000..162c3615358 --- /dev/null +++ b/srcpkgs/CLion/update @@ -0,0 +1,2 @@ +pattern="CLion-\K[\d.]+(?=\.tar)" +site="https://data.services.jetbrains.com/products/releases?code=CL&latest=true&type=release"