1 # $NetBSD: mysql.buildlink3.mk,v 1.8 2008/03/26 06:22:49 wiz Exp $
3 # This file is included by packages that require some version of the
4 # MySQL database client.
6 # === User-settable variables ===
8 # MYSQL_VERSION_DEFAULT
9 # The preferred MySQL version.
14 # === Package-settable variables ===
16 # MYSQL_VERSIONS_ACCEPTED
17 # The list of MySQL versions that the package accepts.
19 # Possible: (see MYSQL_VERSION_DEFAULT)
23 .if !defined(MYSQL_VERSION_MK)
24 MYSQL_VERSION_MK= # defined
27 _USER_VARS.mysql= MYSQL_VERSION_DEFAULT
28 _PKG_VARS.mysql= MYSQL_VERSIONS_ACCEPTED
29 _SYS_VARS.mysql= MYSQL_PKGSRCDIR
31 .include "../../mk/bsd.prefs.mk"
33 MYSQL_VERSION_DEFAULT?= 50
34 MYSQL_VERSIONS_ACCEPTED?= 50 41
36 # transform the list into individual variables
37 .for mv in ${MYSQL_VERSIONS_ACCEPTED}
38 _MYSQL_VERSION_${mv}_OK= yes
41 # check what is installed
42 .if exists(${LOCALBASE}/lib/mysql/libmysqlclient.so.15)
43 _MYSQL_VERSION_50_INSTALLED= yes
46 .if exists(${LOCALBASE}/lib/mysql/libmysqlclient.so.14)
47 _MYSQL_VERSION_41_INSTALLED= yes
50 # if a version is explicitely required, take it
51 .if defined(MYSQL_VERSION_REQD)
52 _MYSQL_VERSION= ${MYSQL_VERSION_REQD}
54 # if the default is already installed, it is first choice
55 .if !defined(_MYSQL_VERSION)
56 . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_OK)
57 . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_INSTALLED)
58 _MYSQL_VERSION= ${MYSQL_VERSION_DEFAULT}
62 # prefer an already installed version, in order of "accepted"
63 .if !defined(_MYSQL_VERSION)
64 . for mv in ${MYSQL_VERSIONS_ACCEPTED}
65 . if defined(_MYSQL_VERSION_${mv}_INSTALLED)
66 _MYSQL_VERSION?= ${mv}
68 # keep information as last resort - see below
69 _MYSQL_VERSION_FIRSTACCEPTED?= ${mv}
73 # if the default is OK for the addon pkg, take this
74 .if !defined(_MYSQL_VERSION)
75 . if defined(_MYSQL_VERSION_${MYSQL_VERSION_DEFAULT}_OK)
76 _MYSQL_VERSION= ${MYSQL_VERSION_DEFAULT}
79 # take the first one accepted by the package
80 .if !defined(_MYSQL_VERSION)
81 _MYSQL_VERSION= ${_MYSQL_VERSION_FIRSTACCEPTED}
85 # set variables for the version we decided to use:
87 .if ${_MYSQL_VERSION} == "50"
88 MYSQL_PKGSRCDIR= ../../databases/mysql5-client
89 .elif ${_MYSQL_VERSION} == "41"
90 MYSQL_PKGSRCDIR= ../../databases/mysql4-client
93 PKG_FAIL_REASON+= "[mysql.buildlink3.mk] ${_MYSQL_VERSION} is not a valid mysql package."
96 .include "${MYSQL_PKGSRCDIR}/buildlink3.mk"
98 .endif # MYSQL_VERSION_MK