/[gentoo-x86]/eclass/mysql.eclass
Gentoo

Diff of /eclass/mysql.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.103 Revision 1.106
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/Attic/mysql.eclass,v 1.103 2009/01/12 23:08:17 maekke Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/Attic/mysql.eclass,v 1.106 2009/02/11 11:29:48 robbat2 Exp $
4 4
5# Author: Francesco Riosa (Retired) <vivo@gentoo.org> 5# Author: Francesco Riosa (Retired) <vivo@gentoo.org>
6# Maintainer: MySQL Team <mysql-bugs@gentoo.org> 6# Maintainer: MySQL Team <mysql-bugs@gentoo.org>
7# - Luca Longinotti <chtekk@gentoo.org> 7# - Luca Longinotti <chtekk@gentoo.org>
8# - Robin H. Johnson <robbat2@gentoo.org> 8# - Robin H. Johnson <robbat2@gentoo.org>
9 9
10WANT_AUTOCONF="latest" 10WANT_AUTOCONF="latest"
11WANT_AUTOMAKE="latest" 11WANT_AUTOMAKE="latest"
12 12
13inherit eutils flag-o-matic gnuconfig autotools mysql_fx 13inherit eutils flag-o-matic gnuconfig autotools mysql_fx versionator
14 14
15# Shorten the path because the socket path length must be shorter than 107 chars 15# Shorten the path because the socket path length must be shorter than 107 chars
16# and we will run a mysql server during test phase 16# and we will run a mysql server during test phase
17S="${WORKDIR}/mysql" 17S="${WORKDIR}/mysql"
18 18
80[[ ${IS_BITKEEPER} -eq 90 ]] && DEPEND="${DEPEND} dev-util/bk_client" 80[[ ${IS_BITKEEPER} -eq 90 ]] && DEPEND="${DEPEND} dev-util/bk_client"
81 81
82 82
83# dev-perl/DBD-mysql is needed by some scripts installed by MySQL 83# dev-perl/DBD-mysql is needed by some scripts installed by MySQL
84PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )" 84PDEPEND="perl? ( >=dev-perl/DBD-mysql-2.9004 )"
85
86# For other stuff to bring us in
87PDEPEND="${PDEPEND} =virtual/mysql-$(get_version_component_range 1-2 ${PV})"
85 88
86# Work out the default SERVER_URI correctly 89# Work out the default SERVER_URI correctly
87if [ -z "${SERVER_URI}" ]; then 90if [ -z "${SERVER_URI}" ]; then
88 # The community build is on the mirrors 91 # The community build is on the mirrors
89 if [ "${PN}" == "mysql-community" ]; then 92 if [ "${PN}" == "mysql-community" ]; then
682 685
683 emake install DESTDIR="${D}" benchdir_root="${MY_SHAREDSTATEDIR}" || die "emake install failed" 686 emake install DESTDIR="${D}" benchdir_root="${MY_SHAREDSTATEDIR}" || die "emake install failed"
684 687
685 mysql_version_is_at_least "5.1.12" && use pbxt && pbxt_src_install 688 mysql_version_is_at_least "5.1.12" && use pbxt && pbxt_src_install
686 689
687 insinto "${MY_INCLUDEDIR}"
688 doins "${MY_INCLUDEDIR}"/my_{config,dir}.h
689
690 # Convenience links 690 # Convenience links
691 einfo "Making Convenience links for mysqlcheck multi-call binary"
691 dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlanalyze" 692 dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlanalyze"
692 dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlrepair" 693 dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlrepair"
693 dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqloptimize" 694 dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqloptimize"
694 695
695 # Various junk (my-*.cnf moved elsewhere) 696 # Various junk (my-*.cnf moved elsewhere)
697 einfo "Removing duplicate /usr/share/mysql files"
696 rm -Rf "${D}/usr/share/info" 698 rm -Rf "${D}/usr/share/info"
697 for removeme in "mysql-log-rotate" mysql.server* \ 699 for removeme in "mysql-log-rotate" mysql.server* \
698 binary-configure* my-*.cnf mi_test_all* 700 binary-configure* my-*.cnf mi_test_all*
699 do 701 do
700 rm -f "${D}"/usr/share/mysql/${removeme} 702 rm -f "${D}"/usr/share/mysql/${removeme}
701 done 703 done
702 704
703 # Clean up stuff for a minimal build 705 # Clean up stuff for a minimal build
704 if use minimal ; then 706 if use minimal ; then
707 einfo "Remove all extra content for minimal build"
705 rm -Rf "${D}${MY_SHAREDSTATEDIR}"/{mysql-test,sql-bench} 708 rm -Rf "${D}${MY_SHAREDSTATEDIR}"/{mysql-test,sql-bench}
706 rm -f "${D}"/usr/bin/{mysql{_install_db,manager*,_secure_installation,_fix_privilege_tables,hotcopy,_convert_table_format,d_multi,_fix_extensions,_zap,_explain_log,_tableinfo,d_safe,_install,_waitpid,binlog,test},myisam*,isam*,pack_isam} 709 rm -f "${D}"/usr/bin/{mysql{_install_db,manager*,_secure_installation,_fix_privilege_tables,hotcopy,_convert_table_format,d_multi,_fix_extensions,_zap,_explain_log,_tableinfo,d_safe,_install,_waitpid,binlog,test},myisam*,isam*,pack_isam}
707 rm -f "${D}/usr/sbin/mysqld" 710 rm -f "${D}/usr/sbin/mysqld"
708 rm -f "${D}${MY_LIBDIR}"/lib{heap,merge,nisam,my{sys,strings,sqld,isammrg,isam},vio,dbug}.a 711 rm -f "${D}${MY_LIBDIR}"/lib{heap,merge,nisam,my{sys,strings,sqld,isammrg,isam},vio,dbug}.a
709 fi 712 fi
712 if mysql_version_is_at_least "4.1" ; then 715 if mysql_version_is_at_least "4.1" ; then
713 mysql_mycnf_version="4.1" 716 mysql_mycnf_version="4.1"
714 else 717 else
715 mysql_mycnf_version="4.0" 718 mysql_mycnf_version="4.0"
716 fi 719 fi
720 einfo "Building default my.cnf"
717 insinto "${MY_SYSCONFDIR}" 721 insinto "${MY_SYSCONFDIR}"
718 doins scripts/mysqlaccess.conf 722 doins scripts/mysqlaccess.conf
719 sed -e "s!@DATADIR@!${MY_DATADIR}!g" \ 723 sed -e "s!@DATADIR@!${MY_DATADIR}!g" \
720 "${FILESDIR}/my.cnf-${mysql_mycnf_version}" \ 724 "${FILESDIR}/my.cnf-${mysql_mycnf_version}" \
721 > "${TMPDIR}/my.cnf.ok" 725 > "${TMPDIR}/my.cnf.ok"
724 fi 728 fi
725 newins "${TMPDIR}/my.cnf.ok" my.cnf 729 newins "${TMPDIR}/my.cnf.ok" my.cnf
726 730
727 # Minimal builds don't have the MySQL server 731 # Minimal builds don't have the MySQL server
728 if ! use minimal ; then 732 if ! use minimal ; then
733 einfo "Creating initial directories"
729 # Empty directories ... 734 # Empty directories ...
730 diropts "-m0750" 735 diropts "-m0750"
731 if [[ "${PREVIOUS_DATADIR}" != "yes" ]] ; then 736 if [[ "${PREVIOUS_DATADIR}" != "yes" ]] ; then
732 dodir "${MY_DATADIR}" 737 dodir "${MY_DATADIR}"
733 keepdir "${MY_DATADIR}" 738 keepdir "${MY_DATADIR}"
741 chown -R mysql:mysql "${D}/${folder}" 746 chown -R mysql:mysql "${D}/${folder}"
742 done 747 done
743 fi 748 fi
744 749
745 # Docs 750 # Docs
751 einfo "Installing docs"
746 dodoc README COPYING ChangeLog EXCEPTIONS-CLIENT INSTALL-SOURCE 752 dodoc README COPYING ChangeLog EXCEPTIONS-CLIENT INSTALL-SOURCE
747 doinfo "${S}"/Docs/mysql.info 753 doinfo "${S}"/Docs/mysql.info
748 754
749 # Minimal builds don't have the MySQL server 755 # Minimal builds don't have the MySQL server
750 if ! use minimal ; then 756 if ! use minimal ; then
757 einfo "Including support files and sample configurations"
751 docinto "support-files" 758 docinto "support-files"
752 for script in \ 759 for script in \
753 "${S}"/support-files/my-*.cnf \ 760 "${S}"/support-files/my-*.cnf \
754 "${S}"/support-files/magic \ 761 "${S}"/support-files/magic \
755 "${S}"/support-files/ndb-config-2-node.ini 762 "${S}"/support-files/ndb-config-2-node.ini

Legend:
Removed from v.1.103  
changed lines
  Added in v.1.106

  ViewVC Help
Powered by ViewVC 1.1.20