Обсуждение: fmgroids.h not installed by "make install" in VPATH

Поиск
Список
Период
Сортировка

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

От
Alvaro Herrera
Дата:
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


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

От
Peter Eisentraut
Дата:
On Wednesday 08 July 2009 02:09:20 Alvaro Herrera wrote:
> It seems our makefiles fail to install fmgroids.h by "make install" in a
> VPATH build.

> 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'

The fix looks right.  Has it been applied?



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

От
Alvaro Herrera
Дата:
Peter Eisentraut wrote:
> On Wednesday 08 July 2009 02:09:20 Alvaro Herrera wrote:
> > It seems our makefiles fail to install fmgroids.h by "make install" in a
> > VPATH build.
> 
> > 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'
> 
> The fix looks right.  Has it been applied?

Nope, and I'm away right now so feel free.

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.


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

От
Alvaro Herrera
Дата:
Peter Eisentraut wrote:
> On Wednesday 08 July 2009 02:09:20 Alvaro Herrera wrote:
> > It seems our makefiles fail to install fmgroids.h by "make install" in a
> > VPATH build.
> 
> > 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'
> 
> The fix looks right.  Has it been applied?

FWIW I intend to apply it to HEAD and 8.4 only; if you think it should
be backpatched further back please say so.

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support


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

От
Alvaro Herrera
Дата:
Peter Eisentraut wrote:
> On Wednesday 08 July 2009 02:09:20 Alvaro Herrera wrote:
> > It seems our makefiles fail to install fmgroids.h by "make install" in a
> > VPATH build.
> 
> > 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'
> 
> The fix looks right.  Has it been applied?

Applied and backpatched up to 8.2.  (It didn't apply cleanly to 8.1).

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support