Faster install-sh in C - Mailing list pgsql-patches

From Alvaro Herrera
Subject Faster install-sh in C
Date
Msg-id 20041111035712.GA16357@surnet.cl
Whole thread Raw
Responses Re: Faster install-sh in C  (Bruce Momjian <pgman@candle.pha.pa.us>)
Re: Faster install-sh in C  (Neil Conway <neilc@samurai.com>)
Re: Faster install-sh in C  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-patches
Patchers,

I wrote an "install" program in C.  It's supposed to replace the
config/install-sh script, limited to the functionality we need, i.e.
what is in Makefiles in the Pg main source tree.  The main objective of
this exercise is to reduce "make install" execution time; a part of that
is being able to install multiple files with one command.

Portability testing right now is limited to my machine, which is Linux
with glibc 2.3.2 (Debian Sid).

With this in place, "make install" in src/include takes 17 seconds on
this machine, where the script version takes more than a minute.  I
think this is a useful improvement.


Right now I'm missing a Makefile rule for it.  It needs the pg_progname
symbol from src/port, and the includes from $(srcdir)/src/include and
$(builddir)/src/include.  From the config directory, this works:

$(CC) $(CFLAGS) -I$(top_srcdir)/src/include -I$(top_builddir)/src/include ../src/port/path.o ../src/port/exec.o $< -o
$@

Also, I don't know how to force it to build before executing "install",
short of putting it as a dependency in every makefile (which sounds
silly to me).

I attach the source code, and a src/include/Makefile modification to
use the multi-file install feature.

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Hay quien adquiere la mala costumbre de ser infeliz" (M. A. Evans)

Attachment

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Proposed patch to remove USERLIMIT
Next
From: Aleksander Kmetec
Date:
Subject: Slovenian translations for 8.0