69 if sys.version_info < (2, 7):
71 if platform.system()
in [
'Darwin',
'Windows']:
72 report_error(f
"Not supported on platform {platform.system()}")
74 pykids_include_path = os.getenv(
'KIDS_INCLUDE_PATH')
75 if not pykids_include_path:
76 report_error(
"Set KIDS_INCLUDE_PATH to point to the include directory for KIDS")
77 pykids_lib_path = os.getenv(
'KIDS_LIB_PATH')
78 if not pykids_lib_path:
79 report_error(
"Set KIDS_LIB_PATH to point to the lib directory for KIDS")
80 library_dirs=[pykids_lib_path]
81 include_dirs=pykids_include_path.split(
';') + [numpy.get_include()]
83 define_macros = [(
'MAJOR_VERSION', MAJOR_VERSION_NUM),
84 (
'MINOR_VERSION', MINOR_VERSION_NUM)]
89 "name":
"pykids._kids",
90 "sources": [
"swig/KIDSSwig.cxx"],
91 "include_dirs": include_dirs,
92 "define_macros": define_macros,
93 "library_dirs": library_dirs,
94 "libraries": libraries,
95 "extra_compile_args": [
'-std=c++11'],
96 "extra_link_args": [],
97 "runtime_library_dirs":library_dirs,
100 print(f
"library_dirs={library_dirs}")
101 print(f
"include_dirs={include_dirs}")
102 print(f
"libraries={libraries}")
106 "version": f
"{MAJOR_VERSION_NUM}.{MINOR_VERSION_NUM}.{BUILD_INFO}",
107 "author":
"Xin He | Liu-group",
108 "license":
"Python Software Foundation License (BSD-like)",
109 "url":
"https://github.com/xshinhe/KIDS",
114 "pykids": [
"libpykids_v1.so"],
116 "platforms": [
"Linux"],
117 "description":
"Python wrapper for KIDS",
118 "long_description":
"""
119 KIDS (Kernel Integrated Dynamics Simulator) offers an open-source framework tailored for simulating
120 chemical and physical dynamics, with a primary focus on atomic and molecular scales in condensed matter.
121 It is designed for (classical / qauntum) dynamics simulation of small system, few-body system, reduced
122 systems, and even large many-particle (i.e. molecules & condensed matter) systems. It provides a versatile
123 platform for the development of advanced algorithms, offering ease of use and accessibility at a minimal
127 Extension(**extension_args),
129 "pykids.libpykids_v2",
130 sorted(glob(
"pybind11/libpykids_v2.cpp")),
131 include_dirs=include_dirs,
132 library_dirs=library_dirs,
134 extra_compile_args=[
'-lKIDS',
'-Wl,-rpath,/usr/local/kids/lib'],
135 extra_link_args=[
'-Wl,-R/usr/local/kids/lib'],
138 "pykids.ext.examples",
140 "ext/examples/test.cpp",
143 include_dirs=include_dirs + [
144 "ext/examples/include",