Re: Building WoW64 packages

2012-06-25 Thread Marcus Meissner
On Mon, Jun 25, 2012 at 11:21:33PM +0200, Hilko Bengen wrote:
> Hi,
> 
> after the effort on the Debian wine packages has progressed to a point
> where it's likely that we'll release wheezy with a stable wine version
> that is not completely out of date, I'd like to take things a step
> further.
> 
> I recently spent some time looking at ways how we could build Debian
> packages for a shared WoW64 setup similar to what is described in
> http://wiki.winehq.org/Wine64. We will have to use separate build
> environments because having 32-bit and 64-bit -dev packages installed at
> the same time is not possible. Installing a 64-bit package that contains
> the build tools into a 32-bit environment should be possible, though.

This is not necessary.
 
> From looking at the build system, things happen in a different way when
> I run configure for the 32-bit components with --wine64=...:
> 
> 1. Manpages are not installed (WOW64_DISABLE)
> 2. --disable-fonts is implied
> 3. --disable-server is implied, so wineserver is not built. (The 64-bit
>wineserver is used instead, right?)

Correct.

> 4. --disable-tools is implied because the existing build tools are being
>used.


> Did I miss anything?
> 
> Leaving parts out is easy to understand, but how do the build tools that
> have been built for the x86_64 architecture affect the 32-bit components
> that are being built with them? Are different paths encoded into
> libwine?

Not really ... you can create 32bit and 64bit built Wine packages without
having cross dependencies.

You just need to pack less files for the 32bit one if you use it with a 64
prefix.

So for 32bit, do not use --with-wine64, just package the relevant things
for the -32bit build.

What is needed from the 32bit build in a WoW context is:
/usr/bin/wine
/usr/bin/wine-preloader
/usr/lib/wine/fakedlls/*
/usr/lib/libwine*.so*
/usr/lib/wine/*.so*

and for development additionally:
/usr/lib/wine/*.def

Ciao, Marcus




Building WoW64 packages

2012-06-25 Thread Hilko Bengen
Hi,

after the effort on the Debian wine packages has progressed to a point
where it's likely that we'll release wheezy with a stable wine version
that is not completely out of date, I'd like to take things a step
further.

I recently spent some time looking at ways how we could build Debian
packages for a shared WoW64 setup similar to what is described in
http://wiki.winehq.org/Wine64. We will have to use separate build
environments because having 32-bit and 64-bit -dev packages installed at
the same time is not possible. Installing a 64-bit package that contains
the build tools into a 32-bit environment should be possible, though.

>From looking at the build system, things happen in a different way when
I run configure for the 32-bit components with --wine64=...:

1. Manpages are not installed (WOW64_DISABLE)
2. --disable-fonts is implied
3. --disable-server is implied, so wineserver is not built. (The 64-bit
   wineserver is used instead, right?)
4. --disable-tools is implied because the existing build tools are being
   used.

Did I miss anything?

Leaving parts out is easy to understand, but how do the build tools that
have been built for the x86_64 architecture affect the 32-bit components
that are being built with them? Are different paths encoded into
libwine?

Cheers,
-Hilko