Thread: make dist does not include man.tar.gz and postgres.tar.gz

make dist does not include man.tar.gz and postgres.tar.gz

From
Alvaro Herrera
Date:
Hi,

Devrim has been trying to set up RPM files for 8.4devel.  However, the
tarballs he is generating are not alike those found in our FTP site;
official ones include manpages and HTML docs as man.tar.gz and
postgres.tar.gz, but a simple "make dist" does not seem to include them.

I'm wondering how are these things supposed to be generated.  Does Marc
create the regular tarballs using "make dist", and then unpack them and
include the other tarballs inside?  Does he use a different make target?

One idea I suggested was running "make man.tar.gz postgres.tar.gz"
before "make dist", but that doesn't really work apparently.  Here's
why:

[devrim@laptop pgsql]$ make dist
rm -rf postgresql-8.4devel* =install=
for x in `cd . && find . -name CVS -prune -o -print`; do \  file=`expr X$x : 'X\./\(.*\)'`; \  if test -d "./$file" ;
then\    mkdir "postgresql-8.4devel/$file" && chmod 777 "postgresql-8.4devel/$file";    \  else \    ln "./$file"
"postgresql-8.4devel/$file">/dev/null 2>&1 \      || cp "./$file" "postgresql-8.4devel/$file"; \  fi || exit; \done
 
cp: cannot stat `./doc/src/sgml/CREATE': No such file or directory

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


Re: make dist does not include man.tar.gz and postgres.tar.gz

From
Tom Lane
Date:
Alvaro Herrera <alvherre@commandprompt.com> writes:
> I'm wondering how are these things supposed to be generated.  Does Marc
> create the regular tarballs using "make dist", and then unpack them and
> include the other tarballs inside?  Does he use a different make target?

I think you need "make distprep" first.  I've never seen Marc's actual
build script, however.
        regards, tom lane


Re: make dist does not include man.tar.gz and postgres.tar.gz

From
Devrim GÜNDÜZ
Date:
Hi,

On Tue, 2008-09-02 at 17:03 -0400, Tom Lane wrote:
> I think you need "make distprep" first.

Still, we have problems here. I first created man.tar.gz,
postgres.tar.gz and ran gmake INSTALL HISTORY under doc/src/sgml and
moved them to top level directory. However, I am getting the following
error regardless I ran distprep or not:

$ make VERSION=8.4devel dist
rm -rf postgresql-8.4devel* =install=
for x in `cd . && find . -name CVS -prune -o -print`; do \         file=`expr X$x : 'X\./\(.*\)'`; \         if test -d
"./$file"; then \           mkdir "postgresql-8.4devel/$file" && chmod 777 
"postgresql-8.4devel/$file"; \         else \           ln "./$file" "postgresql-8.4devel/$file" >/dev/null 2>&1 \
      || cp "./$file" "postgresql-8.4devel/$file"; \         fi || exit; \       done 
cp: cannot stat `./doc/src/sgml/CREATE': No such file or directory
make: *** [distdir] Error 1

The problem is (as Alvaro stated me on Jabber), the space between CREATE
and AGGREGATE (there are a bunch of them actually). Checked GNUMakefile
and saw this in distdir target:

cp "$(top_srcdir)/$$file" "$(distdir)/$$file";

I thought quotes would help us here, but apparently it does not.

However, when I run ./configure and make dist, and then extract the
tarball, generate man.tar.gz with postgres.tar.gz, add these to the
previous tarball and rewrap it, it works. But I "want to" assume that it
is not the way that PostgreSQL tarballs are created.

>  I've never seen Marc's actual build script, however.

I have zero idea why these scripts are not included in CVS...

Regards,
--
Devrim GÜNDÜZ, RHCE
devrim~gunduz.org, devrim~PostgreSQL.org, devrim.gunduz~linux.org.tr                  http://www.gunduz.org