47 lines
1.2 KiB
Python
47 lines
1.2 KiB
Python
|
from __future__ import annotations
|
||
|
|
||
|
from abc import ABC, abstractmethod
|
||
|
|
||
|
|
||
|
class Backend(ABC):
|
||
|
def __init__(
|
||
|
self,
|
||
|
modulename,
|
||
|
sources,
|
||
|
extra_objects,
|
||
|
build_dir,
|
||
|
include_dirs,
|
||
|
library_dirs,
|
||
|
libraries,
|
||
|
define_macros,
|
||
|
undef_macros,
|
||
|
f2py_flags,
|
||
|
sysinfo_flags,
|
||
|
fc_flags,
|
||
|
flib_flags,
|
||
|
setup_flags,
|
||
|
remove_build_dir,
|
||
|
extra_dat,
|
||
|
):
|
||
|
self.modulename = modulename
|
||
|
self.sources = sources
|
||
|
self.extra_objects = extra_objects
|
||
|
self.build_dir = build_dir
|
||
|
self.include_dirs = include_dirs
|
||
|
self.library_dirs = library_dirs
|
||
|
self.libraries = libraries
|
||
|
self.define_macros = define_macros
|
||
|
self.undef_macros = undef_macros
|
||
|
self.f2py_flags = f2py_flags
|
||
|
self.sysinfo_flags = sysinfo_flags
|
||
|
self.fc_flags = fc_flags
|
||
|
self.flib_flags = flib_flags
|
||
|
self.setup_flags = setup_flags
|
||
|
self.remove_build_dir = remove_build_dir
|
||
|
self.extra_dat = extra_dat
|
||
|
|
||
|
@abstractmethod
|
||
|
def compile(self) -> None:
|
||
|
"""Compile the wrapper."""
|
||
|
pass
|