xref: /aosp_15_r20/external/autotest/client/deps/mysql/mysql.py (revision 9c5db1993ded3edbeafc8092d69fe5de2ee02df7)
1*9c5db199SXin Li#!/usr/bin/python3
2*9c5db199SXin Li
3*9c5db199SXin Liimport os
4*9c5db199SXin Lifrom autotest_lib.client.bin import utils
5*9c5db199SXin Li
6*9c5db199SXin Liversion = 3
7*9c5db199SXin Li
8*9c5db199SXin Lidef setup(tarball, topdir):
9*9c5db199SXin Li    srcdir = os.path.join(topdir, 'src')
10*9c5db199SXin Li    if not os.path.exists(tarball):
11*9c5db199SXin Li        utils.get_file('http://mirror.x10.com/mirror/mysql/Downloads/MySQL-5.0/mysql-5.0.45.tar.gz', tarball)
12*9c5db199SXin Li    utils.extract_tarball_to_dir(tarball, 'src')
13*9c5db199SXin Li    os.chdir(srcdir)
14*9c5db199SXin Li    utils.configure('--prefix=%s/mysql --enable-thread-safe-client' \
15*9c5db199SXin Li                    % topdir)
16*9c5db199SXin Li    utils.make('-j %d' % utils.count_cpus())
17*9c5db199SXin Li    utils.make('install')
18*9c5db199SXin Li
19*9c5db199SXin Li    #
20*9c5db199SXin Li    # MySQL doesn't create this directory on it's own.
21*9c5db199SXin Li    # This is where database logs and files are created.
22*9c5db199SXin Li    #
23*9c5db199SXin Li    try:
24*9c5db199SXin Li        os.mkdir(topdir + '/mysql/var')
25*9c5db199SXin Li    except:
26*9c5db199SXin Li        pass
27*9c5db199SXin Li    #
28*9c5db199SXin Li    # Initialize the database.
29*9c5db199SXin Li    #
30*9c5db199SXin Li    utils.system('%s/mysql/bin/mysql_install_db' % topdir)
31*9c5db199SXin Li
32*9c5db199SXin Li    os.chdir(topdir)
33*9c5db199SXin Li
34*9c5db199SXin Lipwd = os.getcwd()
35*9c5db199SXin Litarball = os.path.join(pwd, 'mysql-5.0.45.tar.gz')
36*9c5db199SXin Liutils.update_version(pwd+'/src', False, version, setup, tarball, pwd)
37