aboutsummaryrefslogtreecommitdiff
path: root/ports-mgmt
diff options
context:
space:
mode:
authorBryan Drewery <bdrewery@FreeBSD.org>2013-09-25 10:25:23 +0000
committerBryan Drewery <bdrewery@FreeBSD.org>2013-09-25 10:25:23 +0000
commitbfb3c5d99cbaba05b01693a54d495624b197454b (patch)
treeccc267015755fd165b64ca6ca9c8a047db8780db /ports-mgmt
parentdcf237435c4f8009bffbdcd4f4b4fb239165fbcb (diff)
downloadports-bfb3c5d99cbaba05b01693a54d495624b197454b.tar.gz
ports-bfb3c5d99cbaba05b01693a54d495624b197454b.zip
Notes
Diffstat (limited to 'ports-mgmt')
-rw-r--r--ports-mgmt/pkg-devel/Makefile2
-rw-r--r--ports-mgmt/pkg-devel/files/patch-libpkg__pkg.c35
-rw-r--r--ports-mgmt/pkg-devel/files/patch-libpkg__pkg_add.c11
-rw-r--r--ports-mgmt/pkg-devel/files/patch-libpkg__pkg_create.c11
-rw-r--r--ports-mgmt/pkg-devel/files/patch-libpkg__private__pkg.h8
5 files changed, 66 insertions, 1 deletions
diff --git a/ports-mgmt/pkg-devel/Makefile b/ports-mgmt/pkg-devel/Makefile
index f5c7e9d2a1db..c270321398d3 100644
--- a/ports-mgmt/pkg-devel/Makefile
+++ b/ports-mgmt/pkg-devel/Makefile
@@ -2,7 +2,7 @@
PORTNAME= pkg
DISTVERSION= 1.1.4
-PORTREVISION= 1
+PORTREVISION= 5
CATEGORIES= ports-mgmt
MASTER_SITES= http://files.etoilebsd.net/pkg/ \
http://mirror.shatow.net/freebsd/${PORTNAME}/ \
diff --git a/ports-mgmt/pkg-devel/files/patch-libpkg__pkg.c b/ports-mgmt/pkg-devel/files/patch-libpkg__pkg.c
new file mode 100644
index 000000000000..2c096bb9f71c
--- /dev/null
+++ b/ports-mgmt/pkg-devel/files/patch-libpkg__pkg.c
@@ -0,0 +1,35 @@
+--- ./libpkg/pkg.c.orig 2013-09-24 14:53:00.000000000 +0200
++++ ./libpkg/pkg.c 2013-09-24 14:58:33.000000000 +0200
+@@ -1181,6 +1181,20 @@
+ struct pkg_dir *dir = NULL;
+ char spath[MAXPATHLEN + 1];
+ char dpath[MAXPATHLEN + 1];
++ bool disable_mtree;
++ const char *prefix;
++ char *mtree;
++
++ pkg_config_bool(PKG_CONFIG_DISABLE_MTREE, &disable_mtree);
++ if (!disable_mtree) {
++ pkg_get(pkg, PKG_PREFIX, &prefix, PKG_MTREE, &mtree);
++ do_extract_mtree(mtree, prefix);
++ }
++
++ /*
++ * Execute pre-install scripts
++ */
++ pkg_script_run(pkg, PKG_SCRIPT_PRE_INSTALL);
+
+ if (packing_init(&pack, dest, 0) != EPKG_OK) {
+ /* TODO */
+@@ -1200,6 +1214,11 @@
+ }
+
+
++ /*
++ * Execute post install scripts
++ */
++ pkg_script_run(pkg, PKG_SCRIPT_POST_INSTALL);
++
+ return (packing_finish(pack));
+ }
+
diff --git a/ports-mgmt/pkg-devel/files/patch-libpkg__pkg_add.c b/ports-mgmt/pkg-devel/files/patch-libpkg__pkg_add.c
new file mode 100644
index 000000000000..fab93b6a51af
--- /dev/null
+++ b/ports-mgmt/pkg-devel/files/patch-libpkg__pkg_add.c
@@ -0,0 +1,11 @@
+--- libpkg/pkg_add.c.orig 2013-07-06 12:48:19.000000000 +0200
++++ libpkg/pkg_add.c 2013-09-24 14:22:38.561062335 +0200
+@@ -100,7 +100,7 @@
+ return (retcode);
+ }
+
+-static int
++int
+ do_extract_mtree(char *mtree, const char *prefix)
+ {
+ struct archive *a = NULL;
diff --git a/ports-mgmt/pkg-devel/files/patch-libpkg__pkg_create.c b/ports-mgmt/pkg-devel/files/patch-libpkg__pkg_create.c
new file mode 100644
index 000000000000..4e7ddc1cbc91
--- /dev/null
+++ b/ports-mgmt/pkg-devel/files/patch-libpkg__pkg_create.c
@@ -0,0 +1,11 @@
+--- ./libpkg/pkg_create.c.orig 2013-09-24 16:27:05.716245523 -0500
++++ ./libpkg/pkg_create.c 2013-09-24 16:27:17.642245427 -0500
+@@ -323,7 +323,7 @@
+ goto cleanup;
+ }
+
+- if (pkg_files(pkg, &file) != EPKG_OK &&
++ if (0 && pkg_files(pkg, &file) != EPKG_OK &&
+ pkg_dirs(pkg, &dir) != EPKG_OK) {
+ /* Now traverse the file directories, adding to the archive */
+ packing_append_tree(pkg_archive, md_dir, NULL);
diff --git a/ports-mgmt/pkg-devel/files/patch-libpkg__private__pkg.h b/ports-mgmt/pkg-devel/files/patch-libpkg__private__pkg.h
new file mode 100644
index 000000000000..090a19b6c87e
--- /dev/null
+++ b/ports-mgmt/pkg-devel/files/patch-libpkg__private__pkg.h
@@ -0,0 +1,8 @@
+--- ./libpkg/private/pkg.h.orig 2013-09-24 14:56:39.000000000 +0200
++++ ./libpkg/private/pkg.h 2013-09-24 14:57:23.000000000 +0200
+@@ -405,4 +405,5 @@
+ int pkg_emit_filelist(struct pkg *, FILE *);
+ int pkg_parse_manifest_archive(struct pkg *pkg, struct archive *a, struct pkg_manifest_key *keys);
+
++int do_extract_mtree(char *mtree, const char *prefix);
+ #endif