summaryrefslogtreecommitdiff
blob: d2cf182ea8e48e3bf290e5731b6849cb2d3fbf1a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI="2"
JAVA_PKG_IUSE="doc examples source"

inherit java-pkg-2 java-ant-2

DESCRIPTION="Free Java class file shrinker, optimizer, and obfuscator"
HOMEPAGE="http://proguard.sourceforge.net/"
MY_P=${P/-/}
MY_P=${MY_P/_/}
SRC_URI="mirror://sourceforge/proguard/${MY_P}.tar.gz"

LICENSE="GPL-2-with-linking-exception"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="ant"

DEPEND=">=virtual/jdk-1.4"
RDEPEND=">=virtual/jre-1.4
		>=dev-java/ant-core-1.7:0"

S=${WORKDIR}/${MY_P}

java_prepare() {
	find "${S}" -name "*.jar" | xargs rm -v
}

EANT_BUILD_XML="build/build.xml"
EANT_BUILD_TARGET="basic"
EANT_DOC_TARGET=""

src_compile() {
	local antarg

	use ant && antarg="-Dant.jar=$(java-pkg_getjar ant-core ant.jar)"

	java-pkg-2_src_compile \
		$(use ant && echo anttask ${antarg})

	if use doc; then
		mkdir javadoc || die
		javadoc -d javadoc -sourcepath src -classpath $${cp} -subpackages proguard || die "Cannot compile javadoc"
	fi
}

src_install() {
	java-pkg_dojar lib/*
	java-pkg_dolauncher ${PN} --main proguard.ProGuard
	java-pkg_dolauncher ${PN}gui --main proguard.gui.ProGuardGUI
	java-pkg_dolauncher ${PN}_retrace --main proguard.retrace.ReTrace

	if use doc; then
		dohtml -r docs/*
		java-pkg_dojavadoc javadoc
	fi

	use examples && java-pkg_doexamples examples
}