[Top][All Lists]

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

Re: [patch #3946] Add make support for windows PE resources

From: Sheldon Gill
Subject: Re: [patch #3946] Add make support for windows PE resources
Date: Sat, 16 Jul 2005 13:18:09 +0800
User-agent: Mozilla Thunderbird 1.0 (Windows/20041206)

Nicola Pero wrote:

> OK - I don't follow you - I suspect you got confused - why did you call the
> variable xxx_RC_FILES then ?

I did get confused. I changed RC_FILES to WINRES_FILES and RCFLAGS to WINRESFLAGS *after* I submitted the patch, not before. (Note, no 'D')

It isn't that important, anyway.

Also, on CVS we only add those rules for mingw32. Maybe we should always have

Windres is open source and supports elf targets so you can use it on Linux. Beside which I thought it cleaner to have unconditional support and allow the GNUmakefile to control things. I like leaving decisions in the hands of the programmer.

Ahm ... OK, good point and no big deal -- we can change it ... but ... but windres is not installed on my (fairly comprehensive) GNU/Linux ... so I guess it's not installed on most machines except for Windows.

That's the case. Unless you install a mingw32 cross...

I thought the only reason to use windres when programming with GNUstep was to have an application icon (and other Windows-specific resources) compiled into your app. :-)

Yes, windows specific resources for various reasons. I have a suspicion the ELF support stems from an idea of Linux native applications which call WINE libraries...

I suppose I could remove the conditionals, but that seems to imply that every GNUmakefile adding a Windows icon to the application will be clobbered with conditionals ... (no big deal though!)

Yes, and I think this is the way to go. It makes it nicely obvious when it is/isn't being included and leaves the decisions to the programmer.

I can't think of any case where you want a windres file to use on all platforms. That would cause your program not to compile on Linux or Apple (unless, presumably, you went throught the pain of downloading a version of windres working on your platform, and installed it). And you could/should bundle your resources using the standard OpenStep .app bundle methods that work reliably on all platforms!

So I would leave it as it is, maybe enable it on Cygwin as well rather than just Mingw ?

If you look at it from the "running on Windows" view then Cygwin should have it. If you take the "*nix compatibility layer" then it probably shouldn't. As I said earlier, I think "leave it to the programmer to decide the right conditionals" is the best choice.

Btw, I might have misunderstood the usage of .rc/windres files entirely ... to me it looked like the Windows icon was the main driver behind them.

For me the motivation to actually get it done was version resources. That way I could see it was -base 1.11d build31 and not -base 1.10.3r even though both files were called gnustep-base.dll

For very Step applications the main usage would be icons and version info. I also use -make for my pure C/C++ stuff thats related. For these projects windows resources become more important because they contain images, dialogs, strings etc.

Another comment is that in this patch you have $(RCFLAGS) ... maybe
Thanks! -- I agree this is a good point, and it's missing in the current gnustep-make. We probably need to add something like WINDRESFLAGS, similar to CFLAGS. Quite simple ... I'll add it tomorrow. :-)


BTW, there is a secondary reason I wanted windows resources. I have some objective-c tools which I'd like to put a GUI face on. An ATL front-end would quickly give me a completely native look while the plumbing was objective-c. Or I could go silly and write an objc layer on COMCTL32 and friends...


reply via email to

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