| @@ -1,139 +1,134 @@ | | | @@ -1,139 +1,134 @@ |
1 | # $NetBSD: mysql.buildlink3.mk,v 1.28 2020/10/20 21:53:31 otis Exp $ | | 1 | # $NetBSD: mysql.buildlink3.mk,v 1.29 2021/05/08 15:51:28 jdolecek Exp $ |
2 | # | | 2 | # |
3 | # This file is included by packages that require some version of the | | 3 | # This file is included by packages that require some version of the |
4 | # MySQL database client. | | 4 | # MySQL database client. |
5 | # | | 5 | # |
6 | # User-settable variables: | | 6 | # User-settable variables: |
7 | # | | 7 | # |
8 | # MYSQL_VERSION_DEFAULT | | 8 | # MYSQL_VERSION_DEFAULT |
9 | # The preferred MySQL version. | | 9 | # The preferred MySQL version. |
10 | # | | 10 | # |
11 | # Possible: 57 56 MARIADB55 | | 11 | # Possible: 57 56 MARIADB55 |
12 | # Default: 57 | | 12 | # Default: 57 |
13 | # | | 13 | # |
14 | # Package-settable variables: | | 14 | # Package-settable variables: |
15 | # | | 15 | # |
16 | # MYSQL_VERSIONS_ACCEPTED | | 16 | # MYSQL_VERSIONS_ACCEPTED |
17 | # The list of MySQL versions that the package accepts. | | 17 | # The list of MySQL versions that the package accepts. |
18 | # | | 18 | # |
19 | # Possible: (see MYSQL_VERSION_DEFAULT) | | 19 | # Possible: (see MYSQL_VERSION_DEFAULT) |
20 | # Default: (all) | | 20 | # Default: (all) |
21 | # | | 21 | # |
22 | # Variables set by this file: | | 22 | # Variables set by this file: |
23 | # | | 23 | # |
24 | # MYSQL_VERSION | | 24 | # MYSQL_VERSION |
25 | | | 25 | |
26 | .if !defined(MYSQL_VERSION_MK) | | 26 | .if !defined(MYSQL_VERSION_MK) |
27 | MYSQL_VERSION_MK= # defined | | 27 | MYSQL_VERSION_MK= # defined |
28 | | | 28 | |
29 | BUILD_DEFS+= MYSQL_VERSION_DEFAULT | | 29 | BUILD_DEFS+= MYSQL_VERSION_DEFAULT |
30 | BUILD_DEFS_EFFECTS+= MYSQL_PKGSRCDIR | | 30 | BUILD_DEFS_EFFECTS+= MYSQL_PKGSRCDIR |
31 | | | 31 | |
32 | _VARGROUPS+= mysql | | 32 | _VARGROUPS+= mysql |
33 | _USER_VARS.mysql= MYSQL_VERSION_DEFAULT | | 33 | _USER_VARS.mysql= MYSQL_VERSION_DEFAULT |
34 | _PKG_VARS.mysql= MYSQL_VERSIONS_ACCEPTED | | 34 | _PKG_VARS.mysql= MYSQL_VERSIONS_ACCEPTED |
35 | _SYS_VARS.mysql= MYSQL_PKGSRCDIR | | 35 | _SYS_VARS.mysql= MYSQL_PKGSRCDIR |
36 | | | 36 | |
37 | .include "../../mk/bsd.prefs.mk" | | 37 | .include "../../mk/bsd.prefs.mk" |
38 | | | 38 | |
39 | MYSQL_VERSION_DEFAULT?= 57 | | 39 | MYSQL_VERSION_DEFAULT?= 57 |
40 | MYSQL_VERSIONS_ACCEPTED?= 57 56 MARIADB55 | | 40 | MYSQL_VERSIONS_ACCEPTED?= 57 56 MARIADB55 |
41 | | | 41 | |
42 | # transform the list into individual variables | | 42 | # transform the list into individual variables |
43 | .for mv in ${MYSQL_VERSIONS_ACCEPTED} | | 43 | .for mv in ${MYSQL_VERSIONS_ACCEPTED} |
44 | _MYSQL_VERSION_${mv}_OK= yes | | 44 | _MYSQL_VERSION_${mv}_OK= yes |
45 | .endfor | | 45 | .endfor |
46 | | | 46 | |
47 | # check what is installed | | 47 | # check what is installed |
48 | .if ${OPSYS} == "Darwin" | | 48 | .if ${OPSYS} == "Darwin" |
49 | . if exists(${LOCALBASE}/lib/libmysqlclient.20.dylib) | | 49 | _MYSQL_SO_57= 20.dylib |
50 | _MYSQL_VERSION_57_INSTALLED= yes | | 50 | _MYSQL_SO_56= 18.dylib |
51 | _MYSQL_VERSION_INSTALLED= 57 | | | |
52 | . endif | | | |
53 | . if exists(${LOCALBASE}/lib/libmysqlclient.18.dylib) | | | |
54 | . if exists(${LOCALBASE}/include/mysql/mysql/client_authentication.h) | | | |
55 | _MYSQL_VERSION_56_INSTALLED= yes | | | |
56 | _MYSQL_VERSION_INSTALLED= 56 | | | |
57 | . endif | | | |
58 | . endif | | | |
59 | .else | | 51 | .else |
60 | . if exists(${LOCALBASE}/lib/libmysqlclient.so.20) | | 52 | _MYSQL_SO_57= so.20 |
| | | 53 | _MYSQL_SO_56= so.18 |
| | | 54 | .endif |
| | | 55 | |
| | | 56 | .if exists(${LOCALBASE}/lib/libmysqlclient.${_MYSQL_SO_57}) |
61 | _MYSQL_VERSION_57_INSTALLED= yes | | 57 | _MYSQL_VERSION_57_INSTALLED= yes |
62 | _MYSQL_VERSION_INSTALLED= 57 | | 58 | _MYSQL_VERSION_INSTALLED= 57 |
63 | . endif | | 59 | .endif |
64 | . if exists(${LOCALBASE}/lib/libmysqlclient.so.18) | | 60 | .if exists(${LOCALBASE}/lib/libmysqlclient.${_MYSQL_SO_56}) |
65 | . if exists(${LOCALBASE}/include/mysql/mysql/client_authentication.h) | | 61 | . if exists(${LOCALBASE}/include/mysql/mysql/client_authentication.h) |
66 | _MYSQL_VERSION_56_INSTALLED= yes | | 62 | _MYSQL_VERSION_56_INSTALLED= yes |
67 | _MYSQL_VERSION_INSTALLED= 56 | | 63 | _MYSQL_VERSION_INSTALLED= 56 |
68 | . elif exists(${LOCALBASE}/share/mariadb) | | 64 | . elif exists(${LOCALBASE}/share/mariadb) |
69 | _MYSQL_VERSION_MARIADB55_INSTALLED= yes | | 65 | _MYSQL_VERSION_MARIADB55_INSTALLED= yes |
70 | _MYSQL_VERSION_INSTALLED= MARIADB55 | | 66 | _MYSQL_VERSION_INSTALLED= MARIADB55 |
71 | . endif | | | |
72 | . endif | | 67 | . endif |
73 | .endif | | 68 | .endif |
74 | | | 69 | |
75 | | | 70 | |
76 | # if a version is explicitely required, take it | | 71 | # if a version is explicitely required, take it |
77 | .if defined(MYSQL_VERSION_REQD) | | 72 | .if defined(MYSQL_VERSION_REQD) |
78 | _MYSQL_VERSION= ${MYSQL_VERSION_REQD} | | 73 | _MYSQL_VERSION= ${MYSQL_VERSION_REQD} |
79 | .endif | | 74 | .endif |
80 | # if the default is already installed, it is first choice | | 75 | # if the default is already installed, it is first choice |
81 | .if !defined(_MYSQL_VERSION) | | 76 | .if !defined(_MYSQL_VERSION) |
82 | . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_OK) | | 77 | . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_OK) |
83 | . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_INSTALLED) | | 78 | . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_INSTALLED) |
84 | _MYSQL_VERSION= ${MYSQL_VERSION_DEFAULT} | | 79 | _MYSQL_VERSION= ${MYSQL_VERSION_DEFAULT} |
85 | . endif | | 80 | . endif |
86 | . endif | | 81 | . endif |
87 | .endif | | 82 | .endif |
88 | # prefer an already installed version, in order of "accepted" | | 83 | # prefer an already installed version, in order of "accepted" |
89 | .if !defined(_MYSQL_VERSION) | | 84 | .if !defined(_MYSQL_VERSION) |
90 | . for mv in ${MYSQL_VERSIONS_ACCEPTED} | | 85 | . for mv in ${MYSQL_VERSIONS_ACCEPTED} |
91 | . if defined(_MYSQL_VERSION_${mv}_INSTALLED) | | 86 | . if defined(_MYSQL_VERSION_${mv}_INSTALLED) |
92 | _MYSQL_VERSION?= ${mv} | | 87 | _MYSQL_VERSION?= ${mv} |
93 | . else | | 88 | . else |
94 | # keep information as last resort - see below | | 89 | # keep information as last resort - see below |
95 | _MYSQL_VERSION_FIRSTACCEPTED?= ${mv} | | 90 | _MYSQL_VERSION_FIRSTACCEPTED?= ${mv} |
96 | . endif | | 91 | . endif |
97 | . endfor | | 92 | . endfor |
98 | .endif | | 93 | .endif |
99 | # if the default is OK for the addon pkg, take this | | 94 | # if the default is OK for the addon pkg, take this |
100 | .if !defined(_MYSQL_VERSION) | | 95 | .if !defined(_MYSQL_VERSION) |
101 | . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_OK) | | 96 | . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_OK) |
102 | _MYSQL_VERSION= ${MYSQL_VERSION_DEFAULT} | | 97 | _MYSQL_VERSION= ${MYSQL_VERSION_DEFAULT} |
103 | . endif | | 98 | . endif |
104 | .endif | | 99 | .endif |
105 | # take the first one accepted by the package | | 100 | # take the first one accepted by the package |
106 | .if !defined(_MYSQL_VERSION) | | 101 | .if !defined(_MYSQL_VERSION) |
107 | _MYSQL_VERSION= ${_MYSQL_VERSION_FIRSTACCEPTED} | | 102 | _MYSQL_VERSION= ${_MYSQL_VERSION_FIRSTACCEPTED} |
108 | .endif | | 103 | .endif |
109 | | | 104 | |
110 | # | | 105 | # |
111 | # set variables for the version we decided to use: | | 106 | # set variables for the version we decided to use: |
112 | # | | 107 | # |
113 | .if ${_MYSQL_VERSION} == "57" | | 108 | .if ${_MYSQL_VERSION} == "57" |
114 | MYSQL_PKGSRCDIR= ../../databases/mysql57-client | | 109 | MYSQL_PKGSRCDIR= ../../databases/mysql57-client |
115 | .elif ${_MYSQL_VERSION} == "56" | | 110 | .elif ${_MYSQL_VERSION} == "56" |
116 | MYSQL_PKGSRCDIR= ../../databases/mysql56-client | | 111 | MYSQL_PKGSRCDIR= ../../databases/mysql56-client |
117 | .elif ${_MYSQL_VERSION} == "MARIADB55" | | 112 | .elif ${_MYSQL_VERSION} == "MARIADB55" |
118 | MYSQL_PKGSRCDIR= ../../databases/mariadb55-client | | 113 | MYSQL_PKGSRCDIR= ../../databases/mariadb55-client |
119 | .else | | 114 | .else |
120 | # force an error | | 115 | # force an error |
121 | PKG_FAIL_REASON+= "[mysql.buildlink3.mk] ${_MYSQL_VERSION} is not a valid mysql package." | | 116 | PKG_FAIL_REASON+= "[mysql.buildlink3.mk] ${_MYSQL_VERSION} is not a valid mysql package." |
122 | .endif | | 117 | .endif |
123 | | | 118 | |
124 | # | | 119 | # |
125 | # check installed version aginst required: | | 120 | # check installed version aginst required: |
126 | # | | 121 | # |
127 | .if defined(_MYSQL_VERSION_INSTALLED) | | 122 | .if defined(_MYSQL_VERSION_INSTALLED) |
128 | . if ${_MYSQL_VERSION} != ${_MYSQL_VERSION_INSTALLED} | | 123 | . if ${_MYSQL_VERSION} != ${_MYSQL_VERSION_INSTALLED} |
129 | PKG_FAIL_REASON+= "${PKGBASE} requires mysql-${_MYSQL_VERSION}, but mysql-${_MYSQL_VERSION_INSTALLED} is already installed." | | 124 | PKG_FAIL_REASON+= "${PKGBASE} requires mysql-${_MYSQL_VERSION}, but mysql-${_MYSQL_VERSION_INSTALLED} is already installed." |
130 | . endif | | 125 | . endif |
131 | .endif | | 126 | .endif |
132 | | | 127 | |
133 | .if defined(MYSQL_PKGSRCDIR) | | 128 | .if defined(MYSQL_PKGSRCDIR) |
134 | .include "${MYSQL_PKGSRCDIR}/buildlink3.mk" | | 129 | .include "${MYSQL_PKGSRCDIR}/buildlink3.mk" |
135 | .endif | | 130 | .endif |
136 | | | 131 | |
137 | MYSQL_VERSION= ${_MYSQL_VERSION} | | 132 | MYSQL_VERSION= ${_MYSQL_VERSION} |
138 | | | 133 | |
139 | .endif # MYSQL_VERSION_MK | | 134 | .endif # MYSQL_VERSION_MK |