This fixes the prior logic that relies on the (*)curses library
and header existing in compiler-derived default locations
such as /usr/include, and /usr/lib. However, if the package manager
happens to not install them there, then they will not be found
and the check will fail.
Four scenarios:
1. `./configure` or `./configure --enable-debug=no` produce:
    (no mention of debugger; configure continues)
2. `./configure --enable-debug=wrong` produces:
    configure: error: --enable-debug=wrong was requested but the value "wrong" is invalid
    (terminates with exit code 1)
3. `./configure --enable-debug` produces:
    config.h:
    defines C_DEBUG 1
    With only ncurses library installed:
    configure: debugger was requested, finding curses library ...
    checking for NCURSES... yes
    configure: debugger enabled using the ncurses library
    Makefile:
    CPPFLAGS = ... -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -I/usr/local/ncurses ...
    LIBS = ...  -L/usr/local/ncurses -lncurses -ltinfo ...
    With only ncursesw installed:
    configure: debugger was requested, finding curses library ...
    checking for NCURSES... no
    checking for NCURSESW... yes
    configure: debugger enabled using the ncursesw library
    Makefile:
    CPPFLAGS = ... -I/opt/ncursesw ...
    LIBS = ... -L/opt/ncursesw -lncursesw ...
    With only pdcurses isntalled:
    configure: debugger was requested, finding curses library ...
    checking for NCURSES... no
    checking for NCURSESW... no
    checking for PDCURSES... yes
    configure: debugger enabled using the pdcurses library
    Makefile:
    CPPFLAGS = ... -I/usr/local/pdcurses ...
    LIBS = ...  -L/usr/local/pdcurses -lpdcurses -ltinfo ...
    Without any curses library installed:
    configure: debugger was requested, finding curses library ...
    checking for NCURSES... no
    checking for NCURSESW... no
    checking for PDCURSES... no
    configure: error: Package requirements were not met:
    <pkg-info prints info about missing package>
    (terminates with exit code 1)
4. `./configure --enable-debug=heavy` produces same as above, but:
    config.h:
    defines C_DEBUG 1
    defines C_HEAVY_DEBUG 1
    The configure message mentions heavy, for example:
    configure: debugger was requested, finding curses library ...
    checking for NCURSES... yes
    configure: debugger with heavy debugging enabled using the ncurses library
		
	
			
		
			
				
	
	
		
			120 lines
		
	
	
	
		
			4.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			120 lines
		
	
	
	
		
			4.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
DOSBox uses the following libraries:
 | 
						|
 | 
						|
SDL
 | 
						|
    The Simple DirectMedia Library available at https://www.libsdl.org/
 | 
						|
    The dll distributed with the windows version of DOSBox is slightly
 | 
						|
    modified. You can find the changes in the sourcepackage of DOSBox
 | 
						|
    (src/platform/sdl-win32.diff). If you want the patched sourcetree
 | 
						|
    send us an email. (see README)
 | 
						|
    Note that only version 1.2 and its subversions (1.2.8, 1.2.13 etc.)
 | 
						|
    are currently supported.
 | 
						|
    License: LGPLv2+
 | 
						|
 | 
						|
Opusfile, by Xiph
 | 
						|
    For compressed audio tracks (.opus) used with CDROM images.
 | 
						|
    Sources are available at https://opus-codec.org, however it is
 | 
						|
    also conveniently packages by all popular package managers for
 | 
						|
    Windows (MSYS2, MinGW, and Chocolatey), Linux (apt, dnf, zypper,
 | 
						|
    pacman), and OS X (Homebrew and MacPorts).  Opus is today's
 | 
						|
    leading compression format and has replaced Vorbis as Ogg's
 | 
						|
    recommended lossy format. Is widely used in the largest audio and
 | 
						|
    video distribution platforms such as YouTube.
 | 
						|
    License: three-clause BSD
 | 
						|
 | 
						|
Curses (optional)
 | 
						|
    If you want to enable the debugger you need a curses library.
 | 
						|
    On Linux, install ncurses-devel via your distro package manager.
 | 
						|
    On macOS, install ncurses via brew or macports.
 | 
						|
    On Windows, install pdcurses at https://pdcurses.org/, or ncurses
 | 
						|
    via package-manager such as pacman within an MSYS2 environment.
 | 
						|
    Licenses:
 | 
						|
      ncurses - MIT License
 | 
						|
      pdcurses - Public Domain
 | 
						|
 | 
						|
Libpng (optional)
 | 
						|
    Needed for the screenshots.
 | 
						|
    For win32 get libpng from http://gnuwin32.sourceforge.net/packages.html
 | 
						|
    See http://www.libpng.org/pub/png/ for more details.
 | 
						|
    License: zlib/libpng
 | 
						|
 | 
						|
Zlib (optional)
 | 
						|
    Needed by libpng.
 | 
						|
    For win32 get libz (rename to zlib) from http://gnuwin32.sourceforge.net/packages.html
 | 
						|
    See https://www.zlib.net/ for more details.
 | 
						|
    License: zlib
 | 
						|
 | 
						|
SDL_Net (optional)
 | 
						|
    For modem/ipx support.
 | 
						|
    Get it from https://www.libsdl.org/projects/SDL_net/release-1.2.html
 | 
						|
    License: LGPLv2+
 | 
						|
 | 
						|
alsa-lib (optional)
 | 
						|
    For ALSA audio support under linux. Get it from https://www.alsa-project.org/
 | 
						|
    Licensed under LGPL
 | 
						|
 | 
						|
If you want compile from developer sources (SVN) under a unix system, you will need:
 | 
						|
 - Subversion to checkout the sources, or gzip and tar to unpack them from archive
 | 
						|
 - GCC (>=4.8.1) or Clang (>=3.3)
 | 
						|
 - automake (>=1.6)
 | 
						|
 - autoconf (>=2.50)
 | 
						|
 - autoconf-archive (>=2009.x)
 | 
						|
 - make (>= 3.8)
 | 
						|
 - pkg-config (>= 0.25)
 | 
						|
 | 
						|
For building on unix systems.
 | 
						|
If you are building from developer sources run ./autogen.sh first before doing
 | 
						|
the following:
 | 
						|
 | 
						|
    $ ./configure
 | 
						|
    $ make
 | 
						|
 | 
						|
You can also run "./configure --help" for extra features to enable/disable.
 | 
						|
Some of them are:
 | 
						|
 | 
						|
--enable-debug
 | 
						|
        enables the internal debugger. --enable-debug=heavy enables even more
 | 
						|
        debug options. To use the debugger, DOSBox should be run from an xterm
 | 
						|
        and when the sdl-window is active press alt-pause to enter the
 | 
						|
        debugger.
 | 
						|
 | 
						|
--disable-core-inline
 | 
						|
        disables some memory increasing inlines. This speeds up compilation,
 | 
						|
        but may result in a slower dosbox.
 | 
						|
 | 
						|
--disable-fpu
 | 
						|
        disables the emulated fpu. Although the fpu emulation code isn't
 | 
						|
        finished and isn't entirely accurate, it's advised to leave it on.
 | 
						|
 | 
						|
--disable-fpu-x86
 | 
						|
--disable-fpu-x64
 | 
						|
        disables the assembly fpu core. Although relatively new, the x86/x64
 | 
						|
        fpu core has more accuracy than the regular fpu core.
 | 
						|
 | 
						|
--disable-dynamic-x86
 | 
						|
        disables the dynamic x86/x64 specific cpu core. Although it might be
 | 
						|
        a bit unstable, it can greatly improve the speed of dosbox on x86 and
 | 
						|
        x64 hosts.
 | 
						|
        Please note that this option on x86/x64 will result in a different
 | 
						|
        dynamic/recompiling cpu core being compiled than the default.
 | 
						|
        For more information see the option --disable-dynrec
 | 
						|
 | 
						|
--disable-dynrec
 | 
						|
        disables the recompiling cpu core. Currently x86/x64 and arm only.
 | 
						|
        You can activate this core on x86/x64 by disabling the dynamic-x86
 | 
						|
        core.
 | 
						|
 | 
						|
--disable-dynamic-core
 | 
						|
        disables all dynamic cores (same effect as --disable-dynamic-x86
 | 
						|
        or --disable-dynrec).
 | 
						|
 | 
						|
--disable-opengl
 | 
						|
        disables OpenGL-support (output mode that can be selected in the
 | 
						|
        DOSBox configuration file).
 | 
						|
 | 
						|
--disable-unaligned-memory
 | 
						|
        disables unaligned memory access.
 | 
						|
 | 
						|
Check the src subdir for the binary.
 | 
						|
 | 
						|
NOTE: If capslock and numlock appear to be broken. open
 | 
						|
src/ints/bios_keyboard.cpp and go to line 30 and read there how to fix it.
 |