Index: setup.py =================================================================== --- setup.py (revision 80154) +++ setup.py (working copy) @@ -575,7 +575,8 @@ readline_libs = ['readline'] if self.compiler.find_library_file(lib_dirs, 'ncursesw'): - readline_libs.append('ncursesw') + if not platform.startswith('freebsd'): # issue 7384 + readline_libs.append('ncursesw') elif self.compiler.find_library_file(lib_dirs, 'ncurses'): readline_libs.append('ncurses') Index: Lib/test/test_curses.py =================================================================== --- Lib/test/test_curses.py (revision 80154) +++ Lib/test/test_curses.py (working copy) @@ -21,11 +21,6 @@ curses = import_module('curses') curses.panel = import_module('curses.panel') -# skip all these tests on FreeBSD: test_curses currently hangs the -# FreeBSD buildbots, preventing other tests from running. See issue -# #7384. -if 'freebsd' in sys.platform: - raise unittest.SkipTest('The curses module is broken on FreeBSD. See http://bugs.python.org/issue7384.') # XXX: if newterm was supported we could use it instead of initscr and not exit term = os.environ.get('TERM')