[Pidgin] #12218: [PATCH] Windows build unix-style

Pidgin trac at pidgin.im
Tue Jun 22 09:40:38 EDT 2010


#12218: [PATCH] Windows build unix-style
--------------------------------------+-------------------------------------
 Reporter:  pier11                    |     Owner:  rekkanoryo
     Type:  patch                     |    Status:  new       
Component:  unclassified              |   Version:  2.7.1     
 Keywords:  Windows build unix-style  |  
--------------------------------------+-------------------------------------
 Hi Pidgin team,

 I'm submitting patch to make Windows build/installation to be in line with
 traditional Unix-like ones.

 I.e. use auto-tools for build and regular File Hierarchy System layout
 (FHS) - i.e. /bin /lib /share etc.

 The patch doesn't interfere with traditional windows build practice, but
 adds an alternative.

 The need in such build method is to use Pidgin in ecosystem of other open
 source applications (like Evolution, GIMP, Inkscape) in windows software
 collections/distributions like
 [https://build.opensuse.org/project/show?project=windows%3Amingw%3Awin32
 windows:mingw:win32] project on OBS (openSUSE Build Service) or
 [https://sourceforge.net/apps/mediawiki/takeoffgw/index.php?title=Main_Page
 TakeoffGW]. Those systems are closer to "normal" unix systems, utilize
 common to unix directory layout and ship with auto-tools. I think it'll be
 beneficial for Cygwin project as well.

 Also resulting libraries contain proper headers and pkg-config files, so
 it simplifies development of Pidgin plugins.

 I've created
 '''[https://build.opensuse.org/package/show?package=mingw32-pidgin&project=home%3Apier11%3Amingw%3Awin32
 mingw32-pidgin]''' and
 '''[https://build.opensuse.org/package/show?package=mingw64-pidgin&project=home%3Apier11%3Amingw%3Awin64
 mingw64-pidgin]''' pilot packages in my home project on OBS and intend to
 propose them to windows:mingw:win32 (:win64) projects.
 [[BR]]
 [[BR]]


 ''Notes on patch:''

 1. Since Windows platform needs ''-no-undefined'' symbols when creating
 dlls, it was required to build for example core libs first (like libpurple
 and libpidgin) and only then build plugins. For this same reason libpurple
 had emerged (the same as in existing Windows build).

 2. Libtool is specific beast. For lib (dll) to be installed to /bin
 directory (a normal Windows practice), the lib should not be a ''-module''
 and have ''lib'' prefix. Hence ''libpidgin.dll'' (not ''pidgin.dll''). The
 rest of namings matches to ones in existing Windows build.

 3. I had to install pidgin plugins to ''purple-2'' directory, since the
 current windows code doesn't make difference between install directories
 of pidgin and purple plugins. So just to not alter Pidgin code much
 initially.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/12218>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list