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

Re: MinGW cross compiled library packages for Debian



On Thu, Mar 09, 2006 at 01:36:04PM +0100, Volker Grabsch wrote:
> Dear Debian Mentors,
> 
> As already mentioned in my previous post, I plan to create mingw32
> cross compile packages for zlib, SDL, etc., based on the mingw32-*
> packages.
It isn't immediately clear that you intend to make these into official
packages .. is that the case?

If you just need to make the libs, what I did was "apt-get source
libfoo" (just for convenience, plus to pull in potentially useful
patches), then ./configure --prefix=mingw32... && make.

> There are many ways to do that, so I'm asking here for advise, to
> create them in "best practise". Here are my questions:
> 
> 1) The debian-devel list is too much traffic for me. Do I really
>    have to advertise my plans there?
So, I guess you do intend to create official packages, and more than a
couple of them?

>     3.2) Compiling from debian sources.
>         I could e.g. download the Debian sources of libsdl1.2,
>         and modify the debian/rules and some other files in debian/,
>         (manipulating ./configure parameters, etc.) to produce a
>         binary package "mingw32-libsdl1.2-dev".
>         However, this could clutter of the Debian source packages.
Yes, but you could also send a patch to the maintainer, and request
that your binary packages are cross-built at the same time as the
"native" packages are build; this avoids cluttering the source
packages, at the cost of having to convince maintainers to add
build-deps: mingw32 :)

> 4) In general, which packages should I orient towards?
> 

>     4.2) the current MinGW packages
>         (e.g. SDL-devel-1.2.9-mingw32.tar.gz)
I'm not familiar with this .. mingw32 has patches for sdl, etc?  You
might have to add these.

> Is it possible (and desirable) to produce a "native" and a
> "mingw32" build in parallel? I.e., from the same Debian sources?
Yep, and it deals with some stuff very elegantly.  You'll have to do
something like:

  ./configure $(CONFIG_OPTIONS) --host=$(DEB_HOST_GNU_TYPE) \
    --prefix=$(CURDIR)/debian/libfoo
  make
  make install 
  make clean
  ./configure $(CONFIG_OPTIONS) --host=i586-mingw32...
    --prefix=$(CURDIR)/debian/mingw32-libfoo
  make
  make install

Take a look at source packages like vim which build multiple variants
of themselves, like "vim-tiny".  Alternately, apt-cache search
'ompiled with '; in particular, 

libsdl1.2debian-all - Simple DirectMedia Layer (with all available options)
libsdl1.2debian-alsa - Simple DirectMedia Layer (with X11 and ALSA options)
libsdl1.2debian-arts - Simple DirectMedia Layer (with X11 and aRts options)
libsdl1.2debian-esd - Simple DirectMedia Layer (with X11 and esound options)
libsdl1.2debian-nas - Simple DirectMedia Layer (with X11 and NAS options)
libsdl1.2debian-oss - Simple DirectMedia Layer (with X11 and OSS options)
(nice, because you're already using sdl, I gather)

nagios-mysql - A host/service/network monitoring and management system
nagios-pgsql - A host/service/network monitoring and management system

libapache-mod-acct-mysql - Accounting module for Apache, mysql version
libapache-mod-acct-pgsql - Accounting module for Apache, postgresql version

...

Justin



Reply to: