import sys
import os

from bento.commands import hooks
from scipy._build_utils import get_g77_abi_wrappers

@hooks.pre_build
def pre_build(context):
    default_builder = context.default_builder

    def builder(extension):
        sources = extension.sources[:]

        # XXX: detect this properly
        if sys.platform == "darwin":
            info = {'extra_link_args': 'Accelerate'}
        else:
            info = {}
	sources += [os.path.relpath(f, os.path.abspath(os.path.dirname(__file__)))
                    for f in get_g77_abi_wrappers(info)]

        return default_builder(extension,
                               features="c fc cstlib pyext bento",
                               source=sources,
                               # Hack to make use of claoadable flags for static archive
                               use="cshlib")
    context.register_compiled_library_builder("arpack", builder)

    context.tweak_extension("_arpack", features="c fc pyext cshlib f2py bento",
                          use="arpack LAPACK CLIB")
