about summary refs log tree commit diff stats
path: root/docs/README.defines
blob: 1613047966e781b2946658b73163598509ec205f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
This file lists preprocessor macros (symbols) which are tested in the
code (typically with ifdef).

Does not include
- symbols defined and documented in userdefs.h
- symbols expected to be set by compiler to indicate system type or
  compiler features
- many symbols set and used only in connection with the ./configure
  mechanism - the full and current list can be found in config.hin
  (as a template) or, after running ./configure, in lynx_cfg.h.
- most symbols and macros defined in the source code

***Not complete.***

A. Symbols primarily to enable compilation on specific systems
==============================================================
See also under B for things needed by some systems.

# if you have an SVR4 system with the "type any key" problem, try defining
#
# -DSVR4_BSDSELECT

# Old Data General systems may need this in their SITE_LYDEFS
# for their inet_addr(host) calls.
#
# -DDGUX_OLD

---
Ports have been added for Win32 (95/NT) and 386 DOS computers with a
packet driver.  I created four new defines to accomplish this.
	_WINDOWS Defined for Win32 specific code (Mostly TCP related)
	DJGPP    Defined for 386 specific code (Mostly TCP related)
	DOSPATH  Defined for any DOS'ish computer
	NOSIGHUP Defined for computers not supporting sighup signal calls.
-- Wayne Buttles lynx-port@fdisk.com

Added for 8+3 filesystems (DOS):
	FNAMES_8_3  also defined in userdefs.h if __DJGPP__

* incorporate changes for win32 by Hiroyuki Senshu <senshu@shonai-cit.ac.jp>
  (SH) from
    ftp://crab.it.osha.sut.ac.jp/pub/Win32/develope/senshu/Lynx/
  Most changes are ifdef'd
    #define _WIN_CC=    .... for Windows C Compiler
    #define CJK_EX      .... CJK EXtension
    #define SH_EX       .... Senshu Hiroyuki EXtension
    #define WIN_EX      .... Windows EXtension


B. Symbols to enable or disable specific features, mostly
=========================================================
Note that some of these may be only usable on some system types,
most were originally for UNIX.

Network related, specific protocols
-----------------------------------
# -DSOCKS          For making a SOCKSified lynx.
       			see comments in makefile.in
# -DSHORTENED_RBIND  For a SOCKSified lynx with the short version of Rbind.
               		see comments in makefile.in
# -DNOPORT         if you must use PASV instead of PORT for FTP

Related to DirEd code - probably only usable for UNIX or similar
----------------------------------------------------------------
# -DDIRED_SUPPORT  (see INSTALLATION, Section II-1c)
# -DOK_GZIP        (see INSTALLATION, Section II-1c)
# -DOK_OVERRIDE    (see INSTALLATION, Section II-1c)
# -DOK_PERMIT      (see INSTALLATION, Section II-1c)
# -DOK_TAR         (see INSTALLATION, Section II-1c)
# -DOK_UUDECODE    (see INSTALLATION, Section II-1c)
# -DOK_ZIP         (see INSTALLATION, Section II-1c)
# -DOK_INSTALL     to enable dired menu "Install" function
# -DARCHIVE_ONLY   (see INSTALLATION, Section II-1c)
# -DNO_CHANGE_EXECUTE_PERMS (see INSTALLATION, Section II-1c)
# -DCANT_EDIT_UNWRITABLE_FILES (see LYEdit.c - always in effect for VMS)

Related to formatting of local directory listings
-------------------------------------------------
# -DLONG_LIST      (see INSTALLATION, Section II-1c)
# -DNO_PARENT_DIR_REFERENCE (see INSTALLATION, Section II-1c)

Related to screen display
-------------------------
Using curses or ncurses library:
# -DNCURSES        (see INSTALLATION, Section II-1c)
# -DFANCY_CURSES   whether curses lib supports more than very basic stuff
                   for UNIX handled by ./configure, for VMS defined in code
# -DNO_KEYPAD (old) or HAVE_KEYPAD (new)   whether curses lib uses keypad().
                   for UNIX handled by ./configure, may be set in HTUtils.h
# -DCOLOR_CURSES    whether curses lib supports color (in the right way).
                   for UNIX handled by ./configure
# -DUNDERLINE_LINKS  Define if you want links underlined instead of bold.
# -DHP_TERMINAL    For DIM workaround to REVERSE problems on HP terminals.
# -DNO_SIZECHANGE (old) or HAVE_SIZECHANGE (new) whether using code to detect
                   new size after size changes of the terminal (window).
                   for UNIX handled by ./configure, may be set in HTUtils.h
# -DUSE_SCROLLBAR  supports scrollbar when built with ncurses

Using slang library:
# -DUSE_SLANG      (see INSTALLATION, Section II-1c)
# -DSLANG_MBCS_HACK prevent cutoff lines when using UTF8 console (slang only)
Both:
# -DREVERSE_CLEAR_SCREEN_PROBLEM
# 	if you have the reverse clear screen problem of some SUN4 systems, or
# 	to work around some other "garbage on the screen" problems

Related to *experimental* (unsupported) character style code
------------------------------------------------------------
# -DUSE_COLOR_STYLE (see INSTALLATION, Section II-1c) probably needs -DNCURSES
# -DUSE_HASH       (see INSTALLATION, Section II-1c)  probably needs the above
# -DLINKEDSTYLES   (see INSTALLATION, Section II-1c)  probably needs the above

Other general
-------------
# -DDONT_TRACK_INTERNAL_LINKS - Handle following links to same doc differently.
# -DEXP_CHARTRANS_AUTOSWITCH (see INSTALLATION, Section II-1c)
# -DIGNORE_CTRL_C  Define if Control-C shouldn't exit lynx.
# -DLY_FIND_LEAKS  (see INSTALLATION, Section II-1c)
# -DNO_CPU_LIMIT   Disables Max CPU timeout (includes CLOCKS_PER_SECOND)
# -DNSL_FORK       For fork-based name server lookups that can be 'z'apped.
# -DSYSLOG_REQUESTED_URLS
# 	if you would like logging of client requests via syslog()
# -DUSE_ZLIB       (see INSTALLATION)
# -DDECLARE_WAIS_LOGFILES   see comments in makefile.in
# -DNO_RULES	   Disables code for CERN-style rules files
# -DHAVE_SIGACTION Can use sigaction() and related functions

Untested
--------
# -DNO_EXTENDED_HTMLDTD	Disable some "SortaSGML" code, see SGML.c

B. Symbols defined locally to modify some behavior
==================================================
Defined in the source files to which they apply.  Only filenames are listed,
the files would have to be read and edited anyway to change the definition.
Normally installers shouldn't have to care about any of these symbols.

ADVANCED_INFO				LYShowInfo.c
CHECK_FREE_MEM				GridText.c
DEBUG_HOSTENT				HTTCP.c
DEBUG_HOSTENT_CHILD			HTTCP.c
DEFAULT_INVCHECK_BV			LYCookie.c
DUPLICATE_ANCHOR_NAME_WORKAROUND	HTAnchor.c
EXTENDED_OPTION_LOGIC			LYMain.c
EXTENDED_STARTFILE_RECALL		LYMain.c
OPTNAME_ALLOW_DASHES			LYMain.c
RESTRICT_NM_ALLOW_DASHES		LYUtils.c
SOCKET_DEBUG_TRACE			HTTCP.c
max_cookies_buffer			LYCookie.c
max_cookies_domain			LYCookie.c
max_cookies_global			LYCookie.c
reverse_mailcap				HTInit.c