Example #1
0
    def setup(self, tarball = 'spew-1.0.5.tgz'):
        self.tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(self.tarball, self.srcdir)

        os.chdir(self.srcdir)
        utils.configure()
        utils.make()
Example #2
0
    def setup(self, tarball='oprofile-0.9.4.tar.bz2', local=None,
              *args, **dargs):
        if local == True:
            return

        try:
            self.tarball = utils.unmap_url(self.bindir, tarball,
                                                    self.tmpdir)
            utils.extract_tarball_to_dir(self.tarball, self.srcdir)
            os.chdir(self.srcdir)

            patch = os.path.join(self.bindir,"oprofile-69455.patch")
            utils.system('patch -p1 < %s' % patch)
            utils.configure('--with-kernel-support --prefix=' + \
                                                    self.srcdir)
            utils.make('-j %d' % utils.count_cpus())
            utils.make('install')
        except Exception:
            # Build from source failed.
            # But maybe can still use the local copy
            local_opcontrol = os.path.exists('/usr/bin/opcontrol')
            local_opreport = os.path.exists('/usr/bin/opreport')
            if local == False or not local_opcontrol or not local_opreport:
                raise error.AutotestError('No oprofile available')
        else:
            # if we managed to build, try again to pick binaries
            self._pick_binaries(True)
Example #3
0
    def setup(self, tarball='ltt-control-0.51-12082008.tar.gz', **dargs):
        self.tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(self.tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.configure()
        utils.make()
Example #4
0
    def setup(self, tarball='dbench-3.04.tar.gz'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.configure()
        utils.make()
Example #5
0
    def setup(self, tarball="dbt2-0.39.tar.bz2"):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        self.job.setup_dep(["pgsql", "pgpool", "mysql"])

        #
        # Extract one copy of the kit for MySQL.
        #
        utils.system("cp -pR " + self.srcdir + " " + self.srcdir + ".mysql")
        os.chdir(self.srcdir + ".mysql")
        utils.configure("--with-mysql=%s/deps/mysql/mysql" % self.autodir)
        utils.make()

        #
        # Extract one copy of the kit for PostgreSQL.
        #
        utils.system("cp -pR " + self.srcdir + " " + self.srcdir + ".pgsql")
        os.chdir(self.srcdir + ".pgsql")
        utils.configure("--with-postgresql=%s/deps/pgsql/pgsql" % self.autodir)
        utils.make()

        # Create symlinks to autotest's results directory from dbt-2's
        # preferred results directory to self.resultsdir
        utils.system("ln -s %s %s" % (self.resultsdir, self.srcdir + ".mysql/scripts/output"))
        utils.system("ln -s %s %s" % (self.resultsdir, self.srcdir + ".pgsql/scripts/output"))
Example #6
0
    def setup(self, tarball='ltt-control-0.51-12082008.tar.gz', **dargs):
        self.tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(self.tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.configure()
        utils.make()
Example #7
0
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, 'src')
    if not os.path.exists(tarball):
        utils.get_file(
            'http://mirror.x10.com/mirror/mysql/Downloads/MySQL-5.0/mysql-5.0.45.tar.gz',
            tarball)
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    utils.configure('--prefix=%s/mysql --enable-thread-safe-client' \
                    % topdir)
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    #
    # MySQL doesn't create this directory on it's own.
    # This is where database logs and files are created.
    #
    try:
        os.mkdir(topdir + '/mysql/var')
    except Exception:
        pass
    #
    # Initialize the database.
    #
    utils.system('%s/mysql/bin/mysql_install_db' % topdir)

    os.chdir(topdir)
Example #8
0
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, 'src')
    if not os.path.exists(tarball):
        utils.get_file('http://mirror.x10.com/mirror/mysql/Downloads/MySQL-5.0/mysql-5.0.45.tar.gz', tarball)
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    utils.configure('--prefix=%s/mysql --enable-thread-safe-client' \
                    % topdir)
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    #
    # MySQL doesn't create this directory on it's own.
    # This is where database logs and files are created.
    #
    try:
        os.mkdir(topdir + '/mysql/var')
    except Exception:
        pass
    #
    # Initialize the database.
    #
    utils.system('%s/mysql/bin/mysql_install_db' % topdir)

    os.chdir(topdir)
Example #9
0
    def setup(self,
              tarball='oprofile-0.9.4.tar.bz2',
              local=None,
              *args,
              **dargs):
        if local == True:
            return

        try:
            self.tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
            utils.extract_tarball_to_dir(self.tarball, self.srcdir)
            os.chdir(self.srcdir)

            patch = os.path.join(self.bindir, "oprofile-69455.patch")
            utils.system('patch -p1 < %s' % patch)
            utils.configure('--with-kernel-support --prefix=' + \
                                                    self.srcdir)
            utils.make('-j %d' % utils.count_cpus())
            utils.make('install')
        except Exception:
            # Build from source failed.
            # But maybe can still use the local copy
            local_opcontrol = os.path.exists('/usr/bin/opcontrol')
            local_opreport = os.path.exists('/usr/bin/opreport')
            if local == False or not local_opcontrol or not local_opreport:
                raise error.AutotestError('No oprofile available')
        else:
            # if we managed to build, try again to pick binaries
            self._pick_binaries(True)
Example #10
0
    def setup(self, tarball='dbt2-0.39.tar.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        self.job.setup_dep(['pgsql', 'pgpool', 'mysql'])

        #
        # Extract one copy of the kit for MySQL.
        #
        utils.system('cp -pR ' + self.srcdir + ' ' + self.srcdir + '.mysql')
        os.chdir(self.srcdir + '.mysql')
        utils.configure('--with-mysql=%s/deps/mysql/mysql' % self.autodir)
        utils.make()

        #
        # Extract one copy of the kit for PostgreSQL.
        #
        utils.system('cp -pR ' + self.srcdir + ' ' + self.srcdir + '.pgsql')
        os.chdir(self.srcdir + '.pgsql')
        utils.configure('--with-postgresql=%s/deps/pgsql/pgsql' % self.autodir)
        utils.make()

        # Create symlinks to autotest's results directory from dbt-2's
        # preferred results directory to self.resultsdir
        utils.system('ln -s %s %s' %
                     (self.resultsdir, self.srcdir + '.mysql/scripts/output'))
        utils.system('ln -s %s %s' %
                     (self.resultsdir, self.srcdir + '.pgsql/scripts/output'))
Example #11
0
    def setup(self, local=False, tarball_systemtap="systemtap-0.9.5.tar.gz", tarball_elfutils="elfutils-0.140.tar.bz2"):
        depdir = os.path.join(self.autodir, "deps/systemtap")
        tarball_systemtap = utils.unmap_url(depdir, tarball_systemtap, self.tmpdir)
        tarball_elfutils = utils.unmap_url(depdir, tarball_elfutils, self.tmpdir)
        srcdir = os.path.join(depdir, "src")
        utils.extract_tarball_to_dir(tarball_systemtap, srcdir)
        elfdir = os.path.join(srcdir, "elfutils")
        utils.extract_tarball_to_dir(tarball_elfutils, elfdir)

        self.job.setup_dep(["dejagnu"])
        if local == False:
            self.job.setup_dep(["systemtap"])

        # Try grabbing the systemtap tarball out of the deps directory
        depdir = os.path.join(self.autodir, "deps/systemtap")
        if os.path.exists(os.path.join(depdir, tarball_systemtap)):
            tarball = utils.unmap_url(depdir, tarball_systemtap, self.tmpdir)
        else:
            tarball = utils.unmap_url(self.bindir, tarball_systemtap, self.tmpdir)
        utils.extract_tarball_to_dir(tarball_systemtap, self.srcdir)

        testsuite = os.path.join(self.srcdir, "testsuite")
        os.chdir(testsuite)

        utils.configure()
        utils.make()

        # Run a simple systemtap script to make sure systemtap and the
        # kernel debuginfo packages are correctly installed
        script = "PATH=%s/bin:$PATH stap -c /bin/true -e 'probe syscall.read { exit() }'" % self.systemtap_dir
        try:
            utils.system(script)
        except:
            raise error.TestError("simple systemtap test failed, kernel debuginfo package may be missing: %s" % script)
Example #12
0
    def setup(self, tarball = 'stress-1.0.4.tar.gz'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.configure()
        utils.make()
    def setup(self, tarball='util-linux-2.12r.tar.bz2'):
        self.tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(self.tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.configure()
        os.chdir('sys-utils')
        utils.make('readprofile')
Example #14
0
    def setup(self, tarball = 'xm-test.tar.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.system('./autogen')
        utils.configure()
        utils.make('existing')
    def setup(self, tarball='dbench-3.04.tar.gz'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.system('patch -p1 < ../dbench_startup.patch')
        utils.configure()
        utils.make()
Example #16
0
    def setup(self, tarball = 'util-linux-2.12r.tar.bz2'):
        self.tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(self.tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.configure()
        os.chdir('sys-utils')
        utils.make('readprofile')
Example #17
0
    def setup(self, tarball='xm-test.tar.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.system('./autogen')
        utils.configure()
        utils.make('existing')
Example #18
0
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, 'src')
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    utils.configure('--prefix=%s/dejagnu' % topdir)
    utils.make()
    utils.make('install')

    os.chdir(topdir)
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, 'src')
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    utils.configure('--prefix=%s/dejagnu' % topdir)
    utils.make()
    utils.make('install')

    os.chdir(topdir)
Example #20
0
    def setup(self, tarball = 'iperf-2.0.4.tar.gz'):
        self.job.require_gcc()
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.configure()
        utils.make()
        utils.system('sync')
Example #21
0
    def setup(self, tarball='dbench-3.04.tar.gz'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.system('patch -p1 < ../dbench_startup.patch')
        utils.system('patch < ../dbench_lpthread.patch')
        utils.configure()
        utils.make()
Example #22
0
    def setup(self, tarball = 'bonnie++-1.03a.tgz'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        os_dep.command('g++')
        utils.system('patch -p1 < ../bonnie++-1.03a-gcc43.patch')
        utils.configure()
        utils.make()
Example #23
0
    def setup(self, tarball='bonnie++-1.03a.tgz'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        os_dep.command('g++')
        utils.system('patch -p1 < ../bonnie++-1.03a-gcc43.patch')
        utils.configure()
        utils.make()
Example #24
0
    def setup(self, tarball='netperf-2.4.5.tar.bz2'):
        self.job.require_gcc()
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.system('patch -p0 < ../wait_before_data.patch')
        utils.configure()
        utils.make()
Example #25
0
    def setup(self, tarball = 'netperf-2.4.5.tar.bz2'):
        self.job.require_gcc()
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)

        utils.system('patch -p0 < ../wait_before_data.patch')
        utils.configure()
        utils.make()
        utils.system('sync')
Example #26
0
def setup(topdir):
    srcdir = os.path.join(topdir, 'src')

    os.chdir(srcdir)

    utils.configure('--with-elfutils=elfutils ' \
                    '--prefix=%s/systemtap' % topdir)
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    os.chdir(topdir)
Example #27
0
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, 'src')
    if not os.path.exists(tarball):
        utils.get_file('ftp://ftp-archives.postgresql.org/pub/source/v8.3.1/postgresql-8.3.1.tar.bz2', tarball)
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    utils.configure('--without-readline --without-zlib --enable-debug --prefix=%s/pgsql' % topdir)
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    os.chdir(topdir)
Example #28
0
    def setup(self, tarball = 'ltp-full-20120104.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)
        ltpbin_dir = os.path.join(self.srcdir, 'bin')
        os.mkdir(ltpbin_dir)

        utils.system('cp ../scan.c pan/')   # saves having lex installed
        utils.configure('--prefix=%s' % ltpbin_dir)
        utils.make('-j %d all' % utils.count_cpus())
        utils.system('yes n | make SKIP_IDCHECK=1 install')
Example #29
0
    def setup(self, tarball = 'ecryptfs.tar.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)

        os.chdir(self.srcdir)
        utils.system('patch -p1 < ../run_one.patch')
        utils.system('chmod +x tests/run_one.sh')
        utils.system('autoreconf -ivf')
        utils.system('intltoolize -c -f')
        utils.configure('--enable-tests --disable-pywrap')
        utils.make()
Example #30
0
    def setup(self, tarball='ltp-full-20120104.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)
        ltpbin_dir = os.path.join(self.srcdir, 'bin')
        os.mkdir(ltpbin_dir)

        utils.system('cp ../scan.c pan/')  # saves having lex installed
        utils.configure('--prefix=%s' % ltpbin_dir)
        utils.make('-j %d all' % utils.count_cpus())
        utils.system('yes n | make SKIP_IDCHECK=1 install')
Example #31
0
    def setup(self, tarball="binutils-2.19.1.tar.bz2"):
        if os.path.exists(self.srcdir):
            utils.system("rm -rf %s" % self.srcdir)

        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)

        os.chdir(self.srcdir)
        utils.system("patch -p1 < ../binutils-2.19-arm.patch")
        utils.configure()
        utils.make()
Example #32
0
    def setup(self, tarball='ecryptfs.tar.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)

        os.chdir(self.srcdir)
        utils.system('patch -p1 < ../run_one.patch')
        utils.system('chmod +x tests/run_one.sh')
        utils.system('autoreconf -ivf')
        utils.system('intltoolize -c -f')
        utils.configure('--enable-tests --disable-pywrap')
        utils.make()
Example #33
0
def setup(topdir):
    srcdir = os.path.join(topdir, 'src')

    os.chdir(srcdir)

    utils.configure('--with-elfutils=elfutils ' \
                    '--prefix=%s/systemtap' % topdir)
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    os.chdir(topdir)
Example #34
0
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, "src")
    if not os.path.exists(tarball):
        utils.get_file("ftp://ftp.postgresql.org/pub/source/v8.3.1/postgresql-8.3.1.tar.bz2", tarball)
    utils.extract_tarball_to_dir(tarball, "src")
    os.chdir(srcdir)
    utils.configure("--without-readline --without-zlib --enable-debug --prefix=%s/pgsql" % topdir)
    utils.make("-j %d" % utils.count_cpus())
    utils.make("install")

    os.chdir(topdir)
Example #35
0
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, 'src')
    if not os.path.exists(tarball):
        utils.get_file(
            'http://www.packetfactory.net/libnet/dist/libnet.tar.gz', tarball)
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    utils.configure('--prefix=%s/libnet' % topdir)
    utils.make()
    utils.make('install')

    os.chdir(topdir)
Example #36
0
    def setup(self, tarball='ffsb-6.0-rc2.tar.bz2'):
        """
        Uncompress the FFSB tarball and compiles it.

        @param tarball: FFSB tarball. Could be either a path relative to
                self.srcdir or a URL.
        """
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)
        os_dep.command('gcc')
        utils.configure()
        utils.make()
Example #37
0
    def setup(self, tarball='ffsb-6.0-rc2.tar.bz2'):
        """
        Uncompress the FFSB tarball and compiles it.

        @param tarball: FFSB tarball. Could be either a path relative to
                self.srcdir or a URL.
        """
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)
        os_dep.command('gcc')
        utils.configure()
        utils.make()
Example #38
0
def setup(tarball, topdir):
    srcdir = os.path.join(topdir, 'src')
    if not os.path.exists(tarball):
        utils.get_file(
            'ftp://ftp-archives.postgresql.org/pub/source/v8.3.1/postgresql-8.3.1.tar.bz2',
            tarball)
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    utils.configure(
        '--without-readline --without-zlib --enable-debug --prefix=%s/pgsql' %
        topdir)
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    os.chdir(topdir)
Example #39
0
    def setup(self, tarball='ltp-full-20120104.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)
        ltpbin_dir = os.path.join(self.srcdir, 'bin')
        os.mkdir(ltpbin_dir)

        utils.system('patch -p1 < ../patches/getdents.patch')
        utils.system('patch -p1 < ../patches/cpuid.patch')
        utils.system('patch -p1 < ../patches/kill-ipc.patch')
        utils.system('patch -p1 < ../patches/genpow.patch')
        utils.system('patch -p1 < ../patches/sysctl.patch')
        utils.make('autotools')
        utils.configure('--prefix=%s' % ltpbin_dir)
        utils.make('-j %d all' % utils.count_cpus())
        utils.system('yes n | make SKIP_IDCHECK=1 install')
Example #40
0
def setup(tarball, topdir):
    # FIXME - Waiting to be able to specify dependency.
    #self.job.setup_dep(['pgsql'])
    srcdir = os.path.join(topdir, 'src')
    if not os.path.exists(tarball):
        utils.get_file('http://pgfoundry.org/frs/download.php/1083/pgpool-II-1.0.1.tar.gz', tarball)
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    # FIXEME - Waiting to be able to use self.autodir instead of
    # os.environ['AUTODIR']
    utils.configure('--prefix=%s/pgpool --with-pgsql=%s/deps/pgsql/pgsql' \
                    % (topdir, os.environ['AUTODIR']))
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    os.chdir(topdir)
Example #41
0
def setup(tarball, topdir):
    # FIXME - Waiting to be able to specify dependency.
    #self.job.setup_dep(['pgsql'])
    srcdir = os.path.join(topdir, 'src')
    if not os.path.exists(tarball):
        utils.get_file(
            'http://pgfoundry.org/frs/download.php/1083/pgpool-II-1.0.1.tar.gz',
            tarball)
    utils.extract_tarball_to_dir(tarball, 'src')
    os.chdir(srcdir)
    # FIXEME - Waiting to be able to use self.autodir instead of
    # os.environ['AUTODIR']
    utils.configure('--prefix=%s/pgpool --with-pgsql=%s/deps/pgsql/pgsql' \
                    % (topdir, os.environ['AUTODIR']))
    utils.make('-j %d' % utils.count_cpus())
    utils.make('install')

    os.chdir(topdir)
Example #42
0
    def setup(self,
              local=False,
              tarball_systemtap='systemtap-0.9.5.tar.gz',
              tarball_elfutils='elfutils-0.140.tar.bz2'):
        depdir = os.path.join(self.autodir, 'deps/systemtap')
        tarball_systemtap = utils.unmap_url(depdir, tarball_systemtap,
                                            self.tmpdir)
        tarball_elfutils = utils.unmap_url(depdir, tarball_elfutils,
                                           self.tmpdir)
        srcdir = os.path.join(depdir, 'src')
        utils.extract_tarball_to_dir(tarball_systemtap, srcdir)
        elfdir = os.path.join(srcdir, 'elfutils')
        utils.extract_tarball_to_dir(tarball_elfutils, elfdir)

        self.job.setup_dep(['dejagnu'])
        if local == False:
            self.job.setup_dep(['systemtap'])

        # Try grabbing the systemtap tarball out of the deps directory
        depdir = os.path.join(self.autodir, 'deps/systemtap')
        if os.path.exists(os.path.join(depdir, tarball_systemtap)):
            tarball = utils.unmap_url(depdir, tarball_systemtap, self.tmpdir)
        else:
            tarball = utils.unmap_url(self.bindir, tarball_systemtap,
                                      self.tmpdir)
        utils.extract_tarball_to_dir(tarball_systemtap, self.srcdir)

        testsuite = os.path.join(self.srcdir, 'testsuite')
        os.chdir(testsuite)

        utils.configure()
        utils.make()

        # Run a simple systemtap script to make sure systemtap and the
        # kernel debuginfo packages are correctly installed
        script = "PATH=%s/bin:$PATH stap -c /bin/true -e 'probe syscall.read { exit() }'" % self.systemtap_dir
        try:
            utils.system(script)
        except:
            raise error.TestError(
                'simple systemtap test failed, kernel debuginfo package may be missing: %s'
                % script)
Example #43
0
class ltp(test.test):
    version = 6

    def _import_site_config(self):
        site_config_path = os.path.join(os.path.dirname(__file__),
                                        'site_config.py')
        if os.path.exists(site_config_path):
            # for some reason __import__ with full path does not work within
            # autotest, although it works just fine on the same client machine
            # in the python interactive shell or separate testcases
            execfile(site_config_path)
            self.site_ignore_tests = locals().get('ignore_tests', [])
        else:
            self.site_ignore_tests = []


    def initialize(self):
        self._import_site_config()
        self.job.require_gcc()


    # http://prdownloads.sourceforge.net/ltp/ltp-full-20091231.tgz
    def setup(self, tarball = 'ltp-full-20091231.tar.bz2'):
        tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
        utils.extract_tarball_to_dir(tarball, self.srcdir)
        os.chdir(self.srcdir)
        ltpbin_dir = os.path.join(self.srcdir, 'bin')
        os.mkdir(ltpbin_dir)

        utils.system('patch -p1 < ../ltp.patch')

        # comment the capability tests if we fail to load the capability module
        try:
            utils.system('modprobe capability')
        except error.CmdError, detail:
            utils.system('patch -p1 < ../ltp_capability.patch')

        utils.system('cp ../scan.c pan/')   # saves having lex installed
        utils.make('autotools')
        utils.configure('--prefix=%s' % ltpbin_dir)
        utils.make('-j %d all' % utils.count_cpus())
        utils.system('yes n | make SKIP_IDCHECK=1 install')