fmgroids.h not installed by "make install" in VPATH

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: fmgroids.h not installed by "make install" in VPATH
Date: 2009-07-07 23:09:20
Message-ID: 20090707230920.GV7694@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

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

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Sergey Burladyan 2009-07-07 23:44:27 Re: 8.4, One-Time Filter and subquery ( ... FROM function() union all ... )
Previous Message Jeff Davis 2009-07-07 22:54:29 Re: WIP: Deferrable unique constraints