You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					43 lines
				
				1.0 KiB
			
		
		
			
		
	
	
					43 lines
				
				1.0 KiB
			| 
											5 years ago
										 | import os
 | ||
|  | import numpy
 | ||
|  | import sysconfig
 | ||
|  | 
 | ||
|  | from Cython.Build import cythonize
 | ||
|  | from Cython.Distutils import build_ext
 | ||
|  | from distutils.core import Extension, setup  # pylint: disable=import-error,no-name-in-module
 | ||
|  | 
 | ||
|  | def get_ext_filename_without_platform_suffix(filename):
 | ||
|  |   name, ext = os.path.splitext(filename)
 | ||
|  |   ext_suffix = sysconfig.get_config_var('EXT_SUFFIX')
 | ||
|  | 
 | ||
|  |   if ext_suffix == ext:
 | ||
|  |     return filename
 | ||
|  | 
 | ||
|  |   ext_suffix = ext_suffix.replace(ext, '')
 | ||
|  |   idx = name.find(ext_suffix)
 | ||
|  | 
 | ||
|  |   if idx == -1:
 | ||
|  |     return filename
 | ||
|  |   else:
 | ||
|  |     return name[:idx] + ext
 | ||
|  | 
 | ||
|  | 
 | ||
|  | class BuildExtWithoutPlatformSuffix(build_ext):
 | ||
|  |   def get_ext_filename(self, ext_name):
 | ||
|  |     filename = super().get_ext_filename(ext_name)
 | ||
|  |     return get_ext_filename_without_platform_suffix(filename)
 | ||
|  | 
 | ||
|  | 
 | ||
|  | setup(
 | ||
|  |   name='Cython transformations wrapper',
 | ||
|  |   cmdclass={'build_ext': BuildExtWithoutPlatformSuffix},
 | ||
|  |   ext_modules=cythonize(
 | ||
|  |   Extension(
 | ||
|  |     "transformations",
 | ||
|  |     sources=["transformations.pyx"],
 | ||
|  |     language="c++",
 | ||
|  |     extra_compile_args=["-std=c++14"],
 | ||
|  |     include_dirs=[numpy.get_include()],
 | ||
|  |   )
 | ||
|  | ))
 |