[clang] [llvm] [libclang/python] Enable packaging libclang bindings (PR #125806)

2025-03-06 Thread Henry Schreiner via cfe-commits


@@ -0,0 +1,36 @@
+[build-system]
+requires = ["setuptools>=42", "setuptools_scm==8.1.0"]
+build-backend = "setuptools.build_meta"
+
+[project]
+name = "clang"
+description = "libclang python bindings"
+readme = {file = "README.txt", content-type = "text/plain"}
+
+license = {text = "Apache-2.0 WITH LLVM-exception"}

henryiii wrote:

It looks like you are trying other do a SPDX classifier expression here; this 
is supported by most backends now except setuptools (and flit-core doesn't 
support complex expressions yet). Personally, I'd not use setuptools here; 
hatchling is faster and does support SPDX expressions. Setuptools is working 
towards support, but it's several METADATA versions behind, and it had a 
pre-finalization version of support that now needs to be changed to what was 
accepted with [PEP 639](https://peps.python.org/pep-0639/).

If you don't use a modern backend and set `license "Apache-2.0 WITH 
LLVM-exception"`, then you need to use a `License :: ...` classifier. This 
`license.text` field isn't meaningful, it's really just a place to describe how 
the license differs from what's in the classifiers. That's one reason this was 
changed with PEP 639. :)

https://github.com/llvm/llvm-project/pull/125806
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [libclang/python] Enable packaging libclang bindings (PR #125806)

2025-03-06 Thread Henry Schreiner via cfe-commits


@@ -0,0 +1,36 @@
+[build-system]
+requires = ["setuptools>=42", "setuptools_scm==8.1.0"]

henryiii wrote:

Is there a reason you've pinned to setuptools_scm exactly, but not setuptools? 
I would generally avoid this, unless there's a really good reason to pin it.

https://github.com/llvm/llvm-project/pull/125806
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits