Hi,
It seems our makefiles fail to install fmgroids.h by "make install" in a
VPATH build.
The reason is that they do this (src/include/Makefile)
for dir in $(SUBDIRS); do \ cp $(srcdir)/$$dir/*.h '$(DESTDIR)$(includedir_server)'/$$dir/ || exit; \ chmod
$(INSTALL_DATA_MODE)'$(DESTDIR)$(includedir_server)'/$$dir/*.h || exit; \ done
However, fmgroids.h is a symlink in the builddir, not present in the sourcedir.
I think in a regular build it should install but I can't confirm it
because I don't have one handy.
There are a few other symlinks in src/include:
./dynloader.h
./pg_config_os.h
./utils/fmgroids.h
./parser/parse.h
pg_config_os.h is installed manually. Not sure of the usefulness of
installing dynloader.h and parse.h; fmgroids.h is needed to build the
EDB pldebugger so I think it should be installed. (Right now I think
the debugger forces you to build in-tree.)
I think the solution is to treat fmgroids.h just like pg_config_os.h,
i.e. add a line like this:
$(INSTALL_DATA) utils/fmgroids.h '$(DESTDIR)/$(includedir_server)/utils'
BTW: do we really need to install the win32 headers on non-win32 builds?
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support