[+] partially migrate pr34 to meson.build
1. add wasm toolchain for meson;
This commit is contained in:
		
							parent
							
								
									0a6e82b616
								
							
						
					
					
						commit
						0166dc4756
					
				
							
								
								
									
										13
									
								
								meson/toolchains/wasm-cross-meson.ini
									
									
									
									
									
										Normal file
									
								
							
							
								
								
								
								
								
									
									
								
							
						
						
									
										13
									
								
								meson/toolchains/wasm-cross-meson.ini
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,13 @@ | ||||
| [binaries] | ||||
| cpp = 'em++' | ||||
| c = 'emcc' | ||||
| ar = 'emar' | ||||
| windres = '/usr/bin/false' | ||||
| ; exe_wrapper = '/usr/bin/false' | ||||
| exe_wrapper = 'node' | ||||
| 
 | ||||
| [host_machine] | ||||
| system = 'linux' | ||||
| cpu_family = 'x86_64' | ||||
| cpu = 'x86_64' | ||||
| endian = 'little' | ||||
| @ -47,6 +47,7 @@ class CLI(_cli.CLI): | ||||
|                 source_dir=self.settings.base_dir / 'python', | ||||
|                 build_dir=self.settings.base_dir / 'tmp' / 'online' / 'fxreader' / 'pr34' / 'build', | ||||
|                 dest_dir=self.settings.base_dir / 'tmp' / 'online' / 'fxreader' / 'pr34' / 'install', | ||||
|                 meson_path=self.settings.base_dir / 'python' / 'meson.build', | ||||
|             ) | ||||
|         } | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										60
									
								
								python/meson.build
									
									
									
									
									
										Normal file
									
								
							
							
								
								
								
								
								
									
									
								
							
						
						
									
										60
									
								
								python/meson.build
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,60 @@ | ||||
| project( | ||||
| 	run_command( | ||||
| 		'tomlq', '-r', '.project.name', 'pyproject.toml', | ||||
| 		check: true | ||||
| 	).stdout().strip('\n'), | ||||
| # 	'online.fxreader.uv', | ||||
| # 	['c', 'cpp'], | ||||
| 	version: '0.1.5.16+27.7', | ||||
| # 	default_options: [ | ||||
| # 		'cpp_std=c++23', | ||||
| # 		# 'prefer_static=true', | ||||
| # 	], | ||||
| ) | ||||
| 
 | ||||
| install_path = get_option('install_path') | ||||
| message('install_path = ' + install_path) | ||||
| 
 | ||||
| modes = get_option('modes') | ||||
| 
 | ||||
| fs = import('fs') | ||||
| 
 | ||||
| assert(modes.length() == 1, 'only one mode allowed') | ||||
| 
 | ||||
| mode = modes[0] | ||||
| 
 | ||||
| 
 | ||||
| project_root = '.' | ||||
| source_dir = project_root | ||||
| include_dir = project_root | ||||
| 
 | ||||
| 
 | ||||
| if mode == 'meson' | ||||
| # 	error() | ||||
| endif | ||||
| 
 | ||||
| if mode == 'pyproject' | ||||
| 	py = import('python').find_installation(pure: false) | ||||
| 
 | ||||
| 	namespace_path = meson.project_name().replace('.', '/') | ||||
| 
 | ||||
| 	module_root = py.get_install_dir() / namespace_path | ||||
| 
 | ||||
| 	py.install_sources( | ||||
| 		[ | ||||
| 			namespace_path, | ||||
| 		], | ||||
| 		subdir: namespace_path, | ||||
| 	) | ||||
| 
 | ||||
| 	install_data( | ||||
| 		files( | ||||
| # 			'py.typed', | ||||
| 			# '__init__.py', | ||||
| # 			'pyproject.toml', | ||||
| 			'py.typed', | ||||
| 		), | ||||
| 		install_dir : namespace_path, | ||||
| 		install_tag: 'python-runtime', | ||||
| 	) | ||||
| endif | ||||
| @ -1,6 +1,9 @@ | ||||
| [project] | ||||
| name = 'online.fxreader.pr34' | ||||
| version = '0.1.5.16+27.7' | ||||
| # version = '0.1.5.16+27.7' | ||||
| dynamic = [ | ||||
|     'version', | ||||
| ] | ||||
| 
 | ||||
| dependencies = [ | ||||
|     #"-r requirements.txt", | ||||
| @ -31,30 +34,8 @@ lint = [ | ||||
| early_features = ['default', 'early', 'lint',] | ||||
| 
 | ||||
| [build-system] | ||||
| requires = ['setuptools'] | ||||
| build-backend = 'setuptools.build_meta' | ||||
| 
 | ||||
| [tool.setuptools] | ||||
| include-package-data = false | ||||
| 
 | ||||
| [tool.setuptools.package-dir] | ||||
| 'online.fxreader.pr34' = 'online/fxreader/pr34' | ||||
| #package_dir = '..' | ||||
| #packages = ['online_fxreader'] | ||||
| #[tool.setuptools.packages.find] | ||||
| #where = ['../..'] | ||||
| #include = ['../../online_fxreader/vpn'] | ||||
| #exclude =['../../aiortc/*', '../../_cffi_src/*'] | ||||
| 
 | ||||
| #[tool.setuptools.packages.find] | ||||
| #exclude = ['*'] | ||||
| #include = ['*.py'] | ||||
| 
 | ||||
| # [tool.setuptools.exclude-package-data] | ||||
| # 'online.fxreader.pr34' = ['online/fxreader/pr34/py.typed'] | ||||
| 
 | ||||
| #[tool.setuptools.package-data] | ||||
| #'online_fxreader.vpn' = ['requirements.txt'] | ||||
| requires = ["meson-python", "pybind11"] | ||||
| build-backend = "mesonpy" | ||||
| 
 | ||||
| [project.scripts] | ||||
| online-fxreader-pr34-commands = 'online.fxreader.pr34.commands:commands_cli' | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user