Patch #428494: Prefer linking against ncursesw over ncurses library
diff --git a/Misc/NEWS b/Misc/NEWS
index 8b38832..c9e7a30 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -699,6 +699,8 @@
 Build
 -----
 
+- Patch #1428494: Prefer linking against ncursesw over ncurses library.
+
 - Patch #881820: look for openpty and forkpty also in libbsd.
 
 - The sources of zlib are now part of the Python distribution (zlib 1.2.3).
diff --git a/setup.py b/setup.py
index 9762b9a..9eae126 100644
--- a/setup.py
+++ b/setup.py
@@ -450,6 +450,9 @@
         if self.compiler.find_library_file(lib_dirs, 'readline'):
             readline_libs = ['readline']
             if self.compiler.find_library_file(lib_dirs,
+                                                 'ncursesw'):
+                readline_libs.append('ncursesw')
+            elif self.compiler.find_library_file(lib_dirs,
                                                  'ncurses'):
                 readline_libs.append('ncurses')
             elif self.compiler.find_library_file(lib_dirs, 'curses'):
@@ -751,7 +754,11 @@
 
         # Curses support, requiring the System V version of curses, often
         # provided by the ncurses library.
-        if (self.compiler.find_library_file(lib_dirs, 'ncurses')):
+        if (self.compiler.find_library_file(lib_dirs, 'ncursesw')):
+            curses_libs = ['ncursesw']
+            exts.append( Extension('_curses', ['_cursesmodule.c'],
+                                   libraries = curses_libs) )
+        elif (self.compiler.find_library_file(lib_dirs, 'ncurses')):
             curses_libs = ['ncurses']
             exts.append( Extension('_curses', ['_cursesmodule.c'],
                                    libraries = curses_libs) )