summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Scherbaum <dertobi123@gentoo.org>2007-01-28 17:28:47 +0000
committerTobias Scherbaum <dertobi123@gentoo.org>2007-01-28 17:28:47 +0000
commit67182eb02186b9f4169eda403b7314a74b12798e (patch)
tree79d90b7ef59aaf86a8285fffef87fcb9e99925a9 /dev-db/oracle-xe/oracle-xe-10.2.0.1_p1.ebuild
downloaddertobi123-67182eb02186b9f4169eda403b7314a74b12798e.tar.gz
dertobi123-67182eb02186b9f4169eda403b7314a74b12798e.tar.bz2
dertobi123-67182eb02186b9f4169eda403b7314a74b12798e.zip
oracle-xe import
svn path=/; revision=1
Diffstat (limited to 'dev-db/oracle-xe/oracle-xe-10.2.0.1_p1.ebuild')
-rw-r--r--dev-db/oracle-xe/oracle-xe-10.2.0.1_p1.ebuild182
1 files changed, 182 insertions, 0 deletions
diff --git a/dev-db/oracle-xe/oracle-xe-10.2.0.1_p1.ebuild b/dev-db/oracle-xe/oracle-xe-10.2.0.1_p1.ebuild
new file mode 100644
index 0000000..ce6aeb7
--- /dev/null
+++ b/dev-db/oracle-xe/oracle-xe-10.2.0.1_p1.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit eutils rpm
+
+IUSE="hardened latin1"
+
+MY_PV="${PV/_p/-}.0"
+MY_P="${PN}-univ-${MY_PV}.i386"
+
+DESCRIPTION="Oracle 10g Express Edition for Linux"
+HOMEPAGE="http://www.oracle.com/technology/products/database/xe/index.html"
+SRC_URI="latin1? ( ${MY_P/-univ/}.rpm )
+ !latin1? ( ${MY_P}.rpm )"
+
+LICENSE="OTN"
+SLOT="0"
+KEYWORDS="~x86"
+RESTRICT="fetch"
+
+S="${WORKDIR}"
+
+RDEPEND=">=dev-libs/libaio-0.3.96
+ sys-devel/bc
+ !dev-db/oracle-instantclient-basic
+ !dev-db/oracle-instantclient-jdbc
+ !dev-db/oracle-instantclient-sqlplus"
+
+DEPEND="${RDEPEND}"
+
+ORACLEHOME="/usr/lib/oracle/xe/app/oracle/product/10.2.0/server"
+ORACLE_OWNER="oraclexe"
+ORACLE_GROUP="dba"
+ORACLE_SID="XE"
+
+pkg_nofetch() {
+ eerror "Please go to:"
+ eerror " ${HOMEPAGE}"
+ eerror "and download the Oracle 10g Express Edition package. Put it in:"
+ eerror " ${DISTDIR}"
+ eerror " ${MY_P_LATIN1} ... ${MY_P_UNICODE}"
+ eerror "after downloading it."
+}
+
+src_unpack() {
+ rpm_src_unpack
+}
+
+pkg_setup() {
+ if use hardened; then
+ ewarn
+ ewarn "Oracle-xe and hardened do not mix very well, USE AT YOUR OWN RISK!"
+ ewarn
+ ebeep
+ fi
+
+ einfo "checking for ${ORACLE_GROUP} group..."
+ enewgroup ${ORACLE_GROUP}
+ einfo "checking for ${ORACLE_OWNER} user..."
+ enewuser ${ORACLE_OWNER} -1 /bin/bash /usr/lib/oracle/xe ${ORACLE_GROUP}
+}
+
+src_install() {
+ mv "${WORKDIR}/usr" "${D}"
+
+ exeinto ${ORACLEHOME}/bin
+ doexe "${FILESDIR}/oracle_configure.sh"
+ doinitd "${FILESDIR}/oracle-xe"
+
+ doenvd "${FILESDIR}/99oracle"
+
+ dosed "s:%ORACLE_HOME%:${ORACLEHOME}:g" /etc/env.d/99oracle
+ dosed "s:%ORACLE_SID%:${ORACLE_SID}:g" /etc/env.d/99oracle
+ dosed "s:%ORACLE_OWNER%:${ORACLE_OWNER}:g" /etc/env.d/99oracle
+
+ # snafu... (remove; sparc binaries on a x86 are pretty useless)
+ [[ -n "$(file "${D}${ORACLEHOME}/lib/hsdb_ora.so" 2>/dev/null | grep SPARC)" ]] && \
+ rm -f "${D}${ORACLEHOME}/lib/hsdb_ora.so" 2>/dev/null
+
+ # fix NULL DT_RPATH
+ einfo "Fixing DT_RPATH issues..."
+ TMPDIR="/ade" scanelf -XrR "${D}${ORACLEHOME}/lib" &>/dev/null
+}
+
+pkg_postinst() {
+ einfo
+ einfo "The Oracle 10g Express Edition Database has been installed."
+ einfo
+ einfo "You have to run"
+ einfo " ebuild /var/db/pkg/${CATEGORY}/${PF}/${PF}.ebuild config"
+ einfo "to adjust kernel parameters and"
+ einfo " ${ORACLEHOME}/bin/oracle_configure.sh"
+ einfo "to configure oracle-xe before first use!"
+ einfo
+}
+
+pkg_config() {
+ einfo "Checking kernel parameters..."
+ einfo
+
+ # Check and Update Kernel parameters
+ semmsl=`cat /proc/sys/kernel/sem | awk '{print $1}'`
+ semmns=`cat /proc/sys/kernel/sem | awk '{print $2}'`
+ semopm=`cat /proc/sys/kernel/sem | awk '{print $3}'`
+ semmni=`cat /proc/sys/kernel/sem | awk '{print $4}'`
+ shmmax=`cat /proc/sys/kernel/shmmax`
+ shmmni=`cat /proc/sys/kernel/shmmni`
+ shmall=`cat /proc/sys/kernel/shmall`
+ filemax=`cat /proc/sys/fs/file-max`
+ ip_local_port_range_lb=`cat /proc/sys/net/ipv4/ip_local_port_range | awk '{print $1}'`
+ ip_local_port_range_ub=`cat /proc/sys/net/ipv4/ip_local_port_range | awk '{print $2}'`
+
+ change=no
+ if [ $semmsl -lt 250 ]; then
+ semmsl=250
+ change=yes
+ fi
+
+ if [ $semmns -lt 32000 ]; then
+ semmns=32000
+ change=yes
+ fi
+
+ if [ $semopm -lt 100 ]; then
+ semopm=100
+ change=yes
+ fi
+
+ if [ $semmni -lt 128 ]; then
+ semmni=128
+ change=yes
+ fi
+
+ if [ "$change" != "no" ]; then
+ einfo "kernel.sem="$semmsl $semmns $semopm $semmni""
+ fi
+
+ if [ $shmmax -lt 536870912 ]; then
+ einfo "kernel.shmmax="536870912""
+ change=yes
+ fi
+
+ if [ $shmmni -lt 4096 ]; then
+ einfo "kernel.shmmni="4096""
+ change=yes
+ fi
+
+ if [ $shmall -lt 2097152 ]; then
+ einfo "kernel.shmall="2097152""
+ change=yes
+ fi
+
+ if [ $filemax -lt 65536 ]; then
+ einfo "fs.file-max="65536""
+ change=yes
+ fi
+
+ changeport=no
+ if [ $ip_local_port_range_lb -lt 1024 ]; then
+ changeport=yes
+ ip_local_port_range_lb=1024
+ fi
+
+ if [ $ip_local_port_range_ub -gt 65000 ]; then
+ ip_local_port_range_ub=65000
+ changeport=yes
+ fi
+
+ if [ "$changeport" != "no" ]; then
+ einfo "net.ipv4.ip_local_port_range="$ip_local_port_range_lb $ip_local_port_range_ub""
+ fi
+
+ if [ "$change" != "no" ] || [ "$changeport" != "no" ]; then
+ einfo
+ einfo "It is recommended to add the above kernel parameters to /etc/sysctl.conf:"
+ einfo "After setting kernel parameters activate them using '/sbin/sysctl -p'"
+ else
+ einfo "Kernel parameters set, configure oracle-xe using"
+ einfo " ${ORACLEHOME}/bin/oracle_configure.sh"
+ fi
+}