From: Shlomi Fish Date: Thu, 29 Dec 2016 17:01:07 +0000 (+0200) Subject: Update the INSTALL file. X-Git-Tag: fortune-mod-1.99.3^0 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=957037bc519181de313894ec3deef3b26598f70d;p=fortune-mod Update the INSTALL file. --- diff --git a/fortune-mod/INSTALL b/fortune-mod/INSTALL index d46f464..ee93346 100644 --- a/fortune-mod/INSTALL +++ b/fortune-mod/INSTALL @@ -1,68 +1,51 @@ +INSTALL file for fortune-mod +============================ +Shlomi Fish +:Date: 2016-12-29 -*****************WARNING****************** -Do not attempt to compile individual programs -in individual program subdirectories! -*****************WARNING****************** - -MAKE CHANGES IN THE TOP-LEVEL MAKEFILE - -CALL MAKE FROM THE TOP LEVEL - -I have a weakness for complex, multilevel makefiles. Therefore, the -makefiles included here are complex and multilevel. Always run make from -the top-level directory. Try 'make help' for a listing of possible -targets (the only one left out is randstr: compile it with make randstr). -All the important variables are defined in the top-level makefile, and -most of the make targets will crash and burn if they do not find the -variables that they are looking for. - -The good part of this is that except for the datfiles tree, the -sub-makefiles are all very simple. All the programs have rules of -the form: program: program.o, with the appropriate link command. -The only target safe to call in individual directories is clean. - -The makefiles for the datfiles subdirectory are complex in an attempt to -avoid distributing any more data than needed. The offensive files are -distributed in unrotated format; the make files have to rotate these -files before strfiling them. The make clean routine has to be able to -delete the rotated files without touching the unrotated ones. - -Pretty much everything is configurable in the top-level makefile, and it -mostly has pretty decent comments telling you what it is that you're -configuring. Read and change it as necessary. - -Amy A. Lewis alewis@email.unc.edu - - -Notes for non-Linux users -------------------------- - -The only system-dependant thing you should need to worry about is which -C function library to use for regular expressions. Two are supported: -the BSD regex library (re_comp/re_exec), and the POSIX regex library -(regcomp/regexec). Which you should use depends on what functions are -available, and which performs faster for you. - -If neither are available, you could try compiling the GNU Rx library, -which offers a high-performance regular expression library with both BSD -and POSIX interfaces. This is available at your nearest GNU software -mirror. - -To select the BSD regex library, add -DBSD_REGEX to REGEXDEFS in the -top-level Makefile. To select the POSIX regex library, add add --DPOSIX_REGEX to REGEXDEFS. If neither is defined, no regular -expression support will be included. - -Using the POSIX regex library requires the POSIX regex data structures -to be declared. This might be in the header, or in the -header. Define -DHAVE_REGEX_H in REGEXDEFS if it is in the -header, or -DHAVE_RX_H if it is in the header. If it turns out -to be somewhere else for your platform, please report this to the -current fortune-mod maintainer. - -The -DHAVE_REGEX_H and -HAVE_RX_H defines are also applicable to the BSD -regex library, but as they do not use custom data structures, not using -them should not result in anything more than "function not declared" -warnings. - - -- Dennis L. Clark +Quick and Dirty Compilation +--------------------------- + +fortune-mod is using CMake ( http://www.cmake.org/ ) +for its build system. You'll need to install CMake version 3.0 +or later from your distribution's repository or from its source +distribution. *NOTE*: CMake 2.6.2 (that ships with some releases of Ubuntu) +won't work due to a regression bug so please don't report any errors with +it. + +Next, run: + + mkdir build + cd build + cmake-gui .. # For the GUI configuration applet + +Or: + + ccmake .. # For the Curses-based configuration applet + +With a fallback to: + + cmake .. # Non-interactive application. + +This will build and install all the executables and install the fortune +collections. + +Installing under Win32 +---------------------- + +Consult the CMake documentation for generating a Visual C++ , MinGW32 +etc. compatible makefile or project. It may only work under cygwin or similar +environment. + +Testing +------- + +To test the Black Hole Solitaire Solver, you need to: + +1. Configure it. + +2. Build it. + +3. Run "make check". + +Please report any errors to me ( http://www.shlomifish.org/me/contact-me/ ). diff --git a/fortune-mod/old-INSTALL b/fortune-mod/old-INSTALL new file mode 100644 index 0000000..d46f464 --- /dev/null +++ b/fortune-mod/old-INSTALL @@ -0,0 +1,68 @@ + +*****************WARNING****************** +Do not attempt to compile individual programs +in individual program subdirectories! +*****************WARNING****************** + +MAKE CHANGES IN THE TOP-LEVEL MAKEFILE + +CALL MAKE FROM THE TOP LEVEL + +I have a weakness for complex, multilevel makefiles. Therefore, the +makefiles included here are complex and multilevel. Always run make from +the top-level directory. Try 'make help' for a listing of possible +targets (the only one left out is randstr: compile it with make randstr). +All the important variables are defined in the top-level makefile, and +most of the make targets will crash and burn if they do not find the +variables that they are looking for. + +The good part of this is that except for the datfiles tree, the +sub-makefiles are all very simple. All the programs have rules of +the form: program: program.o, with the appropriate link command. +The only target safe to call in individual directories is clean. + +The makefiles for the datfiles subdirectory are complex in an attempt to +avoid distributing any more data than needed. The offensive files are +distributed in unrotated format; the make files have to rotate these +files before strfiling them. The make clean routine has to be able to +delete the rotated files without touching the unrotated ones. + +Pretty much everything is configurable in the top-level makefile, and it +mostly has pretty decent comments telling you what it is that you're +configuring. Read and change it as necessary. + +Amy A. Lewis alewis@email.unc.edu + + +Notes for non-Linux users +------------------------- + +The only system-dependant thing you should need to worry about is which +C function library to use for regular expressions. Two are supported: +the BSD regex library (re_comp/re_exec), and the POSIX regex library +(regcomp/regexec). Which you should use depends on what functions are +available, and which performs faster for you. + +If neither are available, you could try compiling the GNU Rx library, +which offers a high-performance regular expression library with both BSD +and POSIX interfaces. This is available at your nearest GNU software +mirror. + +To select the BSD regex library, add -DBSD_REGEX to REGEXDEFS in the +top-level Makefile. To select the POSIX regex library, add add +-DPOSIX_REGEX to REGEXDEFS. If neither is defined, no regular +expression support will be included. + +Using the POSIX regex library requires the POSIX regex data structures +to be declared. This might be in the header, or in the +header. Define -DHAVE_REGEX_H in REGEXDEFS if it is in the +header, or -DHAVE_RX_H if it is in the header. If it turns out +to be somewhere else for your platform, please report this to the +current fortune-mod maintainer. + +The -DHAVE_REGEX_H and -HAVE_RX_H defines are also applicable to the BSD +regex library, but as they do not use custom data structures, not using +them should not result in anything more than "function not declared" +warnings. + + -- Dennis L. Clark