Commit Graph
62 Commits
Author SHA1 Message Date
keni cbd2a516e1 First batch of changes from FailSafeC
This is all tiny stuff - allow overriding WIDENED_PROTOTYPES from the hints
file, missing NO_SIGNAL conditionals, remove a GCC-ism, conditional indentation,
void return in a non-void function.
2010-02-10 16:08:51 +00:00
keni 84dccb47cf SYSCF wizard error display
Fix construction of error message when wizard mode declined and SYSCF.
2010-01-19 16:33:43 +00:00
keni c367969d60 MacOS 9 vs MacOS 10 bit
MAC is defined for MacOS 9 but not for 10 (and it shouldn't be).  Add a MACOSX
define and use it in eat.c to pick up the joke meant for all Mac systems.
2010-01-18 02:02:45 +00:00
keni 9cd309157b make grep's path adjustable for PANICTRACE + more bits
Mac OS X doesn't have /bin/grep, only /usr/bin/grep.  Grr.
Don't try to parse PANICTRACE_GLIBC if the field doesn't exist.
2010-01-17 19:36:16 +00:00
keni efed004b64 PANICTRACE bit
Only defined PANICTRACE for supported platforms.
2010-01-16 22:02:06 +00:00
keni 89db1f9e73 PANICTRACE bits
Add missing check for NO_SIGNAL in PANICTRACE versionof NH_abort().
Fix indentation of pre-processing directives.
Add #endif comments to make things clearer.
2010-01-16 21:54:24 +00:00
keni d80fcaada4 PANICTRACE (stacktrace on panic or signal) + bits
On crash signal or panic(), use a configurable method to get a stacktrace
the user can easily report to us.  Currently only for Unix/Linux and only
ifdef BETA.  Hopefully ports can add additional methods.

Bits:
- linux hints file had PREFIX definition in the wrong place
- sample sysconf file used wrong delimiter for WIZARDS
- fix grammar error in support message when using sysconf.wizards
- options.c comment typo
- capitalize "Crash test" output from #panic command
2010-01-15 19:54:37 +00:00
keni f6e40b8bf8 have core ask windowport if suspend is ok
PORTS: Please make sure I've done the right thing for/to your code.
This patch adds a new winproc that lets the window port approve or cancel
the suspend request - this should take care of the Mac Qt lockup issue.
In addition, Unix suspend is restricted to accounts that can use the shell
if SYSCF is defined.
2010-01-15 17:51:28 +00:00
keni 655adf8535 remove extraneous MAX/MIN
extralev.c defines and uses MAX/MIN macros instead of max/min from hack.h
2010-01-10 02:35:19 +00:00
keni dbaa63c760 display.c tid
The WA_VERBOSE define was after the first use.
2010-01-10 02:18:28 +00:00
keni 9ae93d8b71 new and fixed messages
2 fixed messages and 2 new silly messages
2010-01-07 17:51:35 +00:00
keni 011323e877 enlightenment formatting
Make the enlightenment output just a little nicer.
2010-01-06 14:48:11 +00:00
keni c3edf0dfae linux hints file updates
add missing perm values
2010-01-04 18:15:05 +00:00
keni d4b022a5ec hints system changes and more Mac packaging
update file headers
add "#-PRE" and "#-POST" keywords (no default) so hints file can wrap Makefile.*
add make var with name of makefile (e.g. MAKEFILE_TOP) so hints file can be
 conditional on the file
add skeletel Mac Qt packaging target
add missing aux file generation for Mac Term packaging
2009-12-23 20:02:29 +00:00
keni a8b5a39473 mac term packaging
Automated version of what I did to repackage the 3.4.3 Mac Term package.
2009-12-17 19:49:13 +00:00
keni 5c0a627ce2 makedefs internal version formatter
Add -svs so the Makefile can get "343" or "3.4.3" (etc) when automating
package builds.
2009-12-17 19:46:42 +00:00
keni e8fe9b4505 make nethack.sh switchable from hints file
If SHELLDIR is null, don't install nethack.sh.  Also a tid in Porting
and add NHSROOT to the Makefiles which gives a path to the top of the
tree (so e.g. you can always find makedefs from a rule in a hints file).
2009-12-17 19:26:30 +00:00
keni 727bd80865 tweak to support SYSCF for single user config 2009-12-09 18:52:25 +00:00
keni 9509a94c5b Mac recover bits
add headers, typo fix
2009-10-29 00:24:05 +00:00
keni 97509efaaf bits to allow GUI to run recover under MacOS X
Will require additional work for 3.5 (shouldn't blindly remove perm_lock
without asking the user; update comments; add standard headers) but I don't
want to lose this code.
2009-10-27 01:12:57 +00:00
keni a93d142a42 'in quiver' tid
Pat pointed out that I didn't read my own email.
2009-05-11 21:55:04 +00:00
keni 45e7a0cd6a expanded feedback for "in quiver" (trunk only)
Replace quiver with quiver/quiver pouch/at the ready as appropriate.
2009-05-10 16:33:57 +00:00
keni 9e4dc50b5a sys.c tid
wrong API
2009-05-06 16:54:06 +00:00
keni 665dedc3de Add RCS version lines 2009-05-06 11:00:43 +00:00
keni 4036a6727c Add RCS version lines 2009-05-06 10:55:43 +00:00
keni 4eabcee787 Add RCS version lines 2009-05-06 10:50:32 +00:00
keni df20791e59 Add RCS version lines 2009-05-06 10:45:32 +00:00
keni 21219f8d87 SYSCF followup bit 2009-05-04 12:43:15 +00:00
keni 8593cf6547 Add recordfile control to SYSCF.
Add sys/unix/sysconf, a sample sysconf file.
Move defines from topten.c to config.h so they can be seen globally.
Add persmax, pers_is_uid, entrymax, and pointsmin to struct sysopt, use
 in topten.c, populate in files.c
Warning cleanup in files.c.
BUGFIX: don't crash in unixmain.c if WIZARDS left unspecified.
hints/macosx10.5: don't hardcode "keni"; install sample sysconf; install
 sample ~/nethackrc
makedefs: add "system configuration" to compiled-with options list.
BUGFIX: if a game doesn't meet the criteria for making the record file it's
 shown to the user as having zero points because t1->points is set to zero
 to indicate that it doesn't get written back; display u.urexp instead.
2009-05-03 14:08:15 +00:00
keni ce89e6dc33 H1810 seems never to have been addressed: two spelling errors. 2009-04-29 21:29:32 +00:00
keni 27c39a97e1 Allocation and style errors. Thanks Pat. 2009-03-20 20:31:14 +00:00
keni 998c399543 some updates to make nethack.6 less dated. 2008-07-10 11:08:59 +00:00
keni bb43b56eac first conditionalized docs (TRUNK ONLY)
plus various related missing bits and tids
2008-06-26 15:08:54 +00:00
keni ff14fa7120 regenerate mdgrep.h (TRUNK ONLY)
now that this should have the right version numbers in it, save the new file
2008-06-25 19:04:38 +00:00
keni bf3501d9d2 mdgrep.pl tids (TRUNK ONLY)
aka "try again before the wireless drains my laptop battery"
2008-06-25 19:02:38 +00:00
keni 41479c040a makedefs --grep prep, misc cleanup (TRUNK ONLY)
use makedefs --grep in Makefile.doc
call make clean in doc from make clean in top
add commented out rule to produce mdgrep.h from mdgrep.pl
macosx1.5: don't chown/chgrp for single-user install
unixmain.c: work around C90 warning for Mac-specific code, fix last fix
makedefs.c: temporarily disallow blank after control introducer until docs
 catch up
mdgrep.pl: add ALLDOCS, clean up generated file's header
2008-06-25 18:56:47 +00:00
keni 64ab88d6b4 followup (trunk only)
Finally found a flag combination that will complain about declarations mixed in
with other code: -ansi -pedantic.
Clean up the violations of that I just introduced and add that flag to the
Mac 10.5 hints file.  (Note that there is one warning left in unixmain.c -
it's in Mac-specific code.)
2008-06-15 00:23:56 +00:00
keni b5d05b2bca SHELLERS for SYSCF, MacOS 10.5 hints file (trunk only)
Add SHELLERS - people allowed to use ! command with same syntax as WIZARDS.
Add new hints file for 10.5, since the rules and commands for groups changed
(new commands introduced in 10.4, old ones removed in 10.5; creating a new
user under 10.4 gave you a matching group, in 10.5 it doesn't).  Also move
shared build into roughly right place in file system when being installed
for root - don't use ~root.
Makefile.top - don't remove ./-p unless it exists (that's always annoyed me).
fix error invoking macosx.sh
2008-06-14 20:57:21 +00:00
keni 4fb08f1366 mdgrep.pl tid
Use the right name for the output file in all places.
Thanks Pat.
2008-04-23 10:48:04 +00:00
keni c7858a6d37 more warning cleanup, makedefs grep bits (trunk only)
drop -Wcast-qual
warning cleanup (lev_comp)
comment bits
makedefs grep cleanup: drop magic constant, add --grep-define, --grep-undef,
 #ifdef out code not needed yet, update mdgrep.h, mdgrep.pl
2008-04-22 23:20:44 +00:00
keni 7b2fb4d0b5 more warning cleanup (trunk only)
More warning bits that never got committed.
More appropriate compiler flags for warning checks (macosx only for the moment).
The changes in dgn*[lc] just rename line_number to nh_line_number to avoid a
clash, so no need to regenerate the lex output.
2008-04-18 17:37:33 +00:00
keni 0b3e8bbd88 macosx hints file consolidation (trunk only)
get macosx down to one hints file (default tty, single user) for
 tty, x11, qt and single or multiple users
preliminary bits that might allow a macosx qt build
2008-04-08 23:17:39 +00:00
keni 97abafd41a add MAXPLAYERS to SYSCF (trunk only)
Add MAXPLAYERS to SYSCF config file; deprecate (but continue to support)
 MAX_NR_OF_PLAYERS in nethack.sh since it is trivially overridden in many
 (all?) cases and isn't useful for ports that don't use nethack.sh.
2008-04-07 22:27:18 +00:00
keni 47d1eea0dd makefile bit for makedefs grep (trunk only)
add dependency for mdgrep.h
2008-04-06 00:58:13 +00:00
keni d175a3f7fe makedefs conditional grep (trunk only)
This code (except for some of the argument parsing changes) is not used yet.
mdgrep.pl generates mdgrep.h; like the lex and yacc files we ship mdgrep.h
 pre-generated; there is no need for perl on end-user/end-compiler systems.
 (In fact mdgrep.h is so simple mdgrep.pl is probably overkill.)
mdgrep.h creates an array reflecting the compiler options in effect
The changes to makedefs break the Mac OS9 compile; if necessary the fix is
 simple and documented (but I think that port is permanently dead).
With that port out of the way, makedefs can be allowed to take real options;
 none of the current options have been changed.  Instead, a second sub-main
 routine has been added to handle options starting with two hyphens and all
 the new options start with two hyphens:
--input specifies the input file (- is stdin)
--output specifies the output file (- is stdout)
--grep causes the input file to be filtered into the output file
--grep-showvars dumps the info from the array in mdgrep.h
--grep-trace turns on tracing of the grep filtering
Docs for the filtering language are in the source.
2008-04-06 00:48:40 +00:00
keni 403ace96e3 build error message tid
Don't call impossible() if there are no window types  - we just core after
being told to #quit when it's too early to do so.
2008-03-18 23:11:28 +00:00
keni a17ea1b3ac show source of bits of makefiles (trunk only)
Mark the generated makefiles as generated and mark the source of each section
to aid debugging.
2008-02-21 01:16:41 +00:00
keni 9de7d5530f Window type not recognized tid (trunk only)
Fix the grammar error that results when a binary with one window system
compiled in is explicitly told to use another.
2008-02-20 00:30:15 +00:00
keni 5d24f9ab3a warnings cleanup (trunk only)
This covers the warning cleanup bits no one objected to.
2008-02-20 00:27:56 +00:00
keni 6dee7dc521 Placeholder for Amiga large disks (untested)
placeholder so we don't lose large disk fix, but I can't test it
2008-02-17 23:49:47 +00:00
keni 6f0e178368 more SYSCF and related bits - cleanup and features
infrastructure for "system options" - things currently specified at build
 time that should be changeable at install time or run time but not really
 under user control
generalize contact info so it can be localized and it doesn't have to be
 an email address
move recently introduced WIZARDS into sysopt
drop bogus OPTIONS=wizards possibility
new function build_english_list() to comma-ize and add 'or' from a whitespace separated list: A.  A or B.  A, B, or C.
syscf file now handles: WIZARDS SUPPORT RECOVER
 SUPPORT specifies local support information
 RECOVER will eventually supply port-specific and/or localized info on how
  to run recover (or get it run for you).
Note: in sys/msdos I changed sys.o (generated from pcsys.c) to pcsys.o
Note: sys/msdos/Makefile.GCC has 2 rules for sys.o (now pcsys.o)
2008-01-31 00:56:59 +00:00
keni f2d37bac2e system-wide configuration file
Add options SYSCF (to add a system-wide configuration file) and SYSCF_FILE
(for a file-based implementation of SYSCF) - this allows a binary distribution
to be configured at install time.  The only option supported at this time is
WIZARDS - a list of usernames which can use -D; currently only for unix-likes
but should be extendable to anything that has a concept of multiple users.
Add mac tty multiuser config using sgid.
2008-01-09 01:57:41 +00:00
keni d454ca0d6e hints cleanup tids (trunk only) 2007-12-17 22:39:15 +00:00
keni f0abeacb41 hints for linux X11; typo fix (trunk only)
Add hints file for single-user linux X11.
Fix typo in macos-x11.
nethack.sh: don't run xset unless $DISPLAY is set
2007-12-16 15:38:21 +00:00
keni bd0d01b73d linux hints file and xset bugfix (trunk only)
Add a hints file for an ubuntu tty build and skip xset if no fonts.dir
file exists (this test will probably need another tweak, but I need a
linux x11 build first to test it).
2007-12-16 02:18:22 +00:00
keni 59e64a1d40 First pass at a hints-based build system to augment (not replace) the existing
build system.

Anyone who wants to do a build from sys/unix and doesn't want to figure this
out just needs to do:
	sh setup.sh hints/unix
instead of:
	sh setup.sh
and then continue on as usual.

New files:
sys/unix/NewInstall.unx - the new directions
sys/unix/hints/* - the hints files.  There will be more later.
sys/unix/mkmkfile.sh - helper for setup.sh

Summary of changes:
see NewInstall.unx for info on the new build system
introduction of various preprocessor symbols to turn options off that
 are defaulted on historically
comment out nethackrc (and similar) entries that still use the old symbol
 syntax.
commenting out of Makefile.* lines that now come from hints/unix
GAMEDIR is replaced with HACKDIR so the Makefiles and the C source agree.
  Note that I have NOT changed the docs and/or Makefiles for be, msdos, os2,
  vms, or winnt.  If port maintainers don't then I will, but I can't test
  those ports.
nethack.sh now handles the font path automatically
2007-12-13 20:17:11 +00:00
keni 951e0d87fa Pad rumors to improve distribution of delivered rumors. 2006-10-12 00:17:17 +00:00
keni 6692b3a984 (keni, for jhsa)
here are two minor patches for amigaport (ppc/gcc related, compiletime).
Teemu noticed these during a testcompile for 341 tarball today.

-jhsa

*** sys/amiga/amidos.p	2003/02/20 15:36:28	1.1
--- sys/amiga/amidos.p	2003/02/20 14:30:12
***************
*** 37,42 ****
  #ifndef	strcmpi
  int FDECL(strcmpi, (char * , char *));
  #endif
! #if !defined(memcmp) && !defined(AZTEC_C) && !defined(_DCC)
  int FDECL(memcmp, (unsigned char * , unsigned char * , int ));
  #endif
--- 37,42 ----
  #ifndef	strcmpi
  int FDECL(strcmpi, (char * , char *));
  #endif
! #if !defined(memcmp) && !defined(AZTEC_C) && !defined(_DCC) && !defined(__GNUC__)
  int FDECL(memcmp, (unsigned char * , unsigned char * , int ));
  #endif
*** sys/amiga/amiwind.c	2000/11/30 16:39:25	1.3
--- sys/amiga/amiwind.c	2003/02/20 14:31:06
***************
*** 21,31 ****

  #define BufferQueueChar(ch) (KbdBuffer[KbdBuffered++] = (ch))

- #ifdef __GNUC__ /* Conflicting includefiles ... */
- struct Device *ConsoleDevice;
- #else
  struct Library *ConsoleDevice;
- #endif

  #include "NH:sys/amiga/amimenu.c"

--- 21,27 ----
2003-02-20 16:36:02 +00:00
keni bca0aca579 <email deleted> Thu Jul 25 13:59:29 2002
<email deleted>
 <email deleted>
 Subject: patch: missing amiga bits

Hi,

here are some missing bits from the amigafiles.

Current source compiles fine, seems to work ok (launches, runs, opens windows
and quits as usual). I haven't had much time to test it rigorously (or play
at all), but I don't remember there having been any major changes that would've
affected the amigaport, so it probably should be okay as it is.

-jhsa
2002-07-26 10:47:34 +00:00
keni 354d47ce5d One last (for now) bit for amiga makefile for sas/c.
This fixes make install to actually install and build everything needed.
-jhsa
2002-02-28 14:53:37 +00:00
keni 1b1532dbab patch from Janne: delete old files, update docs, tids 2002-02-22 12:13:46 +00:00
keni 5d91c33e6a First set of Amiga updates 2002-02-14 11:55:32 +00:00