commit:     0288c405f5d71a1f77dfa342e8f8cf4bb8dfdc21
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 27 03:41:33 2015 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Tue Jan 27 03:41:33 2015 +0000
URL:        
http://sources.gentoo.org/gitweb/?p=proj/mysql.git;a=commit;h=0288c405

Use bundled libedit for mysql and readline (bundled or system via bindist) for 
mariadb due to UTF-8 issues

---
 eclass/mysql-multilib.eclass | 57 ++++++++++++++++++++++++++++++--------------
 1 file changed, 39 insertions(+), 18 deletions(-)

diff --git a/eclass/mysql-multilib.eclass b/eclass/mysql-multilib.eclass
index 0755f99..1b8ead0 100644
--- a/eclass/mysql-multilib.eclass
+++ b/eclass/mysql-multilib.eclass
@@ -187,18 +187,28 @@ SLOT="0"
 IUSE="+community cluster debug embedded extraengine jemalloc latin1 minimal
        +perl profiling selinux ssl systemtap static static-libs tcmalloc test"
 
+### Begin readline/libedit
+### If the world was perfect, we would use external libedit on both to have a 
similar experience
+### However libedit does not seem to support UTF-8 keyboard input
+
 # This probably could be simplified, but the syntax would have to be just right
-if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
-        mysql_check_version_range "5.5.37 to 10.0.13.99" ; then
-       IUSE="bindist ${IUSE}"
-elif [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
-       mysql_check_version_range "5.5.37 to 5.6.11.99" ; then
-       IUSE="bindist ${IUSE}"
-elif [[ ${PN} == "mysql-cluster" ]] && \
-       mysql_check_version_range "7.2 to 7.2.99.99"  ; then
+#if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
+#      mysql_check_version_range "5.5.37 to 10.0.13.99" ; then
+#      IUSE="bindist ${IUSE}"
+#elif [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
+#      mysql_check_version_range "5.5.37 to 5.6.11.99" ; then
+#      IUSE="bindist ${IUSE}"
+#elif [[ ${PN} == "mysql-cluster" ]] && \
+#      mysql_check_version_range "7.2 to 7.2.99.99"  ; then
+#      IUSE="bindist ${IUSE}"
+#fi
+
+if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
        IUSE="bindist ${IUSE}"
 fi
 
+### End readline/libedit
+
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
        IUSE="${IUSE} oqgraph pam sphinx tokudb"
        # 5.5.33 and 10.0.5 add TokuDB. Authors strongly recommend jemalloc or 
perfomance suffers
@@ -253,21 +263,31 @@ DEPEND="
        systemtap? ( >=dev-util/systemtap-1.3:0= )
 "
 
+### Begin readline/libedit
+### If the world was perfect, we would use external libedit on both to have a 
similar experience
+### However libedit does not seem to support UTF-8 keyboard input
+
 # dev-db/mysql-5.6.12+ only works with dev-libs/libedit
 # mariadb 10.0.14 fixes libedit detection. changed to follow mysql
 # This probably could be simplified
-if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
-       mysql_version_is_at_least "5.6.12" ; then
-       DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
-elif [[ ${PN} == "mysql-cluster" ]] && mysql_version_is_at_least "7.3"; then
-       DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
-elif [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
-       mysql_version_is_at_least "10.0.14" ; then
-       DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
-else
+#if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
+#      mysql_version_is_at_least "5.6.12" ; then
+#      DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
+#elif [[ ${PN} == "mysql-cluster" ]] && mysql_version_is_at_least "7.3"; then
+#      DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
+#elif [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
+#      mysql_version_is_at_least "10.0.14" ; then
+#      DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
+#else
+#      DEPEND="${DEPEND} !bindist? ( 
>=sys-libs/readline-4.1:0=[${MULTILIB_USEDEP}] )"
+#fi
+
+if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
        DEPEND="${DEPEND} !bindist? ( 
>=sys-libs/readline-4.1:0=[${MULTILIB_USEDEP}] )"
 fi
 
+### End readline/libedit
+
 if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] ; then
        mysql_version_is_at_least "5.7.5" && DEPEND="${DEPEND} 
>=dev-libs/boost-1.56.0:0="
 fi
@@ -519,7 +539,8 @@ multilib_src_configure() {
                )
        fi
 
-       mycmakeargs+=( -DWITH_EDITLINE=system )
+       ### TODO: make this system but issues with UTF-8 prevent it
+       mycmakeargs+=( -DWITH_EDITLINE=bundled )
 
        if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
                mycmakeargs+=(

Reply via email to