diff options
author | pingplug | 2015-06-12 10:20:46 +0800 |
---|---|---|
committer | pingplug | 2015-06-12 10:20:46 +0800 |
commit | 2ab06ea366e12ec34a1b1f28a23fe324fae9bdd4 (patch) | |
tree | 3c91d0a0a0529cddc31fd7b45e6d88530be034f9 | |
download | aur-2ab06ea366e12ec34a1b1f28a23fe324fae9bdd4.tar.gz |
Initial import
-rw-r--r-- | .SRCINFO | 54 | ||||
-rw-r--r-- | PKGBUILD | 85 | ||||
-rw-r--r-- | readline-1.patch | 203 |
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 + |