2016-02-26 16:03:53 +01:00
|
|
|
{ stdenv, fetchFromGitHub, fetchurl, ncurses, gettext, pkgconfig
|
|
|
|
# default vimrc
|
|
|
|
, vimrc ? fetchurl {
|
|
|
|
name = "default-vimrc";
|
|
|
|
url = https://projects.archlinux.org/svntogit/packages.git/plain/trunk/archlinux.vim?h=packages/vim?id=68f6d131750aa778807119e03eed70286a17b1cb;
|
|
|
|
sha256 = "18ifhv5q9prd175q3vxbqf6qyvkk6bc7d2lhqdk0q78i68kv9y0c";
|
|
|
|
}
|
2015-06-26 18:53:44 +02:00
|
|
|
# apple frameworks
|
2015-10-28 21:40:10 +01:00
|
|
|
, Carbon, Cocoa }:
|
2010-02-28 18:54:41 +01:00
|
|
|
|
2010-07-28 14:52:54 +02:00
|
|
|
stdenv.mkDerivation rec {
|
2013-08-29 23:27:48 +02:00
|
|
|
name = "vim-${version}";
|
2016-09-16 21:42:38 +02:00
|
|
|
version = "8.0.0005";
|
2013-08-29 23:27:48 +02:00
|
|
|
|
2015-08-14 23:06:18 +02:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "vim";
|
|
|
|
repo = "vim";
|
2015-08-21 00:57:25 +02:00
|
|
|
rev = "v${version}";
|
2016-09-16 21:42:38 +02:00
|
|
|
sha256 = "0ys3l3dr43vjad1f096ch1sl3x2ajsqkd03rdn6n812m7j4wipx0";
|
2010-07-28 14:52:54 +02:00
|
|
|
};
|
2013-08-13 17:47:27 +02:00
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
2013-08-29 23:27:48 +02:00
|
|
|
|
2015-06-26 18:53:44 +02:00
|
|
|
buildInputs = [ ncurses pkgconfig ]
|
2015-10-28 21:40:10 +01:00
|
|
|
++ stdenv.lib.optionals stdenv.isDarwin [ Carbon Cocoa ];
|
2012-12-28 19:20:09 +01:00
|
|
|
nativeBuildInputs = [ gettext ];
|
2010-10-03 11:17:22 +02:00
|
|
|
|
|
|
|
configureFlags = [
|
|
|
|
"--enable-multibyte"
|
|
|
|
"--enable-nls"
|
|
|
|
];
|
2007-08-11 13:14:36 +02:00
|
|
|
|
2016-03-05 21:39:38 +01:00
|
|
|
hardeningDisable = [ "fortify" ];
|
|
|
|
|
2016-02-26 16:03:53 +01:00
|
|
|
postInstall = ''
|
|
|
|
ln -s $out/bin/vim $out/bin/vi
|
|
|
|
mkdir -p $out/share/vim
|
|
|
|
cp "${vimrc}" $out/share/vim/vimrc
|
|
|
|
'';
|
2010-08-11 22:14:25 +02:00
|
|
|
|
|
|
|
crossAttrs = {
|
|
|
|
configureFlags = [
|
|
|
|
"vim_cv_toupper_broken=no"
|
|
|
|
"--with-tlib=ncurses"
|
|
|
|
"vim_cv_terminfo=yes"
|
|
|
|
"vim_cv_tty_group=tty"
|
|
|
|
"vim_cv_tty_mode=0660"
|
|
|
|
"vim_cv_getcwd_broken=no"
|
|
|
|
"vim_cv_stat_ignores_slash=yes"
|
|
|
|
"ac_cv_sizeof_int=4"
|
|
|
|
"vim_cv_memmove_handles_overlap=yes"
|
2010-10-12 20:33:02 +02:00
|
|
|
"vim_cv_memmove_handles_overlap=yes"
|
2010-08-11 22:14:25 +02:00
|
|
|
"STRIP=${stdenv.cross.config}-strip"
|
|
|
|
];
|
|
|
|
};
|
2010-10-12 20:33:02 +02:00
|
|
|
|
2015-11-25 19:09:35 +01:00
|
|
|
__impureHostDeps = [ "/dev/ptmx" ];
|
2015-11-13 03:59:17 +01:00
|
|
|
|
2010-10-12 20:33:02 +02:00
|
|
|
# To fix the trouble in vim73, that it cannot cross-build with this patch
|
|
|
|
# to bypass a configure script check that cannot be done cross-building.
|
|
|
|
# http://groups.google.com/group/vim_dev/browse_thread/thread/66c02efd1523554b?pli=1
|
2013-09-04 03:32:06 +02:00
|
|
|
# patchPhase = ''
|
|
|
|
# sed -i -e 's/as_fn_error.*int32.*/:/' src/auto/configure
|
|
|
|
# '';
|
|
|
|
|
2013-07-14 03:24:45 +02:00
|
|
|
meta = with stdenv.lib; {
|
2006-10-12 12:53:16 +02:00
|
|
|
description = "The most popular clone of the VI editor";
|
2013-07-14 03:24:45 +02:00
|
|
|
homepage = http://www.vim.org;
|
2015-05-28 19:20:29 +02:00
|
|
|
license = licenses.vim;
|
2013-07-14 03:24:45 +02:00
|
|
|
maintainers = with maintainers; [ lovek323 ];
|
|
|
|
platforms = platforms.unix;
|
2006-10-12 12:53:16 +02:00
|
|
|
};
|
2004-07-30 14:57:27 +02:00
|
|
|
}
|