Skip to content
Snippets Groups Projects
Commit 35bb3d3c authored by Paul Sajna's avatar Paul Sajna
Browse files

recipe for vim

parent 7f5280aa
No related branches found
No related tags found
1 merge request!93recipes for vim jansson and ssh
VERSION=8.0.586
TAR=http://ftp.vim.org/vim/unix/vim-$VERSION.tar.bz2
BUILD_DEPENDS=(ncurses)
export AR="${HOST}-ar"
export AS="${HOST}-as"
export CC="${HOST}-gcc"
export CXX="${HOST}-g++"
export LD="${HOST}-ld"
export NM="${HOST}-nm"
export OBJCOPY="${HOST}-objcopy"
export OBJDUMP="${HOST}-objdump"
export RANLIB="${HOST}-ranlib"
export READELF="${HOST}-readelf"
export STRIP="${HOST}-strip"
function recipe_version {
echo "$VERSION"
skip=1
}
function recipe_update {
echo "skipping update"
skip=1
}
function recipe_build {
sysroot="${PWD}/../sysroot"
export LDFLAGS="-L$sysroot/lib"
export CPPFLAGS="-I$sysroot/include"
export vim_cv_toupper_broken=set
export vim_cv_terminfo=no
export vim_cv_tty_group=world
export vim_cv_getcwd_broken=yes
export vim_cv_stat_ignores_slash=no
export vim_cv_memmove_handles_overlap=yes
./configure --host=${HOST} --prefix=/ --with-tlib=ncurses
make
skip=1
}
function recipe_test {
echo "skipping test"
skip=1
}
function recipe_clean {
make clean
skip=1
}
function recipe_stage {
dest="$(realpath $1)"
make DESTDIR="$dest" ${MAKEFLAGS} install
skip=1
}
diff -ru source/src/channel.c source-new/src/channel.c
--- source/src/channel.c 2017-10-30 17:21:14.784946514 -0700
+++ source-new/src/channel.c 2017-10-30 17:27:08.234992143 -0700
@@ -852,29 +852,27 @@
* 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 2017-10-30 17:24:53.944974807 -0700
+++ source-new/src/memfile.c 2017-10-30 17:27:08.244992145 -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;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment