summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--eclass/java-utils-2.eclass4
-rw-r--r--eclass/mono.eclass80
-rw-r--r--eclass/mysql.eclass64
3 files changed, 54 insertions, 94 deletions
diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index 3e6a12a42f..865c206036 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -6,7 +6,7 @@
#
# Licensed under the GNU General Public License, v2
#
-# $Header: /var/cvsroot/gentoo-x86/eclass/java-utils-2.eclass,v 1.138 2011/03/23 19:32:57 serkan Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/java-utils-2.eclass,v 1.139 2011/03/26 00:43:12 serkan Exp $
# -----------------------------------------------------------------------------
# @eclass-begin
@@ -1805,7 +1805,7 @@ ejunit_() {
# @ebuild-function ejunit
#
# Junit wrapper function. Makes it easier to run the tests and checks for
-# dev-java/junit in DEPEND. Launches the tests using junit.textui.TestRunner.
+# dev-java/junit in DEPEND. Launches the tests using org.junit.runner.JUnitCore.
#
# Examples:
# ejunit -cp build/classes org.blinkenlights.jid3.test.AllTests
diff --git a/eclass/mono.eclass b/eclass/mono.eclass
deleted file mode 100644
index c36a77b2ad..0000000000
--- a/eclass/mono.eclass
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mono.eclass,v 1.13 2009/03/08 15:46:54 loki_val Exp $
-
-# @ECLASS: mono.eclass
-# @MAINTAINER:
-# dotnet@gentoo.org
-# @BLURB: common settings and functions for mono and dotnet related
-# packages
-# @DESCRIPTION:
-# The mono eclass contains common environment settings that are useful for
-# dotnet packages. Currently, it provides no functions, just exports
-# MONO_SHARED_DIR and sets LC_ALL in order to prevent errors during compilation
-# of dotnet packages.
-
-inherit multilib
-
-# >=mono-0.92 versions using mcs -pkg:foo-sharp require shared memory, so we set the
-# shared dir to ${T} so that ${T}/.wapi can be used during the install process.
-export MONO_SHARED_DIR="${T}"
-
-# Building mono, nant and many other dotnet packages is known to fail if LC_ALL
-# variable is not set to C. To prevent this all mono related packages will be
-# build with LC_ALL=C (see bugs #146424, #149817)
-export LC_ALL=C
-
-# Monodevelop-using applications need this to be set or they will try to create config
-# files in the user's ~ dir.
-
-export XDG_CONFIG_HOME="${T}"
-
-# Fix bug 83020:
-# "Access Violations Arise When Emerging Mono-Related Packages with MONO_AOT_CACHE"
-
-unset MONO_AOT_CACHE
-
-egacinstall() {
- gacutil -i "${1}" \
- -root "${ED}"/usr/$(get_libdir) \
- -gacdir /usr/$(get_libdir) \
- -package ${2:-${GACPN:-${PN}}} \
- || die "installing ${1} into the Global Assembly Cache failed"
-}
-
-mono_multilib_comply() {
- local dir finddirs=() mv_command=${mv_command:-mv}
- if [[ -d "${ED}/usr/lib" && "$(get_libdir)" != "lib" ]]
- then
- if ! [[ -d "${ED}"/usr/"$(get_libdir)" ]]
- then
- mkdir "${ED}"/usr/"$(get_libdir)" || die "Couldn't mkdir ${ED}/usr/$(get_libdir)"
- fi
- ${mv_command} "${ED}"/usr/lib/* "${ED}"/usr/"$(get_libdir)"/ || die "Moving files into correct libdir failed"
- rm -rf "${ED}"/usr/lib
- for dir in "${ED}"/usr/"$(get_libdir)"/pkgconfig "${ED}"/usr/share/pkgconfig
- do
-
- if [[ -d "${dir}" && "$(find "${dir}" -name '*.pc')" != "" ]]
- then
- pushd "${dir}" &> /dev/null
- sed -i -r -e 's:/(lib)([^a-zA-Z0-9]|$):/'"$(get_libdir)"'\2:g' \
- *.pc \
- || die "Sedding some sense into pkgconfig files failed."
- popd "${dir}" &> /dev/null
- fi
- done
- if [[ -d "${ED}/usr/bin" ]]
- then
- for exe in "${ED}/usr/bin"/*
- do
- if [[ "$(file "${exe}")" == *"shell script text"* ]]
- then
- sed -r -i -e ":/lib(/|$): s:/lib(/|$):/$(get_libdir)\1:" \
- "${exe}" || die "Sedding some sense into ${exe} failed"
- fi
- done
- fi
-
- fi
-}
diff --git a/eclass/mysql.eclass b/eclass/mysql.eclass
index 3a7aec2aa2..55b2b73671 100644
--- a/eclass/mysql.eclass
+++ b/eclass/mysql.eclass
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql.eclass,v 1.156 2010/11/28 21:55:54 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql.eclass,v 1.157 2011/03/26 23:44:43 jmbsvicetto Exp $
# @ECLASS: mysql.eclass
# @MAINTAINER:
@@ -145,6 +145,10 @@ RDEPEND="${DEPEND}
!prefix? ( !minimal? ( dev-db/mysql-init-scripts ) )
selinux? ( sec-policy/selinux-mysql )"
+if [ "${EAPI:-0}" = "2" ]; then
+ DEPEND="${DEPEND} static? ( sys-libs/ncurses[static-libs] )"
+fi
+
# compile-time-only
mysql_version_is_at_least "5.1" \
|| DEPEND="${DEPEND} berkdb? ( sys-apps/ed )"
@@ -153,6 +157,12 @@ mysql_version_is_at_least "5.1" \
mysql_version_is_at_least "5.1.12" \
&& DEPEND="${DEPEND} >=dev-util/cmake-2.4.3"
+[[ "${PN}" == "mariadb" ]] \
+&& mysql_version_is_at_least "5.2" \
+&& DEPEND="${DEPEND} oqgraph? ( >=dev-libs/boost-1.40.0 )"
+#SphinxSE is included but is not available in 5.2.4 due to a missing plug.in file
+# sphinx? ( app-misc/sphinx )"
+
# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )"
@@ -241,6 +251,12 @@ mysql_version_is_at_least "5.1" \
[[ "${PN}" == "mariadb" ]] \
&& IUSE="${IUSE} libevent"
+[[ "${PN}" == "mariadb" ]] \
+&& mysql_version_is_at_least "5.2" \
+&& IUSE="${IUSE} oqgraph"
+#SphinxSE is included but is not available in 5.2.4 due to a missing plug.in file
+#&& IUSE="${IUSE} oqgraph sphinx"
+
# MariaDB has integrated PBXT
# PBXT_VERSION means that we have a PBXT patch for this PV
# PBXT was only introduced after 5.1.12
@@ -627,16 +643,17 @@ configure_51() {
if use extraengine ; then
# like configuration=max-no-ndb, archive and example removed in 5.1.11
# not added yet: ibmdb2i
- # Not supporting as examples: example,daemon_example,ftexample
+ # Not supporting as examples: example,daemon_example,ftexample
plugins_sta="${plugins_sta} partition"
- plugins_dyn="${plugins_sta} federated"
if [[ "${PN}" != "mariadb" ]] ; then
elog "Before using the Federated storage engine, please be sure to read"
elog "http://dev.mysql.com/doc/refman/5.1/en/federated-limitations.html"
+ plugins_dyn="${plugins_sta} federated"
else
elog "MariaDB includes the FederatedX engine. Be sure to read"
elog "http://askmonty.org/wiki/index.php/Manual:FederatedX_storage_engine"
+ plugins_dyn="${plugins_sta} federatedx"
fi
else
plugins_dis="${plugins_dis} partition federated"
@@ -664,7 +681,15 @@ configure_51() {
if [[ "${PN}" == "mariadb" ]] ; then
# In MariaDB, InnoDB is packaged in the xtradb directory, so it's not
# caught above.
- plugins_sta="${plugins_sta} maria"
+ # This is not optional, without it several upstream testcases fail.
+ # Also strongly recommended by upstream.
+ if [[ "${PV}" < "5.2.0" ]] ; then
+ myconf="${myconf} --with-maria-tmp-tables"
+ plugins_sta="${plugins_sta} maria"
+ else
+ myconf="${myconf} --with-aria-tmp-tables"
+ plugins_sta="${plugins_sta} aria"
+ fi
[ -e "${S}"/storage/innobase ] || [ -e "${S}"/storage/xtradb ] ||
die "The ${P} package doesn't provide innobase nor xtradb"
@@ -674,9 +699,16 @@ configure_51() {
done
myconf="${myconf} $(use_with libevent)"
- # This is not optional, without it several upstream testcases fail.
- # Also strongly recommended by upstream.
- myconf="${myconf} --with-maria-tmp-tables"
+
+ if mysql_version_is_at_least "5.2" ; then
+ #This should include sphinx, but the 5.2.4 archive forgot the plug.in file
+ #for i in oqgraph sphinx ; do
+ for i in oqgraph ; do
+ use ${i} \
+ && plugins_dyn="${plugins_dyn} ${i}" \
+ || plugins_dis="${plugins_dis} ${i}"
+ done
+ fi
fi
if pbxt_available && [[ "${PBXT_NEWSTYLE}" == "1" ]]; then
@@ -754,6 +786,15 @@ mysql_pkg_setup() {
fi
fi
+ # bug 350844
+ case "${EAPI:-0}" in
+ 0 | 1)
+ if use static && !built_with_use sys-libs/ncurses static-libs; then
+ die "To build MySQL statically you need to enable static-libs for sys-libs/ncurses"
+ fi
+ ;;
+ esac
+
# Check for USE flag problems in pkg_setup
if use static && use ssl ; then
M="MySQL does not support being built statically with SSL support enabled!"
@@ -800,7 +841,7 @@ mysql_pkg_setup() {
GCC_VER=$(gcc-version)
case ${CHOST}:${GCC_VER} in
*-darwin*:4.*) : ;; # bug #310615
- *:2*|*:3*|*:4.0|*:4.1|*:4.2)
+ *:2*|*:3*|*:4.0|*:4.1|*:4.2)
eerror "Some releases of MySQL required a very new GCC, and then"
eerror "later release relaxed that requirement again. Either pick a"
eerror "MySQL >=5.0.87, or use a newer GCC."
@@ -905,7 +946,7 @@ mysql_src_prepare() {
popd >/dev/null
fi
- if pbxt_available && [[ "${PBXT_NEWSTYLE}" == "1" ]] && use pbxt ; then
+ if pbxt_patch_available && [[ "${PBXT_NEWSTYLE}" == "1" ]] && use pbxt ; then
einfo "Adding storage engine: PBXT"
pushd "${S}"/storage >/dev/null
i='pbxt'
@@ -1284,7 +1325,6 @@ mysql_pkg_config() {
local pwd1="a"
local pwd2="b"
- local MYSQL_ROOT_PASSWORD=''
local maxtry=15
if [ -z "${MYSQL_ROOT_PASSWORD}" -a -f "${EROOT}/root/.my.cnf" ]; then
@@ -1304,8 +1344,8 @@ mysql_pkg_config() {
if [ -z "${MYSQL_ROOT_PASSWORD}" ]; then
- einfo "Please provide a password for the mysql 'root' user now,"
- einfo "or in the MYSQL_ROOT_PASSWORD env var."
+ einfo "Please provide a password for the mysql 'root' user now, in the"
+ einfo "MYSQL_ROOT_PASSWORD env var or through the /root/.my.cnf file."
ewarn "Avoid [\"'\\_%] characters in the password"
read -rsp " >" pwd1 ; echo