From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1QWJqo-0006mk-FK for garchives@archives.gentoo.org; Tue, 14 Jun 2011 02:59:34 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B04DB1C002; Tue, 14 Jun 2011 02:59:24 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 336631C002 for ; Tue, 14 Jun 2011 02:59:24 +0000 (UTC) Received: from pelican.gentoo.org (unknown [66.219.59.40]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 5A3981B401C for ; Tue, 14 Jun 2011 02:59:23 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by pelican.gentoo.org (Postfix) with ESMTP id B62308003C for ; Tue, 14 Jun 2011 02:59:19 +0000 (UTC) From: "Jorge Manuel B. S. Vicetto" To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Jorge Manuel B. S. Vicetto" Message-ID: <9211a75c51961a0c3d2a906db8d5dc0dd4478b62.jmbsvicetto@gentoo> Subject: [gentoo-commits] proj/mysql:master commit in: eclass/ X-VCS-Repository: proj/mysql X-VCS-Files: eclass/mysql-autotools.eclass eclass/mysql-cmake.eclass eclass/mysql-v2.eclass X-VCS-Directories: eclass/ X-VCS-Committer: jmbsvicetto X-VCS-Committer-Name: Jorge Manuel B. S. Vicetto X-VCS-Revision: 9211a75c51961a0c3d2a906db8d5dc0dd4478b62 Date: Tue, 14 Jun 2011 02:59:19 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: X-Archives-Hash: 8d48fcff29a3d575cd0ce1085367bcd3 commit: 9211a75c51961a0c3d2a906db8d5dc0dd4478b62 Author: Jorge Manuel B. S. Vicetto (jmbsvicetto) ge= ntoo org> AuthorDate: Tue Jun 14 02:46:33 2011 +0000 Commit: Jorge Manuel B. S. Vicetto gentoo org= > CommitDate: Tue Jun 14 02:46:33 2011 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Dproj/mysql.git;a=3D= commit;h=3D9211a75c More updates to the eclasses. They should now be real close to be complet= e. Dropped support for /dev/null fi =20 - if mysql_version_is_at_least "5.1.12" ; then - rebuilddirlist=3D"." - # This does not seem to be needed presently. robbat2 2010/02/23 - #einfo "Updating innobase cmake" - ## TODO: check this with a cmake expert - #cmake \ - # -DCMAKE_C_COMPILER=3D$(type -P $(tc-getCC)) \ - # -DCMAKE_CXX_COMPILER=3D$(type -P $(tc-getCXX)) \ - # "storage/innobase" - else - rebuilddirlist=3D". innobase" - fi + rebuilddirlist=3D"." + # This does not seem to be needed presently. robbat2 2010/02/23 + #einfo "Updating innobase cmake" + ## TODO: check this with a cmake expert + #cmake \ + # -DCMAKE_C_COMPILER=3D$(type -P $(tc-getCC)) \ + # -DCMAKE_CXX_COMPILER=3D$(type -P $(tc-getCXX)) \ + # "storage/innobase" =20 for d in ${rebuilddirlist} ; do einfo "Reconfiguring dir '${d}'" @@ -518,25 +426,6 @@ mysql-autotools_src_prepare() { eautoreconf popd &>/dev/null done - - if mysql_check_version_range "4.1 to 5.0.99.99" \ - && use berkdb ; then - einfo "Fixing up berkdb buildsystem" - [[ -w "bdb/dist/ltmain.sh" ]] && cp -f "ltmain.sh" "bdb/dist/ltmain.sh= " - cp -f "/usr/share/aclocal/libtool.m4" "bdb/dist/aclocal/libtool.ac" \ - || die "Could not copy libtool.m4 to bdb/dist/" - #These files exist only with libtool-2*, and need to be included. - if [ -f '/usr/share/aclocal/ltsugar.m4' ]; then - cat "/usr/share/aclocal/ltsugar.m4" >> "bdb/dist/aclocal/libtool.ac" - cat "/usr/share/aclocal/ltversion.m4" >> "bdb/dist/aclocal/libtool.a= c" - cat "/usr/share/aclocal/lt~obsolete.m4" >> "bdb/dist/aclocal/libtool= .ac" - cat "/usr/share/aclocal/ltoptions.m4" >> "bdb/dist/aclocal/libtool.a= c" - fi - pushd "bdb/dist" &>/dev/null - sh s_all \ - || die "Failed bdb reconfigure" - popd &>/dev/null - fi } =20 # @FUNCTION: mysql-autotools_src_configure @@ -554,11 +443,7 @@ mysql-autotools_src_configure() { mysql-autotools_configure_minimal else mysql-autotools_configure_common - if mysql_version_is_at_least "5.1.10" ; then - mysql-autotools_configure_51 - else - mysql-autotools_configure_40_41_50 - fi + mysql-autotools_configure_51 fi =20 # Bug #114895, bug #110149 @@ -679,8 +564,6 @@ mysql-autotools_src_install() { =20 # Configuration stuff case ${MYSQL_PV_MAJOR} in - 3*|4.0) mysql_mycnf_version=3D"4.0" ;; - 4.[1-9]|5.0) mysql_mycnf_version=3D"4.1" ;; 5.[1-9]|6*|7*) mysql_mycnf_version=3D"5.1" ;; esac einfo "Building default my.cnf (${mysql_mycnf_version})" diff --git a/eclass/mysql-cmake.eclass b/eclass/mysql-cmake.eclass index 438e44e..7e80ae7 100644 --- a/eclass/mysql-cmake.eclass +++ b/eclass/mysql-cmake.eclass @@ -37,19 +37,6 @@ mysql-cmake_disable_test() { #einfo "rawtestname=3D${rawtestname} testname=3D${testname} testsuite=3D= ${testsuite}" echo ${testname} : ${reason} >> "${mysql_disable_file}" =20 - # ${S}/mysql-tests/t/disabled.def - # - # ${S}/mysql-tests/suite/federated/disabled.def - # - # ${S}/mysql-tests/suite/jp/t/disabled.def - # ${S}/mysql-tests/suite/ndb/t/disabled.def - # ${S}/mysql-tests/suite/rpl/t/disabled.def - # ${S}/mysql-tests/suite/parts/t/disabled.def - # ${S}/mysql-tests/suite/rpl_ndb/t/disabled.def - # ${S}/mysql-tests/suite/ndb_team/t/disabled.def - # ${S}/mysql-tests/suite/binlog/t/disabled.def - # ${S}/mysql-tests/suite/innodb/t/disabled.def - if [ -n "${testsuite}" ]; then for mysql_disable_file in \ ${S}/mysql-test/suite/${testsuite}/disabled.def \ @@ -108,9 +95,16 @@ configure_cmake_minimal() { -DWITH_ZLIB=3Dsystem -DWITHOUT_LIBWRAP=3D1 -DWITHOUT_READLINE=3D1 - -DWITHOUT_INNOBASE_STORAGE_ENGINE=3D1 -DWITHOUT_ARCHIVE_STORAGE_ENGINE=3D1 -DWITHOUT_BLACKHOLE_STORAGE_ENGINE=3D1 + -DWITHOUT_CSV_STORAGE_ENGINE=3D1 + -DWITHOUT_FEDERATED_STORAGE_ENGINE=3D1 + -DWITHOUT_HEAP_STORAGE_ENGINE=3D1 + -DWITHOUT_INNOBASE_STORAGE_ENGINE=3D1 + -DWITHOUT_MYISAMMRG_STORAGE_ENGINE=3D1 + -DWITHOUT_MYISAM_STORAGE_ENGINE=3D1 + -DWITHOUT_PARTITION_STORAGE_ENGINE=3D1 + -DWITHOUT_INNOBASE_STORAGE_ENGINE=3D1 ) } =20 @@ -146,107 +140,21 @@ configure_cmake_standard() { else mycmakeargs+=3D( -DWITH_SSL=3D0 ) fi -} - -# @FUNCTION: configure_51 -# @DESCRIPTION: -# Helper function to configure 5.1 and later builds -configure_51() { - - # This is an explict die here, because if we just forcibly disable it, = then the - # user's data is not accessible. - use max-idx-128 && die "Bug #336027: upstream has a corruption issue wi= th max-idx-128 presently" - #use max-idx-128 && myconf=3D"${myconf} --with-max-indexes=3D128" - - # Scan for all available plugins - local plugins_avail=3D"$( - LANG=3DC \ - find "${S}" \ - \( \ - -name 'plug.in' \ - -o -iname 'configure.in' \ - -o -iname 'configure.ac' \ - \) \ - -print0 \ - | xargs -0 sed -r -n \ - -e '/^MYSQL_STORAGE_ENGINE/{ - s~MYSQL_STORAGE_ENGINE\([[:space:]]*\[?([-_a-z0-9]+)\]?.*,~\1 ~g ; - s~^([^ ]+).*~\1~gp; - }' \ - | tr -s '\n' ' ' - )" - - # 5.1 introduces a new way to manage storage engines (plugins) - # like configuration=3Dnone - # This base set are required, and will always be statically built. - local plugins_sta=3D"csv myisam myisammrg heap" - local plugins_dyn=3D"" - local plugins_dis=3D"example ibmdb2i" - - # These aren't actually required by the base set, but are really useful= : - plugins_sta=3D"${plugins_sta} archive blackhole" - - # default in 5.5.4 - if mysql_version_is_at_least "5.5.4" ; then - plugins_sta=3D"${plugins_sta} partition" - fi - # Now the extras - if use extraengine ; then - # like configuration=3Dmax-no-ndb, archive and example removed in 5.1.= 11 - # not added yet: ibmdb2i - # Not supporting as examples: example,daemon_example,ftexample - plugins_sta=3D"${plugins_sta} partition" - - if [[ "${PN}" !=3D "mariadb" ]] ; then - elog "Before using the Federated storage engine, please be sure to re= ad" - elog "http://dev.mysql.com/doc/refman/5.1/en/federated-limitations.ht= ml" - plugins_dyn=3D"${plugins_sta} federatedx" - else - elog "MariaDB includes the FederatedX engine. Be sure to read" - elog "http://askmonty.org/wiki/index.php/Manual:FederatedX_storage_en= gine" - plugins_dyn=3D"${plugins_sta} federated" - fi - else - plugins_dis=3D"${plugins_dis} partition federated" - fi - - # Upstream specifically requests that InnoDB always be built: - # - innobase, innodb_plugin - # Build falcon if available for 6.x series. - for i in innobase falcon ; do - [ -e "${S}"/storage/${i} ] && plugins_sta=3D"${plugins_sta} ${i}" - done - for i in innodb_plugin ; do - [ -e "${S}"/storage/${i} ] && plugins_dyn=3D"${plugins_dyn} ${i}" - done - - # like configuration=3Dmax-no-ndb - if ( use cluster || [[ "${PN}" =3D=3D "mysql-cluster" ]] ) ; then - plugins_sta=3D"${plugins_sta} ndbcluster partition" - plugins_dis=3D"${plugins_dis//partition}" - myconf=3D"${myconf} --with-ndb-binlog" - else - plugins_dis=3D"${plugins_dis} ndbcluster" - fi =20 - use static && \ - plugins_sta=3D"${plugins_sta} ${plugins_dyn}" && \ - plugins_dyn=3D"" - - einfo "Available plugins: ${plugins_avail}" - einfo "Dynamic plugins: ${plugins_dyn}" - einfo "Static plugins: ${plugins_sta}" - einfo "Disabled plugins: ${plugins_dis}" - - # These are the static plugins - myconf=3D"${myconf} --with-plugins=3D${plugins_sta// /,}" - # And the disabled ones - for i in ${plugins_dis} ; do - myconf=3D"${myconf} --without-plugin-${i}" - done + # Storage engines + mycmakeargs+=3D( + -DWITH_ARCHIVE_STORAGE_ENGINE=3D1 + -DWITH_BLACKHOLE_STORAGE_ENGINE=3D1 + -DWITH_CSV_STORAGE_ENGINE=3D1 + -DWITH_HEAP_STORAGE_ENGINE=3D1 + -DWITH_INNOBASE_STORAGE_ENGINE=3D1 + -DWITH_MYISAMMRG_STORAGE_ENGINE=3D1 + -DWITH_MYISAM_STORAGE_ENGINE=3D1 + -DWITH_PARTITION_STORAGE_ENGINE=3D1 + $(cmake-utils_use_with extraengine FEDERATED_STORAGE_ENGINE) + ) } =20 - # # EBUILD FUNCTIONS # @@ -363,13 +271,6 @@ mysql-cmake_src_install() { # Various junk (my-*.cnf moved elsewhere) einfo "Removing duplicate /usr/share/mysql files" =20 -# rm -Rf "${D}/usr/share/info" -# for removeme in "mysql-log-rotate" mysql.server* \ -# binary-configure* my-*.cnf mi_test_all* -# do -# rm -f "${D}"/${MY_SHAREDSTATEDIR}/${removeme} -# done - # Clean up stuff for a minimal build # if use minimal ; then # einfo "Remove all extra content for minimal build" @@ -423,29 +324,24 @@ mysql-cmake_src_install() { done fi =20 - # Docs -# einfo "Installing docs" -# dodoc README ChangeLog EXCEPTIONS-CLIENT INSTALL-SOURCE -# doinfo "${S}"/Docs/mysql.info - # Minimal builds don't have the MySQL server -# if ! use minimal ; then -# einfo "Including support files and sample configurations" -# docinto "support-files" -# for script in \ -# "${S}"/support-files/my-*.cnf \ -# "${S}"/support-files/magic \ -# "${S}"/support-files/ndb-config-2-node.ini -# do -# [[ -f "$script" ]] && dodoc "${script}" -# done -# -# docinto "scripts" -# for script in "${S}"/scripts/mysql* ; do -# [[ -f "$script" ]] && [[ "${script%.sh}" =3D=3D "${script}" ]] && do= doc "${script}" -# done -# -# fi + if ! use minimal ; then + einfo "Including support files and sample configurations" + docinto "support-files" + for script in \ + "${S}"/support-files/my-*.cnf.sh \ + "${S}"/support-files/magic \ + "${S}"/support-files/ndb-config-2-node.ini.sh + do + [[ -f "$script" ]] && dodoc "${script}" + done + + docinto "scripts" + for script in "${S}"/scripts/mysql* ; do + [[ -f "$script" ]] && [[ "${script%.sh}" =3D=3D "${script}" ]] && dod= oc "${script}" + done + + fi =20 mysql_lib_symlinks "${D}" } diff --git a/eclass/mysql-v2.eclass b/eclass/mysql-v2.eclass index 3d86a0c..8b2bfd5 100644 --- a/eclass/mysql-v2.eclass +++ b/eclass/mysql-v2.eclass @@ -105,6 +105,8 @@ done # strip leading "0" (otherwise it's considered an octal number by BASH) MYSQL_VERSION_ID=3D${MYSQL_VERSION_ID##"0"} =20 +# This eclass should only be used with at least mysql-5.1.50 +mysql_version_is_at_least "5.1.50" || die "This eclass should only be us= ed with >=3Dmysql-5.1.50" =20 # @ECLASS-VARIABLE: MYSQL_COMMUNITY_FEATURES # @DESCRIPTION: @@ -114,9 +116,7 @@ MYSQL_VERSION_ID=3D${MYSQL_VERSION_ID##"0"} # AND in the re-merged mysql-5.0.82 and newer if [ "${PN}" =3D=3D "mysql-community" -o "${PN}" =3D=3D "mariadb" ]; the= n MYSQL_COMMUNITY_FEATURES=3D1 -elif [ "${MYSQL_PV_MAJOR}" =3D=3D "5.0" ] && mysql_version_is_at_least "= 5.0.82"; then - MYSQL_COMMUNITY_FEATURES=3D1 -elif [ "${MYSQL_PV_MAJOR}" =3D=3D "5.1" ] && mysql_version_is_at_least "= 5.1.28"; then +elif [ "${MYSQL_PV_MAJOR}" =3D=3D "5.1" ]; then MYSQL_COMMUNITY_FEATURES=3D1 elif mysql_version_is_at_least "5.4.0"; then MYSQL_COMMUNITY_FEATURES=3D1 @@ -207,9 +207,7 @@ if [[ ${PN} !=3D "mysql-cluster" ]] ; then IUSE=3D"${IUSE} cluster" fi =20 -mysql_version_is_at_least "5.0.18" \ -&& IUSE=3D"${IUSE} max-idx-128" - +IUSE=3D"${IUSE} max-idx-128" IUSE=3D"${IUSE} berkdb" =20 [[ ${MYSQL_COMMUNITY_FEATURES} =3D=3D 1 ]] \ @@ -259,8 +257,7 @@ RDEPEND=3D"${DEPEND} DEPEND=3D"${DEPEND} static? ( || ( sys-libs/ncurses[static-libs] <=3Dsys= -libs/ncurses-5.7-r3 ) )" =20 # compile-time-only -mysql_version_is_at_least "5.1.12" \ -&& DEPEND=3D"${DEPEND} >=3Ddev-util/cmake-2.4.3" +DEPEND=3D"${DEPEND} >=3Ddev-util/cmake-2.4.3" =20 # compile-time-only mysql_version_is_at_least "5.5.8" \ @@ -290,7 +287,6 @@ PDEPEND=3D"${PDEPEND} =3Dvirtual/mysql-${MYSQL_PV_MAJ= OR}" # PBXT was only introduced after 5.1.12 pbxt_patch_available() { [[ ${PN} !=3D "mariadb" ]] \ - && mysql_version_is_at_least "5.1.12" \ && [[ -n "${PBXT_VERSION}" ]] return $? } @@ -306,7 +302,6 @@ pbxt_available() { # XTRADB was only introduced after 5.1.26 xtradb_patch_available() { [[ ${PN} !=3D "mariadb" ]] \ - && mysql_version_is_at_least "5.1.26" \ && [[ -n "${XTRADB_VER}" && -n "${PERCONA_VER}" ]] return $? } @@ -323,10 +318,7 @@ if pbxt_patch_available; then if pbxt_available; then =20 IUSE=3D"${IUSE} pbxt" - if mysql_version_is_at_least "5.1.40"; then - - PBXT_NEWSTYLE=3D1 - fi + PBXT_NEWSTYLE=3D1 fi fi =20 @@ -395,23 +387,20 @@ mysql-v2_pkg_setup() { die "${M}" fi =20 - if mysql_version_is_at_least "5.1.51" \ - && ! mysql_version_is_at_least "5.2" \ - && use debug ; then - # Also in package.use.mask - die "Bug #344885: Upstream has broken USE=3Ddebug for 5.1 series >=3D= 5.1.51" + if ! mysql_version_is_at_least "5.2" \ + && use debug ; then + # Also in package.use.mask + die "Bug #344885: Upstream has broken USE=3Ddebug for 5.1 series >=3D5= .1.51" fi =20 - if mysql_version_is_at_least "4.1.3" \ - && ( use cluster || use extraengine || use embedded ) \ + if ( use cluster || use extraengine || use embedded ) \ && use minimal ; then M=3D"USE flags 'cluster', 'extraengine', 'embedded' conflict with 'min= imal' USE flag!" eerror "${M}" die "${M}" fi =20 - if mysql_version_is_at_least "5.1" \ - && xtradb_patch_available \ + if xtradb_patch_available \ && use xtradb \ && use embedded ; then M=3D"USE flags 'xtradb' and 'embedded' conflict and cause build failur= es" @@ -668,14 +657,12 @@ mysql-v2_pkg_config() { egrep -sq external-locking "${helpfile}" && \ options=3D"${options/skip-locking/skip-external-locking}" =20 - if mysql_version_is_at_least "4.1.3" ; then - # Filling timezones, see - # http://dev.mysql.com/doc/mysql/en/time-zone-support.html - "${ROOT}/usr/bin/mysql_tzinfo_to_sql" "${ROOT}/usr/share/zoneinfo" > "= ${sqltmp}" 2>/dev/null + # Filling timezones, see + # http://dev.mysql.com/doc/mysql/en/time-zone-support.html + "${ROOT}/usr/bin/mysql_tzinfo_to_sql" "${ROOT}/usr/share/zoneinfo" > "$= {sqltmp}" 2>/dev/null =20 - if [[ -r "${help_tables}" ]] ; then - cat "${help_tables}" >> "${sqltmp}" - fi + if [[ -r "${help_tables}" ]] ; then + cat "${help_tables}" >> "${sqltmp}" fi =20 einfo "Creating the mysql database and setting proper"