openexr-devel
[Top][All Lists]
Advanced

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

Re: [Openexr-devel] CreateDLL eliminates C style wrapper functions


From: Ger Hobbelt
Subject: Re: [Openexr-devel] CreateDLL eliminates C style wrapper functions
Date: Thu, 11 Mar 2010 11:00:37 +0100

Yes, I did, and, no, they were not. It's just me veering off and paying attention to other things. For a proper move upstream the changes should be more clearly documented as others are using this material in their production evironments too and not everybody likes a 'hey, what the heck, let's upgrade!' without some pretty detailed prior notion of what they're getting themselves in to. ;-)

Anyway, attached two 7zip archives: one is the CreateDLL sources (pull a [visual] diff to see what I did, don't get flabberghasted by the code changes, just follow the comments and you should do fine; the changelog is at the top of createDLL.cpp and should proceed where the public ILM version stops); the other is just an example vcproj (Half.vcproj) to show what may/may not have to change for you to make it work (passing the right args to CreateDLL in the postbuild process).


Why do I call that Hlf.vcproj one a *sample*?
Because we have very strict project organization rules around here, where every solution MUST dump all build binaries in the <_solution_dir>/bin/Debug|ReleaseXYZ directory, where XYZ is a combo of target CPU and platform. This means that the OpenEXR vcproj files all were edited to not only deliver in the original spot but also in this directory so that our package and test scripts can handle it all (one structure for everything means less FUBAR before deadlines and less maintenance on stuff like install scripts, which you'd rather not edit, ever. ;-)

Just open the vcproj with notepad++ or similar text editor, it's XML anyway, and have a look-see when you compare with your own half.vcproj. The different destination directory stuff should pop out pretty quickly. The batchfiles have been edited for this purpose as well, but I didn't include them; just copying files to different destinations, is all.

IlmBase-src.7z is the CreateDLL source code + adjusted vcproj. Code should be drop-in (95% success chance is my guess); take care **NOT** to just drop-in the CreateDLL.vcproj due to the above-mentioned altered project delivery structure. Pull a diff on that one and copy&paste what you know will work and take it from there.

The CreateDLL source has several comment chunks where I describe what I found on our systems and what tricks I pulled to make the bugger do my bidding to a tee. code organization wise it's the .MAP file parser that got an overhaul, plus added sprinkles to have CreateDLL pass along some command args to the underlying linker plus other tidbits which I forgot but probably use quite frequently over here.

Can't guarantee within-24h response, but send me any issues and I'll try to resolve them asap.


On Thu, Mar 11, 2010 at 9:21 AM, Stephan Menzel <address@hidden> wrote:
Hi Ger,

On Thu, Mar 11, 2010 at 12:00 AM, Ger Hobbelt <address@hidden> wrote:
> Anyway, this is off the top of my head. Just give the word and a CreateDLL
> source will be on its way.

Wow, that would be very helpful indeed. Much appreciated.
Did you ever consider bringing this into upstream or are the ILM guys
hesitant about this?

Cheers,

Stephan



--
Met vriendelijke groeten / Best regards,

Ger Hobbelt

--------------------------------------------------
web:    http://www.hobbelt.com/
       http://www.hebbut.net/
mail:   address@hidden
mobile: +31-6-11 120 978
--------------------------------------------------

Attachment: Half.vcproj.7z
Description: application/7z-compressed

Attachment: IlmBase-src.7z
Description: application/7z-compressed


reply via email to

[Prev in Thread] Current Thread [Next in Thread]