12
12
#
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, see <http://www.gnu.org/licenses/>.
15
- import sys
16
15
16
+ from gvsbuild .utils .base_builders import Meson
17
17
from gvsbuild .utils .base_expanders import Tarball
18
18
from gvsbuild .utils .base_project import Project , project_add
19
19
20
20
21
21
@project_add
22
- class Librsvg (Tarball , Project ):
22
+ class Librsvg (Tarball , Meson ):
23
23
def __init__ (self ):
24
24
Project .__init__ (
25
25
self ,
26
26
"librsvg" ,
27
- version = "2.58.3 " ,
27
+ version = "2.59.1 " ,
28
28
repository = "https://gitlab.gnome.org/GNOME/librsvg" ,
29
29
archive_url = "https://download.gnome.org/sources/librsvg/{major}.{minor}/librsvg-{version}.tar.xz" ,
30
- hash = "49f29a0a92f4c2d19a2cb41e96ab2fce7eb5bde41850c8a914fcf655e3110944 " ,
30
+ hash = "6116267c7ddabfd4daaf1c341326da0a773139a7223e885ae40ee09bd6986ef6 " ,
31
31
dependencies = [
32
32
"cargo" ,
33
33
"cairo" ,
@@ -36,29 +36,26 @@ def __init__(self):
36
36
"libxml2" ,
37
37
"freetype" ,
38
38
],
39
- patches = [],
39
+ patches = [
40
+ # https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/1040
41
+ "001-fix-failed-to-rename-query-rust.patch" ,
42
+ ],
40
43
)
41
- if Project .opts .enable_gi :
42
- self .add_dependency ("gobject-introspection" )
43
-
44
- def build (self ):
45
- self .builder .mod_env ("INCLUDE" , "include\\ cairo" , add_gtk = True )
46
44
47
- b_dir = f"{ self .builder .working_dir } \\ { self .name } \\ win32"
48
-
49
- config = self .builder .opts .configuration
50
- gtk_dir = self .builder .gtk_dir
51
- rust_ver = Project .get_project ("cargo" ).version
52
- python = sys .executable
53
- cmd = f'nmake -f makefile.vc CFG={ config } "PREFIX={ gtk_dir } " CARGO=cargo RUSTUP=rustup "PYTHON={ python } " TOOLCHAIN_VERSION={ rust_ver } install'
54
-
55
- if Project .opts .enable_gi :
56
- cmd += " INTROSPECTION=1"
45
+ if self .opts .enable_gi :
46
+ self .add_dependency ("gobject-introspection" )
47
+ enable_gi = "enabled"
48
+ else :
49
+ enable_gi = "disabled"
57
50
58
- self .push_location (b_dir )
59
- self .exec_vs (cmd )
60
- self .pop_location ()
51
+ self .add_param (f"-Dintrospection={ enable_gi } " )
52
+ self .add_param ("-Ddocs=disabled" )
53
+ self .add_param ("-Dtests=false" )
54
+ self .add_param ("-Dvala=disabled" )
61
55
56
+ def build (self ):
57
+ self .builder .exec_cargo ("install cargo-c --locked" )
58
+ Meson .build (self )
62
59
self .install (r".\COPYING.LIB share\doc\librsvg" )
63
60
64
61
def post_install (self ):
0 commit comments