On 30.08.22 00:13, Andres Freund wrote:
> 1) For make based builds, all libraries that are built with MODULES rather
> than MODULES_big have the wrong "FILETYPE", because Makefile.win32 checks
> $(shlib), which is only set for MODULES_big.
>
> This used to be even more widely wrong until recently:
>
> commit 16a4a3d59cd5574fdc697ea16ef5692ce34c54d5
> Author: Peter Eisentraut <peter@eisentraut.org>
> Date: 2020-01-15 10:15:06 +0100
>
> Remove libpq.rc, use win32ver.rc for libpq
>
> Afaict before that we only set it correctly for pgevent.
Note, when I worked on this at that time, it was with the aim of
simplifying the version stamping script. So I don't really know much
about this.
> 3) We don't add an icon to postgres ("This is a daemon process, which is why
> it is not labeled as an executable"), but we do add icons to several
> libraries, at least snowball, pgevent, libpq.
>
> We should probably just remove the icon from the libraries?
Wouldn't the icon still show up in the file manager or something? Where
is the icon actually used?
> 4) We include the date, excluding 0 for some mysterious reason, in the version
> number. This seems to unnecessarily contribute to making the build not
> reproducible. Hails from long ago:
Yeah, that is evil.
> 5) We have a PGFILEDESC for (nearly?) every binary/library. They largely don't
> seem more useful descriptions than the binary's name. Why don't we just
> drop most of them and just set the description as something like
> "PostgreSQL $name (binary|library)"? I doubt anybody ever looks into these
> details except to perhaps check the version number or such.
We do an equivalent shortcut with the pkg-config files:
echo 'Description: PostgreSQL lib$(NAME) library' >>$@
Seems good enough.