@@ -0,0 +1,2116 @@
+%22%22%22%0ABenchExec is a framework for reliable benchmarking.%0AThis file is part of BenchExec.%0A%0ACopyright (C) 2007-2019  Dirk Beyer%0AAll rights reserved.%0A%0ALicensed under the Apache License, Version 2.0 (the %22License%22);%0Ayou may not use this file except in compliance with the License.%0AYou may obtain a copy of the License at%0A%0A    http://www.apache.org/licenses/LICENSE-2.0%0A%0AUnless required by applicable law or agreed to in writing, software%0Adistributed under the License is distributed on an %22AS IS%22 BASIS,%0AWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0ASee the License for the specific language governing permissions and%0Alimitations under the License.%0A%22%22%22%0A%0Aimport benchexec.util as util%0Aimport benchexec.tools.template%0Aimport benchexec.result as result%0A%0A%0Aclass Tool(benchexec.tools.template.BaseTool):%0A    %22%22%22%0A    Tool info for BRICK%0A    https://github.com/brick-tool-dev/brick-tool%0A    %22%22%22%0A%0A    REQUIRED_PATHS = %5B%22bin%22, %22lib%22%5D%0A%0A    def executable(self):%0A        return util.find_executable(%22bin/brick%22)%0A%0A    def name(self):%0A        return %22BRICK%22%0A%0A    def cmdline(self, executable, options, tasks, propertyfile, rlimits):%0A        return %5Bexecutable%5D + options + tasks%0A%0A    def version(self, executable):%0A        return self._version_from_tool(executable, arg=%22--version%22)%0A%0A    def program_files(self, executable):%0A        paths = self.REQUIRED_PATHS%0A        return %5Bexecutable%5D + self._program_files_from_executable(%0A            executable, paths, parent_dir=True%0A        )%0A%0A    def determine_result(self, returncode, returnsignal, output, isTimeout):%0A        status = result.RESULT_ERROR%0A%0A        for line in output:%0A            if line == %22VERIFICATION SUCCESSFUL%5Cn%22:%0A                status = result.RESULT_TRUE_PROP%0A                break%0A            elif line == %22VERIFICATION FAILED%5Cn%22:%0A                status = result.RESULT_FALSE_REACH%0A                break%0A            elif (%0A                line == %22VERIFICATION UNKNOWN%5Cn%22%0A                or line == %22VERIFICATION BOUNDED TRUE%5Cn%22%0A            ):%0A                status = result.RESULT_UNKNOWN%0A                break%0A%0A        return status%0A

add tool-info for BRICK (#461)