mingw-cross-env-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mingw-cross-env-list] [patch] upgrade packages glib gtk


From: Mark Brand
Subject: Re: [Mingw-cross-env-list] [patch] upgrade packages glib gtk
Date: Wed, 21 Apr 2010 08:50:21 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.2pre) Gecko/20100308 SUSE/3.1b1-6.3 Thunderbird/3.1b1

 Hi Volker,

Your patch seems to be mostly okay, but I noticed two things
that need some discussion before I can include your patch.

Yes, some things seem to have changed with this glib version. The native tool "gschema-compile" is needed to make the "gio" cross target. This cascades into all the other changes in glib.mk.

The symbolic link lets the cross build find gschema-compile at the expected path.

The native tool "gschema-compile" is built by the native "gio" target.

The native gio needs the xdgmime, inotify and libasyncns subprojects and gmodule. It also needs the "--enable-threads" option. I reached this conclusion by trial and error and looking at the messages in the log.

Gio seems to have become more important for building gtk+ as well.

1)  Are the following commands really necessary?

+    $(MAKE) -C '$(1).native/gio/xdgmime' -j '$(JOBS)'
+    $(MAKE) -C '$(1).native/gio/inotify' -j '$(JOBS)'
+    $(MAKE) -C '$(1).native/gio/libasyncns' -j '$(JOBS)'

As far as I understand, these should be called automatically
when you run:

+    $(MAKE) -C '$(1).native/gio'     -j '$(JOBS)'


That's what I expected too, but it doesn't happen that way. I have not looked at the makefiles to figure out why.

2)  You are enabling threading in glib:

-        --disable-threads \
+        --enable-threads \

This is generally a good thing, but caused some trouble in
the past, probably due to problems with the pthreads-w32
library. So I guess it is okay to keep that change, but it
means that we _must_ sort out the known pthreads-w32 issues
as soon as possible.

As mentioned above, the build fails without this. I don't have an exact account of the error, but it is related to this definition:

glib-2.25.1/glib/gthread.h:365:#define G_LOCK_NAME(name) g__ ## name ## _lock

It manifests itself as the missing declaration g__cancellable_lock.

Did you try to run "test-gtk.exe" under Windows or Wine after
this change?

Yes. It cheerfully says "hello world".

regards,

Mark




reply via email to

[Prev in Thread] Current Thread [Next in Thread]