'The function that determines the system specific binary that should be
used in the pipeline. In case, the system is not known the default senna binary will
be used.'

def executable(self, base_path):

    os_name = system()
    if (os_name == u'Linux'):
        bits = architecture()[0]
        if (bits == u'64bit'):
            return path.join(base_path, u'senna-linux64')
        return path.join(base_path, u'senna-linux32')
    if (os_name == u'Windows'):
        return path.join(base_path, u'senna-win32.exe')
    if (os_name == u'Darwin'):
        return path.join(base_path, u'senna-osx')
    return path.join(base_path, u'senna')
