A more useful way to split the distribution - Mailing list pgsql-hackers

From Peter Eisentraut
Subject A more useful way to split the distribution
Date
Msg-id Pine.LNX.4.30.0104080101540.909-100000@peter.localdomain
Whole thread Raw
Responses Re: A more useful way to split the distribution
Re: A more useful way to split the distribution
Re: A more useful way to split the distribution
List pgsql-hackers
Since people suddenly seem to be suffering from bandwidth concerns I have
devised a new distribution split to address this issue.  I propose the
following four sub-tarballs:

* postgresql-XXX.base.tar.gz    3.3 MB

Everything not in one of the ones below.

* postgresql-XXX.opt.tar.gz    1.7 MB

Everything not needed unless you use one of the following configure
options:  --with-CXX --with-tcl --with-perl --with-python --with-java
--enable-multibyte --enable-odbc, plus some other not-really-needed
things.

The exact directory list is
src/bin/: pgaccess pgtclsh pg_encoding
src/interfaces: odbc libpq++ libpgtcl perl5 python jdbc
src/pl/: plperl tcl
src/backend/utils/mb contrib/retep src/tools build.xml

* postgresql-XXX.docs.tar.gz    1.9 MB

doc/postgres.tar.gz doc/src doc/TODO.detail doc/internals.ps

(Note man pages are in .base.)

* postgresql-XXX.test.tar.gz    1.0 MB

src/test

All this is proportionally about the same as right now, except that each
tarball except base would now be truly optional.  So someone that only
wants to use, say, PHP and psql only needs to download the base package.

Patch below.  Yes/no/maybe?

--- GNUmakefile.in      Sun Apr  8 01:14:23 2001
+++ GNUmakefile2        Sun Apr  8 01:19:55 2001
@@ -60,7 +60,7 @@
dist: $(distdir).tar.gzifeq ($(split-dist), yes)
-dist: $(distdir).base.tar.gz $(distdir).docs.tar.gz $(distdir).support.tar.gz $(distdir).test.tar.gz
+dist: $(distdir).base.tar.gz $(distdir).docs.tar.gz $(distdir).opt.tar.gz $(distdir).test.tar.gzendifdist:       -rm
-rf$(distdir)
 
@@ -68,15 +68,22 @@$(distdir).tar: distdir       $(TAR) chf $@ $(distdir)

+opt_files := $(addprefix src/bin/, pgaccess pgtclsh pg_encoding) \
+       $(addprefix src/interfaces/, odbc libpq++ libpgtcl perl5 python jdbc) \
+       $(addprefix src/pl/, plperl tcl) \
+       src/backend/utils/mb contrib/retep src/tools build.xml
+
+docs_files := doc/postgres.tar.gz doc/src doc/TODO.detail doc/internals.ps
+$(distdir).base.tar: distdir
-       $(TAR) -c $(addprefix --exclude $(distdir)/, doc src/test src/interfaces src/bin) \
+       $(TAR) -c $(addprefix --exclude $(distdir)/, $(docs_files) $(opt_files) src/test) \         -f $@ $(distdir)
$(distdir).docs.tar: distdir
-       $(TAR) cf $@ $(distdir)/doc
+       $(TAR) cf $@ $(addprefix $(distdir)/, $(docs_files))

-$(distdir).support.tar: distdir
-       $(TAR) cf $@ $(distdir)/src/interfaces $(distdir)/src/bin
+$(distdir).opt.tar: distdir
+       $(TAR) cf $@ $(addprefix $(distdir)/, $(opt_files))
$(distdir).test.tar: distdir       $(TAR) cf $@ $(distdir)/src/test
===snip

-- 
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/



pgsql-hackers by date:

Previous
From: Kovacs Baldvin
Date:
Subject: The makefile of pgaccess (CVS)
Next
From: The Hermit Hacker
Date:
Subject: Re: A more useful way to split the distribution