summaryrefslogtreecommitdiff
blob: 1481069d8202c4ac504079611939c0c022ef26c6 (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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-db/sqldeveloper/sqldeveloper-1.5.5.59.69.ebuild,v 1.2 2009/07/05 08:48:54 bluebird Exp $

EAPI="2"

inherit eutils

DESCRIPTION="Oracle SQL Developer is a graphical tool for database development"
HOMEPAGE="http://www.oracle.com/technology/products/database/sql_developer/"
SRC_URI="${P}-no-jre.zip"
RESTRICT="fetch"

LICENSE="OTN"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="mssql mysql sybase"

DEPEND="mssql? ( dev-java/jtds )
	mysql? ( >=dev-java/jdbc-mysql-1.5.1 )
	sybase? ( dev-java/jtds )"
RDEPEND=">=virtual/jdk-1.5.0
	${DEPEND}"

S="${WORKDIR}/${PN}"

pkg_nofetch() {
	eerror "Please go to"
	eerror "	${HOMEPAGE}"
	eerror "and download"
	eerror "	Oracle SQL Developer for other platforms"
	eerror "		${SRC_URI}"
	eerror "and move it to ${DISTDIR}"
}

src_prepare() {
	# we don't need these, do we?
	find ${S} -type f -iname "*.exe" -or -iname "*.dll" -exec rm {} \;
}

src_configure() {
	# they both use jtds, enabling one of them also enables the other one
	if use mssql && ! use sybase; then
		einfo "You requested MSSQL support, this also enables Sybase support."
	fi
	if use sybase && ! use mssql; then
		einfo "You requested Sybase support, this also enables MSSQL support."
	fi

	if use mssql || use sybase; then
		jtds_version="$(best_version dev-java/jtds)"
		jtds_version="${jtds_version/dev-java\/jtds-/}"
		jtds_version="${jtds_version/-*/}"

		if [ ! -e "${ROOT}/usr/share/jtds-${jtds_version}/lib/jtds.jar" ]; then
			eerror "$(best_version dev-java/jtds) does not provide jtds.jar!"
			die "Cannot find jtds.jar"
		fi

		echo "AddJavaLibFile /usr/share/jtds-${jtds_version}/lib/jtds.jar" \
			>> sqldeveloper/bin/sqldeveloper.conf
	fi

	if use mysql; then
		if [ ! -e "${ROOT}"/usr/share/jdbc-mysql/lib/jdbc-mysql.jar ]; then
			eerror "$(best_version jdbc-mysql) does not provide jdbc-mysql.jar!"
			die "Cannot find jdbc-mysql.jar"
		fi

		echo "AddJavaLibFile /usr/share/jdbc-mysql/lib/jdbc-mysql.jar" \
			>> sqldeveloper/bin/sqldeveloper.conf
	fi
}

src_install() {
	dodir /opt/${PN}
	cp -r * "${D}"/opt/${PN} || die "Install failed"

	dobin "${FILESDIR}"/${PN} || die "Install failed"

	mv icon.png ${PN}-32x32.png
	doicon ${PN}-32x32.png
	make_desktop_entry ${PN} "Oracle SQL Developer" ${PN}-32x32

	dodoc readme.html
}

pkg_postinst() {
	echo
	einfo "If you want to use the TNS connection type you need to set up the"
	einfo "TNS_ADMIN environment variable to point to the directory your"
	einfo "tnsnames.ora resides in."
	echo
}