@@ -507,9 +507,20 @@ def deps(self):
507507 return self .setup .folders .deps
508508
509509 @property
510- def deps_lib (self ):
510+ def deps_lib_dir (self ):
511511 return self .deps / "lib"
512512
513+ @property
514+ def deps_lib64_dir (self ):
515+ return self .deps / "lib64"
516+
517+ @property
518+ def deps_lib_dirs (self ):
519+ lib_dirs = [self .deps_lib_dir ]
520+ if self .deps_lib64_dir .exists ():
521+ lib_dirs .append (self .deps_lib64_dir )
522+ return lib_dirs
523+
513524 def xenv_CPATH (self ):
514525 folder = self .deps / "include"
515526 if folder .exists ():
@@ -522,7 +533,7 @@ def xenv_CPATH(self):
522533
523534 def xenv_LDFLAGS (self ):
524535 if self .modules .selected :
525- yield f"-L{ self . deps_lib } "
536+ yield from ( f"-L{ lib_dir } " for lib_dir in self . deps_lib_dirs )
526537
527538 def xenv_PATH (self ):
528539 yield f"{ self .deps } /bin"
@@ -536,7 +547,7 @@ def xenv_LD_LIBRARY_PATH(self):
536547 def xenv_PKG_CONFIG_PATH (self ):
537548 yield from os .environ .get ("PKG_CONFIG_PATH" , "" ).split (":" )
538549 if self .modules .selected :
539- yield f"{ self .deps_lib } /pkgconfig"
550+ yield f"{ self .deps_lib_dir } /pkgconfig"
540551
541552 def _do_run (self , program , * args , fatal = True , env = None ):
542553 return runez .run (program , * args , passthrough = self ._log_handler , stdout = None , stderr = None , fatal = fatal , env = env )
@@ -747,10 +758,12 @@ def _prepare(self):
747758 # Some libs get funky permissions for some reason
748759 super ()._prepare ()
749760 self .setup .ensure_clean_folder (self .install_folder )
750- for path in runez .ls_dir (self .deps_lib ):
751- if not path .name .endswith (".la" ):
752- expected = 0o755 if path .is_dir () else 0o644
753- current = path .stat ().st_mode & 0o777
754- if current != expected :
755- LOG .info ("Corrected permissions for %s (was %s)" , runez .short (path ), oct (current ))
756- path .chmod (expected )
761+
762+ for lib_dir in self .deps_lib_dirs :
763+ for path in runez .ls_dir (lib_dir ):
764+ if not path .name .endswith (".la" ):
765+ expected = 0o755 if path .is_dir () else 0o644
766+ current = path .stat ().st_mode & 0o777
767+ if current != expected :
768+ LOG .info ("Corrected permissions for %s (was %s)" , runez .short (path ), oct (current ))
769+ path .chmod (expected )
0 commit comments