# Template file for 'intellij-idea-ultimate-edition'
pkgname=intellij-idea-ultimate-edition
version=2019.3.3
revision=1
archs="i686 x86_64"
wrksrc="idea-IU-193.6494.35"
depends="giflib libXtst jetbrains-jdk-bin"
short_desc="Most intelligent Java IDE"
maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
license="custom:Commercial"
homepage="https://www.jetbrains.com/idea"
distfiles="https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz"
checksum=b6ef08b34e38b9d1f637b4179b5c145375f1604208e42e4a605711e368c18a0c
repository=nonfree
restricted=yes
nopie=yes
# JetBrains' tools are self-sufficient and while they include code that appears to be linked to libs from other packages, these libs are either included in the tool package, or the code works by looking for one of several supported libs.
noverifyrdeps=yes

post_extract() {
	# Remove files for other OSes
	rm -rf plugins/android/lib/libwebp/win
	rm -rf plugins/android/lib/libwebp/mac
	rm -rf plugins/maven/lib/maven3/lib/jansi-native/freebsd64
	rm -rf plugins/maven/lib/maven3/lib/jansi-native/freebsd32

	# 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/idea.vmoptions
			rm -rf bin/libyjpagent-linux.so
			rm -rf plugins/android/lib/libwebp/linux/libwebp_jni.so
			rm -rf lib/pty4j-native/linux/x86
			;;
		i686)
			rm -rf bin/fsnotifier64
			rm -rf bin/idea64.vmoptions
			rm -rf bin/libyjpagent-linux64.so
			rm -rf plugins/android/lib/libwebp/linux/libwebp_jni64.so
			rm -rf lib/pty4j-native/linux/x86_64
			;;
	esac
}

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}

	mkdir -p /usr/lib/jvm/jbrsdk
	ln -sf /usr/lib/jvm/jbrsdk ${DESTDIR}/${TARGET_PATH}/jbr
	vcopy bin ${TARGET_PATH}
	vcopy help ${TARGET_PATH}
	vcopy lib ${TARGET_PATH}
	vcopy plugins ${TARGET_PATH}
	vcopy redist ${TARGET_PATH}
	vcopy product-info.json ${TARGET_PATH}
	vcopy build.txt ${TARGET_PATH}

	ln -sf /${TARGET_PATH}/bin/idea.sh ${DESTDIR}/usr/bin/idea-ultimate
}
