#!/usr/bin/env python
# Copyright (c) 2019 Trail of Bits, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import distutils.core
import os
import setuptools

DEEPSTATE_DIR = os.path.dirname(os.path.realpath(__file__))

setuptools.setup(
    name="deepstate",
    version="0.1",
    package_dir={"": "/tmp/pbulkbuild/devel/deepstate/work.earmv6hf/deepstate-61ae1ed422194bd879e50ee5b2bce93537310473/bin"},
    packages=['deepstate', 'deepstate.core', 'deepstate.executors',
              'deepstate.executors.fuzz', 'deepstate.executors.symex', 'deepstate.executors.auxiliary'],
    description="DeepState augments C/C++ Test-Driven Development with Fuzzing and Symbolic Execution",
    url="https://github.com/trailofbits/deepstate",
    author="Peter Goodman",
    author_email="peter@trailofbits.com",
    license="Apache-2.0",
    keywords="tdd testing symbolic execution",
    install_requires=["angr ; sys_platform != 'darwin'", "manticore ; sys_platform != 'darwin'"],
    extras_require={
        'dev': ['mypy']
    },
    entry_points={
        'console_scripts': [
            'deepstate = deepstate.executors.symex.manticore:main',
            'deepstate-angr = deepstate.executors.symex.angr:main',
            'deepstate-manticore = deepstate.executors.symex.manticore:main',

            'deepstate-afl = deepstate.executors.fuzz.afl:main',
            'deepstate-libfuzzer = deepstate.executors.fuzz.libfuzzer:main',
            'deepstate-eclipser = deepstate.executors.fuzz.eclipser:main',
            'deepstate-angora = deepstate.executors.fuzz.angora:main',
            'deepstate-honggfuzz = deepstate.executors.fuzz.honggfuzz:main',

            'deepstate-reduce = deepstate.executors.auxiliary.reducer:main',
            'deepstate-ensembler = deepstate.executors.auxiliary.ensembler:main'
        ]
    })
