diff --git a/configure b/configure
--- a/configure
+++ b/configure
@@ -3286,18 +3286,18 @@
 done
 
 
-if test "${ac_cv_header_ncures_h+set}" = set; then
-  { echo "$as_me:$LINENO: checking for ncures.h" >&5
-echo $ECHO_N "checking for ncures.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_ncures_h+set}" = set; then
+if test "${ac_cv_header_ncurses_h+set}" = set; then
+  { echo "$as_me:$LINENO: checking for ncurses.h" >&5
+echo $ECHO_N "checking for ncurses.h... $ECHO_C" >&6; }
+if test "${ac_cv_header_ncurses_h+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_ncures_h" >&5
-echo "${ECHO_T}$ac_cv_header_ncures_h" >&6; }
+{ echo "$as_me:$LINENO: result: $ac_cv_header_ncurses_h" >&5
+echo "${ECHO_T}$ac_cv_header_ncurses_h" >&6; }
 else
   # Is the header compilable?
-{ echo "$as_me:$LINENO: checking ncures.h usability" >&5
-echo $ECHO_N "checking ncures.h usability... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking ncurses.h usability" >&5
+echo $ECHO_N "checking ncurses.h usability... $ECHO_C" >&6; }
 cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
 _ACEOF
@@ -3305,7 +3305,7 @@
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
 $ac_includes_default
-#include <ncures.h>
+#include <ncurses.h>
 _ACEOF
 rm -f conftest.$ac_objext
 if { (ac_try="$ac_compile"
@@ -3337,15 +3337,15 @@
 echo "${ECHO_T}$ac_header_compiler" >&6; }
 
 # Is the header present?
-{ echo "$as_me:$LINENO: checking ncures.h presence" >&5
-echo $ECHO_N "checking ncures.h presence... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking ncurses.h presence" >&5
+echo $ECHO_N "checking ncurses.h presence... $ECHO_C" >&6; }
 cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
 _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-#include <ncures.h>
+#include <ncurses.h>
 _ACEOF
 if { (ac_try="$ac_cpp conftest.$ac_ext"
 case "(($ac_try" in
@@ -3378,25 +3378,25 @@
 # So?  What about this header?
 case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
   yes:no: )
-    { echo "$as_me:$LINENO: WARNING: ncures.h: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: ncures.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ncures.h: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: ncures.h: proceeding with the compiler's result" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: ncurses.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: ncurses.h: proceeding with the compiler's result" >&2;}
     ac_header_preproc=yes
     ;;
   no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: ncures.h: present but cannot be compiled" >&5
-echo "$as_me: WARNING: ncures.h: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ncures.h:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: ncures.h:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ncures.h: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: ncures.h: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ncures.h:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: ncures.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ncures.h: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: ncures.h: proceeding with the preprocessor's result" >&2;}
-    { echo "$as_me:$LINENO: WARNING: ncures.h: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: ncures.h: in the future, the compiler will take precedence" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h: present but cannot be compiled" >&5
+echo "$as_me: WARNING: ncurses.h: present but cannot be compiled" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h:     check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: ncurses.h:     check for missing prerequisite headers?" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: ncurses.h: see the Autoconf documentation" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h:     section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: ncurses.h:     section \"Present But Cannot Be Compiled\"" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: ncurses.h: proceeding with the preprocessor's result" >&2;}
+    { echo "$as_me:$LINENO: WARNING: ncurses.h: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: ncurses.h: in the future, the compiler will take precedence" >&2;}
     ( cat <<\_ASBOX
 ## -------------------------------------------------- ##
 ## Report this to judah dot jacobson at gmail dot com ##
@@ -3405,18 +3405,18 @@
      ) | sed "s/^/$as_me: WARNING:     /" >&2
     ;;
 esac
-{ echo "$as_me:$LINENO: checking for ncures.h" >&5
-echo $ECHO_N "checking for ncures.h... $ECHO_C" >&6; }
-if test "${ac_cv_header_ncures_h+set}" = set; then
+{ echo "$as_me:$LINENO: checking for ncurses.h" >&5
+echo $ECHO_N "checking for ncurses.h... $ECHO_C" >&6; }
+if test "${ac_cv_header_ncurses_h+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_cv_header_ncures_h=$ac_header_preproc
+  ac_cv_header_ncurses_h=$ac_header_preproc
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_header_ncures_h" >&5
-echo "${ECHO_T}$ac_cv_header_ncures_h" >&6; }
+{ echo "$as_me:$LINENO: result: $ac_cv_header_ncurses_h" >&5
+echo "${ECHO_T}$ac_cv_header_ncurses_h" >&6; }
 
 fi
-if test $ac_cv_header_ncures_h = yes; then
+if test $ac_cv_header_ncurses_h = yes; then
   CursesIncludes='ncurses.h'
 else
   if test "${ac_cv_header_curses_h+set}" = set; then
@@ -3571,7 +3571,71 @@
     TERMINFO_INCLUDES="$CursesIncludes term.h"
 fi
 
-{ echo "$as_me:$LINENO: checking for setupterm in -lncurses" >&5
+{ echo "$as_me:$LINENO: checking for setupterm in -lncursesw" >&5
+echo $ECHO_N "checking for setupterm in -lncursesw... $ECHO_C" >&6; }
+if test "${ac_cv_lib_ncursesw_setupterm+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lncursesw  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char setupterm ();
+int
+main ()
+{
+return setupterm ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  ac_cv_lib_ncursesw_setupterm=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_cv_lib_ncursesw_setupterm=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_ncursesw_setupterm" >&5
+echo "${ECHO_T}$ac_cv_lib_ncursesw_setupterm" >&6; }
+if test $ac_cv_lib_ncursesw_setupterm = yes; then
+  HaveLibCurses=YES; LibCurses=ncursesw
+else
+  { echo "$as_me:$LINENO: checking for setupterm in -lncurses" >&5
 echo $ECHO_N "checking for setupterm in -lncurses... $ECHO_C" >&6; }
 if test "${ac_cv_lib_ncurses_setupterm+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3700,6 +3764,8 @@
   HaveLibCurses=YES; LibCurses=curses
 else
   HaveLibCurses=NO; LibCurses=not-installed
+fi
+
 fi
 
 fi
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -39,9 +39,10 @@
     TERMINFO_INCLUDES="$CursesIncludes term.h"
 fi
 
-AC_CHECK_LIB(ncurses, setupterm, HaveLibCurses=YES; LibCurses=ncurses,
-   AC_CHECK_LIB(curses, setupterm, HaveLibCurses=YES; LibCurses=curses,
-      HaveLibCurses=NO; LibCurses=not-installed))
+AC_CHECK_LIB(ncursesw, setupterm, HaveLibCurses=YES; LibCurses=ncursesw,
+  AC_CHECK_LIB(ncurses, setupterm, HaveLibCurses=YES; LibCurses=ncurses,
+    AC_CHECK_LIB(curses, setupterm, HaveLibCurses=YES; LibCurses=curses,
+      HaveLibCurses=NO; LibCurses=not-installed)))
 
 if test "x$HaveLibCurses" = "xNO" ; then
     AC_MSG_FAILURE([curses library not found, so this package cannot be built])
diff --git a/terminfo.cabal b/terminfo.cabal
--- a/terminfo.cabal
+++ b/terminfo.cabal
@@ -1,6 +1,6 @@
 Name:           terminfo
 Cabal-Version:  >=1.4
-Version:        0.3.0.1
+Version:        0.3.0.2
 Category:       User Interfaces
 License:        BSD3
 License-File:   LICENSE
