@@ -38,47 +38,50 @@ if (Deno.build.os === "windows") {
3838 try {
3939 libclang = Deno . dlopen ( libclangPath , IMPORTS ) ;
4040 } catch {
41- // Ignore
41+ libclang = Deno . dlopen (
42+ join ( libclangPath , "libclang.dll" ) ,
43+ IMPORTS ,
44+ ) ;
4245 }
4346 }
44- libclang = Deno . dlopen (
45- join ( libclangPath , "libclang.dll" ) ,
46- IMPORTS ,
47- ) ;
4847} else if ( Deno . build . os === "darwin" ) {
4948 if ( libclangPath . includes ( ".dylib" ) ) {
5049 try {
5150 libclang = Deno . dlopen ( libclangPath , IMPORTS ) ;
5251 } catch {
53- // Ignore
52+ libclang = Deno . dlopen (
53+ join ( libclangPath , "libclang.dylib" ) ,
54+ IMPORTS ,
55+ ) ;
5456 }
5557 }
56- libclang = Deno . dlopen (
57- join ( libclangPath , "libclang.dylib" ) ,
58- IMPORTS ,
59- ) ;
6058} else {
6159 if ( libclangPath . includes ( ".so" ) ) {
6260 try {
6361 libclang = Deno . dlopen ( libclangPath , IMPORTS ) ;
6462 } catch {
65- // Ignore
66- }
67- }
68- // Try plain libclang first, then 14.0.6, then 14, and finally try 13.
69- try {
70- libclang = Deno . dlopen ( join ( libclangPath , "libclang.so" ) , IMPORTS ) ;
71- } catch {
72- try {
73- libclang = Deno . dlopen (
74- join ( libclangPath , "libclang.so.14.0.6" ) ,
75- IMPORTS ,
76- ) ;
77- } catch {
63+ // Try plain libclang first, then 14.0.6, then 14, and finally try 13.
7864 try {
79- libclang = Deno . dlopen ( join ( libclangPath , "libclang.so.14 " ) , IMPORTS ) ;
65+ libclang = Deno . dlopen ( join ( libclangPath , "libclang.so" ) , IMPORTS ) ;
8066 } catch {
81- libclang = Deno . dlopen ( join ( libclangPath , "libclang.so.13" ) , IMPORTS ) ;
67+ try {
68+ libclang = Deno . dlopen (
69+ join ( libclangPath , "libclang.so.14.0.6" ) ,
70+ IMPORTS ,
71+ ) ;
72+ } catch {
73+ try {
74+ libclang = Deno . dlopen (
75+ join ( libclangPath , "libclang.so.14" ) ,
76+ IMPORTS ,
77+ ) ;
78+ } catch {
79+ libclang = Deno . dlopen (
80+ join ( libclangPath , "libclang.so.13" ) ,
81+ IMPORTS ,
82+ ) ;
83+ }
84+ }
8285 }
8386 }
8487 }
0 commit comments