Skip to content

Commit 7d3a129

Browse files
committed
remove auroconf, fix buffer use, score I/0, move src
The use of GNU autoconf has been removed to simplify porting use and remove the unnecessary complications that comes with autoconf. Now we have a simple `Makefile` and `config.h` file. To configure, edit `Makefile` and/or `config.h` as needed. Removed GNU autoconf specific files. However we keep the pre-formatted documentation filenames that end in "*.in". The old "easy" and GNU autoconf specific make rules are now "do nothing" stub rules. By default, the code is compiled using the `gnu17` C standard. The `Makefile`, by default, does NOT change the ownership and group of installed code and related files. The `make dist` and `make dist.src` to form so-called distribution files have been removed. The GitHub repo is now the distribution: simply clone it as needed from `https://github.com/lcn2/rogue5.4`. Added `make depend` rule to build dependency rules. Updated `Makefile` with the current dependency rules. The rogue lock file is now located in the home directory. The basename of the lock file is defined in `Makefile` as the `${LOCKFILE_BASENAME}` make variable. By default, the rogue lock file is now `~/.rogue.lck`. The rogue save file is now located in the home directory. The basename of the save file is defined in `Makefile` as the `${SAVEFILE_BASENAME}` make variable. By default, the rogue save file is now `~/.rogue.save`. The rogue score file is now located in the home directory. The basename of the save file is defined in `Makefile` as the `${SCOREFILE_BASENAME}` make variable. By default, the rogue score file is now `~/.rogue.scr`. The rogue lock file path, rogue save file path, and rogue score file path is now formed early in `main()` as global buffers. Updated rogue documentation to reference the lock file, safe file, and score files. Fixed how the rogue documentation is formed via `Makefile`. Moved source out of the `src/` sub-directory into the top level. Updated `LICENSE` to be the combination of the top level `LICENSE` and the former `src/LICENSE.TXT`. Improved the commented out lines for the Address Sanitizer (ASAN). Improved how Address Sanitizer (ASAN) is used when enabled. Fixed a number of code bugs related to use uninitialized variables, and static buffers. Fixed issue #4: replacing use of `sprintf(3)` with `snprintf(3)`. Fixed how the rogue score file is read and written. By default, the top scores are recorded in the rogue score file, regardless of if the game "won" or not. Removed dead code in `main.c` that we previously had moved to `common.c`. Fixed use of booleans to use definitions under `<stdbool.h>`. Updated `.gitignore` as per all of the above. Updated rogue documentation and `README.md` as per all of the above.
1 parent 786867c commit 7d3a129

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+1422
-14432
lines changed

.gitignore

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,22 @@
11
# sort via: sort -d
2+
#
3+
findpw
4+
Makefile.bak
5+
Makefile.easy
26
NOTES
7+
*.o
8+
rogue
9+
rogue.6
10+
rogue.cat
11+
rogue.doc
12+
rogue.html
313
.rogue.lck
414
rogue.lck
15+
rogue.md
16+
rogue.me
517
.rogue.scr
618
rogue.scr
7-
src/autom4te.cache/
8-
src/config.h
9-
src/config.log
10-
src/config.status
11-
src/findpw
12-
src/Makefile
13-
src/*.o
14-
src/rogue
15-
src/rogue.6
16-
src/rogue.cat
17-
src/rogue.doc
18-
src/rogue.html
19-
src/.rogue.lck
20-
src/rogue.lck
21-
src/rogue.md
22-
src/rogue.me
23-
src/.rogue.scr
24-
src/rogue.scr
25-
src/scedit
26-
src/tags
19+
rogue.scr
20+
scedit
21+
skel/
22+
tags

LICENSE

Lines changed: 97 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
BSD 3-Clause License
22

3-
Copyright (c) 2025, Michael Toy, Ken Arnold and Glenn Wichman
3+
Copyright (c) 2025-2026, Michael Toy, Ken Arnold and Glenn Wichman
44

55
Redistribution and use in source and binary forms, with or without
66
modification, are permitted provided that the following conditions are met:
@@ -26,3 +26,99 @@ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
2626
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
2727
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2828
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29+
30+
===========================================================================
31+
32+
Rogue: Exploring the Dungeons of Doom
33+
Copyright (C) 1980-1983, 1985, 1999 Michael Toy, Ken Arnold and Glenn Wichman
34+
All rights reserved.
35+
36+
Redistribution and use in source and binary forms, with or without
37+
modification, are permitted provided that the following conditions
38+
are met:
39+
1. Redistributions of source code must retain the above copyright
40+
notice, this list of conditions and the following disclaimer.
41+
2. Redistributions in binary form must reproduce the above copyright
42+
notice, this list of conditions and the following disclaimer in the
43+
documentation and/or other materials provided with the distribution.
44+
3. Neither the name(s) of the author(s) nor the names of other contributors
45+
may be used to endorse or promote products derived from this software
46+
without specific prior written permission.
47+
48+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) AND CONTRIBUTORS ``AS IS'' AND
49+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
50+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
51+
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTORS BE LIABLE
52+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
53+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
54+
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
55+
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
56+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
57+
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
58+
SUCH DAMAGE.
59+
60+
===========================================================================
61+
62+
Portions of this software (state.c, mdport.c) are based on the work
63+
of Nicholas J. Kisseberth. Used under license:
64+
65+
Copyright (C) 1999, 2000, 2005 Nicholas J. Kisseberth
66+
All rights reserved.
67+
68+
Redistribution and use in source and binary forms, with or without
69+
modification, are permitted provided that the following conditions
70+
are met:
71+
1. Redistributions of source code must retain the above copyright
72+
notice, this list of conditions and the following disclaimer.
73+
2. Redistributions in binary form must reproduce the above copyright
74+
notice, this list of conditions and the following disclaimer in the
75+
documentation and/or other materials provided with the distribution.
76+
3. Neither the name(s) of the author(s) nor the names of other contributors
77+
may be used to endorse or promote products derived from this software
78+
without specific prior written permission.
79+
80+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) AND CONTRIBUTORS ``AS IS'' AND
81+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
82+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
83+
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTORS BE LIABLE
84+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
85+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
86+
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
87+
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
88+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
89+
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
90+
SUCH DAMAGE.
91+
92+
===========================================================================
93+
94+
Portions of this software (xcrypt.c) are based on the work
95+
of David Burren. Used under license:
96+
97+
FreeSec: libcrypt
98+
99+
Copyright (C) 1994 David Burren
100+
All rights reserved.
101+
102+
Redistribution and use in source and binary forms, with or without
103+
modification, are permitted provided that the following conditions
104+
are met:
105+
1. Redistributions of source code must retain the above copyright
106+
notice, this list of conditions and the following disclaimer.
107+
2. Redistributions in binary form must reproduce the above copyright
108+
notice, this list of conditions and the following disclaimer in the
109+
documentation and/or other materials provided with the distribution.
110+
3. Neither the name(s) of the author(s) nor the names of other contributors
111+
may be used to endorse or promote products derived from this software
112+
without specific prior written permission.
113+
114+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) AND CONTRIBUTORS ``AS IS'' AND
115+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
116+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
117+
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTORS BE LIABLE
118+
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
119+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
120+
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
121+
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
122+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
123+
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
124+
SUCH DAMAGE.

0 commit comments

Comments
 (0)