2525 "attrs" ,
2626 "cffi" ,
2727 "findlibs>=0.1.1" ,
28+ 'eccodeslib ; platform_system!="Windows"' ,
2829]
2930
30- ext_modules = [
31- setuptools .Extension (
32- "eccodes._eccodes" ,
33- sources = ["eccodes/_eccodes.cc" ],
34- language = "c++" ,
35- libraries = ["eccodes" ],
36- library_dirs = [os .environ ["LIBDIR" ]],
37- include_dirs = [os .environ ["INCDIR" ]],
38- )
39- ]
31+ if os .environ .get ("LIBDIR" , None ):
32+ ext_modules = [
33+ setuptools .Extension (
34+ "eccodes._eccodes" ,
35+ sources = ["eccodes/_eccodes.cc" ],
36+ language = "c++" ,
37+ libraries = ["eccodes" ],
38+ library_dirs = [os .environ ["LIBDIR" ]],
39+ include_dirs = [os .environ ["INCDIR" ]],
40+ )
41+ ]
42+ else :
43+ # NOTE this hack is due to downstream CI not yet supporting building
44+ ext_modules = []
4045
4146
4247def get_version () -> str :
@@ -52,11 +57,14 @@ def get_version() -> str:
5257
5358
5459def get_eccodeslib_dep () -> list [str ]:
55- eccodes_version = importlib .metadata .version ("eccodeslib" )
56- mj , mn , pt = eccodes_version .split ("." , 2 )
57- return [
58- f"eccodeslib >= { eccodes_version } , < { int (mj )+ 1 } " ,
59- ]
60+ try :
61+ eccodes_version = importlib .metadata .version ("eccodeslib" )
62+ mj , mn , pt = eccodes_version .split ("." , 2 )
63+ return [
64+ f"eccodeslib >= { eccodes_version } , < { int (mj )+ 1 } " ,
65+ ]
66+ except importlib .metadata .PackageNotFoundError :
67+ return []
6068
6169
6270class bdist_wheel_ext (bdist_wheel ):
0 commit comments