A more useful way to split the distribution

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: PostgreSQL Development <pgsql-hackers(at)postgresql(dot)org>
Subject: A more useful way to split the distribution
Date: 2001-04-07 23:24:35
Message-ID: Pine.LNX.4.30.0104080101540.909-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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.gz
ifeq ($(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.gz
endif
dist:
-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(at)gmx(dot)net http://yi.org/peter-e/

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message The Hermit Hacker 2001-04-07 23:40:34 Re: A more useful way to split the distribution
Previous Message Kovacs Baldvin 2001-04-07 20:10:45 The makefile of pgaccess (CVS)