From owner-svn-src-stable-8@FreeBSD.ORG Tue Nov 23 11:31:13 2010 Return-Path: Delivered-To: svn-src-stable-8@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 68F81106566B; Tue, 23 Nov 2010 11:31:13 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 5601E8FC1A; Tue, 23 Nov 2010 11:31:13 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id oANBVDKH028767; Tue, 23 Nov 2010 11:31:13 GMT (envelope-from mm@svn.freebsd.org) Received: (from mm@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id oANBVDth028760; Tue, 23 Nov 2010 11:31:13 GMT (envelope-from mm@svn.freebsd.org) Message-Id: <201011231131.oANBVDth028760@svn.freebsd.org> From: Martin Matuska Date: Tue, 23 Nov 2010 11:31:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r215738 - in stable/8/usr.sbin/pkg_install: add create lib X-BeenThere: svn-src-stable-8@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for only the 8-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Nov 2010 11:31:13 -0000 Author: mm Date: Tue Nov 23 11:31:12 2010 New Revision: 215738 URL: http://svn.freebsd.org/changeset/base/215738 Log: MFC r213718: - Add support for xz compression to pkg_create, bzip2 remains the default compression algorithm. - Bump PKG_INSTALL_VERSION to 20101012. Submitted by: mm Approved by: portmgr (flz) Modified: stable/8/usr.sbin/pkg_install/add/main.c stable/8/usr.sbin/pkg_install/create/create.h stable/8/usr.sbin/pkg_install/create/main.c stable/8/usr.sbin/pkg_install/create/perform.c stable/8/usr.sbin/pkg_install/create/pkg_create.1 stable/8/usr.sbin/pkg_install/lib/lib.h Directory Properties: stable/8/usr.sbin/pkg_install/ (props changed) Modified: stable/8/usr.sbin/pkg_install/add/main.c ============================================================================== --- stable/8/usr.sbin/pkg_install/add/main.c Tue Nov 23 10:37:00 2010 (r215737) +++ stable/8/usr.sbin/pkg_install/add/main.c Tue Nov 23 11:31:12 2010 (r215738) @@ -227,9 +227,9 @@ main(int argc, char **argv) >= sizeof(temppackageroot)) errx(1, "package name too long"); remotepkg = temppackageroot; - if (!((ptr = strrchr(remotepkg, '.')) && ptr[1] == 't' && - (ptr[2] == 'b' || ptr[2] == 'g') && ptr[3] == 'z' && - !ptr[4])) + if (!((ptr = strrchr(remotepkg, '.')) && ptr[1] == 't' && + (ptr[2] == 'b' || ptr[2] == 'g' || ptr[2] == 'x') && + ptr[3] == 'z' && !ptr[4])) if (strlcat(remotepkg, ".tbz", sizeof(temppackageroot)) >= sizeof(temppackageroot)) errx(1, "package name too long"); Modified: stable/8/usr.sbin/pkg_install/create/create.h ============================================================================== --- stable/8/usr.sbin/pkg_install/create/create.h Tue Nov 23 10:37:00 2010 (r215737) +++ stable/8/usr.sbin/pkg_install/create/create.h Tue Nov 23 11:31:12 2010 (r215738) @@ -48,7 +48,7 @@ extern int PlistOnly; extern int Recursive; extern int Regenerate; -enum zipper {NONE, GZIP, BZIP, BZIP2 }; +enum zipper {NONE, GZIP, BZIP, BZIP2, XZ }; extern enum zipper Zipper; void add_cksum(Package *, PackingList, const char *); Modified: stable/8/usr.sbin/pkg_install/create/main.c ============================================================================== --- stable/8/usr.sbin/pkg_install/create/main.c Tue Nov 23 10:37:00 2010 (r215737) +++ stable/8/usr.sbin/pkg_install/create/main.c Tue Nov 23 11:31:12 2010 (r215738) @@ -48,7 +48,7 @@ enum zipper Zipper = BZIP2; static void usage(void); -static char opts[] = "EGYNnORhjvxyzf:p:P:C:c:d:i:I:k:K:r:t:X:D:m:s:S:o:b:"; +static char opts[] = "EGYNnORhjJvxyzf:p:P:C:c:d:i:I:k:K:r:t:X:D:m:s:S:o:b:"; static struct option longopts[] = { { "backup", required_argument, NULL, 'b' }, { "extended", no_argument, NULL, 'E' }, @@ -188,6 +188,10 @@ main(int argc, char **argv) Zipper = GZIP; break; + case 'J': + Zipper = XZ; + break; + case 'b': InstalledPkg = optarg; while ((tmp = strrchr(optarg, (int)'/')) != NULL) { Modified: stable/8/usr.sbin/pkg_install/create/perform.c ============================================================================== --- stable/8/usr.sbin/pkg_install/create/perform.c Tue Nov 23 10:37:00 2010 (r215737) +++ stable/8/usr.sbin/pkg_install/create/perform.c Tue Nov 23 11:31:12 2010 (r215738) @@ -67,6 +67,10 @@ pkg_perform(char **pkgs) Zipper = GZIP; pkg[len - 4] = '\0'; } + else if (!strcmp(&pkg[len - 4], ".txz")) { + Zipper = XZ; + pkg[len - 4] = '\0'; + } else if (!strcmp(&pkg[len - 4], ".tar")) { Zipper = NONE; pkg[len - 4] = '\0'; @@ -78,6 +82,8 @@ pkg_perform(char **pkgs) } else if (Zipper == GZIP) { suf = "tgz"; setenv("GZIP", "-9", 0); + } else if (Zipper == XZ) { + suf = "txz"; } else suf = "tar"; @@ -375,6 +381,10 @@ make_dist(const char *homedir, const cha args[nargs++] = "-j"; cname = "bzip'd "; } + else if (Zipper == XZ) { + args[nargs++] = "-J"; + cname = "xz'd "; + } else { args[nargs++] = "-z"; cname = "gzip'd "; Modified: stable/8/usr.sbin/pkg_install/create/pkg_create.1 ============================================================================== --- stable/8/usr.sbin/pkg_install/create/pkg_create.1 Tue Nov 23 10:37:00 2010 (r215737) +++ stable/8/usr.sbin/pkg_install/create/pkg_create.1 Tue Nov 23 11:31:12 2010 (r215738) @@ -23,7 +23,7 @@ .\" [jkh] Took John's changes back and made some additional extensions for .\" better integration with FreeBSD's new ports collection. .\" -.Dd May 30, 2008 +.Dd Oct 12, 2010 .Dt PKG_CREATE 1 .Os .Sh NAME @@ -315,7 +315,7 @@ archive is explicitly specified by the r Currently .Nm recognizes the following suffixes: -.Pa .tbz , .tgz +.Pa .tbz , .tgz, .txz and .Pa .tar . .It Fl y @@ -325,6 +325,20 @@ Compatibility synonym for Use .Xr gzip 1 utility to compress package tarball. +.It Fl J +Use +.Xr xz 1 +utility to compress package tarball instead of +.Xr gzip 1 . +Please note that this option is a NO-OP if the format of the resulting +archive is explicitly specified by the recognizable suffix of +.Ar pkg-filename . +Currently +.Nm +recognizes the following suffixes: +.Pa .tbz , .tgz, .txz +and +.Pa .tar . .It Fl b , -backup Ar pkg-name Create package file from a locally installed package named .Ar pkg-name . Modified: stable/8/usr.sbin/pkg_install/lib/lib.h ============================================================================== --- stable/8/usr.sbin/pkg_install/lib/lib.h Tue Nov 23 10:37:00 2010 (r215737) +++ stable/8/usr.sbin/pkg_install/lib/lib.h Tue Nov 23 11:31:12 2010 (r215738) @@ -105,7 +105,7 @@ * Version of the package tools - increase whenever you make a change * in the code that is not cosmetic only. */ -#define PKG_INSTALL_VERSION 20090902 +#define PKG_INSTALL_VERSION 20101002 #define PKG_WRAPCONF_FNAME "/var/db/pkg_install.conf" #define main(argc, argv) real_main(argc, argv)