| 1 | # Copyright 1999-2007 Gentoo Foundation |
1 | # Copyright 1999-2007 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/mysql.eclass,v 1.76 2007/05/09 16:25:33 cardoe Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/mysql.eclass,v 1.81 2007/07/15 00:22:13 robbat2 Exp $ |
| 4 | |
4 | |
| 5 | # Author: Francesco Riosa (Retired) <vivo@gentoo.org> |
5 | # Author: Francesco Riosa (Retired) <vivo@gentoo.org> |
| 6 | # Maintainer: Luca Longinotti <chtekk@gentoo.org> |
6 | # Maintainer: Luca Longinotti <chtekk@gentoo.org> |
| 7 | |
7 | |
| 8 | # Both MYSQL_VERSION_ID and MYSQL_PATCHSET_REV must be set in the ebuild too! |
8 | # Both MYSQL_VERSION_ID and MYSQL_PATCHSET_REV must be set in the ebuild too! |
| … | |
… | |
| 67 | PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" |
67 | PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" |
| 68 | |
68 | |
| 69 | # BitKeeper dependency, compile-time only |
69 | # BitKeeper dependency, compile-time only |
| 70 | [[ ${IS_BITKEEPER} -eq 90 ]] && DEPEND="${DEPEND} dev-util/bk_client" |
70 | [[ ${IS_BITKEEPER} -eq 90 ]] && DEPEND="${DEPEND} dev-util/bk_client" |
| 71 | |
71 | |
|
|
72 | # Work out the default SERVER_URI correctly |
|
|
73 | if [ -z "${SERVER_URI}" ]; then |
|
|
74 | # The community build is on the mirrors |
|
|
75 | if [ "${PN}" == "mysql-community" ]; then |
|
|
76 | SERVER_URI="mirror://mysql/Downloads/MySQL-${PV%.*}/mysql-${PV//_/-}.tar.gz" |
|
|
77 | # The enterprise source is on the primary site only |
|
|
78 | elif [ "${PN}" == "mysql" ]; then |
|
|
79 | SERVER_URI="ftp://ftp.mysql.com/pub/mysql/src/mysql-${PV//_/-}.tar.gz" |
|
|
80 | fi |
|
|
81 | fi |
|
|
82 | |
| 72 | # Define correct SRC_URIs |
83 | # Define correct SRC_URIs |
| 73 | SRC_URI="${SERVER_URI} |
84 | SRC_URI="${SERVER_URI} |
| 74 | mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 |
85 | mirror://gentoo/mysql-extras-${MY_EXTRAS_VER}.tar.bz2 |
| 75 | http://g3nt8.org/patches/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" |
86 | http://g3nt8.org/patches/mysql-extras-${MY_EXTRAS_VER}.tar.bz2" |
| 76 | mysql_version_is_at_least "5.1.12" \ |
87 | mysql_version_is_at_least "5.1.12" \ |
| … | |
… | |
| 80 | DESCRIPTION="A fast, multi-threaded, multi-user SQL database server." |
91 | DESCRIPTION="A fast, multi-threaded, multi-user SQL database server." |
| 81 | HOMEPAGE="http://www.mysql.com/" |
92 | HOMEPAGE="http://www.mysql.com/" |
| 82 | LICENSE="GPL-2" |
93 | LICENSE="GPL-2" |
| 83 | SLOT="0" |
94 | SLOT="0" |
| 84 | IUSE="big-tables debug embedded minimal perl selinux ssl static" |
95 | IUSE="big-tables debug embedded minimal perl selinux ssl static" |
| 85 | RESTRICT="confcache" |
|
|
| 86 | |
96 | |
| 87 | mysql_version_is_at_least "4.1" \ |
97 | mysql_version_is_at_least "4.1" \ |
| 88 | && IUSE="${IUSE} latin1" |
98 | && IUSE="${IUSE} latin1" |
| 89 | |
99 | |
| 90 | mysql_version_is_at_least "4.1.3" \ |
100 | mysql_version_is_at_least "4.1.3" \ |
| … | |
… | |
| 249 | myconf="${myconf} --with-extra-charsets=none" |
259 | myconf="${myconf} --with-extra-charsets=none" |
| 250 | myconf="${myconf} --enable-local-infile" |
260 | myconf="${myconf} --enable-local-infile" |
| 251 | |
261 | |
| 252 | if use static ; then |
262 | if use static ; then |
| 253 | myconf="${myconf} --with-client-ldflags=-all-static" |
263 | myconf="${myconf} --with-client-ldflags=-all-static" |
| 254 | myconf="${myconf} --disable-shared" |
264 | myconf="${myconf} --disable-shared --with-pic" |
| 255 | else |
265 | else |
| 256 | myconf="${myconf} --enable-shared --enable-static" |
266 | myconf="${myconf} --enable-shared --enable-static" |
| 257 | fi |
267 | fi |
| 258 | |
268 | |
| 259 | if mysql_version_is_at_least "4.1" && ! use latin1 ; then |
269 | if mysql_version_is_at_least "4.1" && ! use latin1 ; then |
| … | |
… | |
| 275 | myconf="${myconf} --without-libwrap" |
285 | myconf="${myconf} --without-libwrap" |
| 276 | |
286 | |
| 277 | if use static ; then |
287 | if use static ; then |
| 278 | myconf="${myconf} --with-mysqld-ldflags=-all-static" |
288 | myconf="${myconf} --with-mysqld-ldflags=-all-static" |
| 279 | myconf="${myconf} --with-client-ldflags=-all-static" |
289 | myconf="${myconf} --with-client-ldflags=-all-static" |
| 280 | myconf="${myconf} --disable-shared" |
290 | myconf="${myconf} --disable-shared --with-pic" |
| 281 | else |
291 | else |
| 282 | myconf="${myconf} --enable-shared --enable-static" |
292 | myconf="${myconf} --enable-shared --enable-static" |
| 283 | fi |
293 | fi |
| 284 | |
294 | |
| 285 | if use debug ; then |
295 | if use debug ; then |
| … | |
… | |
| 328 | else |
338 | else |
| 329 | myconf="${myconf} $(use_with ssl openssl)" |
339 | myconf="${myconf} $(use_with ssl openssl)" |
| 330 | fi |
340 | fi |
| 331 | |
341 | |
| 332 | if use berkdb ; then |
342 | if use berkdb ; then |
| 333 | # The following fix is due to a bug with bdb on SPARC's. See: |
343 | # The following fix is due to a bug with bdb on SPARC's. See: |
| 334 | # http://www.geocrawler.com/mail/msg.php3?msg_id=4754814&list=8 |
344 | # http://www.geocrawler.com/mail/msg.php3?msg_id=4754814&list=8 |
| 335 | # It comes down to non-64-bit safety problems. |
345 | # It comes down to non-64-bit safety problems. |
| 336 | if use alpha || use amd64 || use hppa || use mips || use sparc ; then |
346 | if use alpha || use amd64 || use hppa || use mips || use sparc ; then |
| 337 | elog "Berkeley DB support was disabled due to compatiblity issues on this arch" |
347 | elog "Berkeley DB support was disabled due to compatibility issues on this arch" |
| 338 | myconf="${myconf} --without-berkeley-db" |
348 | myconf="${myconf} --without-berkeley-db" |
| 339 | else |
349 | else |
| 340 | myconf="${myconf} --with-berkeley-db=./bdb" |
350 | myconf="${myconf} --with-berkeley-db=./bdb" |
| 341 | fi |
351 | fi |
| 342 | else |
352 | else |
| … | |
… | |
| 673 | done |
683 | done |
| 674 | fi |
684 | fi |
| 675 | |
685 | |
| 676 | # Docs |
686 | # Docs |
| 677 | dodoc README COPYING ChangeLog EXCEPTIONS-CLIENT INSTALL-SOURCE |
687 | dodoc README COPYING ChangeLog EXCEPTIONS-CLIENT INSTALL-SOURCE |
|
|
688 | doinfo ${S}/Docs/mysql.info |
| 678 | |
689 | |
| 679 | # Minimal builds don't have the MySQL server |
690 | # Minimal builds don't have the MySQL server |
| 680 | if ! use minimal ; then |
691 | if ! use minimal ; then |
| 681 | docinto "support-files" |
692 | docinto "support-files" |
| 682 | for script in \ |
693 | for script in \ |
| … | |
… | |
| 689 | |
700 | |
| 690 | docinto "scripts" |
701 | docinto "scripts" |
| 691 | for script in scripts/mysql* ; do |
702 | for script in scripts/mysql* ; do |
| 692 | [[ "${script%.sh}" == "${script}" ]] && dodoc "${script}" |
703 | [[ "${script%.sh}" == "${script}" ]] && dodoc "${script}" |
| 693 | done |
704 | done |
|
|
705 | |
| 694 | fi |
706 | fi |
| 695 | |
707 | |
| 696 | mysql_lib_symlinks "${D}" |
708 | mysql_lib_symlinks "${D}" |
| 697 | } |
709 | } |
| 698 | |
710 | |