22name  = " s2geometry" 
33description  = " Computational geometry and spatial indexing on the sphere" 
44authors  = [
5-      { 
name  = 
" Dan Larkin-York" , 
email  = 
" [email protected] "  },
 6-      { 
name  = 
" Eric Veach" , 
email  = 
" [email protected] "  },
 7-      { 
name  = 
" Jesse Rosenstock" , 
email  = 
" [email protected] "  },
 8-      { 
name  = 
" Julien Basch" , 
email  = 
" [email protected] "  },
 9-      { 
name  = 
" Mike Playle" , 
email  = 
" [email protected] "  },
 10-      { 
name  = 
" Phil Elson" , 
email  = 
" [email protected] "  },
 11-      { 
name  = 
" Robert Coup" , 
email  = 
" [email protected] "  },
 12-      { 
name  = 
" Tiago Brito" , 
email  = 
" [email protected] "  },
 13-      { 
name  = 
" Zachary Burnett" , 
email  = 
" [email protected] "  },
 5+   { 
name  = 
" Dan Larkin-York" , 
email  = 
" [email protected] "  },
6+   { 
name  = 
" Eric Veach" , 
email  = 
" [email protected] "  },
7+   { 
name  = 
" Jesse Rosenstock" , 
email  = 
" [email protected] "  },
8+   { 
name  = 
" Julien Basch" , 
email  = 
" [email protected] "  },
9+   { 
name  = 
" Mike Playle" , 
email  = 
" [email protected] "  },
10+   { 
name  = 
" Phil Elson" , 
email  = 
" [email protected] "  },
11+   { 
name  = 
" Robert Coup" , 
email  = 
" [email protected] "  },
12+   { 
name  = 
" Tiago Brito" , 
email  = 
" [email protected] "  },
13+   { 
name  = 
" Zachary Burnett" , 
email  = 
" [email protected] "  },
1414]
1515requires-python  = " >=3.7" 
1616classifiers  = [
17-     " Programming Language :: Python :: 3"  ,
18-     " Operating System :: POSIX"  ,
19-     " License :: OSI Approved :: Apache Software License"  ,
20- ]
21- dynamic  = [
22-     " version"  ,
17+   " Programming Language :: Python :: 3"  ,
18+   " Operating System :: POSIX"  ,
19+   " License :: OSI Approved :: Apache Software License"  ,
2320]
21+ dynamic  = [" version"  ]
2422
2523[project .license ]
2624file  = " LICENSE" 
@@ -30,16 +28,15 @@ content-type = "text/plain"
3028Source  = " https://github.com/google/s2geometry" 
3129
3230[project .optional-dependencies ]
33- test  = [
34-     " pytest"  ,
35- ]
31+ test  = [" pytest"  ]
3632
3733[build-system ]
3834requires  = [
39-     " wheel"  ,
40-     " setuptools"  ,
41-     " setuptools_scm[toml]"  ,
42-     " cmake_build_extension"  ,
35+   " wheel"  ,
36+   " setuptools"  ,
37+   " setuptools_scm[toml]"  ,
38+   " cmake_build_extension"  ,
39+   " swig"  ,
4340]
4441build-backend  = " setuptools.build_meta" 
4542
@@ -48,11 +45,53 @@ zip-safe = false
4845include-package-data  = false 
4946
5047[tool .setuptools .packages .find ]
51- where  = [
52-     " src"  ,
53- ]
48+ where  = [" src"  ]
5449namespaces  = false 
5550
5651[tool .setuptools .package-dir ]
5752""  = " src" 
5853
54+ [tool .cibuildwheel ]
55+ #  manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64"
56+ build-frontend  = " build[uv]" 
57+ build  = " cp3*-manylinux_x86_64 cp3*-macosx_x86_64 cp3*-macosx_arm64" 
58+ #  test-requires = "pytest"
59+ #  test-command = "pytest {project}/src/python/"
60+ 
61+ [tool .cibuildwheel .environment ]
62+ MACOSX_DEPLOYMENT_TARGET  = 14.0 
63+ 
64+ [tool .cibuildwheel .linux ]
65+ #  repair-wheel-command = ""
66+ #  the EPEL9 package `abseil-cpp` is out of date, so we have to build `abseil-cpp` from source
67+ before-all  = """ 
68+ yum install -y gflags-devel glog-devel gtest-devel openssl-devel  
69+ git clone https://github.com/abseil/abseil-cpp.git && cd ./abseil-cpp 
70+ git checkout 20240116.2 
71+ mkdir ./build && cd ./build 
72+ cmake -DCMAKE_CXX_STANDARD=17 -DABSL_PROPAGATE_CXX_STD=ON -DABSL_ENABLE_INSTALL=ON -DBUILD_TESTING=off ..  
73+ cmake --build . --parallel --target=install 
74+ """ 
75+ 
76+ [tool .cibuildwheel .macos ]
77+ before-all  = """ 
78+ git clone https://github.com/gflags/gflags.git && cd ./gflags 
79+ mkdir ./build && cd ./build 
80+ cmake .. -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTING=OFF 
81+ cmake --build . --parallel --target install 
82+ cd ../../ 
83+ git clone https://github.com/google/glog.git && cd ./glog 
84+ cmake -S . -B ./build && cd ./build 
85+ cmake --build . --parallel --target install 
86+ cd ../../ 
87+ git clone https://github.com/openssl/openssl.git && cd ./openssl 
88+ mkdir ./build && cd ./build 
89+ ../Configure install 
90+ cmake --build . --parallel --target install 
91+ cd ../../ 
92+ git clone https://github.com/abseil/abseil-cpp.git && cd ./abseil-cpp  
93+ git checkout 20240116.2 
94+ mkdir ./build && cd ./build 
95+ cmake -DCMAKE_CXX_STANDARD=17 -DABSL_PROPAGATE_CXX_STD=ON -DABSL_ENABLE_INSTALL=ON -DBUILD_TESTING=off ..  
96+ cmake --build . --parallel --target=install 
97+ """ 
0 commit comments