xref: /libCEED/examples/python/setup_qfunctions.py (revision 4a46e67df50c06c939702143cae794ef585805bd)
1from setuptools import setup, Extension
2from sys import platform
3import os
4
5# Get CEED directory
6ceed_dir = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
7
8# Include directories
9include_dirs = [os.path.join(ceed_dir, "include")]
10
11# Library directories
12library_dirs = [os.path.join(ceed_dir, "lib")]
13
14# Source files
15sources = ["qfunctions/qfunctions.c"]
16
17# Compiler arguments
18extra_compile_args = []
19if platform == "linux" or platform == "linux2" or platform == "darwin":
20    extra_compile_args = ["-O3", "-march=native", "-std=c99"]
21
22# Define the extension module
23qfunctions = Extension("libceed_c_qfunctions",
24                       sources=sources,
25                       include_dirs=include_dirs,
26                       library_dirs=library_dirs,
27                       libraries=["ceed"],
28                       extra_compile_args=extra_compile_args)
29
30# Setup
31setup(name="libceed_c_qfunctions",
32      ext_modules=[qfunctions])
33