void tp::handle_srcdir(void) { if (m_srcdir_arg.empty()) { m_srcdir = atf::fs::path(m_argv0).branch_path(); if (m_srcdir.leaf_name() == ".libs") m_srcdir = m_srcdir.branch_path(); } else m_srcdir = atf::fs::path(m_srcdir_arg); if (!atf::fs::exists(m_srcdir / m_prog_name)) throw std::runtime_error("Cannot find the test program in the " "source directory `" + m_srcdir.str() + "'"); if (!m_srcdir.is_absolute()) m_srcdir = m_srcdir.to_absolute(); m_vars["srcdir"] = m_srcdir.str(); }