OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 07-Dec-2006 11:44:36
Branch: OPENPKG_2_STABLE Handle: 20061129171416667819
Modified files: (Branch: OPENPKG_2_STABLE)
openpkg-src/openpkg HISTORY bash.patch openpkg.spec release.sh rpmdb
rpmmacros rpmtool tar.patch
Removed files: (Branch: OPENPKG_2_STABLE)
openpkg-src/openpkg gzip.c openpkg.c
Log:
MFC: all recent updates, upgrades and bugfixes since 20061030
Summary:
Revision Changes Path
1.337.2.15 +15 -0 openpkg-src/openpkg/HISTORY
1.10.2.2 +254 -6 openpkg-src/openpkg/bash.patch
1.4 +0 -1882 openpkg-src/openpkg/gzip.c
1.5 +0 -467 openpkg-src/openpkg/openpkg.c
1.490.2.16 +130 -104 openpkg-src/openpkg/openpkg.spec
1.1.2.4 +4 -2 openpkg-src/openpkg/release.sh
1.8.2.2 +4 -4 openpkg-src/openpkg/rpmdb
1.74.2.3 +2 -0 openpkg-src/openpkg/rpmmacros
1.47.2.2 +13 -12 openpkg-src/openpkg/rpmtool
1.5.8.2 +12 -11 openpkg-src/openpkg/tar.patch
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/HISTORY
============================================================================
$ cvs diff -u -r1.337.2.14 -r1.337.2.15 HISTORY
--- openpkg-src/openpkg/HISTORY 30 Oct 2006 10:51:52 -0000
1.337.2.14
+++ openpkg-src/openpkg/HISTORY 7 Dec 2006 10:44:32 -0000
1.337.2.15
@@ -2,6 +2,21 @@
2006
====
+20061207 **** RELEASE AS PART OF OPENPKG 2.20061207 ****
+20061207 fix incorrect double-import of OpenPGP keys by first fixating the
RPM DB
+20061207 fix Solaris build issues with the newer GNU gzip 1.3.6
+20061207 upgrade to "openpkg" executable version 2.0.0-C
+20061206 apply the GNU Bash 3.2 upstream patches 001-005
+20061206 switch GNU gzip from pre-patched OpenPKG tarball to pristine
upstream tarball plus OpenPKG "update" tarball
+20061206 enhance "openpkg release" robustness when config file defines same
value repeatedly
+20061205 skip build of irrelevant parts of the GNU tar distribution
+20061129 upgrade to GNU gzip 1.3.6
+20061129 adjust wordings in package class hints according to current
classification
+20061114 upgrade to openpkg-tools 1.1.1
+20061114 provide %{l_miniperl} and %{l_openssl} macros
+20061112 install zlib's zconf.h header as it is required by zlib.h
+20061030 upgrade to cURL 7.16.0
+
20061030 **** RELEASE AS PART OF OPENPKG 2.20061030 ***
20061030 upgrade to openpkg-tools 1.1.0
20061030 switch from a single OpenPGP key openpkg.pgp (.org) to three
openpkg.{org,com,net}.pgp keys
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/bash.patch
============================================================================
$ cvs diff -u -r1.10.2.1 -r1.10.2.2 bash.patch
--- openpkg-src/openpkg/bash.patch 16 Oct 2006 14:53:34 -0000 1.10.2.1
+++ openpkg-src/openpkg/bash.patch 7 Dec 2006 10:44:32 -0000 1.10.2.2
@@ -74,18 +74,266 @@
-----------------------------------------------------------------------------
-Accumulated vendor patches Bash 3.2 001-XXX
+Accumulated vendor patches Bash 3.2 001-005
+
Generated via:
-$ cat bash32-* | patch -p0 -Vt -b
+$ gunzip <bash-3.2.tar.gz | tar xf -
+$ pushd bash-3.2
+$ cat bash32-[0-9]* | patch -p0 -Vt -b
$ shtool move -e '*.~1~' '%1.orig'
+$ pushd /tmp
+$ curl -O ftp://ftp.gnu.org/gnu/bison/bison-1.28.tar.gz
+$ cd bison-1.28
+$ ./configure --prefix=/tmp/bison
+$ make
+$ make install
+$ popd
$ mv y.tab.c y.tab.c.orig
$ mv y.tab.h y.tab.h.orig
$ /tmp/bison/bin/bison -y -d parse.y
+$ rm -rf /tmp/bison /tmp/bison-1.28 /tmp/bison-1.28.tar.gz
$ shtool subst -b.dummy \
- -e 's;parse\.y;/usr/src/local/chet/src/bash/src/parse.y;g' \
+ -e 's;parse\.y;/Users/chet/src/bash/src/parse.y;g' \
-e 's;/tmp/bison/share/bison\.simple;/usr/share/bison.simple;g' y.tab.c
-$ svs diff
-
-[CURRENTLY NONE]
+$ svs diff >/tmp/bash.patch
+$ popd
+$ rm -rf bash-3.2
+Index: parse.y
+--- parse.y.orig 2006-09-19 22:37:21 +0200
++++ parse.y 2006-12-06 13:32:45 +0100
+@@ -1029,6 +1029,7 @@
+ #define PST_CMDTOKEN 0x1000 /* command token OK - unused */
+ #define PST_COMPASSIGN 0x2000 /* parsing x=(...) compound
assignment */
+ #define PST_ASSIGNOK 0x4000 /* assignment statement ok in
this context */
++#define PST_REGEXP 0x8000 /* parsing an ERE/BRE as a single word
*/
+
+ /* Initial size to allocate for tokens, and the
+ amount to grow them by. */
+@@ -2591,6 +2592,9 @@
+ return (character);
+ }
+
++ if (parser_state & PST_REGEXP)
++ goto tokword;
++
+ /* Shell meta-characters. */
+ if MBTEST(shellmeta (character) && ((parser_state & PST_DBLPAREN) == 0))
+ {
+@@ -2698,6 +2702,7 @@
+ if MBTEST(character == '-' && (last_read_token == LESS_AND ||
last_read_token == GREATER_AND))
+ return (character);
+
++tokword:
+ /* Okay, if we got this far, we have to read a word. Read one,
+ and then check it against the known ones. */
+ result = read_token_word (character);
+@@ -2735,7 +2740,7 @@
+ /* itrace("parse_matched_pair: open = %c close = %c", open, close); */
+ count = 1;
+ pass_next_character = backq_backslash = was_dollar = in_comment = 0;
+- check_comment = (flags & P_COMMAND) && qc != '\'' && qc != '"' && (flags
& P_DQUOTE) == 0;
++ check_comment = (flags & P_COMMAND) && qc != '`' && qc != '\'' && qc !=
'"' && (flags & P_DQUOTE) == 0;
+
+ /* RFLAGS is the set of flags we want to pass to recursive calls. */
+ rflags = (qc == '"') ? P_DQUOTE : (flags & P_DQUOTE);
+@@ -3202,8 +3207,11 @@
+ if (tok == WORD && test_binop (yylval.word->word))
+ op = yylval.word;
+ #if defined (COND_REGEXP)
+- else if (tok == WORD && STREQ (yylval.word->word,"=~"))
+- op = yylval.word;
++ else if (tok == WORD && STREQ (yylval.word->word, "=~"))
++ {
++ op = yylval.word;
++ parser_state |= PST_REGEXP;
++ }
+ #endif
+ else if (tok == '<' || tok == '>')
+ op = make_word_from_token (tok); /* ( */
+@@ -3234,6 +3242,7 @@
+
+ /* rhs */
+ tok = read_token (READ);
++ parser_state &= ~PST_REGEXP;
+ if (tok == WORD)
+ {
+ tright = make_cond_node (COND_TERM, yylval.word, (COND_COM *)NULL,
(COND_COM *)NULL);
+@@ -3419,9 +3428,34 @@
+ goto next_character;
+ }
+
++#ifdef COND_REGEXP
++ /* When parsing a regexp as a single word inside a conditional
command,
++ we need to special-case characters special to both the shell and
++ regular expressions. Right now, that is only '(' and '|'. */ /*)*/
++ if MBTEST((parser_state & PST_REGEXP) && (character == '(' ||
character == '|')) /*)*/
++ {
++ if (character == '|')
++ goto got_character;
++
++ push_delimiter (dstack, character);
++ ttok = parse_matched_pair (cd, '(', ')', &ttoklen, 0);
++ pop_delimiter (dstack);
++ if (ttok == &matched_pair_error)
++ return -1; /* Bail immediately. */
++ RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2,
++ token_buffer_size, TOKEN_DEFAULT_GROW_SIZE);
++ token[token_index++] = character;
++ strcpy (token + token_index, ttok);
++ token_index += ttoklen;
++ FREE (ttok);
++ dollar_present = all_digit_token = 0;
++ goto next_character;
++ }
++#endif /* COND_REGEXP */
++
+ #ifdef EXTENDED_GLOB
+ /* Parse a ksh-style extended pattern matching specification. */
+- if (extended_glob && PATTERN_CHAR (character))
++ if MBTEST(extended_glob && PATTERN_CHAR (character))
+ {
+ peek_char = shell_getc (1);
+ if MBTEST(peek_char == '(') /* ) */
+Index: patchlevel.h
+--- patchlevel.h.orig 2006-04-13 14:31:04 +0200
++++ patchlevel.h 2006-12-06 13:32:45 +0100
+@@ -25,6 +25,6 @@
+ regexp `^#define[ ]*PATCHLEVEL', since that's what
support/mkversion.sh
+ looks for to find the patch level (for the sccs version string). */
+
+-#define PATCHLEVEL 0
++#define PATCHLEVEL 5
+
+ #endif /* _PATCHLEVEL_H_ */
+Index: subst.c
+--- subst.c.orig 2006-09-19 14:35:09 +0200
++++ subst.c 2006-12-06 13:32:45 +0100
+@@ -5707,6 +5707,11 @@
+ vtype &= ~VT_STARSUB;
+
+ mflags = 0;
++ if (patsub && *patsub == '/')
++ {
++ mflags |= MATCH_GLOBREP;
++ patsub++;
++ }
+
+ /* Malloc this because expand_string_if_necessary or one of the expansion
+ functions in its call chain may free it on a substitution error. */
+@@ -5741,13 +5746,12 @@
+ }
+
+ /* ksh93 doesn't allow the match specifier to be a part of the expanded
+- pattern. This is an extension. */
++ pattern. This is an extension. Make sure we don't anchor the pattern
++ at the beginning or end of the string if we're doing global
replacement,
++ though. */
+ p = pat;
+- if (pat && pat[0] == '/')
+- {
+- mflags |= MATCH_GLOBREP|MATCH_ANY;
+- p++;
+- }
++ if (mflags & MATCH_GLOBREP)
++ mflags |= MATCH_ANY;
+ else if (pat && pat[0] == '#')
+ {
+ mflags |= MATCH_BEG;
+Index: y.tab.c
+--- y.tab.c.orig 2006-09-25 14:15:16 +0200
++++ y.tab.c 2006-12-06 13:39:36 +0100
+@@ -2359,6 +2359,7 @@
+ #define PST_CMDTOKEN 0x1000 /* command token OK - unused */
+ #define PST_COMPASSIGN 0x2000 /* parsing x=(...) compound
assignment */
+ #define PST_ASSIGNOK 0x4000 /* assignment statement ok in
this context */
++#define PST_REGEXP 0x8000 /* parsing an ERE/BRE as a single word
*/
+
+ /* Initial size to allocate for tokens, and the
+ amount to grow them by. */
+@@ -3921,6 +3922,9 @@
+ return (character);
+ }
+
++ if (parser_state & PST_REGEXP)
++ goto tokword;
++
+ /* Shell meta-characters. */
+ if MBTEST(shellmeta (character) && ((parser_state & PST_DBLPAREN) == 0))
+ {
+@@ -4028,6 +4032,7 @@
+ if MBTEST(character == '-' && (last_read_token == LESS_AND ||
last_read_token == GREATER_AND))
+ return (character);
+
++tokword:
+ /* Okay, if we got this far, we have to read a word. Read one,
+ and then check it against the known ones. */
+ result = read_token_word (character);
+@@ -4065,7 +4070,7 @@
+ /* itrace("parse_matched_pair: open = %c close = %c", open, close); */
+ count = 1;
+ pass_next_character = backq_backslash = was_dollar = in_comment = 0;
+- check_comment = (flags & P_COMMAND) && qc != '\'' && qc != '"' && (flags
& P_DQUOTE) == 0;
++ check_comment = (flags & P_COMMAND) && qc != '`' && qc != '\'' && qc !=
'"' && (flags & P_DQUOTE) == 0;
+
+ /* RFLAGS is the set of flags we want to pass to recursive calls. */
+ rflags = (qc == '"') ? P_DQUOTE : (flags & P_DQUOTE);
+@@ -4532,8 +4537,11 @@
+ if (tok == WORD && test_binop (yylval.word->word))
+ op = yylval.word;
+ #if defined (COND_REGEXP)
+- else if (tok == WORD && STREQ (yylval.word->word,"=~"))
+- op = yylval.word;
++ else if (tok == WORD && STREQ (yylval.word->word, "=~"))
++ {
++ op = yylval.word;
++ parser_state |= PST_REGEXP;
++ }
+ #endif
+ else if (tok == '<' || tok == '>')
+ op = make_word_from_token (tok); /* ( */
+@@ -4564,6 +4572,7 @@
+
+ /* rhs */
+ tok = read_token (READ);
++ parser_state &= ~PST_REGEXP;
+ if (tok == WORD)
+ {
+ tright = make_cond_node (COND_TERM, yylval.word, (COND_COM *)NULL,
(COND_COM *)NULL);
+@@ -4749,9 +4758,34 @@
+ goto next_character;
+ }
+
++#ifdef COND_REGEXP
++ /* When parsing a regexp as a single word inside a conditional
command,
++ we need to special-case characters special to both the shell and
++ regular expressions. Right now, that is only '(' and '|'. */ /*)*/
++ if MBTEST((parser_state & PST_REGEXP) && (character == '(' ||
character == '|')) /*)*/
++ {
++ if (character == '|')
++ goto got_character;
++
++ push_delimiter (dstack, character);
++ ttok = parse_matched_pair (cd, '(', ')', &ttoklen, 0);
++ pop_delimiter (dstack);
++ if (ttok == &matched_pair_error)
++ return -1; /* Bail immediately. */
++ RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2,
++ token_buffer_size, TOKEN_DEFAULT_GROW_SIZE);
++ token[token_index++] = character;
++ strcpy (token + token_index, ttok);
++ token_index += ttoklen;
++ FREE (ttok);
++ dollar_present = all_digit_token = 0;
++ goto next_character;
++ }
++#endif /* COND_REGEXP */
++
+ #ifdef EXTENDED_GLOB
+ /* Parse a ksh-style extended pattern matching specification. */
+- if (extended_glob && PATTERN_CHAR (character))
++ if MBTEST(extended_glob && PATTERN_CHAR (character))
+ {
+ peek_char = shell_getc (1);
+ if MBTEST(peek_char == '(') /* ) */
@@ .
rm -f openpkg-src/openpkg/gzip.c <<'@@ .'
Index: openpkg-src/openpkg/gzip.c
============================================================================
[NO CHANGE SUMMARY BECAUSE FILE AS A WHOLE IS JUST REMOVED]
@@ .
rm -f openpkg-src/openpkg/openpkg.c <<'@@ .'
Index: openpkg-src/openpkg/openpkg.c
============================================================================
[NO CHANGE SUMMARY BECAUSE FILE AS A WHOLE IS JUST REMOVED]
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/openpkg.spec
============================================================================
$ cvs diff -u -r1.490.2.15 -r1.490.2.16 openpkg.spec
--- openpkg-src/openpkg/openpkg.spec 30 Oct 2006 10:51:52 -0000
1.490.2.15
+++ openpkg-src/openpkg/openpkg.spec 7 Dec 2006 10:44:32 -0000
1.490.2.16
@@ -39,16 +39,17 @@
# o any cc(1)
# the package version/release
-%define V_openpkg 2.20061030
+%define V_openpkg 2.20061207
# the used software versions
%define V_rpm 4.2.1
%define V_zlib 1.2.3
%define V_bzip2 1.0.3
%define V_beecrypt 4.1.2
-%define V_curl 7.15.5
+%define V_curl 7.16.0
%define V_make 3.81
-%define V_gzip 1.3.5
+%define V_gzip 1.3.6
+%define V_gzip_r 1.7
%define V_patch 2.5.9
%define V_tar 1.16
%define V_bash 3.2
@@ -57,7 +58,8 @@
%define V_registry 1.0.1
%define V_perl 5.8.8
%define V_openssl 0.9.8d
-%define V_tools 1.1.0
+%define V_tools 1.1.1
+%define V_exec 2.0.0-C
# package information
Name: openpkg
@@ -73,81 +75,81 @@
Release: %{V_openpkg}
# list of sources
-Source0: ftp://ftp.openpkg.org/sources/CPY/openpkg/rpm-%{V_rpm}.tar.gz
-Source1: ftp://ftp.ossp.org/pkg/lib/uuid/uuid-%{V_uuid}.tar.gz
-Source2: ftp://alpha.gnu.org/gnu/gzip/gzip-%{V_gzip}.tar
-Source3: ftp://alpha.gnu.org/gnu/patch/patch-%{V_patch}.tar.gz
-Source4: ftp://ftp.gnu.org/gnu/tar/tar-%{V_tar}.tar.gz
-Source5: ftp://ftp.cwru.edu/pub/bash/bash-%{V_bash}.tar.gz
-Source6:
ftp://ftp.openpkg.org/sources/CPY/config/config-%{V_config}.tar.gz
-Source7: ftp://ftp.gnu.org/gnu/make/make-%{V_make}.tar.gz
-Source8: http://www.bzip.org/%{V_bzip2}/bzip2-%{V_bzip2}.tar.gz
-Source9: http://curl.haxx.se/download/curl-%{V_curl}.tar.gz
-Source10:
http://switch.dl.sourceforge.net/beecrypt/beecrypt-%{V_beecrypt}.tar.gz
-Source11: http://www.zlib.net/zlib-%{V_zlib}.tar.gz
-Source12: HISTORY
-Source13: README
-Source14: aux.prereq.sh
-Source15: aux.usrgrp.sh
-Source16: aux.wrapbin.sh
-Source17: aux.wrapsrc.sh
-Source18: bash.patch
-Source19: beecrypt.patch
-Source20: dot.bash_login
-Source21: dot.bashrc
-Source22: dot.lsyncrc
-Source23: gzip.c
-Source24: local.README
-Source25: lsync
-Source26: lsync.8
-Source27: lsync.pod
-Source28: make.patch
+Source0: ftp://alpha.gnu.org/gnu/patch/patch-%{V_patch}.tar.gz
+Source1: ftp://ftp.cwru.edu/pub/bash/bash-%{V_bash}.tar.gz
+Source2: ftp://ftp.gnu.org/gnu/make/make-%{V_make}.tar.gz
+Source3: ftp://ftp.gnu.org/gnu/tar/tar-%{V_tar}.tar.gz
+Source4:
ftp://ftp.openpkg.org/sources/CPY/config/config-%{V_config}.tar.gz
+Source5:
ftp://ftp.openpkg.org/sources/CPY/openpkg-registry/openpkg-registry-%{V_registry}.tar.gz
+Source6:
ftp://ftp.openpkg.org/sources/CPY/openpkg-tools/openpkg-tools-%{V_tools}.tar.gz
+Source7:
ftp://ftp.openpkg.org/sources/CPY/openpkg/gzip-%{V_gzip}-openpkg-r%{V_gzip_r}.tar
+Source8: ftp://ftp.openpkg.org/sources/CPY/openpkg/gzip-%{V_gzip}.tar
+Source9:
ftp://ftp.openpkg.org/sources/CPY/openpkg/openpkg-executable-%{V_exec}.tar.gz
+Source10: ftp://ftp.openpkg.org/sources/CPY/openpkg/rpm-%{V_rpm}.tar.gz
+Source11:
ftp://ftp.openpkg.org/sources/CPY/perl/perl-%{V_perl}-mini.tar.gz
+Source12: ftp://ftp.openssl.org/source/openssl-%{V_openssl}.tar.gz
+Source13: ftp://ftp.ossp.org/pkg/lib/uuid/uuid-%{V_uuid}.tar.gz
+Source14: http://curl.haxx.se/download/curl-%{V_curl}.tar.gz
+Source15:
http://switch.dl.sourceforge.net/beecrypt/beecrypt-%{V_beecrypt}.tar.gz
+Source16: http://www.bzip.org/%{V_bzip2}/bzip2-%{V_bzip2}.tar.gz
+Source17: http://www.zlib.net/zlib-%{V_zlib}.tar.gz
+Source18: HISTORY
+Source19: README
+Source20: aux.prereq.sh
+Source21: aux.usrgrp.sh
+Source22: aux.wrapbin.sh
+Source23: aux.wrapsrc.sh
+Source24: bash.patch
+Source25: beecrypt.patch
+Source26: dot.bash_login
+Source27: dot.bashrc
+Source28: dot.lsyncrc
Source29: install.sh
-Source30: man.sh
-Source31: openpkg.1
-Source32: openpkg.boot
-Source33: openpkg.org.pgp
-Source34: openpkg.pod
-Source35: openpkg.sh
-Source36: pod2man.sh
-Source37: rc
-Source38: rc.8
-Source39: rc.conf
-Source40: rc.func
-Source41: rc.openpkg
-Source42: rc.pod
-Source43: root.README
-Source44: rpm-config.8
-Source45: rpm-config.pod
-Source46: rpm-config.sh
-Source47: rpm.patch.bugfix
-Source48: rpm.patch.feature
-Source49: rpm.patch.porting
-Source50: rpm.patch.regen
-Source51: rpmdb
-Source52: rpmmacros
-Source53: rpmpopt
-Source54: rpmrc
-Source55: rpmtool
-Source56: rpmtool.8
-Source57: rpmtool.pod
-Source58: shtool
-Source59: tar.patch
-Source60: uuid.8
-Source61: uuid.pod
-Source62: uuid.sh
-Source63:
ftp://ftp.openpkg.org/sources/CPY/openpkg-registry/openpkg-registry-%{V_registry}.tar.gz
-Source64:
ftp://ftp.openpkg.org/sources/CPY/openpkg-tools/openpkg-tools-%{V_tools}.tar.gz
-Source65:
ftp://ftp.openpkg.org/sources/CPY/perl/perl-%{V_perl}-mini.tar.gz
-Source66: ftp://ftp.openssl.org/source/openssl-%{V_openssl}.tar.gz
-Source67: perl.patch
-Source68: openssl.patch
-Source69: release.sh
-Source70: release.pod
-Source71: release.8
-Source72: openpkg.c
-Source73: openpkg.com.pgp
-Source74: openpkg.net.pgp
+Source30: local.README
+Source31: lsync
+Source32: lsync.8
+Source33: lsync.pod
+Source34: make.patch
+Source35: man.sh
+Source36: openpkg.1
+Source37: openpkg.boot
+Source38: openpkg.com.pgp
+Source39: openpkg.net.pgp
+Source40: openpkg.org.pgp
+Source41: openpkg.pod
+Source42: openpkg.sh
+Source43: openssl.patch
+Source44: perl.patch
+Source45: pod2man.sh
+Source46: rc
+Source47: rc.8
+Source48: rc.conf
+Source49: rc.func
+Source50: rc.openpkg
+Source51: rc.pod
+Source52: release.8
+Source53: release.pod
+Source54: release.sh
+Source55: root.README
+Source56: rpm-config.8
+Source57: rpm-config.pod
+Source58: rpm-config.sh
+Source59: rpm.patch.bugfix
+Source60: rpm.patch.feature
+Source61: rpm.patch.porting
+Source62: rpm.patch.regen
+Source63: rpmdb
+Source64: rpmmacros
+Source65: rpmpopt
+Source66: rpmrc
+Source67: rpmtool
+Source68: rpmtool.8
+Source69: rpmtool.pod
+Source70: shtool
+Source71: tar.patch
+Source72: uuid.8
+Source73: uuid.pod
+Source74: uuid.sh
# build information
Prefix: %{l_prefix}
@@ -155,7 +157,7 @@
AutoReq: no
AutoReqProv: no
Provides: OpenPKG
-Provides: openpkg = 20061030-20061030
+Provides: openpkg = 20061207-20061207
%description
This is the bootstrap package for the RPM-based Unix Software
@@ -193,10 +195,16 @@
regex = curl-(__VER__)\.tar\.gz
}
prog openpkg:gzip = {
+ comment = "rse: intentionally tracked at gnu.org, although fetched
from openpkg.org because of uncompression"
version = %{V_gzip}
url = ftp://alpha.gnu.org/gnu/gzip/
regex = gzip-(__VER__)\.tar(\.gz)?
}
+ prog openpkg:gzip_r = {
+ version = %{V_gzip_r}
+ url = ftp://ftp.openpkg.org/sources/CPY/openpkg/
+ regex = gzip-%{V_gzip}-openpkg-r(__VER__)\.tar
+ }
prog openpkg:make = {
version = %{V_make}
url = ftp://ftp.gnu.org/gnu/make/
@@ -261,6 +269,11 @@
url = ftp://ftp.openpkg.org/sources/CPY/openpkg-tools/
regex = openpkg-tools-(__VER__)\.tar\.gz
}
+ prog openpkg:openpkg-executable = {
+ version = %{V_exec}
+ url = ftp://ftp.openpkg.org/sources/CPY/openpkg/
+ regex = openpkg-executable-(__VER__-C)\.tar\.gz
+ }
%prep
# skip in bootstrap phase 2 (see openpkg.boot)
@@ -496,14 +509,14 @@
# bootstrap GNU zip tool
${l_tar} xf `SOURCE gzip-%{V_gzip}.tar` 2>/dev/null || true
+ ${l_tar} xf `SOURCE gzip-%{V_gzip}-openpkg-r%{V_gzip_r}.tar` 2>/dev/null
|| true
( cd gzip-%{V_gzip}
- mv gzip.c gzip.c.orig
- cp `SOURCE gzip.c` .
echo "ac_cv_prog_cc_g=no" >config.cache
case $plid in
Darwin/* ) echo "gzip_cv_assembler=no" >>config.cache ;;
esac
CC="${l_cc}" \
+ GREP="grep" \
./configure \
--cache-file=./config.cache
${l_make} || exit $?
@@ -575,18 +588,19 @@
set +x; VERBOSE "PREPARATION: Unpack Distribution Tarballs"; set -x
# unpack distribution tarballs
- ${l_gzip} -dc `SOURCE rpm-%{V_rpm}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE zlib-%{V_zlib}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE bzip2-%{V_bzip2}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE curl-%{V_curl}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE make-%{V_make}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE bash-%{V_bash}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE uuid-%{V_uuid}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE beecrypt-%{V_beecrypt}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
+ ${l_gzip} -dc `SOURCE rpm-%{V_rpm}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE zlib-%{V_zlib}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE bzip2-%{V_bzip2}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE curl-%{V_curl}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE make-%{V_make}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE bash-%{V_bash}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE uuid-%{V_uuid}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE beecrypt-%{V_beecrypt}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
${l_gzip} -dc `SOURCE openpkg-registry-%{V_registry}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
- ${l_gzip} -dc `SOURCE perl-%{V_perl}-mini.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE openssl-%{V_openssl}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
- ${l_gzip} -dc `SOURCE openpkg-tools-%{V_tools}.tar.gz` | ${l_tar} xf -
2>/dev/null || true
+ ${l_gzip} -dc `SOURCE perl-%{V_perl}-mini.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE openssl-%{V_openssl}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE openpkg-tools-%{V_tools}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
+ ${l_gzip} -dc `SOURCE openpkg-executable-%{V_exec}.tar.gz` | ${l_tar}
xf - 2>/dev/null || true
# update config.guess/config.sub
for dir in rpm-%{V_rpm} rpm-%{V_rpm}/popt beecrypt-%{V_beecrypt} \
@@ -953,17 +967,13 @@
${l_make}
) || exit $?
- # build frontend wrapper
- ( os_name=`(uname -s) 2>/dev/null` || os_name='Unknown'
- os_name=`echo "${os_name}" |\
- sed -e 's;[^a-zA-Z0-9];;g' |\
- tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
- ${l_cc} \
- -DOPENPKG_PLATFORM_${os_name} \
- -DOPENPKG_PREFIX=\"%{l_prefix}\" \
- -DOPENPKG_SUSR=\"%{l_susr}\" \
- -DOPENPKG_MUSR=\"%{l_musr}\" \
- -o openpkg `SOURCE openpkg.c`
+ # build "openpkg" executable
+ ( cd openpkg-executable-%{V_exec}
+ ${l_make} \
+ CC="${l_cc}" \
+ OPENPKG_PREFIX="%{l_prefix}" \
+ OPENPKG_SUSR="%{l_susr}" \
+ OPENPKG_MUSR="%{l_musr}"
) || exit $?
%install
@@ -1057,6 +1067,7 @@
# add additional development files
cp rpm-%{V_rpm}/misc/glob.h $RPM_BUILD_ROOT%{l_prefix}/include/rpm/
cp zlib-%{V_zlib}/zlib.h $RPM_BUILD_ROOT%{l_prefix}/include/rpm/
+ cp zlib-%{V_zlib}/zconf.h $RPM_BUILD_ROOT%{l_prefix}/include/rpm/
cp zlib-%{V_zlib}/libz.a $RPM_BUILD_ROOT%{l_prefix}/lib/librpmz.a
cp bzip2-%{V_bzip2}/bzlib.h $RPM_BUILD_ROOT%{l_prefix}/include/rpm/
cp bzip2-%{V_bzip2}/libbz2.a $RPM_BUILD_ROOT%{l_prefix}/lib/librpmbz2.a
@@ -1223,7 +1234,7 @@
chmod a+x $RPM_BUILD_ROOT%{l_prefix}/lib/openpkg/rpmtool
# install OpenPKG tool chain execution frontend and execution wrapper
- cp openpkg $RPM_BUILD_ROOT%{l_prefix}/bin/openpkg
+ cp openpkg-executable-%{V_exec}/openpkg
$RPM_BUILD_ROOT%{l_prefix}/bin/openpkg
${l_strip} $RPM_BUILD_ROOT%{l_prefix}/bin/openpkg
chmod 4775 $RPM_BUILD_ROOT%{l_prefix}/bin/openpkg
sed -e "s;@l_prefix@;%{l_prefix};g" \
@@ -1429,6 +1440,7 @@
%{l_prefix}/include/openpkg/rpm/stringbuf.h
%{l_prefix}/include/openpkg/rpm/ugid.h
%{l_prefix}/include/openpkg/rpm/zlib.h
+ %{l_prefix}/include/openpkg/rpm/zconf.h
%dir %{l_prefix}/info
%dir %{l_prefix}/lib
%dir %{l_prefix}/lib/openpkg
@@ -2399,6 +2411,20 @@
fi
chown %{l_musr}:%{l_mgrp} %{l_prefix}/lib/openpkg/fallback >/dev/null
2>&1 || true
+ # display license information of "openpkg" executable in case the
+ # OpenPKG Community version (staying under an OSS license) is NOT used.
+ community_version=`%{l_prefix}/bin/openpkg --license 2>/dev/null | \
+ sed -e 'q' | egrep '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*-C'`
+ if [ ".$community_version" = . ]; then
+ ( echo ""
+ echo "NOTICE: This OpenPKG bootstrap package is based on an
\"openpkg\""
+ echo "executable which is covered by the following terms of use:"
+ echo
"______________________________________________________________________________"
+ echo ""
+ %{l_prefix}/bin/openpkg --license | sed -e '1d'
+ ) | %{l_prefix}/lib/openpkg/rpmtool msg -b -t notice
+ fi
+
%preun
[ ".$1" != .0 ] && exit 0
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/release.sh
============================================================================
$ cvs diff -u -r1.1.2.3 -r1.1.2.4 release.sh
--- openpkg-src/openpkg/release.sh 24 Aug 2006 14:25:20 -0000 1.1.2.3
+++ openpkg-src/openpkg/release.sh 7 Dec 2006 10:44:34 -0000 1.1.2.4
@@ -74,7 +74,8 @@
tag=`(cat $prefix/etc/openpkg/release; echo "") | sed \
-e 's;^;X;' \
-e 's;^X *TAG *= *\([^ ][^ ]*\).*;\1;' \
- -e '/^X/d'`
+ -e '/^X/d' | \
+ sed -n -e '$p'`
else
tag=`$prefix/bin/openpkg rpm \
-q --qf '%{VERSION}\n' openpkg | number_to_tag`
@@ -90,7 +91,8 @@
url=`(cat $prefix/etc/openpkg/release; echo "") | sed \
-e 's;^;X;' \
-e 's;^X *URL *= *\([^ ][^ ]*\).*;\1;' \
- -e '/^X/d'`
+ -e '/^X/d' | \
+ sed -n -e '$p'`
fi
if [ ".$url" = . ]; then
url="ftp://ftp.openpkg.org/*"
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/rpmdb
============================================================================
$ cvs diff -u -r1.8.2.1 -r1.8.2.2 rpmdb
--- openpkg-src/openpkg/rpmdb 30 Oct 2006 10:51:52 -0000 1.8.2.1
+++ openpkg-src/openpkg/rpmdb 7 Dec 2006 10:44:34 -0000 1.8.2.2
@@ -391,8 +391,8 @@
db_init
db_extend
db_rebuild
- db_operate
db_fixate
+ db_operate
;;
rebuild )
@@ -401,8 +401,8 @@
db_extend
db_reload
db_rebuild
- db_operate
db_fixate
+ db_operate
;;
cleanup )
@@ -410,15 +410,15 @@
db_unbreak
db_extend
db_rebuild
- db_operate
db_fixate
+ db_operate
;;
fixate )
verbose 1 "FIXATING EXISTING RPM DATABASE ($dbpath)"
db_extend
- db_operate
db_fixate
+ db_operate
;;
list )
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/rpmmacros
============================================================================
$ cvs diff -u -r1.74.2.2 -r1.74.2.3 rpmmacros
--- openpkg-src/openpkg/rpmmacros 16 Oct 2006 14:53:35 -0000 1.74.2.2
+++ openpkg-src/openpkg/rpmmacros 7 Dec 2006 10:44:34 -0000 1.74.2.3
@@ -263,6 +263,8 @@
%l_flex %{l_tool_locate flex flex}
%l_bison %{l_tool_locate bison bison}
%l_perl %{l_tool_locate perl perl}
+%l_miniperl %{l_tool_locate miniperl miniperl}
+%l_openssl %{l_tool_locate openssl openssl}
%l_xmkmf %{l_tool_locate xmkmf xmkmf}
%l_vcheck %{l_tool_locate vcheck vcheck}
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/rpmtool
============================================================================
$ cvs diff -u -r1.47.2.1 -r1.47.2.2 rpmtool
--- openpkg-src/openpkg/rpmtool 30 Oct 2006 10:51:52 -0000 1.47.2.1
+++ openpkg-src/openpkg/rpmtool 7 Dec 2006 10:44:34 -0000 1.47.2.2
@@ -1378,34 +1378,35 @@
# check package class from within .spec file macro expansion for
%prep section
class="$1"; shift
case "$class" in
- BASE|CORE )
+ CORE|BASE )
;;
PLUS )
echo "set +x"
( echo "This OpenPKG package is of class PLUS."
- echo "It is in prerelease state and might be ready for
release soon."
- echo "Nevertheless, use it with great care in production
environments."
- echo "It might be unstable and break your environment."
- echo "Only CORE and BASE class packages are production
grade."
+ echo "This means it is still in extended QUALITY ASSURANCE
state."
+ echo "Hence it is still NOT ready for careless use."
+ echo "Do not use it in critical production environments."
+ echo "It might be still potentially unstable under
run-time."
) | sh $prog_path msg -r -t notice | sed -e 's;^;echo ";' -e
's;$;";'
echo "set -x"
;;
EVAL )
echo "set +x"
( echo "This OpenPKG package is of class EVAL."
- echo "It is in evaluation state and still not ready for
release."
- echo "Hence, do not use it in production environments."
- echo "It might be unstable or incompletely packaged."
- echo "Only CORE and BASE class packages are production
grade."
+ echo "This means it is still in EVALUATION and QUALITY
ASSURANCE state."
+ echo "Hence it is still NOT ready for general use."
+ echo "Do not use it in production environments."
+ echo "It might be unstable under run-time or still
incompletely packaged."
) | sh $prog_path msg -r -t warn | sed -e 's;^;echo ";' -e
's;$;";'
echo "set -x"
;;
JUNK )
echo "set +x"
( echo "This OpenPKG package is of class JUNK."
- echo "It is in development state and still not even ready
for evaluation."
- echo "Do not use it at all, as it is definitely unstable
and incomplete."
- echo "Only CORE and BASE class packages are production
grade."
+ echo "This means it is still in DEVELOPMENT state."
+ echo "Hence it is still NOT ready even for general
evaluation."
+ echo "Do not use it at all, except in development
environments!"
+ echo "It is definitely unstable and incompletely packaged."
) | sh $prog_path msg -r -t warn | sed -e 's;^;echo ";' -e
's;$;";'
echo "set -x"
;;
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/tar.patch
============================================================================
$ cvs diff -u -r1.5.8.1 -r1.5.8.2 tar.patch
--- openpkg-src/openpkg/tar.patch 22 Oct 2006 11:13:35 -0000 1.5.8.1
+++ openpkg-src/openpkg/tar.patch 7 Dec 2006 10:44:35 -0000 1.5.8.2
@@ -1,3 +1,15 @@
+Index: Makefile.in
+--- Makefile.in.orig 2006-10-21 17:41:31 +0200
++++ Makefile.in 2006-12-05 10:09:24 +0100
+@@ -310,7 +310,7 @@
+ target_alias = @target_alias@
+ ACLOCAL_AMFLAGS = -I m4
+ EXTRA_DIST = ChangeLog.1 PORTS
+-SUBDIRS = doc lib rmt src scripts po tests
++SUBDIRS = doc lib src
+ all: config.h
+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
Index: lib/argp-help.c
--- lib/argp-help.c.orig 2006-09-12 10:59:04 +0200
+++ lib/argp-help.c 2006-10-22 11:35:12 +0200
@@ -20,17 +32,6 @@
until_short (const struct argp_option *opt, const struct argp_option *real,
const char *domain, void *cookie)
{
-Index: rmt/rmt.c
---- rmt/rmt.c.orig 2006-09-27 10:54:46 +0200
-+++ rmt/rmt.c 2006-10-22 11:35:12 +0200
-@@ -43,6 +43,7 @@
- #include <obstack.h>
- #include <getopt.h>
- #include <sys/socket.h>
-+#include <locale.h>
-
- #ifndef EXIT_FAILURE
- # define EXIT_FAILURE 1
Index: src/compare.c
--- src/compare.c.orig 2006-03-20 10:23:29 +0100
+++ src/compare.c 2006-10-22 11:36:29 +0200
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [email protected]