summaryrefslogtreecommitdiff
path: root/sysutils/mc/Makefile
diff options
context:
space:
mode:
authorwiz <wiz>2005-01-15 21:14:27 +0000
committerwiz <wiz>2005-01-15 21:14:27 +0000
commit3a08861bdb489fabef648cf5e3bd2324c9a6d7af (patch)
tree0caf88449b852905d3dac3643e7448614bd45011 /sysutils/mc/Makefile
parenta5186a5f345293c423ecbc026b019dd7b0f89a7d (diff)
downloadpkgsrc-3a08861bdb489fabef648cf5e3bd2324c9a6d7af.tar.gz
Update to 4.6.1pre2, fixing a number of vulnerabilities.
Joined work in pkgsrc-wip by Pavel Arnost, myself, and Roland Illig. Version 4.6.1-pre2. Release candidate for 4.6.1. - Security. - Fixed CAN-2004-0226 (buffer overflows). - Fixed CAN-2004-0231 (unsafe temporary file and directory creation). - Fixed CAN-2004-0232 (format string vulnerablities). - cons.saver does not need to be setuid-root on Linux. - Hiding of FTP passwords. - Portability. - PC port has been removed. - Support for SCO UNIX has been removed. - Improve support for QNX Neutrino. - Core functionality. - Use 8bit input as default. - Better support for '@' in FTP usernames. - Better large file support (int -> off_t) - Add gnome, rxvt and xterm-new terminals (keyword copy for mc.lib). - Make the find dialog more responsive while scanning through large files. - Add implementation to cons.handler for FreeBSD 4.x and 5.x. - Screen saving is now supported on FreeBSD console. - Hide temporary commands from history. - Add --with-glib12 option to configure to force using glib 1.2.x. - Add --disable-background option to disable background support. - Background support now uses pipes instead of UNIX sockets. - libX11 is loaded dynamically using gmodule if possible. - User is warned if one mc is run from another. - In red dialog boxes draw the hotkey characters with a color different than the one used to paint the dialog. - Screen libraries. - Add many boundary check into internal slang library. - Internal slang upgrade to 1.4.9. - Increased maximum screen size to 512 x 512. - Add support for qansi-m terminals. - Editor. - Fix bugs for mcedit compiled with ncurses. - New status string format in mcedit. - Support for large syntax files. - Temporarily disable safe save and backups on remote VFS because it doesn't work. - Enable user menu in mcedit. - Add syntax file for the ASP.NET technology. - Add syntax file for the Eiffel programming language. - Add syntax file for the Ruby programming language. - Add syntax file for the C# programming language. - Upgrade php.syntax file. - Improve sql.syntax file. - Improve perl.syntax. - Improve diff.syntax. - Improve makefile.syntax. - VFS. - Full audit of quoting of parameters in vfs scripts (CAN-2004-0494). - Fixed CAN-2003-1023 (stack overflow in vfs_s_resolve_symlink). - Various fixes in tar.c. - VFS supports iso9660 images. - Translations. - New translations: Mongolian, Serbian and Lithuanian. - Updated translations: Ukrainian, Italian, Hungarian. Version 4.6.0. - Core functionality. - Fixed infinite loop under xterm if xterm is forcedly closed. - Portability. - ncurses can be found even if it's renamed to curses (OpenBSD). - Warning fixes for 64-bit systems. Version 4.6.0-pre3. Another release candidate for 4.6.0. - Core functionality. - ".." is no longer shown in the root directory. - Fixed segmentation fault when processing truncated section header in the corrupted initialization file. - Screen libraries. - Fixed incorrect processing of AltGr on Linux console introduced in -pre2. - Documentation. - Fixed a bug in man2hlp that could randomly prevent correct generation of the help files. - Added manual page for mcview. Version 4.6.0-pre2. Release candidate for 4.6.0. - Security. - mc now creates its own temporary directory /tmp/mc-$USER. If it fails or permissions are wrong, the user is warned. - Portability. - mc now complies with the Filesystem Hierarchy Standard and uses @prefix@/share/mc for the data files. - Support for glib 2.0.x has been added. - glib 1.2 is now properly detected on FreeBSD. - Core functionality. - Fixed segmentation fault when displaying messages from background operations. - When using support for setting the last working directory of mc in the parent shell, "mc" is now an alias in all shells, not a function. The "-P" option needs an argument now. - Alt-O sets the same directory on the other panel. - Current directory is shown in the xterm window title. - Screen libraries. - Screen library is now selected by the option --with-screen. - X11 support is enabled by default, use --without-x to disable. - The keycode now contains information about all screen modifiers. This allows to implement more shortcuts, but this work has just begun. - Included S-Lang library has been updated to version 1.4.5. - Mouse wheel is supported in the internal editor and viewer in xterm compatible terminals that implement wheel events. - Editor. - Internal editor now saves the cursor position in the file. - New syntax rules - RPM specfile, m4. - Editor shows control characters in the caret notation. - VFS. - Most extfs scripts have been reviewed and improved. - Fixed viewing and editing files on mcfs. - Support for termnet and HSC firewall has been removed. - Documentation. - Polish manual has been added. Version 4.6.0-pre1. - Security release. Massive code cleanup. Most improvements didn't need any significant amount of the new code. - Security. - Fixes for remotely exploitable buffer overflows in VFS. - Ports and editions. - GNOME edition has been removed. - OS/2 port has been removed. - MAD (Memory Allocation Debugger) has been removed. - Core functionality. - Large file support enabled by default. - Shift-F5 and Shift-F6 copy and rename like F5 and F6, but suggest the selected filename as the destination. - File search with contents doesn't use external egrep. - Directories with many files are now reloaded much faster. - Subshell works under Cygwin. - Screen libraries. - Improved support for ncurses. - Dropped support for the old Curses library. - Colors are enabled on all capable terminals when using S-Lang. - Syntax highlighting now works with ncurses. - Editor. - Editor files are now stored in ~/.mc/cedit instead of ~/.cedit to avoid collision with Cooledit. - New syntax rules - PHP, Tcl, SQL, DOS batch file. - Editor supports word completion. - VFS. - Local temporary file is used for uploading via ftpfs/fish only if file is uploaded to the same ftp/fish server. - mcfs support is disabled by default. - Samba configuration and codepage files locations can be configured. - .netrc support in ftpfs is enabled by default. - Viewing zip files could corrupt them. - Documentation. - Added manuals in Spanish, Italian and Russian. - Help files are not distributed, but generated during the build from the manual pages. - Translations. - Belarussian translation has been added. Version 4.5.55 - Mostly bugfixes and portability fixes. Making things work as they were meant to work. - Text edition improvements. - Ctrl-O supported in the viewer and editor. - Better terminal support. Should not need "Learn Keys" on rxvt and xterm in most cases. - GNOME edition improvements. - Find dialog rewritten. - Editor and viewer ask whether to save modified file when closed from window manager. - Editor. - New syntax rules - S-Lang, PO files, Octave. - Alt-B goes to matching bracket. - Portability improvements. - Should compile out-of-box on Cygwin and QNX Neutrino. - Can be compiled by BSD make. - Subshell and VFS code are safer and more portable. - Experimental features (disabled by default). - Charset conversion support. - Large (64-bit) file support on 32-bit systems.
Diffstat (limited to 'sysutils/mc/Makefile')
-rw-r--r--sysutils/mc/Makefile125
1 files changed, 84 insertions, 41 deletions
diff --git a/sysutils/mc/Makefile b/sysutils/mc/Makefile
index 5fc4c6cf315..26bff4ed815 100644
--- a/sysutils/mc/Makefile
+++ b/sysutils/mc/Makefile
@@ -1,58 +1,101 @@
-# $NetBSD: Makefile,v 1.46 2004/12/20 15:58:27 wiz Exp $
-# FreeBSD Id: Makefile,v 1.16 1997/11/30 19:37:48 vanilla Exp
-#
+# $NetBSD: Makefile,v 1.47 2005/01/15 21:14:27 wiz Exp $
-DISTNAME= mc-4.5.51
-PKGREVISION= 5
-CATEGORIES= sysutils
-MASTER_SITES+= ${MASTER_SITE_GNOME:=stable/sources/mc/}
+DISTNAME= mc-4.6.1-pre2b
+PKGNAME= mc-4.6.1rc2
+CATEGORIES= sysutils
+MASTER_SITES= http://pavelsh.pp.ru/mc/
+#MASTER_SITES= http://www.ibiblio.org/pub/Linux/utils/file/managers/mc/ \
+# ${MASTER_SITE_SUNSITE:=utils/file/managers/mc/}
-MAINTAINER= tech-pkg@NetBSD.org
-HOMEPAGE= http://www.ibiblio.org/mc/
-COMMENT= Midnight Commander, a free Norton Commander Clone
+MAINTAINER= pavel.arnost@clnet.cz
+HOMEPAGE= http://www.ibiblio.org/mc/
+COMMENT= User-friendly file manager and visual shell
-BUILD_USES_MSGFMT= YES
-
-CONFLICTS+= gmc-[0-9]*
+.include "../../mk/bsd.prefs.mk"
USE_BUILDLINK3= YES
-USE_PKGLOCALEDIR= YES
+GNU_CONFIGURE= YES
USE_GNU_TOOLS+= make
+USE_PKGLOCALEDIR= YES
-GNU_CONFIGURE= YES
-CONFIGURE_ARGS+= --without-included-gettext
-CONFIGURE_ARGS+= --with-netrc --with-included-slang
+.if ${OPSYS} == "Linux"
+PLIST_SRC+= ${PKGDIR}/PLIST.cons.saver
+.endif
+
+# remove dir if no extensions were installed there
+post-install:
+ @${RMDIR} ${PREFIX}/lib/mc 2>/dev/null || ${TRUE}
+
+# we need working e2fsprogs and gpm packages first
+CONFIGURE_ARGS+= --without-ext2undel
+CONFIGURE_ARGS+= --without-gpm-mouse
+
+MC_FEATURES= edit charset largefile samba subshell vfs x11
+MC_DISABLE_FEATURES= x11 samba
+
+MC_SCREEN_LIBRARY= slang
+
+.for feature in ${MC_FEATURES}
+
+__feature:=${feature}
+
+. if empty(MC_DISABLE_FEATURES:M${feature})
+
+. if ${__feature} == edit
+CONFIGURE_ARGS+= --with-edit
+PLIST_SRC+= ${PKGDIR}/PLIST.mcedit
+. elif ${__feature} == charset
+CONFIGURE_ARGS+= --enable-charset
+.include "../../converters/libiconv/buildlink3.mk"
+PLIST_SRC+= ${PKGDIR}/PLIST.charset
+. elif ${__feature} == largefile
+CONFIGURE_ARGS+= --enable-largefile
+. elif ${__feature} == samba
CONFIGURE_ARGS+= --with-samba
-CONFIGURE_ARGS+= --without-gnome
-CONFIGURE_ARGS+= --without-tk
-CONFIGURE_ARGS+= --without-tm-x-support
-CONFIGURE_ARGS+= --without-x
+. elif ${__feature} == subshell
+CONFIGURE_ARGS+= --with-subshell
+. elif ${__feature} == vfs
+CONFIGURE_ARGS+= --with-vfs
+PLIST_SRC+= ${PKGDIR}/PLIST.vfs
+. elif ${__feature} == x11
+USE_X11= YES
+CONFIGURE_ARGS+= --with-x
+. endif
-# Don't pick up readline if it's installed in the build environment.
-#
-CONFIGURE_ENV+= ac_cv_header_history_h=no
-CONFIGURE_ENV+= ac_cv_header_readline_h=no
-CONFIGURE_ENV+= ac_cv_header_readline_history_h=no
-CONFIGURE_ENV+= ac_cv_header_readline_readline_h=no
+. else
-CONFIGURE_ENV+= LOCALBASE=${LOCALBASE:Q}
-CONFIGURE_ENV+= PKGLOCALEDIR=${PKGLOCALEDIR:Q}
+. if ${__feature} == edit
+CONFIGURE_ARGS+= --without-edit
+. elif ${__feature} == charset
+CONFIGURE_ARGS+= --disable-charset
+. elif ${__feature} == largefile
+CONFIGURE_ARGS+= --disable-largefile
+. elif ${__feature} == samba
+CONFIGURE_ARGS+= --without-samba
+. elif ${__feature} == subshell
+CONFIGURE_ARGS+= --without-subshell
+. elif ${__feature} == vfs
+CONFIGURE_ARGS+= --without-vfs
+. elif ${__feature} == x11
+CONFIGURE_ARGS+= --without-x
+. endif
-LIBS+= -lm -ltermcap # -lslang
-CPPFLAGS+= -Dunix
+. endif
-.include "../../mk/bsd.prefs.mk"
+.endfor
-.if ${OPSYS} == "SunOS"
-CFLAGS+= -DSunOS
-.endif
+PLIST_SRC+= ${PKGDIR}/PLIST
-# Remove unwanted directories in a non-GNOME installation.
-#
-post-install:
- ${RMDIR} -p ${PREFIX}/share/idl 2>/dev/null || ${TRUE}
- ${RMDIR} -p ${PREFIX}/share/pixmaps/mc 2>/dev/null || ${TRUE}
+.if ${MC_SCREEN_LIBRARY} == "slang"
+CONFIGURE_ARGS+= --with-screen=slang
+.include "../../devel/libslang/buildlink3.mk"
+.elif ${MC_SCREEN_LIBRARY} == "ncurses"
+CONFIGURE_ARGS+= --with-screen=ncurses
+.include "../../devel/ncurses/buildlink3.mk"
+.else
+CONFIGURE_ARGS+= --with-screen=mcslang
+.endif
+.include "../../devel/glib2/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
-.include "../../devel/glib/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"