aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/pkg_install/add/perform.c
diff options
context:
space:
mode:
authorJosh Paetzel <jpaetzel@FreeBSD.org>2012-05-30 21:01:06 +0000
committerJosh Paetzel <jpaetzel@FreeBSD.org>2012-05-30 21:01:06 +0000
commitd83c17fc0dc03944556f32067e382f44affd1a28 (patch)
tree5870933a1ee3ebda24b057de60b18a54804c1774 /usr.sbin/pkg_install/add/perform.c
parenta6cff10f2a6e0d4f9bc32b78bd410af6fd5372c4 (diff)
Let pkg_add use the ENV variable PACKAGESUFFIX. This
can be used to override the default .tbz package extension to .txz .tgz or .tar Submitted by: kmoore Obtained from: PC-BSD Sponsored by: iXsystems MFC after: 3 days
Notes
Notes: svn path=/head/; revision=236333
Diffstat (limited to 'usr.sbin/pkg_install/add/perform.c')
-rw-r--r--usr.sbin/pkg_install/add/perform.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/usr.sbin/pkg_install/add/perform.c b/usr.sbin/pkg_install/add/perform.c
index 1b88888313c9..24637eba92dd 100644
--- a/usr.sbin/pkg_install/add/perform.c
+++ b/usr.sbin/pkg_install/add/perform.c
@@ -307,8 +307,12 @@ pkg_do(char *pkg)
*sep = '\0';
strlcat(subpkg, "/All/", sizeof subpkg);
strlcat(subpkg, p->name, sizeof subpkg);
- if ((ext = strrchr(pkg, '.')) == NULL)
- ext = ".tbz";
+ if ((ext = strrchr(pkg, '.')) == NULL) {
+ if (getenv("PACKAGESUFFIX"))
+ ext = getenv("PACKAGESUFFIX");
+ else
+ ext = ".tbz";
+ }
strlcat(subpkg, ext, sizeof subpkg);
pkg_do(subpkg);
}
@@ -345,8 +349,13 @@ pkg_do(char *pkg)
const char *ext;
ext = strrchr(pkg_fullname, '.');
- if (ext == NULL)
- ext = ".tbz";
+ if (ext == NULL) {
+ if (getenv("PACKAGESUFFIX")) {
+ ext = getenv("PACKAGESUFFIX");
+ } else {
+ ext = ".tbz";
+ }
+ }
snprintf(path, FILENAME_MAX, "%s/%s%s", getenv("_TOP"), p->name, ext);
if (fexists(path))
cp = path;