Hi, Latest version of librsvg (2.46.0) uses libtool-rust, which produce .la file a bit different from gnu libtool. in particular, dependency_libs and libdir could be undefined.
but us libtool version doesn't like that: when libdir is undefined it makes warnings, and just die for dependency_libs (trying to use undef as an array doesn't work). The following patch makes us libtool to define these elements if there are undefined after parsing the .la file. With that, I was able to build librsvg-2.46.0 whereas without it just fail. Due to special nature of libtool, and current position in the release cycle, I would like to have feedback for this diff with a bulk build, to be sure to not breaking anything. Please note I need to update librsvg in order to commit lang/rust 1.38.0 (the current version of librsvg doesn't build with 1.38.0). Comments or OK (if the bulk successed) ? -- Sebastien Marie Index: LT/LaFile.pm =================================================================== RCS file: /cvs/src/usr.bin/libtool/LT/LaFile.pm,v retrieving revision 1.23 diff -u -p -r1.23 LaFile.pm --- LT/LaFile.pm 5 Sep 2014 10:36:39 -0000 1.23 +++ LT/LaFile.pm 26 Sep 2019 12:11:17 -0000 @@ -188,4 +188,18 @@ sub install } } +sub parse +{ + my ($class, $filename) = @_; + + my $info = $class->SUPER::parse($filename); + + $info->{deplib_list} = LT::UList->new + if (not defined $info->{deplib_list}); + $info->{libdir} = '' + if (not defined $info->{libdir}); + + return $info; +} + 1;