1 |
commit: 272d86839db2042ebe26dd2193850e018c737eb4 |
2 |
Author: Brian Evans <grknight <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Feb 27 02:56:17 2016 +0000 |
4 |
Commit: Brian Evans <grknight <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Feb 27 02:56:17 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/mysql.git/commit/?id=272d8683 |
7 |
|
8 |
mysql-multilib-r1.eclass: Further refinement for EAPI=6 |
9 |
|
10 |
Use the default functions for patching and deprecate mysql_fx.eclass |
11 |
PATCHES=() is now set in ebuilds instead of using the move functions |
12 |
|
13 |
eclass/mysql-multilib-r1.eclass | 114 ++++++++++++++++++++++++++++++++-------- |
14 |
1 file changed, 92 insertions(+), 22 deletions(-) |
15 |
|
16 |
diff --git a/eclass/mysql-multilib-r1.eclass b/eclass/mysql-multilib-r1.eclass |
17 |
index 60340d7..65ebe85 100644 |
18 |
--- a/eclass/mysql-multilib-r1.eclass |
19 |
+++ b/eclass/mysql-multilib-r1.eclass |
20 |
@@ -38,8 +38,14 @@ MYSQL_EXTRAS="" |
21 |
# @DESCRIPTION: |
22 |
# An array of CMake arguments added to native and non-native |
23 |
|
24 |
-inherit eutils systemd flag-o-matic ${MYSQL_EXTRAS} mysql_fx versionator \ |
25 |
- multilib prefix toolchain-funcs user cmake-utils multilib-minimal |
26 |
+# Keeping eutils in EAPI=6 for emktemp in pkg_config |
27 |
+ |
28 |
+inherit eutils systemd flag-o-matic ${MYSQL_EXTRAS} versionator \ |
29 |
+ prefix toolchain-funcs user cmake-utils multilib-minimal |
30 |
+ |
31 |
+if [[ "${EAPI}x" == "5x" ]]; then |
32 |
+ inherit multilib mysql_fx |
33 |
+fi |
34 |
|
35 |
# |
36 |
# Supported EAPI versions and export functions |
37 |
@@ -82,19 +88,18 @@ if [[ -z ${MYSQL_PV_MAJOR} ]] ; then MYSQL_PV_MAJOR="$(get_version_component_ran |
38 |
# depend on this variable. |
39 |
# In particular, the code below transforms a $PVR like "5.0.18-r3" in "5001803" |
40 |
# We also strip off upstream's trailing letter that they use to respin tarballs |
41 |
-MYSQL_VERSION_ID="" |
42 |
-tpv="${PV%[a-z]}" |
43 |
-tpv=( ${tpv//[-._]/ } ) ; tpv[3]="${PVR:${#PV}}" ; tpv[3]="${tpv[3]##*-r}" |
44 |
-for vatom in 0 1 2 3 ; do |
45 |
- # pad to length 2 |
46 |
- tpv[${vatom}]="00${tpv[${vatom}]}" |
47 |
- MYSQL_VERSION_ID="${MYSQL_VERSION_ID}${tpv[${vatom}]:0-2}" |
48 |
-done |
49 |
-# strip leading "0" (otherwise it's considered an octal number by BASH) |
50 |
-MYSQL_VERSION_ID=${MYSQL_VERSION_ID##"0"} |
51 |
- |
52 |
-# This eclass should only be used with at least mysql-5.5.35 |
53 |
-mysql_version_is_at_least "5.5.35" || die "This eclass should only be used with >=mysql-5.5.35" |
54 |
+if [[ "${EAPI}x" == "5x" ]]; then |
55 |
+ MYSQL_VERSION_ID="" |
56 |
+ tpv="${PV%[a-z]}" |
57 |
+ tpv=( ${tpv//[-._]/ } ) ; tpv[3]="${PVR:${#PV}}" ; tpv[3]="${tpv[3]##*-r}" |
58 |
+ for vatom in 0 1 2 3 ; do |
59 |
+ # pad to length 2 |
60 |
+ tpv[${vatom}]="00${tpv[${vatom}]}" |
61 |
+ MYSQL_VERSION_ID="${MYSQL_VERSION_ID}${tpv[${vatom}]:0-2}" |
62 |
+ done |
63 |
+ # strip leading "0" (otherwise it's considered an octal number by BASH) |
64 |
+ MYSQL_VERSION_ID=${MYSQL_VERSION_ID##"0"} |
65 |
+fi |
66 |
|
67 |
# Work out the default SERVER_URI correctly |
68 |
if [[ -z ${SERVER_URI} ]]; then |
69 |
@@ -294,12 +299,6 @@ mysql-multilib-r1_src_prepare() { |
70 |
mysql_mv_patches |
71 |
# And apply |
72 |
epatch |
73 |
- else |
74 |
- mkdir -p "${WORKDIR}/patch" || die "Unable to create epatch directory" |
75 |
- # Clean out old items |
76 |
- rm -f "${WORKDIR}"/patch/* |
77 |
- EPATCH_SOURCE="${WORKDIR}/patch" mysql_mv_patches |
78 |
- eapply "${WORKDIR}/patch" |
79 |
fi |
80 |
fi |
81 |
|
82 |
@@ -343,7 +342,7 @@ mysql-multilib-r1_src_prepare() { |
83 |
if [[ "${EAPI}x" == "5x" ]] ; then |
84 |
epatch_user |
85 |
else |
86 |
- eapply_user |
87 |
+ default |
88 |
fi |
89 |
} |
90 |
|
91 |
@@ -1056,3 +1055,74 @@ mysql-cmake_use_plugin() { |
92 |
echo "-DWITHOUT_$2=1 -DWITH_$2=0 -DPLUGIN_$2=NO" |
93 |
fi |
94 |
} |
95 |
+ |
96 |
+# @FUNCTION: mysql_init_vars |
97 |
+# @DESCRIPTION: |
98 |
+# void mysql_init_vars() |
99 |
+# Initialize global variables |
100 |
+# 2005-11-19 <vivo@g.o> |
101 |
+if [[ "${EAPI}x" != "5x" ]]; then |
102 |
+ |
103 |
+mysql_init_vars() { |
104 |
+ MY_SHAREDSTATEDIR=${MY_SHAREDSTATEDIR="${EPREFIX}/usr/share/mysql"} |
105 |
+ MY_SYSCONFDIR=${MY_SYSCONFDIR="${EPREFIX}/etc/mysql"} |
106 |
+ MY_LOCALSTATEDIR=${MY_LOCALSTATEDIR="${EPREFIX}/var/lib/mysql"} |
107 |
+ MY_LOGDIR=${MY_LOGDIR="${EPREFIX}/var/log/mysql"} |
108 |
+ MY_INCLUDEDIR=${MY_INCLUDEDIR="${EPREFIX}/usr/include/mysql"} |
109 |
+ MY_LIBDIR=${MY_LIBDIR="${EPREFIX}/usr/$(get_libdir)/mysql"} |
110 |
+ |
111 |
+ if [[ -z "${MY_DATADIR}" ]] ; then |
112 |
+ MY_DATADIR="" |
113 |
+ if [[ -f "${MY_SYSCONFDIR}/my.cnf" ]] ; then |
114 |
+ MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ |
115 |
+ | sed -ne '/datadir/s|^--datadir=||p' \ |
116 |
+ | tail -n1` |
117 |
+ if [[ -z "${MY_DATADIR}" ]] ; then |
118 |
+ MY_DATADIR=`grep ^datadir "${MY_SYSCONFDIR}/my.cnf" \ |
119 |
+ | sed -e 's/.*=\s*//' \ |
120 |
+ | tail -n1` |
121 |
+ fi |
122 |
+ fi |
123 |
+ if [[ -z "${MY_DATADIR}" ]] ; then |
124 |
+ MY_DATADIR="${MY_LOCALSTATEDIR}" |
125 |
+ einfo "Using default MY_DATADIR" |
126 |
+ fi |
127 |
+ elog "MySQL MY_DATADIR is ${MY_DATADIR}" |
128 |
+ |
129 |
+ if [[ -z "${PREVIOUS_DATADIR}" ]] ; then |
130 |
+ if [[ -e "${MY_DATADIR}" ]] ; then |
131 |
+ # If you get this and you're wondering about it, see bug #207636 |
132 |
+ elog "MySQL datadir found in ${MY_DATADIR}" |
133 |
+ elog "A new one will not be created." |
134 |
+ PREVIOUS_DATADIR="yes" |
135 |
+ else |
136 |
+ PREVIOUS_DATADIR="no" |
137 |
+ fi |
138 |
+ export PREVIOUS_DATADIR |
139 |
+ fi |
140 |
+ else |
141 |
+ if [[ ${EBUILD_PHASE} == "config" ]]; then |
142 |
+ local new_MY_DATADIR |
143 |
+ new_MY_DATADIR=`"my_print_defaults" mysqld 2>/dev/null \ |
144 |
+ | sed -ne '/datadir/s|^--datadir=||p' \ |
145 |
+ | tail -n1` |
146 |
+ |
147 |
+ if [[ ( -n "${new_MY_DATADIR}" ) && ( "${new_MY_DATADIR}" != "${MY_DATADIR}" ) ]]; then |
148 |
+ ewarn "MySQL MY_DATADIR has changed" |
149 |
+ ewarn "from ${MY_DATADIR}" |
150 |
+ ewarn "to ${new_MY_DATADIR}" |
151 |
+ MY_DATADIR="${new_MY_DATADIR}" |
152 |
+ fi |
153 |
+ fi |
154 |
+ fi |
155 |
+ |
156 |
+ if [ "${MY_SOURCEDIR:-unset}" == "unset" ]; then |
157 |
+ MY_SOURCEDIR=${SERVER_URI##*/} |
158 |
+ MY_SOURCEDIR=${MY_SOURCEDIR%.tar*} |
159 |
+ fi |
160 |
+ |
161 |
+ export MY_SHAREDSTATEDIR MY_SYSCONFDIR |
162 |
+ export MY_LIBDIR MY_LOCALSTATEDIR MY_LOGDIR |
163 |
+ export MY_INCLUDEDIR MY_DATADIR MY_SOURCEDIR |
164 |
+} |
165 |
+fi |