summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorpingplug2015-06-12 10:20:46 +0800
committerpingplug2015-06-12 10:20:46 +0800
commit2ab06ea366e12ec34a1b1f28a23fe324fae9bdd4 (patch)
tree3c91d0a0a0529cddc31fd7b45e6d88530be034f9
downloadaur-2ab06ea366e12ec34a1b1f28a23fe324fae9bdd4.tar.gz
Initial import
-rw-r--r--.SRCINFO54
-rw-r--r--PKGBUILD85
-rw-r--r--readline-1.patch203
3 files changed, 342 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..32dd5b321a15
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,54 @@
+pkgbase = mingw-w64-readline
+ pkgdesc = MinGW port of readline for editing typed command lines (mingw-w64)
+ pkgver = 6.3.008
+ pkgrel = 2
+ url = http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html
+ arch = any
+ license = GPL
+ makedepends = mingw-w64-configure
+ depends = mingw-w64-crt
+ depends = mingw-w64-pdcurses
+ options = staticlibs
+ options = !buildflags
+ options = !strip
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3.tar.gz
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3.tar.gz.sig
+ source = readline-1.patch
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-001
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-001.sig
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-002
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-002.sig
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-003
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-003.sig
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-004
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-004.sig
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-005
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-005.sig
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-006
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-006.sig
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-007
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-007.sig
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-008
+ source = http://ftp.gnu.org/gnu/readline/readline-6.3-patches/readline63-008.sig
+ md5sums = 33c8fb279e981274f485fd91da77e94a
+ md5sums = SKIP
+ md5sums = 5e131046492793cf36ff6bf5ab61fbd7
+ md5sums = 4343f5ea9b0f42447f102fb61576b398
+ md5sums = SKIP
+ md5sums = 700295212f7e2978577feaee584afddb
+ md5sums = SKIP
+ md5sums = af4963862f5156fbf9111c2c6fa86ed7
+ md5sums = SKIP
+ md5sums = 11f9def89803a5052db3ba72394ce14f
+ md5sums = SKIP
+ md5sums = 93721c31cd225393f80cb3aadb165544
+ md5sums = SKIP
+ md5sums = 71dc6ecce66d1489b96595f55d142a52
+ md5sums = SKIP
+ md5sums = 062a08ed60679d3c4878710b3d595b65
+ md5sums = SKIP
+ md5sums = ee1c04072154826870848d8b218d7b04
+ md5sums = SKIP
+
+pkgname = mingw-w64-readline
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..bbd1121803c9
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,85 @@
+# Maintainer: pingplug <pingplug@foxmail.com>
+# Contributor: Filip Brcic <brcha@gna.org>
+
+# Thanks to the patch from the MXE project <mxe.cc>
+
+pkgname=mingw-w64-readline
+_basever=6.3
+_patchlevel=008
+pkgver=$_basever.$_patchlevel
+pkgrel=2
+pkgdesc="MinGW port of readline for editing typed command lines (mingw-w64)"
+arch=('any')
+depends=('mingw-w64-crt' 'mingw-w64-pdcurses')
+makedepends=('mingw-w64-configure')
+options=('staticlibs' '!buildflags' '!strip')
+license=('GPL')
+url="http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html"
+source=("http://ftp.gnu.org/gnu/readline/readline-${_basever}.tar.gz"{,.sig}
+ "readline-1.patch")
+if [ $_patchlevel -gt 00 ]; then
+ for (( p=1; p<=$((10#${_patchlevel})); p++ )); do
+ source=(${source[@]} http://ftp.gnu.org/gnu/readline/readline-$_basever-patches/readline${_basever//./}-$(printf "%03d" $p){,.sig})
+ done
+fi
+
+md5sums=('33c8fb279e981274f485fd91da77e94a'
+ 'SKIP'
+ '5e131046492793cf36ff6bf5ab61fbd7'
+ '4343f5ea9b0f42447f102fb61576b398'
+ 'SKIP'
+ '700295212f7e2978577feaee584afddb'
+ 'SKIP'
+ 'af4963862f5156fbf9111c2c6fa86ed7'
+ 'SKIP'
+ '11f9def89803a5052db3ba72394ce14f'
+ 'SKIP'
+ '93721c31cd225393f80cb3aadb165544'
+ 'SKIP'
+ '71dc6ecce66d1489b96595f55d142a52'
+ 'SKIP'
+ '062a08ed60679d3c4878710b3d595b65'
+ 'SKIP'
+ 'ee1c04072154826870848d8b218d7b04'
+ 'SKIP')
+
+_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
+
+build() {
+ cd "${srcdir}/readline-${_basever}"
+
+ for (( p=1; p<=$((10#${_patchlevel})); p++ )); do
+ msg "applying patch readline${_basever//./}-$(printf "%03d" $p)"
+ patch -Np0 -i $srcdir/readline${_basever//./}-$(printf "%03d" $p)
+ done
+
+ msg "applying the patch from MXE project"
+ patch -Nfp1 -i $srcdir/readline-1.patch
+
+ # Remove RPATH from shared objects (FS#14366)
+ sed 's|-Wl,-rpath,$(libdir) ||g' support/shobj-conf
+
+ for _arch in ${_architectures}; do
+ unset LDFLAGS
+ mkdir -p build-${_arch} && pushd build-${_arch}
+ bash_cv_wcwidth_broken=no ${_arch}-configure \
+ --target=${_arch} \
+ --enable-multibyte \
+ --without-purify \
+ --with-curses
+ make SHLIB_LIBS="-lpdcurses"
+ popd
+ done
+}
+
+package() {
+ for _arch in ${_architectures} ; do
+ cd "${srcdir}/readline-${_basever}/build-${_arch}"
+ make install DESTDIR="${pkgdir}" SHLIB_LIBS="-lpdcurses"
+ rm -r "${pkgdir}"/usr/${_arch}/share/
+ ${_arch}-strip --strip-unneeded "${pkgdir}"/usr/${_arch}/bin/*.dll
+ ${_arch}-strip --strip-debug "${pkgdir}"/usr/${_arch}/lib/*.a
+ done
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/readline-1.patch b/readline-1.patch
new file mode 100644
index 000000000000..b1a15b145c76
--- /dev/null
+++ b/readline-1.patch
@@ -0,0 +1,203 @@
+This file is part of MXE.
+See index.html for further information.
+
+From c0572cecbeadc8fe24c70c5c39d49210a39ac719 Mon Sep 17 00:00:00 2001
+From: Timothy Gu <timothygu99@gmail.com>
+Date: Tue, 30 Sep 2014 10:32:33 -0700
+Subject: [PATCH 1/2] signals: safeguard the remaining usage of frequently
+ missing signals
+
+diff --git a/input.c b/input.c
+index 117dfe8..465f0b9 100644
+--- a/input.c
++++ b/input.c
+@@ -532,18 +532,23 @@
+ Otherwise (not EINTR), some error occurred, also signifying EOF. */
+ if (errno != EINTR)
+ return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
+- else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
++ else if (_rl_caught_signal == SIGTERM
++#if defined(SIGHUP)
++ || _rl_caught_signal == SIGHUP
++#endif
++ )
+ return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
+- /* keyboard-generated signals of interest */
+- else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
++ else if (_rl_caught_signal == SIGINT
++#if defined(SIGQUIT)
++ || _rl_caught_signal == SIGQUIT
++#endif
++ )
+ RL_CHECK_SIGNALS ();
++ else if (_rl_caught_signal == SIGINT
++#if defined(SIGQUIT)
++ || _rl_caught_signal == SIGQUIT
+- /* non-keyboard-generated signals of interest */
+- else if (_rl_caught_signal == SIGALRM
+-#if defined (SIGVTALRM)
+- || _rl_caught_signal == SIGVTALRM
+ #endif
++ )
+- )
+- RL_CHECK_SIGNALS ();
+
+ if (rl_signal_event_hook)
+ (*rl_signal_event_hook) ();
+diff --git a/signals.c b/signals.c
+index 61f02f9..7c921d6 100644
+--- a/signals.c
++++ b/signals.c
+@@ -216,7 +216,9 @@ _rl_handle_signal (sig)
+ /* FALLTHROUGH */
+
+ case SIGTERM:
++#if defined (SIGHUP)
+ case SIGHUP:
++#endif
+ #if defined (SIGTSTP)
+ case SIGTSTP:
+ case SIGTTOU:
+@@ -426,7 +428,9 @@ rl_set_signals ()
+
+ rl_maybe_set_sighandler (SIGINT, rl_signal_handler, &old_int);
+ rl_maybe_set_sighandler (SIGTERM, rl_signal_handler, &old_term);
++#if defined (SIGHUP)
+ rl_maybe_set_sighandler (SIGHUP, rl_signal_handler, &old_hup);
++#endif
+ #if defined (SIGQUIT)
+ rl_maybe_set_sighandler (SIGQUIT, rl_signal_handler, &old_quit);
+ #endif
+@@ -491,7 +495,9 @@ rl_clear_signals ()
+ overhead */
+ rl_maybe_restore_sighandler (SIGINT, &old_int);
+ rl_maybe_restore_sighandler (SIGTERM, &old_term);
++#if defined (SIGHUP)
+ rl_maybe_restore_sighandler (SIGHUP, &old_hup);
++#endif
+ #if defined (SIGQUIT)
+ rl_maybe_restore_sighandler (SIGQUIT, &old_quit);
+ #endif
+--
+1.8.3.2
+
+
+From 6896ffa4fc85bf0dfae58e69a860d2076c1d9fd2 Mon Sep 17 00:00:00 2001
+From: Timothy Gu <timothygu99@gmail.com>
+Date: Tue, 30 Sep 2014 17:16:32 -0700
+Subject: [PATCH 2/2] Handle missing S_IS* macros more gracefully
+
+diff --git a/colors.c b/colors.c
+index 89d9035..ec19844 100644
+--- a/colors.c
++++ b/colors.c
+@@ -152,14 +152,22 @@ _rl_print_color_indicator (char *f)
+ {
+ colored_filetype = C_FILE;
+
++#if defined (S_ISUID)
+ if ((mode & S_ISUID) != 0 && is_colored (C_SETUID))
+ colored_filetype = C_SETUID;
+- else if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
++ else
++#endif
++#if defined (S_ISGID)
++ if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
+ colored_filetype = C_SETGID;
+- else if (is_colored (C_CAP) && 0) //f->has_capability)
++ else
++#endif
++ if (is_colored (C_CAP) && 0) //f->has_capability)
+ colored_filetype = C_CAP;
++#if defined(S_IXUGO)
+ else if ((mode & S_IXUGO) != 0 && is_colored (C_EXEC))
+ colored_filetype = C_EXEC;
++#endif
+ else if ((1 < astat.st_nlink) && is_colored (C_MULTIHARDLINK))
+ colored_filetype = C_MULTIHARDLINK;
+ }
+@@ -173,8 +181,10 @@ _rl_print_color_indicator (char *f)
+ colored_filetype = C_STICKY_OTHER_WRITABLE;
+ else
+ #endif
++#if defined (S_IWOTH)
+ if ((mode & S_IWOTH) != 0 && is_colored (C_OTHER_WRITABLE))
+ colored_filetype = C_OTHER_WRITABLE;
++#endif
+ #if defined (S_ISVTX)
+ else if ((mode & S_ISVTX) != 0 && is_colored (C_STICKY))
+ colored_filetype = C_STICKY;
+diff --git a/colors.h b/colors.h
+index fc926e5..e62edd0 100644
+--- a/colors.h
++++ b/colors.h
+@@ -96,7 +96,7 @@ enum indicator_no
+ };
+
+
+-#if !S_IXUGO
++#if !S_IXUGO && defined(S_IXUSR) && defined(S_IXGRP) && defined(S_IXOTH)
+ # define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH)
+ #endif
+
+diff --git a/posixstat.h b/posixstat.h
+index 3eb7f29..854a2c9 100644
+--- a/posixstat.h
++++ b/posixstat.h
+@@ -78,30 +78,44 @@
+
+ #if defined (S_IFBLK) && !defined (S_ISBLK)
+ #define S_ISBLK(m) (((m)&S_IFMT) == S_IFBLK) /* block device */
++#elif !defined (S_IFBLK)
++#define S_ISBLK(m) 0
+ #endif
+
+ #if defined (S_IFCHR) && !defined (S_ISCHR)
+ #define S_ISCHR(m) (((m)&S_IFMT) == S_IFCHR) /* character device */
++#elif !defined (S_IFCHR)
++#define S_ISCHR(m) 0
+ #endif
+
+ #if defined (S_IFDIR) && !defined (S_ISDIR)
+ #define S_ISDIR(m) (((m)&S_IFMT) == S_IFDIR) /* directory */
++#elif !defined (S_IFDIR)
++#define S_ISDIR(m) 0
+ #endif
+
+ #if defined (S_IFREG) && !defined (S_ISREG)
+ #define S_ISREG(m) (((m)&S_IFMT) == S_IFREG) /* file */
++#elif !defined (S_IFREG)
++#define S_ISREG(m) 0
+ #endif
+
+ #if defined (S_IFIFO) && !defined (S_ISFIFO)
+ #define S_ISFIFO(m) (((m)&S_IFMT) == S_IFIFO) /* fifo - named pipe */
++#elif !defined (S_IFIFO)
++#define S_ISFIFO(m) 0
+ #endif
+
+ #if defined (S_IFLNK) && !defined (S_ISLNK)
+ #define S_ISLNK(m) (((m)&S_IFMT) == S_IFLNK) /* symbolic link */
++#elif !defined (S_IFLNK)
++#define S_ISLNK(m) 0
+ #endif
+
+ #if defined (S_IFSOCK) && !defined (S_ISSOCK)
+ #define S_ISSOCK(m) (((m)&S_IFMT) == S_IFSOCK) /* socket */
++#elif !defined (S_IFSOCK)
++#define S_ISSOCK(m) 0
+ #endif
+
+ /*
+@@ -137,6 +151,8 @@
+ /* These are non-standard, but are used in builtins.c$symbolic_umask() */
+ #define S_IRUGO (S_IRUSR | S_IRGRP | S_IROTH)
+ #define S_IWUGO (S_IWUSR | S_IWGRP | S_IWOTH)
++#if defined(S_IXUSR) && defined(S_IXGRP) && defined(S_IXOTH)
+ #define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH)
++#endif
+
+ #endif /* _POSIXSTAT_H_ */
+--
+1.8.3.2
+