Subject: Re: port windows CE code onto netbsd
To: Kamal R. Prasad <kamalp@kprasad.org>
From: David Brownlee <abs@NetBSD.org>
List: port-arm
Date: 11/03/2004 13:43:40
On Wed, 3 Nov 2004, Kamal R. Prasad wrote:

> Alright -thanks for the same. Wine as I understand provides a gui to handle 
> windows emulation [by intercepting winapi calls]. What I have is a couple of 
> static libraries developed on windows, but which need to be called by a 
> higher level application.  The static libraries contain std C functions like 
> malloc() -and no winapi calls and hence Wine is not a good fit.  But the 
> question is, how do we integrate that binary with netbsd code? Note the 
> static libs are in binary form to protect intellectual property -but if I had 
> the src code, it would have been 100% portable on netbsd.

 	If the library really doesn't make any external calls then you
 	should just be able to objcopy to convert it to elf and link it
 	into a NetBSD binary (with a possibly a little glue to match up
 	function calling semantics).

 	If it makes some external library calls such as malloc() then
 	you need to include another library which provides a 'windows'
 	wrapper to the native version of those functions (if the calling
 	semantivcs are different) - the PEACE project is a good example of
 	a more complete version of this
 	http://chiharu.haun.org/peace/status.html

 	Is there no way you could get the vendor to provide the object
 	code in native NetBSD form?

 	Its relatively simple to setup a windows box to compile
 	NetBSD/arm32 binaries. Maybe if you offered to build a toolchain
 	(donwload NetBSD and './build.sh -m evbarm toolchain' :)
 	and asked them to compile the source using it?

-- 
 		David/absolute       -- www.NetBSD.org: No hype required --