Re: win32 version info - Mailing list pgsql-patches

From Magnus Hagander
Subject Re: win32 version info
Date
Msg-id 6BCB9D8A16AC4241919521715F4D8BCE34BF65@algol.sollentuna.se
Whole thread Raw
In response to win32 version info  ("Magnus Hagander" <mha@sollentuna.net>)
Responses Re: win32 version info  ("Andrew Dunstan" <andrew@dunslane.net>)
List pgsql-patches
> > All that is then needed is to teach each binary to link in
> "win32ver.o".
> > For initdb, I've done this like:
> > ifeq ($(PORTNAME), win32)
> > FILEDESC=initdb - initialize a new database cluster
> > OBJS+=win32ver.o
> > endif
>
> > I assume what you would like is to have just the FILEDESC
> row in there?
>
> That would be ideal, but this is probably close enough if no
> one has a great idea about how to get rid of the manual
> addition to $(OBJS).

Ok. Since nobody has added anything, I assume there is nobody around
with an idea on how to do that. :-(


> > One way would be to just add something like $(PORTOBJ) and have
> > Makefile.global add whatever special .o files are required for the
> > current port. That way we wouldn't teach it specifically about the
> > win32 version stuff, but we'd still have to teach it to
> look somewhere...
>
> Yeah, that's not a bad idea.  If anyone can think of
> plausible reasons why we might end up with other things
> needing to be built for every executable, it would be quite
> reasonable to go this route.

Again, since nobody said anything, I assume nobody had an idea there.
The question then - would you prefer me to add $(WIN32VER) to specify
what it is, or should I go with $(PORTOBJ) anyway, in case we find
something in the future?


> I was originally thinking of somehow migrating the executable
> build rules into a single pattern rule, but given the lack of
> any suffix on executable names it's not clear how to use a
> pattern rule for the purpose.  And the existing rules are
> diverse enough that it might be a real pain to construct such
> a pattern rule anyway.

Yeah, that's what I figured.


One more thing I realised - we need two different types of versioninfo
structures, because one fields tells wether it's a DLL or an app. How
would you prefer this done - either using $(WIN32VERDLL)/$(WIN32VERAPP)
(or $(PORTOBJSHLIB)/$(PORTOBJAPP) if we go down that route), or by
setting another field along FILEDESC called FILETYPE or similar?

//Magnus

pgsql-patches by date:

Previous
From: Andreas Pflug
Date:
Subject: Re: logger subprocess
Next
From: Andreas Pflug
Date:
Subject: Re: Admin functions contrib