Portfile

# $Id: Portfile 22811 2007-03-15 08:37:31Z ryandesign@macports.org $

PortSystem 1.0

name mysql5
version 5.0.37

categories databases
platforms darwin

maintainers openmaintainer@macports.org jberry@macports.org

description Multithreaded SQL database server
long_description MySQL is an open-source, multi-threaded SQL database \
with a command syntax very similar to mSQL.

homepage http://www.mysql.com/
master_sites http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/ \
http://mysql.he.net/Downloads/MySQL-5.0/ \
http://mysql.orst.edu/Downloads/MySQL-5.0 \
http://mysql.oss.eznetsols.org/Downloads/MySQL-5.0/ \
http://mirrors.sunsite.dk/mysql/Downloads/MySQL-5.0/ \
http://sunsite.informatik.rwth-aachen.de/mysql/Downloads/MySQL-5.0/ \
http://ftp.plusline.de/mysql/Downloads/MySQL-5.0/
distname mysql-${version}
checksums md5 26ed76facb58bdeae40c8310e337dde2 \
sha1 7c957d4337156c7f98b0617fd5a63f3a838a9bc4

depends_lib port:zlib \
port:openssl

patchfiles patch-mysys-base64.c

set dbdir ${prefix}/var/db/${name}
set mysqluser mysql

configure.args --mandir=${prefix}/share/man \
--infodir=${prefix}/share/info \
--localstatedir=${dbdir} \
--libdir=${prefix}/lib/${name} \
--bindir=${prefix}/lib/${name}/bin \
--includedir=${prefix}/include/${name} \
--datadir=${prefix}/share/${name} \
--sysconfdir=${prefix}/etc/${name} \
--with-zlib-dir=${prefix} \
--with-openssl=${prefix} \
--with-extra-charsets=complex \
--with-unix-socket-path=${prefix}/var/run/${name}/mysqld.sock \
--with-mysqld-user=${mysqluser} \
--without-docs \
--without-bench \
--enable-thread-safe-client

platform darwin 8 {
configure.env CC=/usr/bin/gcc-4.0 CPP=/usr/bin/cpp-4.0 CXX=/usr/bin/g++-4.0
}

variant server {
# Create a startupitem to start/stop the server
startupitem.create yes
startupitem.start "${prefix}/share/mysql5/mysql/mysql.server start"
startupitem.stop "${prefix}/share/mysql5/mysql/mysql.server stop"
}

pre-destroot {
# Some directories we must have in all cases
xinstall -m 755 -d ${destroot}${prefix}/etc/${name}
destroot.keepdirs-append ${destroot}${prefix}/etc/${name}

# Setup only for server
if { [variant_isset server] } {
addgroup ${mysqluser}
set gid [existsgroup ${mysqluser}]
adduser ${mysqluser} gid=${gid} realname=MySQL\ Server

# Some directories we must have only if we're running as a server
xinstall -m 755 -o root -d ${destroot}${prefix}/var/run

xinstall -m 755 -o ${mysqluser} -g ${mysqluser} -d \
${destroot}${dbdir} \
${destroot}${prefix}/var/run/${name}
destroot.keepdirs-append \
${destroot}${dbdir} \
${destroot}${prefix}/var/run/${name}
}
}

post-destroot {
system "rm -rf ${destroot}${prefix}/mysql-test/"

# Symlink mysql binaries into bin directory, with a 5 appended to the name
foreach f [glob -tails -directory ${destroot}${prefix}/lib/${name}/bin my*] {
system "cd ${destroot}${prefix}/bin && ln -sf ../lib/${name}/bin/${f} ${f}5"
}
}

post-install {
if { [variant_isset server] } {
ui_msg "******************************************************"
ui_msg "* In order to setup the database, you might want to run"
ui_msg "* sudo -u ${mysqluser} mysql_install_db5"
ui_msg "* if this is a new install"
ui_msg "******************************************************"
}
}

files