111986Sandreas.sandberg@arm.comfrom ._version import version_info, __version__ # noqa: F401 imported but unused 211986Sandreas.sandberg@arm.com 311986Sandreas.sandberg@arm.com 414299Sbbruce@ucdavis.edudef get_include(user=False): 514299Sbbruce@ucdavis.edu from distutils.dist import Distribution 611986Sandreas.sandberg@arm.com import os 714299Sbbruce@ucdavis.edu import sys 814299Sbbruce@ucdavis.edu 914299Sbbruce@ucdavis.edu # Are we running in a virtual environment? 1014299Sbbruce@ucdavis.edu virtualenv = hasattr(sys, 'real_prefix') or \ 1114299Sbbruce@ucdavis.edu sys.prefix != getattr(sys, "base_prefix", sys.prefix) 1214299Sbbruce@ucdavis.edu 1314299Sbbruce@ucdavis.edu # Are we running in a conda environment? 1414299Sbbruce@ucdavis.edu conda = os.path.exists(os.path.join(sys.prefix, 'conda-meta')) 1514299Sbbruce@ucdavis.edu 1614299Sbbruce@ucdavis.edu if virtualenv: 1714299Sbbruce@ucdavis.edu return os.path.join(sys.prefix, 'include', 'site', 1814299Sbbruce@ucdavis.edu 'python' + sys.version[:3]) 1914299Sbbruce@ucdavis.edu elif conda: 2014299Sbbruce@ucdavis.edu if os.name == 'nt': 2114299Sbbruce@ucdavis.edu return os.path.join(sys.prefix, 'Library', 'include') 2214299Sbbruce@ucdavis.edu else: 2314299Sbbruce@ucdavis.edu return os.path.join(sys.prefix, 'include') 2414299Sbbruce@ucdavis.edu else: 2514299Sbbruce@ucdavis.edu dist = Distribution({'name': 'pybind11'}) 2614299Sbbruce@ucdavis.edu dist.parse_config_files() 2714299Sbbruce@ucdavis.edu 2814299Sbbruce@ucdavis.edu dist_cobj = dist.get_command_obj('install', create=True) 2914299Sbbruce@ucdavis.edu 3014299Sbbruce@ucdavis.edu # Search for packages in user's home directory? 3114299Sbbruce@ucdavis.edu if user: 3214299Sbbruce@ucdavis.edu dist_cobj.user = user 3314299Sbbruce@ucdavis.edu dist_cobj.prefix = "" 3414299Sbbruce@ucdavis.edu dist_cobj.finalize_options() 3514299Sbbruce@ucdavis.edu 3614299Sbbruce@ucdavis.edu return os.path.dirname(dist_cobj.install_headers) 37