README This file tracks changes made to gnome-lib/packages for Greenstone. The contents of glib-2.28.1.tar.gz and libxml2-2.9.0.tar.gz have been modified to allow these to compile on Darwin. They were already compiling on Linux machines without requiring any changes. After the changes were made, they compile on Darwin while still compiling on Linux. Checked by compiling GS3 on both Mac Darwin and CentOS Linux. The bugfixes to get (this version of) gnome-lib to compile on Darwin: 1. In gs-glib-2.28.1/glib/gatomic.c Bug error was "gatomic.c:885: error: syntax error before '*' token" Solution described at http://code.google.com/p/osxwinebuilder/issues/detail?id=16 which states 'Alternatively I got it to compile by adding an extra #include "gthread.h" just before line 885 in gatomic.c, although I guess from the surrounding comments that that would result in inferior performance' When compiling on LSB-32bit, ran in to a compilation error because it could not find 'linux/magic.h'. This appears to be linked to the fact that LSB is using quite an old version of the kernal headers (2.4?). Newer version of GLIB have a fix for this. At this stage we're not planning on jumping to such a newer version (in case it break other things, such as cross-compiling for Android). So we have taken the autoconf fix for this, and added it in to this version of the source code. Changed 'configure.ac' and 'glib/gfileutils.c' 2. In gs-libxml2-2.9.0/threads.c a. First of 2 bugfixes to version gs-libxml2-2.9.0/threads.c is an INSERT of a new line around line 146 For a discussion, see http://stackoverflow.com/questions/12484664/what-am-i-doing-wrong-when-installing-lxml-on-mac-os-x-10-8-1 For the bugfixes to the 2.9.0 sourcecode see https://git.gnome.org/browse/libxml2/commit/?id=3f6cfbd1d38d0634a2ddcb9a0a13e1b5a2195a5e static pthread_once_t once_control_init = PTHREAD_ONCE_INIT; + static pthread_mutex_t global_init_lock = PTHREAD_MUTEX_INITIALIZER; b. The 2nd and final bugfix to version gs-libxml2-2.9.0/threads.c is a DELETION of a line followed by an INSERT of a new line around line 146 - once_control = PTHREAD_ONCE_INIT; + once_control = once_control_init;