Win32 build updates (Patches attached)

Lee Roach phroggster at gmail.com
Sat May 5 03:35:31 CDT 2007


Since I can't create a new ticket with Trac, I figured I'd post these 
patches here.

I finally got around to setting up a local.mak for Guifications today, 
and noticed that I can once and for all build Guifications cleanly on 
win32 without ever manually building anything inside pidgin and 
libpurple. It's nice to finally have my Guifications and Plugin Pack 
source trees outside of pidgin, and for that I am grateful. This (long 
winded) email describes changes and problems encountered when I 
separated (oddly, integrated would probably be a better word) 
guifications and plugin pack from my pidgin build tree.

The following two paragraphs make the assumption that pidgin has not 
been made, and has not underwent 'make install'. Ideally, this would be 
done, but with the patches attached, it's no longer necessary. Pidgin 
sources from monotone exist at ~/pidgin-mtn, guifications at 
~/guifications-mtn, and plugin pack at ~/plugin_pack-mtn, with win32-dev 
existing there as well. I created a local.mak for guifications 
consisting of  "PIDGIN_TREE_TOP = $(GF_TOP)/../pidgin-mtn", and likewise 
for plugin pack "PIDGIN_TREE_TOP = $(PP_TOP)/../pidgin-mtn". All of this 
should be known, but is documented here purely for curious win32 
developers that may stumble upon this email in the future.

For guifications, make ran fine, but there was a trivial issue when 
running 'make install'. Since pidgin-mtn/win32-install-dir didn't exist, 
make died inside the GF_TOP/po folder. The attached patch fixes 
Guifications translations to get installed properly. The other changes 
included in the patch allow one to build directly from GF_TOP/src, 
without regard to whether GF_TOP has undergone a make already, as well 
as requiring a rebuild when gf_config.h or pidgin's version.h are updated.

For plugin pack, the damage was similar. A 'make install' would die out 
when attempting to copy album.dll to 
pidgin-mtn/win32-install-dir/plugins. Note, it should have been 
attempting to install to pidgin-mtn/win32-install-dir/plugins/album.dll, 
but my wacky build order threw it off. I removed the DLL_INSTALL_DIR 
variable from win_pp.mak, as an attempt to create DLL_INSTALL_DIR at 
install time threw several warnings of overwriting pidgin's makefile 
rules. There's little reason plugin pack should be using a different 
install directory, but one should be able to define 
PIDGIN_INSTALL_PLUGINS_DIR or PIDGIN_INSTALL_DIR inside their local.mak 
to overcome (untested). This has the benefit of following the proper 
layout defined upstream, while still allowing customization. I also 
changed the rule to create DLL_ZIP_DIR, to use 'mkdir -p', in case it's 
parent directories don't yet exist, which could theoretically happen if 
DLL_ZIP_DIR is overridden from local.mak.

With these patches, it is now possible to run make or make install on a 
virgin guifications or plugin pack, and properly build pidgin and 
libpurple deps as needed, whereas previously there were problems in 
corner cases. One can now run 'make install' from a clean plugin pack 
with a clean pidgin source tree, and get nothing but plugin pack's 
installed files in win32-install-dir, which is mostly what prompted me 
to email these patches. None of the attached changes are required in the 
least; they merely update your makefiles to handle more scenarios 
gracefully.

--Lee
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: guifications-win32.patch
Url: http://lists.guifications.org/pipermail/plugins-devel/attachments/20070505/f2efcaa8/attachment.diff 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: plugin_pack-win32.patch
Url: http://lists.guifications.org/pipermail/plugins-devel/attachments/20070505/f2efcaa8/attachment-0001.diff 


More information about the Plugins-devel mailing list