mirror of
https://gitlab.redox-os.org/redox-os/redox.git
synced 2026-06-23 05:14:18 +08:00
Update vim
This commit is contained in:
parent
65325736e7
commit
673e8ec470
@ -1,4 +1,4 @@
|
||||
VERSION=8.0.586
|
||||
VERSION=8.2
|
||||
TAR=http://ftp.vim.org/vim/unix/vim-$VERSION.tar.bz2
|
||||
BUILD_DEPENDS=(ncurses)
|
||||
DEPENDS="terminfo"
|
||||
@ -17,11 +17,12 @@ function recipe_build {
|
||||
sysroot="$(realpath ../sysroot)"
|
||||
export LDFLAGS="-L$sysroot/lib -static"
|
||||
export CPPFLAGS="-I$sysroot/include"
|
||||
export vim_cv_toupper_broken=set
|
||||
export vim_cv_terminfo=no
|
||||
export vim_cv_toupper_broken=no
|
||||
export vim_cv_tgetent=zero
|
||||
export vim_cv_terminfo=yes
|
||||
export vim_cv_tty_group=world
|
||||
export vim_cv_getcwd_broken=yes
|
||||
export vim_cv_stat_ignores_slash=no
|
||||
export vim_cv_getcwd_broken=no
|
||||
export vim_cv_stat_ignores_slash=yes
|
||||
export vim_cv_memmove_handles_overlap=yes
|
||||
./configure --build=${BUILD} --host=${HOST} --prefix=/ --with-tlib=ncurses
|
||||
make -j"$(nproc)"
|
||||
|
||||
@ -1,212 +1,12 @@
|
||||
diff -ru source/src/channel.c source-new/src/channel.c
|
||||
--- source/src/channel.c 2017-04-07 04:57:11.000000000 -0700
|
||||
+++ source-new/src/channel.c 2017-11-04 14:36:18.494841805 -0700
|
||||
@@ -852,27 +852,29 @@
|
||||
* actually able to connect.
|
||||
* We detect a failure to connect when either read and write fds
|
||||
* are set. Use getsockopt() to find out what kind of failure. */
|
||||
- if (FD_ISSET(sd, &rfds) || FD_ISSET(sd, &wfds))
|
||||
- {
|
||||
- ret = getsockopt(sd,
|
||||
- SOL_SOCKET, SO_ERROR, &so_error, &so_error_len);
|
||||
- if (ret < 0 || (so_error != 0
|
||||
- && so_error != EWOULDBLOCK
|
||||
- && so_error != ECONNREFUSED
|
||||
-# ifdef EINPROGRESS
|
||||
- && so_error != EINPROGRESS
|
||||
-# endif
|
||||
- ))
|
||||
- {
|
||||
- ch_errorn(channel,
|
||||
- "channel_open: Connect failed with errno %d",
|
||||
- so_error);
|
||||
- PERROR(_(e_cannot_connect));
|
||||
- sock_close(sd);
|
||||
- channel_free(channel);
|
||||
- return NULL;
|
||||
- }
|
||||
- }
|
||||
+/*
|
||||
+ * if (FD_ISSET(sd, &rfds) || FD_ISSET(sd, &wfds))
|
||||
+ * {
|
||||
+ * ret = getsockopt(sd,
|
||||
+ * SOL_SOCKET, SO_ERROR, &so_error, &so_error_len);
|
||||
+ * if (ret < 0 || (so_error != 0
|
||||
+ * && so_error != EWOULDBLOCK
|
||||
+ * && so_error != ECONNREFUSED
|
||||
+ *# ifdef EINPROGRESS
|
||||
+ * && so_error != EINPROGRESS
|
||||
+ *# endif
|
||||
+ * ))
|
||||
+ * {
|
||||
+ * ch_errorn(channel,
|
||||
+ * "channel_open: Connect failed with errno %d",
|
||||
+ * so_error);
|
||||
+ * PERROR(_(e_cannot_connect));
|
||||
+ * sock_close(sd);
|
||||
+ * channel_free(channel);
|
||||
+ * return NULL;
|
||||
+ * }
|
||||
+ * }
|
||||
+ */
|
||||
|
||||
if (FD_ISSET(sd, &wfds) && so_error == 0)
|
||||
/* Did not detect an error, connection is established. */
|
||||
diff -ru source/src/memfile.c source-new/src/memfile.c
|
||||
--- source/src/memfile.c 2016-11-10 09:24:37.000000000 -0800
|
||||
+++ source-new/src/memfile.c 2017-11-04 14:36:18.494841805 -0700
|
||||
@@ -596,88 +596,88 @@
|
||||
if (hp == NULL || status == FAIL)
|
||||
mfp->mf_dirty = FALSE;
|
||||
|
||||
- if ((flags & MFS_FLUSH) && *p_sws != NUL)
|
||||
- {
|
||||
-#if defined(UNIX)
|
||||
-# ifdef HAVE_FSYNC
|
||||
+/* if ((flags & MFS_FLUSH) && *p_sws != NUL)*/
|
||||
+ /*{*/
|
||||
+/*#if defined(UNIX)*/
|
||||
+/*# ifdef HAVE_FSYNC*/
|
||||
/*
|
||||
* most Unixes have the very useful fsync() function, just what we need.
|
||||
*/
|
||||
- if (STRCMP(p_sws, "fsync") == 0)
|
||||
- {
|
||||
- if (fsync(mfp->mf_fd))
|
||||
- status = FAIL;
|
||||
- }
|
||||
- else
|
||||
-# endif
|
||||
- /* OpenNT is strictly POSIX (Benzinger) */
|
||||
- /* Tandem/Himalaya NSK-OSS doesn't have sync() */
|
||||
- /* No sync() on Stratus VOS */
|
||||
-# if defined(__OPENNT) || defined(__TANDEM) || defined(__VOS__)
|
||||
- fflush(NULL);
|
||||
-# else
|
||||
- sync();
|
||||
-# endif
|
||||
-#endif
|
||||
-#ifdef VMS
|
||||
- if (STRCMP(p_sws, "fsync") == 0)
|
||||
- {
|
||||
- if (fsync(mfp->mf_fd))
|
||||
- status = FAIL;
|
||||
- }
|
||||
-#endif
|
||||
-#ifdef SYNC_DUP_CLOSE
|
||||
+ /*if (STRCMP(p_sws, "fsync") == 0)*/
|
||||
+ /*{*/
|
||||
+ /*if (fsync(mfp->mf_fd))*/
|
||||
+ /*status = FAIL;*/
|
||||
+ /*}*/
|
||||
+ /*else*/
|
||||
+/*# endif*/
|
||||
+ /*[> OpenNT is strictly POSIX (Benzinger) <]*/
|
||||
+ /*[> Tandem/Himalaya NSK-OSS doesn't have sync() <]*/
|
||||
+ /*[> No sync() on Stratus VOS <]*/
|
||||
+/*# if defined(__OPENNT) || defined(__TANDEM) || defined(__VOS__)*/
|
||||
+ /*fflush(NULL);*/
|
||||
+/*# else*/
|
||||
+ /*//sync();*/
|
||||
+/*# endif*/
|
||||
+/*#endif*/
|
||||
+/*#ifdef VMS*/
|
||||
+ /*if (STRCMP(p_sws, "fsync") == 0)*/
|
||||
+ /*{*/
|
||||
+ /*if (fsync(mfp->mf_fd))*/
|
||||
+ /*status = FAIL;*/
|
||||
+ /*}*/
|
||||
+/*#endif*/
|
||||
+/*#ifdef SYNC_DUP_CLOSE*/
|
||||
/*
|
||||
* Win32 is a bit more work: Duplicate the file handle and close it.
|
||||
* This should flush the file to disk.
|
||||
*/
|
||||
- if ((fd = dup(mfp->mf_fd)) >= 0)
|
||||
- close(fd);
|
||||
-#endif
|
||||
-#ifdef AMIGA
|
||||
-# if defined(__AROS__) || defined(__amigaos4__)
|
||||
- if (fsync(mfp->mf_fd) != 0)
|
||||
- status = FAIL;
|
||||
-# else
|
||||
+ /*if ((fd = dup(mfp->mf_fd)) >= 0)*/
|
||||
+ /*close(fd);*/
|
||||
+/*#endif*/
|
||||
+/*#ifdef AMIGA*/
|
||||
+/*# if defined(__AROS__) || defined(__amigaos4__)*/
|
||||
+ /*if (fsync(mfp->mf_fd) != 0)*/
|
||||
+ /*status = FAIL;*/
|
||||
+/*# else*/
|
||||
/*
|
||||
* Flush() only exists for AmigaDos 2.0.
|
||||
* For 1.3 it should be done with close() + open(), but then the risk
|
||||
* is that the open() may fail and lose the file....
|
||||
*/
|
||||
-# ifdef FEAT_ARP
|
||||
- if (dos2)
|
||||
-# endif
|
||||
-# ifdef SASC
|
||||
- {
|
||||
- struct UFB *fp = chkufb(mfp->mf_fd);
|
||||
+/*# ifdef FEAT_ARP*/
|
||||
+ /*if (dos2)*/
|
||||
+/*# endif*/
|
||||
+/*# ifdef SASC*/
|
||||
+ /*{*/
|
||||
+ /*struct UFB *fp = chkufb(mfp->mf_fd);*/
|
||||
|
||||
- if (fp != NULL)
|
||||
- Flush(fp->ufbfh);
|
||||
- }
|
||||
-# else
|
||||
-# if defined(_DCC) || defined(__GNUC__) || defined(__MORPHOS__)
|
||||
- {
|
||||
-# if defined(__GNUC__) && !defined(__MORPHOS__) && defined(__libnix__)
|
||||
+ /*if (fp != NULL)*/
|
||||
+ /*Flush(fp->ufbfh);*/
|
||||
+ /*}*/
|
||||
+/*# else*/
|
||||
+/*# if defined(_DCC) || defined(__GNUC__) || defined(__MORPHOS__)*/
|
||||
+ /*{*/
|
||||
+/*# if defined(__GNUC__) && !defined(__MORPHOS__) && defined(__libnix__)*/
|
||||
/* Have function (in libnix at least),
|
||||
* but ain't got no prototype anywhere. */
|
||||
- extern unsigned long fdtofh(int filedescriptor);
|
||||
-# endif
|
||||
-# if !defined(__libnix__)
|
||||
- fflush(NULL);
|
||||
-# else
|
||||
- BPTR fh = (BPTR)fdtofh(mfp->mf_fd);
|
||||
+ /*extern unsigned long fdtofh(int filedescriptor);*/
|
||||
+/*# endif*/
|
||||
+/*# if !defined(__libnix__)*/
|
||||
+ /*fflush(NULL);*/
|
||||
+/*# else*/
|
||||
+ /*BPTR fh = (BPTR)fdtofh(mfp->mf_fd);*/
|
||||
|
||||
- if (fh != 0)
|
||||
- Flush(fh);
|
||||
-# endif
|
||||
- }
|
||||
-# else /* assume Manx */
|
||||
- Flush(_devtab[mfp->mf_fd].fd);
|
||||
-# endif
|
||||
-# endif
|
||||
-# endif
|
||||
-#endif /* AMIGA */
|
||||
- }
|
||||
+ /*if (fh != 0)*/
|
||||
+ /*Flush(fh);*/
|
||||
+/*# endif*/
|
||||
+ /*}*/
|
||||
+/*# else [> assume Manx <]*/
|
||||
+ /*Flush(_devtab[mfp->mf_fd].fd);*/
|
||||
+/*# endif*/
|
||||
+/*# endif*/
|
||||
+/*# endif*/
|
||||
+/*#endif [> AMIGA <]*/
|
||||
+ /*}*/
|
||||
|
||||
got_int |= got_int_save;
|
||||
|
||||
diff -ruwN source/src/memfile.c source-new/src/memfile.c
|
||||
--- source/src/memfile.c 2016-11-10 10:24:37.000000000 -0700
|
||||
+++ source-new/src/memfile.c 2020-01-25 18:19:55.524324451 -0700
|
||||
@@ -615,6 +615,8 @@
|
||||
/* No sync() on Stratus VOS */
|
||||
# if defined(__OPENNT) || defined(__TANDEM) || defined(__VOS__)
|
||||
fflush(NULL);
|
||||
+# elif defined(__redox__)
|
||||
+ fsync(mfp->mf_fd);
|
||||
# else
|
||||
sync();
|
||||
# endif
|
||||
|
||||
Loading…
Reference in New Issue
Block a user