tech-pkg archive

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

Re: compat32-* packages for Wine



On Fri, Jul 12, 2019 at 07:26:35PM -0400, Greg Troxel wrote:
> I would like to take a step back and look at the bigger picture of what
> you are doing.  This seems hugely useful, but I'm not sure which way is
> up.
> 
> You are talking about packages "which crosscompile programs for i386 on
> amd64".  I would like to understand how that differs from
> "crosscompiling a program for i386" separately from host architecture,
> and if this is just a specific case of using generic crossbuild
> infrastructure.

I think crosscompiling a program for i386 separately from host
architecture is the most generic way of looking at it. And yes,
crosscompiling a program for i386 on amd64 is just a specific use-case
that I focussed on owing to porting Wine to amd64.

> I wonder if the packages that are created are in fact the same as the
> package that would be built on i386, modulo timestamps and other things
> people worry about during reproducible builds.   And if not, why not.

I don't know about this issue and I haven't come across it yet. I
shall keep an eye out though.

> 
> Given an i386 package and an amd64 system, it seems reasonable to
> install it with a chroot of /emul/netbsd32, perhaps with a separaate
> /emul/netbsd32/var/db/pkg.  I would look at how Linux packages are
> installed on NetBSD, and how their metadata is handled, to see how to do
> this.

Ah, I see. I will look into this.

> 
> While crosscompiling is good, it may be that it ends up that there are
> packages that have to be built on i386 and are then just installed on an
> amd64 system.
>

Oh. At least, as of right now, I haven't come across any packages of
such nature. I shall keep an eye out for such packages.

> I wonder if the wine you are building will be a 32-bit wine binary that
> runs under netbsd32 emulation, and how that's different from the wine
> built on i386.  I get it that you will have to make the netbsd32
> emulation do a lot of complicated stuff that probably does not work now.
> But I wonder how much of the 32-bit cross is about making wine work on
> amd64, vs making it easy to build.
>

I am not trying to crosscompile wine 32-bit so that I can run it using
compat_netbsd32. I have been trying to do a Wine WoW64 build which
requires crosscompiling wine 32-bit, and using the latter to inject 32
bit Wine libs, and whatever glue is required to make Wine 64-bit run
32-bit Windows applications on amd64.

> 
> Please don't take this as discouraging or cranky; I'm writing fromm the
> positiof of not really understanding what you are doing, and hoping to
> make the mechanisms that are developed simpler and more
> powerful/useful.  Hence I'm asking a lot of questions, which I realize
> may not now have crisp easy answers.
>

Not at all :)
I was just trying to get Wine WoW64 build to work as soon as possible,
and was hoping to find the right approach of doing things in the
process. I shall have a look at how we are handling linux packages and
try to adapt it for 32 bit packages.

--
zer


Home | Main Index | Thread Index | Old Index