diff options
Diffstat (limited to 'app-misc/mc')
-rw-r--r-- | app-misc/mc/ChangeLog | 12 | ||||
-rw-r--r-- | app-misc/mc/Manifest | 52 | ||||
-rw-r--r-- | app-misc/mc/files/digest-mc-4.6.1 | 9 | ||||
-rw-r--r-- | app-misc/mc/files/mc-4.6.1-find.patch | 155 | ||||
-rw-r--r-- | app-misc/mc/files/mc-4.6.1-largefile.patch | 194 | ||||
-rw-r--r-- | app-misc/mc/mc-4.6.1.ebuild | 140 |
6 files changed, 514 insertions, 48 deletions
diff --git a/app-misc/mc/ChangeLog b/app-misc/mc/ChangeLog index fdc1cf888be5..4a0d70f51a32 100644 --- a/app-misc/mc/ChangeLog +++ b/app-misc/mc/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for app-misc/mc # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-misc/mc/ChangeLog,v 1.89 2006/03/11 10:53:45 blubb Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-misc/mc/ChangeLog,v 1.90 2006/03/26 05:46:55 nerdboy Exp $ + +*mc-4.6.1 (26 Mar 2006) + + 26 Mar 2006; Steve Arnold <nerdboy@gentoo.org> +files/mc-4.6.1-find.patch, + +files/mc-4.6.1-largefile.patch, +mc-4.6.1.ebuild: + Adding updated ebuild for bug #102356, suitably modified, since this + issue needs resolution (what can I say, I made a command decision :) + Thanks to Rafael Antonio Porras <Rafa@dilmun.ls.fi.upm.es> for porting + the patches and posting the updated ebuild (the UTF-8 patch is in + distfiles). 11 Mar 2006; Simon Stelling <blubb@gentoo.org> mc-4.6.0-r12.ebuild, mc-4.6.0-r13.ebuild, mc-4.6.0-r14.ebuild: diff --git a/app-misc/mc/Manifest b/app-misc/mc/Manifest index 05445e61893c..60fc2af48906 100644 --- a/app-misc/mc/Manifest +++ b/app-misc/mc/Manifest @@ -1,69 +1,27 @@ -MD5 55e17f671b58110866fa59d7babff558 ChangeLog 13034 -RMD160 da4dea1e79554e566e3f689cb2d967c7511f6704 ChangeLog 13034 -SHA256 e4f0cf44c7fd582d137f51bc854e00b17e4ae546711a631f18d8b43500872c67 ChangeLog 13034 +MD5 7713426466898eb01d8ddc661a16ed7d ChangeLog 13490 MD5 9f528fa7b6b4d2c202ce5f4e3a5173ba files/chdir-4.6.0.gentoo 159 -RMD160 5edd511a40033bc11ed6e486edcce5b23c8305a2 files/chdir-4.6.0.gentoo 159 -SHA256 92fbe981eda972767866b388548c1837dcc32b06549b2dcf3c44d8bfe62d398f files/chdir-4.6.0.gentoo 159 MD5 f73f42d12436a5b630604df092ce3fa2 files/digest-mc-4.6.0-r12 858 -RMD160 6f137065e75b2756b61a2ef4ff324394b1145bbf files/digest-mc-4.6.0-r12 858 -SHA256 c8499803d0d6173ed15b5ec3fadfa51cf22617c89575129747e68b8b4eb0e14b files/digest-mc-4.6.0-r12 858 MD5 f73f42d12436a5b630604df092ce3fa2 files/digest-mc-4.6.0-r13 858 -RMD160 6f137065e75b2756b61a2ef4ff324394b1145bbf files/digest-mc-4.6.0-r13 858 -SHA256 c8499803d0d6173ed15b5ec3fadfa51cf22617c89575129747e68b8b4eb0e14b files/digest-mc-4.6.0-r13 858 MD5 12eefa2f5d1a08a0101af33a27ebf7f4 files/digest-mc-4.6.0-r14 1126 -RMD160 a63b15484129e702f78a0d0c1cd89d76869f70da files/digest-mc-4.6.0-r14 1126 -SHA256 2d825be0c5a907121385b4b42b3dbd1935ceaac8f4cf22afd91d702509a43b9d files/digest-mc-4.6.0-r14 1126 +MD5 3ef06152e915e8603f9064ee6ee375b4 files/digest-mc-4.6.1 711 MD5 33aafc4a9c8134eb13d62fed6b81888e files/ebuild.syntax 2588 -RMD160 ce59ba4451f5df962632683b4ba84b3fd6fa7e4c files/ebuild.syntax 2588 -SHA256 532894f690c04c4394f5396ded4545d91924a7e853fa0f190bc55323e27901b2 files/ebuild.syntax 2588 MD5 d157d2a6836514f758dc3ae9149ae178 files/mc-4.6.0-7zip.patch 631 -RMD160 aee1d87da11c95e18e189874832b97e43521e8e0 files/mc-4.6.0-7zip.patch 631 -SHA256 1d4b3644f5dba7caa438bd14fa6b93542cd8a421b1236e2a10870a485a1ed976 files/mc-4.6.0-7zip.patch 631 MD5 d9519efa7db0aaf795556ac29cadd4ad files/mc-4.6.0-bug-102356.patch 1378 -RMD160 d6a6464c6967fbd03fae0b994a7bfd63cfe602bc files/mc-4.6.0-bug-102356.patch 1378 -SHA256 077504365ede1745df1cb031829990e9b0a8a7105e3b42a17ead3d201cf35767 files/mc-4.6.0-bug-102356.patch 1378 MD5 b1748f6df163b5087abe24b4a6143123 files/mc-4.6.0-can-2004-1004-1005-1092-1176.patch 3444 -RMD160 31ed4cf5db58430701cc4cdaf85d67b46dd9ad80 files/mc-4.6.0-can-2004-1004-1005-1092-1176.patch 3444 -SHA256 f0eed847d94151666a2bfd6b70db798006c1544c17771a6c68b1db42c6ecc2c1 files/mc-4.6.0-can-2004-1004-1005-1092-1176.patch 3444 MD5 2a6c3ed30597eadaa19a6dbdd3ce168d files/mc-4.6.0-cpan-2003-1023.patch 475 -RMD160 ad44a50544630b3ae039e8d5dfcfb5ba6aecefee files/mc-4.6.0-cpan-2003-1023.patch 475 -SHA256 886d45e47ca7aad58c2e5b4f1b5fad70a4acd0d032f688b8deb4b3551c44c7c2 files/mc-4.6.0-cpan-2003-1023.patch 475 MD5 6356abe34b8907ad2cfedd4cf8ef365e files/mc-4.6.0-ebuild-syntax.patch 296 -RMD160 adc93b215cb7d092226a8a6dc6d7eb1114d031fc files/mc-4.6.0-ebuild-syntax.patch 296 -SHA256 18787cc1605326aea8e71573780c02992e31404bde79b02b63ca1d2bb14a5aef files/mc-4.6.0-ebuild-syntax.patch 296 MD5 169bb0ff53b2a9c5271503bbcbccf3df files/mc-4.6.0-find.patch 5798 -RMD160 3f07937ebf0e4969dc5653efe64e868d8a9015f4 files/mc-4.6.0-find.patch 5798 -SHA256 45da24b5084cc9e3b884ebeef210407de3f2533fbbb08871ae7ba91a9c4c71aa files/mc-4.6.0-find.patch 5798 MD5 99fd5760d0ddfc08292de6a62b573e73 files/mc-4.6.0-ftp.patch 285 -RMD160 6d3db0d0bed4f627304446d631daa2617d114841 files/mc-4.6.0-ftp.patch 285 -SHA256 a9f618b71667385388b3f02f46d455af0c605578a0e2230592749067cdf934ae files/mc-4.6.0-ftp.patch 285 MD5 76ff126c3a7eb5dba1bf09f30628bf45 files/mc-4.6.0-gcc4.patch 703 -RMD160 ddec3ea006a0c131a4e329b5ad1bcedc26020eff files/mc-4.6.0-gcc4.patch 703 -SHA256 cb97b241800bad7624352ff8fc06c99050c9ad753a02f6f828c5b07b2c714a3b files/mc-4.6.0-gcc4.patch 703 MD5 b07d2f1ccf2c5b607caaeaa82ad1681e files/mc-4.6.0-key.c.patch 811 -RMD160 8a451a792fb5a6e2941235418d27917d762e3562 files/mc-4.6.0-key.c.patch 811 -SHA256 343bedb4cbc2b4b39db1e124ad94521a82f7ce1e570287a97419e349252ffe35 files/mc-4.6.0-key.c.patch 811 MD5 3bb3f2fa14fdb654e1352bdd406d848f files/mc-4.6.0-largefile.patch 5751 -RMD160 a47313378b98cc5bf19870252362452a54424dac files/mc-4.6.0-largefile.patch 5751 -SHA256 7d2be69f0fedf9795819871db2caaf3b8fba5f8c63eb0c2f996cc935b64ae684 files/mc-4.6.0-largefile.patch 5751 MD5 4df4331a2db0f5e9c0f2c0c9bb683fc3 files/mc-4.6.0-vfs.patch 336 -RMD160 bb9c76cf40857881d57aef1e68454f27d3add5a8 files/mc-4.6.0-vfs.patch 336 -SHA256 2de47b6faf1fd27c19f62f1f6f66a5cfd823851fb731997bbae2d1ae6f8b7fc1 files/mc-4.6.0-vfs.patch 336 +MD5 3c950491cdf44091df216cfa709d133a files/mc-4.6.1-find.patch 5522 +MD5 80b45ecf38d9b5df6d368c83d14fd89d files/mc-4.6.1-largefile.patch 6919 MD5 835695dda387b59a2497658f3f5af1d5 files/mc.gentoo 322 -RMD160 957d5127be68de3eca20ac3121607faa1370d997 files/mc.gentoo 322 -SHA256 6dff61a04bf35cbc5c9570e3ad194a8d8ffd255096c977997d11aa59cd0f24c9 files/mc.gentoo 322 MD5 7fadf4867e255f1d7254181267759775 files/mc.ini 43 -RMD160 2254610744c484553cd3332a4f45e439b13cceed files/mc.ini 43 -SHA256 ed0921487e74b913fa34f4d672584b64da6cf5d592b17c65328621934a4d46f1 files/mc.ini 43 MD5 c42244c2184c9194d04a6402e3c23dd3 mc-4.6.0-r12.ebuild 3259 -RMD160 9d2a75101862bb6c315c6ffce0eb70897020e567 mc-4.6.0-r12.ebuild 3259 -SHA256 cf2ba99b0def91fa3796419676845a7ef3b34408d2d3ff0d9dfad875998a3237 mc-4.6.0-r12.ebuild 3259 MD5 b4de21db78a35b5c10b86cb4cfa3873b mc-4.6.0-r13.ebuild 3405 -RMD160 2494291442a27d92fe993de1b787622e850d1eb1 mc-4.6.0-r13.ebuild 3405 -SHA256 0679cda9b5ea245c708fa3190f0c13e8e990a3c44a0fe8edb99ec05e08f59fb0 mc-4.6.0-r13.ebuild 3405 MD5 da0e80d1aa4cd507e06461fb59049a18 mc-4.6.0-r14.ebuild 4081 -RMD160 31f544912eea155c0716f87da9f798ac4c2d3328 mc-4.6.0-r14.ebuild 4081 -SHA256 b2b14b5120ff0b0e76e788facf7265857d3b334845bc3cc7d2e0101d224f04a8 mc-4.6.0-r14.ebuild 4081 +MD5 430d0187bd065083725af76168797986 mc-4.6.1.ebuild 3550 MD5 503ccb1138f9c49f0855884d830988a6 metadata.xml 253 -RMD160 bfa92d311ac4e8cc9a2190f578925f333ae096a8 metadata.xml 253 -SHA256 8e0389110e0cd8cc331b484cde34c22dd93f9f49df16c2263eea4d8e84093976 metadata.xml 253 diff --git a/app-misc/mc/files/digest-mc-4.6.1 b/app-misc/mc/files/digest-mc-4.6.1 new file mode 100644 index 000000000000..17b4ba9611d2 --- /dev/null +++ b/app-misc/mc/files/digest-mc-4.6.1 @@ -0,0 +1,9 @@ +MD5 becd9c9ecefbaed5bfb453cad2e4725a mc-4.6.1-utf8.patch.bz2 30401 +RMD160 f23680c85328b4b0435065f9e5cf430e0cd6b0c4 mc-4.6.1-utf8.patch.bz2 30401 +SHA256 dbc0f41059c4010665027d6ab756c4ca6d65584bcfb771afa120da3219e8e61b mc-4.6.1-utf8.patch.bz2 30401 +MD5 18b20db6e40480a53bac2870c56fc3c4 mc-4.6.1.tar.gz 3928370 +RMD160 d565ee95a8916d73fad5e0defeb9f2f57e50962b mc-4.6.1.tar.gz 3928370 +SHA256 086ab03daaac28a28c0ddb9a709040b59e1322f6bfa68e39d004d9c66b119e7e mc-4.6.1.tar.gz 3928370 +MD5 60a8e4524554a550472622db7fcf728f u7z-4.16beta.tar.bz2 3041 +RMD160 4a682b3b4bc6c09c7414f8d585829763f6c112ea u7z-4.16beta.tar.bz2 3041 +SHA256 668ed6a0484358e51de1be8d8581cc36dd3c915872fb1082550437a2d7aa67dd u7z-4.16beta.tar.bz2 3041 diff --git a/app-misc/mc/files/mc-4.6.1-find.patch b/app-misc/mc/files/mc-4.6.1-find.patch new file mode 100644 index 000000000000..f44a6ac630e8 --- /dev/null +++ b/app-misc/mc/files/mc-4.6.1-find.patch @@ -0,0 +1,155 @@ +diff -Naur mc-4.6.1.orig/src/cmd.c mc-4.6.1/src/cmd.c +--- mc-4.6.1.orig/src/cmd.c 2005-05-27 16:19:18.000000000 +0200 ++++ mc-4.6.1/src/cmd.c 2006-03-19 12:57:00.000000000 +0100 +@@ -510,7 +510,7 @@ + continue; + } + c = regexp_match (reg_exp_t, current_panel->dir.list[i].fname, +- match_file); ++ match_file, 0); + if (c == -1) { + message (1, MSG_ERROR, _(" Malformed regular expression ")); + g_free (reg_exp); +diff -Naur mc-4.6.1.orig/src/dir.c mc-4.6.1/src/dir.c +--- mc-4.6.1.orig/src/dir.c 2005-05-27 16:19:18.000000000 +0200 ++++ mc-4.6.1/src/dir.c 2006-03-19 12:58:56.000000000 +0100 +@@ -405,7 +405,7 @@ + *stale_link = 1; + } + if (!(S_ISDIR (buf1->st_mode) || *link_to_dir) && filter +- && !regexp_match (filter, dp->d_name, match_file)) ++ && !regexp_match (filter, dp->d_name, match_file, 0)) + return 0; + + /* Need to grow the *list? */ +diff -Naur mc-4.6.1.orig/src/ext.c mc-4.6.1/src/ext.c +--- mc-4.6.1.orig/src/ext.c 2005-05-27 16:19:18.000000000 +0200 ++++ mc-4.6.1/src/ext.c 2006-03-19 13:00:43.000000000 +0100 +@@ -394,7 +394,7 @@ + } + + if (content_string[0] +- && regexp_match (ptr, content_string + content_shift, match_regex)) { ++ && regexp_match (ptr, content_string + content_shift, match_regex, 0)) { + found = 1; + } + +@@ -534,11 +534,11 @@ + /* Do not transform shell patterns, you can use shell/ for + * that + */ +- if (regexp_match (p, filename, match_regex)) ++ if (regexp_match (p, filename, match_regex, 0)) + found = 1; + } else if (!strncmp (p, "directory/", 10)) { + if (S_ISDIR (mystat.st_mode) +- && regexp_match (p + 10, filename, match_regex)) ++ && regexp_match (p + 10, filename, match_regex, 0)) + found = 1; + } else if (!strncmp (p, "shell/", 6)) { + p += 6; +diff -Naur mc-4.6.1.orig/src/find.c mc-4.6.1/src/find.c +--- mc-4.6.1.orig/src/find.c 2005-05-27 16:19:18.000000000 +0200 ++++ mc-4.6.1/src/find.c 2006-03-19 13:04:10.000000000 +0100 +@@ -575,6 +575,7 @@ + struct stat tmp_stat; + static int pos; + static int subdirs_left = 0; ++ int flags = 0; + + if (!h) { /* someone forces me to close dirp */ + if (dirp) { +@@ -586,6 +587,10 @@ + dp = 0; + return 1; + } ++ ++ if (!(case_sense->state & C_BOOL)) ++ flags |= REG_ICASE; ++ + do_search_begin: + while (!dp){ + +@@ -662,7 +667,7 @@ + g_free (tmp_name); + } + +- if (regexp_match (find_pattern, dp->d_name, match_file)){ ++ if (regexp_match (find_pattern, dp->d_name, match_file, flags)){ + if (content_pattern) { + if (search_content (h, directory, dp->d_name)) { + return 1; +diff -Naur mc-4.6.1.orig/src/user.c mc-4.6.1/src/user.c +--- mc-4.6.1.orig/src/user.c 2005-07-01 17:47:07.000000000 +0200 ++++ mc-4.6.1/src/user.c 2006-03-19 13:05:00.000000000 +0100 +@@ -412,18 +412,18 @@ + break; + case 'f': /* file name pattern */ + p = extract_arg (p, arg, sizeof (arg)); +- *condition = panel && regexp_match (arg, panel->dir.list [panel->selected].fname, match_file); ++ *condition = panel && regexp_match (arg, panel->dir.list [panel->selected].fname, match_file, 0); + break; + case 'y': /* syntax pattern */ + if (edit_widget && edit_widget->syntax_type) { + p = extract_arg (p, arg, sizeof (arg)); + *condition = panel && +- regexp_match (arg, edit_widget->syntax_type, match_normal); ++ regexp_match (arg, edit_widget->syntax_type, match_normal, 0); + } + break; + case 'd': + p = extract_arg (p, arg, sizeof (arg)); +- *condition = panel && regexp_match (arg, panel->cwd, match_file); ++ *condition = panel && regexp_match (arg, panel->cwd, match_file, 0); + break; + case 't': + p = extract_arg (p, arg, sizeof (arg)); +diff -Naur mc-4.6.1.orig/src/util.c mc-4.6.1/src/util.c +--- mc-4.6.1.orig/src/util.c 2005-05-27 16:19:18.000000000 +0200 ++++ mc-4.6.1/src/util.c 2006-03-19 13:06:58.000000000 +0100 +@@ -563,27 +563,30 @@ + return g_strdup (pattern); + } + +-int regexp_match (const char *pattern, const char *string, int match_type) ++int regexp_match (const char *pattern, const char *string, int match_type, int flags) + { + static regex_t r; + static char *old_pattern = NULL; + static int old_type; ++ static int old_flags; + int rval; + char *my_pattern; + +- if (!old_pattern || STRCOMP (old_pattern, pattern) || old_type != match_type){ ++ if (!old_pattern || STRCOMP (old_pattern, pattern) || old_type != match_type || old_flags != flags){ + if (old_pattern){ + regfree (&r); + g_free (old_pattern); + old_pattern = NULL; + } + my_pattern = convert_pattern (pattern, match_type, 0); +- if (regcomp (&r, my_pattern, REG_EXTENDED|REG_NOSUB|MC_ARCH_FLAGS)) { ++ ++ if (regcomp (&r, my_pattern, REG_EXTENDED|REG_NOSUB|MC_ARCH_FLAGS|flags)) { + g_free (my_pattern); + return -1; + } + old_pattern = my_pattern; + old_type = match_type; ++ old_flags = flags; + } + rval = !regexec (&r, string, 0, NULL, 0); + return rval; +diff -Naur mc-4.6.1.orig/src/util.h mc-4.6.1/src/util.h +--- mc-4.6.1.orig/src/util.h 2005-01-13 20:20:47.000000000 +0100 ++++ mc-4.6.1/src/util.h 2006-03-19 13:07:16.000000000 +0100 +@@ -116,7 +116,7 @@ + + extern int easy_patterns; + char *convert_pattern (const char *pattern, int match_type, int do_group); +-int regexp_match (const char *pattern, const char *string, int match_type); ++int regexp_match (const char *pattern, const char *string, int match_type, int flags); + + /* Error pipes */ + void open_error_pipe (void); diff --git a/app-misc/mc/files/mc-4.6.1-largefile.patch b/app-misc/mc/files/mc-4.6.1-largefile.patch new file mode 100644 index 000000000000..de3071576a71 --- /dev/null +++ b/app-misc/mc/files/mc-4.6.1-largefile.patch @@ -0,0 +1,194 @@ +diff -Naur mc-4.6.1.orig/intl/loadmsgcat.c mc-4.6.1/intl/loadmsgcat.c +--- mc-4.6.1.orig/intl/loadmsgcat.c 2005-07-23 18:52:57.000000000 +0200 ++++ mc-4.6.1/intl/loadmsgcat.c 2006-03-19 17:11:14.000000000 +0100 +@@ -1002,7 +1002,7 @@ + /* The magic number is wrong: not a message catalog file. */ + #ifdef HAVE_MMAP + if (use_mmap) +- munmap ((caddr_t) data, size); ++ munmap ((void *) data, size); + else + #endif + free (data); +@@ -1271,7 +1271,7 @@ + free (domain->malloced); + #ifdef HAVE_MMAP + if (use_mmap) +- munmap ((caddr_t) data, size); ++ munmap ((void *) data, size); + else + #endif + free (data); +@@ -1306,7 +1306,7 @@ + + # ifdef _POSIX_MAPPED_FILES + if (domain->use_mmap) +- munmap ((caddr_t) domain->data, domain->mmap_size); ++ munmap ((void *) domain->data, domain->mmap_size); + else + # endif /* _POSIX_MAPPED_FILES */ + free ((void *) domain->data); +diff -Naur mc-4.6.1.orig/src/view.c mc-4.6.1/src/view.c +--- mc-4.6.1.orig/src/view.c 2005-05-27 16:19:18.000000000 +0200 ++++ mc-4.6.1/src/view.c 2006-03-19 17:10:34.000000000 +0100 +@@ -76,6 +76,12 @@ + #define vwidth (view->widget.cols - (view->have_frame ? 2 : 0)) + #define vheight (view->widget.lines - (view->have_frame ? 2 : 0)) + ++#if GLIB_MAJOR_VERSION >= 2 ++# define my_g_malloc g_try_malloc ++#else ++# define my_g_malloc g_malloc ++#endif ++ + /* Offset in bytes into a file */ + typedef unsigned long offset_type; + #define INVALID_OFFSET ((offset_type) -1) +@@ -560,8 +566,8 @@ + view->data = mc_mmap (0, view->s.st_size, PROT_READ, + MAP_FILE | MAP_SHARED, view->file, 0); + else +- view->data = (caddr_t) -1; +- if ((caddr_t) view->data != (caddr_t) - 1) { ++ view->data = (void *) -1; ++ if (view->data != (void *)-1) { + /* mmap worked */ + view->first = 0; + view->bytes_read = view->s.st_size; +@@ -573,6 +579,9 @@ + /* For the OSes that don't provide mmap call, try to load all the + * file into memory (alex@bcs.zaporizhzhe.ua). Also, mmap can fail + * for any reason, so we use this as fallback (pavel@ucw.cz) */ ++ ++ /* If large file support is enabled, st_size is a 64 bit value and ++ * will thus on 32 bit platforms possibly be beyond the range of gulong */ + + /* Make sure view->s.st_size is not truncated when passed to g_malloc */ + if ((gulong) view->s.st_size == view->s.st_size) +diff -Naur mc-4.6.1.orig/vfs/local.c mc-4.6.1/vfs/local.c +--- mc-4.6.1.orig/vfs/local.c 2004-09-25 01:00:18.000000000 +0200 ++++ mc-4.6.1/vfs/local.c 2006-03-19 17:00:45.000000000 +0100 +@@ -243,8 +243,8 @@ + } + + #ifdef HAVE_MMAP +-caddr_t +-local_mmap (struct vfs_class *me, caddr_t addr, size_t len, int prot, int flags, void *data, off_t offset) ++void * ++local_mmap (struct vfs_class *me, void *addr, size_t len, int prot, int flags, void *data, off_t offset) + { + int fd = * (int *)data; + +@@ -252,7 +252,7 @@ + } + + int +-local_munmap (struct vfs_class *me, caddr_t addr, size_t len, void *data) ++local_munmap (struct vfs_class *me, void *addr, size_t len, void *data) + { + return munmap (addr, len); + } +diff -Naur mc-4.6.1.orig/vfs/local.h mc-4.6.1/vfs/local.h +--- mc-4.6.1.orig/vfs/local.h 2004-08-17 11:17:43.000000000 +0200 ++++ mc-4.6.1/vfs/local.h 2006-03-19 17:01:35.000000000 +0100 +@@ -13,9 +13,9 @@ + extern int local_errno (struct vfs_class *me); + extern int local_lseek (void *data, off_t offset, int whence); + #ifdef HAVE_MMAP +-extern caddr_t local_mmap (struct vfs_class *me, caddr_t addr, size_t len, ++extern void *local_mmap (struct vfs_class *me, void *addr, size_t len, + int prot, int flags, void *data, off_t offset); +-extern int local_munmap (struct vfs_class *me, caddr_t addr, size_t len, void *data); ++extern int local_munmap (struct vfs_class *me, void *addr, size_t len, void *data); + #endif + + #endif +diff -Naur mc-4.6.1.orig/vfs/samba/lib/util.c mc-4.6.1/vfs/samba/lib/util.c +--- mc-4.6.1.orig/vfs/samba/lib/util.c 2005-05-27 16:19:19.000000000 +0200 ++++ mc-4.6.1/vfs/samba/lib/util.c 2006-03-19 17:06:39.000000000 +0100 +@@ -1836,7 +1836,7 @@ + + /* Look up the host address in the address list we just got. */ + for (i = 0; hp->h_addr_list[i]; i++) { +- if (memcmp(hp->h_addr_list[i], (caddr_t) & addr, sizeof(addr)) == 0) ++ if (memcmp(hp->h_addr_list[i], &addr, sizeof(addr)) == 0) + return True; + } + +diff -Naur mc-4.6.1.orig/vfs/vfs.c mc-4.6.1/vfs/vfs.c +--- mc-4.6.1.orig/vfs/vfs.c 2005-05-27 16:19:19.000000000 +0200 ++++ mc-4.6.1/vfs/vfs.c 2006-03-19 17:03:48.000000000 +0100 +@@ -740,27 +740,27 @@ + + #ifdef HAVE_MMAP + static struct mc_mmapping { +- caddr_t addr; ++ void *addr; + void *vfs_info; + struct vfs_class *vfs; + struct mc_mmapping *next; + } *mc_mmaparray = NULL; + +-caddr_t +-mc_mmap (caddr_t addr, size_t len, int prot, int flags, int fd, off_t offset) ++void * ++mc_mmap (void *addr, size_t len, int prot, int flags, int fd, off_t offset) + { + struct vfs_class *vfs; +- caddr_t result; ++ void *result; + struct mc_mmapping *mcm; + + if (fd == -1) +- return (caddr_t) -1; ++ return (void *) -1; + + vfs = vfs_op (fd); +- result = vfs->mmap ? (*vfs->mmap)(vfs, addr, len, prot, flags, vfs_info (fd), offset) : (caddr_t)-1; +- if (result == (caddr_t)-1){ ++ result = vfs->mmap ? (*vfs->mmap)(vfs, addr, len, prot, flags, vfs_info (fd), offset) : (void *)-1; ++ if (result == (void *)-1){ + errno = ferrno (vfs); +- return (caddr_t)-1; ++ return (void *)-1; + } + mcm =g_new (struct mc_mmapping, 1); + mcm->addr = result; +@@ -772,7 +772,7 @@ + } + + int +-mc_munmap (caddr_t addr, size_t len) ++mc_munmap (void *addr, size_t len) + { + struct mc_mmapping *mcm, *mcm2 = NULL; + +diff -Naur mc-4.6.1.orig/vfs/vfs.h mc-4.6.1/vfs/vfs.h +--- mc-4.6.1.orig/vfs/vfs.h 2004-11-16 17:16:08.000000000 +0100 ++++ mc-4.6.1/vfs/vfs.h 2006-03-19 17:05:57.000000000 +0100 +@@ -49,8 +49,8 @@ + int mc_ctl (int fd, int ctlop, void *arg); + int mc_setctl (const char *path, int ctlop, void *arg); + #ifdef HAVE_MMAP +-caddr_t mc_mmap (caddr_t, size_t, int, int, int, off_t); +-int mc_munmap (caddr_t addr, size_t len); ++void *mc_mmap (void *, size_t, int, int, int, off_t); ++int mc_munmap (void *addr, size_t len); + #endif /* HAVE_MMAP */ + + /* Operations for mc_ctl - on open file */ +diff -Naur mc-4.6.1.orig/vfs/vfs-impl.h mc-4.6.1/vfs/vfs-impl.h +--- mc-4.6.1.orig/vfs/vfs-impl.h 2004-09-02 15:57:59.000000000 +0200 ++++ mc-4.6.1/vfs/vfs-impl.h 2006-03-19 17:12:01.000000000 +0100 +@@ -72,9 +72,9 @@ + int (*setctl) (struct vfs_class *me, const char *path, int ctlop, + void *arg); + #ifdef HAVE_MMAP +- caddr_t (*mmap) (struct vfs_class *me, caddr_t addr, size_t len, ++ void *(*mmap) (struct vfs_class *me, void *addr, size_t len, + int prot, int flags, void *vfs_info, off_t offset); +- int (*munmap) (struct vfs_class *me, caddr_t addr, size_t len, ++ int (*munmap) (struct vfs_class *me, void *addr, size_t len, + void *vfs_info); + #endif + }; diff --git a/app-misc/mc/mc-4.6.1.ebuild b/app-misc/mc/mc-4.6.1.ebuild new file mode 100644 index 000000000000..3ba2f5fdf746 --- /dev/null +++ b/app-misc/mc/mc-4.6.1.ebuild @@ -0,0 +1,140 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/mc/mc-4.6.1.ebuild,v 1.1 2006/03/26 05:46:55 nerdboy Exp $ + +inherit flag-o-matic eutils + +U7Z_PV="4.16" +U7Z="u7z-${U7Z_PV}beta.tar.bz2" +DESCRIPTION="GNU Midnight Commander cli-based file manager" +HOMEPAGE="http://www.ibiblio.org/mc/" +SRC_URI="http://www.ibiblio.org/pub/Linux/utils/file/managers/${PN}/${P}.tar.gz + mirror://gentoo/${P}-utf8.patch.bz2 + 7zip? ( http://sgh.nightmail.ru/files/u7z/${U7Z} )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="7zip X gpm ncurses nls pam samba slang unicode" + +PROVIDE="virtual/editor" + +RDEPEND=">=sys-fs/e2fsprogs-1.19 + ncurses? ( >=sys-libs/ncurses-5.2-r5 ) + =dev-libs/glib-2* + pam? ( >=sys-libs/pam-0.72 ) + gpm? ( >=sys-libs/gpm-1.19.3 ) + slang? ( >=sys-libs/slang-1.4.9-r1 ) + samba? ( >=net-fs/samba-3.0.0 ) + X? ( || ( ( + x11-libs/libX11 + x11-libs/libICE + x11-libs/libXau + x11-libs/libXdmcp + x11-libs/libSM + ) + virtual/x11 + ) + ) + x86? ( 7zip? ( >=app-arch/p7zip-4.16 ) ) + ppc? ( 7zip? ( >=app-arch/p7zip-4.16 ) ) + amd64? ( 7zip? ( >=app-arch/p7zip-4.16 ) )" + +DEPEND="${RDEPEND} + dev-util/pkgconfig" + +src_unpack() { + if ( use x86 || use amd64 || use ppc ) && use 7zip; then + unpack ${U7Z} + fi + unpack ${P}.tar.gz + cd ${S} + + epatch ${FILESDIR}/${P}-find.patch + if ( use x86 || use amd64 || use ppc ) && use 7zip; then + epatch ${FILESDIR}/${PN}-4.6.0-7zip.patch + fi + epatch ${FILESDIR}/${P}-largefile.patch + if use slang && use unicode; then + epatch ${DISTDIR}/${P}-utf8.patch.bz2 + fi +} + +src_compile() { + append-flags -I/usr/include/gssapi + + filter-flags -malign-double + + local myconf="" + + if ! use slang && ! use ncurses ; then + myconf="${myconf} --with-screen=mcslang" + elif use ncurses && ! use slang ; then + myconf="${myconf} --with-screen=ncurses" + else + use slang && myconf="${myconf} --with-screen=slang" + fi + + myconf="${myconf} `use_with gpm gpm-mouse`" + + use nls \ + && myconf="${myconf} --with-included-gettext" \ + || myconf="${myconf} --disable-nls" + + myconf="${myconf} `use_with X x`" + + use samba \ + && myconf="${myconf} --with-samba --with-configdir=/etc/samba --with-codepagedir=/var/lib/samba/codepages --with-privatedir=/etc/samba/private" \ + || myconf="${myconf} --without-samba" + + econf \ + --with-vfs \ + --with-ext2undel \ + --with-edit \ + --enable-charset \ + ${myconf} || die + + emake || die +} + +src_install() { + cat ${FILESDIR}/chdir-4.6.0.gentoo >>\ + ${S}/lib/mc-wrapper.sh + + einstall || die + + # install cons.saver setuid, to actually work + chmod u+s ${D}/usr/lib/mc/cons.saver + + dodoc ChangeLog AUTHORS MAINTAINERS FAQ INSTALL* NEWS README* + + insinto /usr/share/mc + doins ${FILESDIR}/mc.gentoo + doins ${FILESDIR}/mc.ini + + if ( use x86 || use amd64 || use ppc ) && use 7zip; then + cd ../${U7Z_PV} + exeinto /usr/share/mc/extfs + doexe u7z + dodoc readme.u7z + newdoc ChangeLog ChangeLog.u7z + fi + + insinto /usr/share/mc/syntax + doins ${FILESDIR}/ebuild.syntax + cd ${D}/usr/share/mc/syntax + epatch ${FILESDIR}/${PN}-4.6.0-ebuild-syntax.patch + + # http://bugs.gentoo.org/show_bug.cgi?id=71275 + rm -f ${D}/usr/share/locale/locale.alias +} + +pkg_postinst() { + einfo "Add the following line to your ~/.bashrc to" + einfo "allow mc to chdir to its latest working dir at exit" + einfo "" + einfo "# Midnight Commander chdir enhancement" + einfo "if [ -f /usr/share/mc/mc.gentoo ]; then" + einfo " . /usr/share/mc/mc.gentoo" + einfo "fi" +} |