Commit Graph

80 Commits

Author SHA1 Message Date
nhmall
7a1952eadd more file header "NetHack 3.6" to "NetHack 3.7" 2020-08-03 22:41:35 -04:00
nhmall
b967f73b96 build with the current Lua version 5.4.0 by default if not overridden 2020-07-07 17:36:23 -04:00
nhmall
cdf280628c split symbols bits from drawing.c; new file src/symbols.c 2020-05-06 10:55:54 -04:00
nhmall
80a602d344 add recent file addition to windows visual studio project and Makefile 2020-02-02 20:59:41 -05:00
nhmall
42c4600ba7 Merge build tools updates from 'NetHack-3.6' into NetHack-3.7-Jan2020 2020-01-25 12:29:31 -05:00
nhmall
f72df6c21f exec commands in MSBUILD *.proj files didn't handle spaces in directory names 2020-01-25 12:23:54 -05:00
nhmall
97b74e6f7b Merge branch 'NetHack-3.7' into NetHack-3.7-Jan2020 2020-01-24 17:27:48 -05:00
nhmall
57e0e30d10 travis-ci bits: try to avoid failure-flagging on transient connectivity issues
Attempt to test whether Lua fetch succeeded (and pdcurses for windows
and msdos as well)

If those prerequisite fetches and untars didn't work, just exit without
marking the travis-ci build as a failure so that the development team
isn't notified about something transient that they don't need to fix
in the code.
2020-01-20 11:10:16 -05:00
nhmall
cad10295b1 Merge some bug1 fixes from NetHack-3.6 2020-01-13 15:55:01 -05:00
Bart House
496a81d5b0 Get Visual Studio builds working once again. 2019-12-21 15:34:31 -08:00
Bart House
fb044c1a9f Bump in manifest to reflect latest store release. 2019-12-21 13:13:43 -08:00
nhmall
480c3eb6e0 include/lev.h is an empty header file so just get rid of it 2019-12-14 17:18:48 -05:00
nhmall
f4720edfbf include/qtext.h is an empty header so just get rid of it 2019-12-14 12:31:29 -05:00
nhmall
bc8c1f8f56 remove field-level savefile code 2019-12-08 07:27:01 -05:00
nhmall
66e90ab19b re-add Windows visual studio build back into the travis-ci tests
New procedures added to win/win32/vs2017/travisci.sh for travis-ci testing.

- use curl to obtain Lua from http://www.lua.org/ftp/lua-5.3.5.tar.gz
- use tar to unzip lua into lib/lua-5.3.5/...

Note: curl and tar were both added as part of Windows 10 in late Dec 2017
   https://techcommunity.microsoft.com/t5/Containers/Tar-and-Curl-Come-to-Windows/ba-p/382409

- use git to clone pdcurses into lib/pdcurses
- use git to clone universal-ctags into lib/ctags
- build universal-ctags ahead of building NetHack + lua + pdcurses
- adjust sys/winnt/Makefile.msc to look for those things in their lib locations when
  building under travis
2019-12-06 21:28:19 -05:00
nhmall
8e1891f3bb another visual studio update - dirs.props 2019-11-27 11:22:11 -05:00
nhmall
5ae52803a7 visual studio project updates 2019-11-27 11:07:41 -05:00
nhmall
1281b3819d remove an unused variable warning 2019-11-08 15:39:21 -05:00
nhmall
f07bf610b8 Merge branch 'NetHack-3.6' 2019-11-04 01:18:24 -05:00
Bart House
2244720133 Built windows store package. 2019-11-03 17:39:18 -08:00
nhmall
ffec86b244 Merge branch 'NetHack-3.6' 2019-11-02 22:53:46 -04:00
Bart House
11018da6b8 Renamed configuration file for windows to .nethackrc.
Also adjusted name of template files populated during windows builds.
2019-11-02 19:11:26 -07:00
Bart House
4e11038871 Merge branch 'NetHack-3.6' 2019-11-02 11:40:19 -07:00
Bart House
33149eed0e Move is_desktop_bridge() api to win10 wrapper. 2019-11-02 11:39:11 -07:00
Bart House
d9d47c120b Merge branch 'NetHack-3.6' 2019-10-31 20:46:54 -07:00
Bart House
34cf17c4d0 New package submitted to microsoft store. 2019-10-31 20:37:43 -07:00
Bart House
215815c0b5 Changes to player selection dialog support to respond to per-monitor DPI. 2019-10-31 20:18:27 -07:00
nhmall
2eab66617d Merge branch 'NetHack-3.6' 2019-10-30 13:21:20 -04:00
Bart House
43ef5ef7fa Windows Store support for NetHack 3.6. 2019-10-29 21:28:39 -07:00
nhmall
feaaa93451 try travis pre-release zip build again with update powershell command 2019-10-29 17:54:58 -04:00
nhmall
fff4ceebdd travis deploy zip file name refinement 2019-10-29 09:34:21 -04:00
nhmall
34d38dcf82 Merge branch 'NetHack-3.6' 2019-10-28 00:45:56 -04:00
nhmall
4f94bcaa8b travis bits 2019-10-27 20:42:22 -04:00
nhmall
faf795b014 travis updates for Windows deploy
travis updates for Windows deploy

Change zip file name from NetHack.zip
to
NetHack-x86-beta$TRAVIS_TAG.zip
where $TRAVIS_TAG represents the tag info.

Also, log the commands from the sh script in win/win32/vs2017 to the build log.
2019-10-27 20:36:03 -04:00
nhmall
83a4f641eb Merge branch 'NetHack-3.6' 2019-10-27 12:01:38 -04:00
Bart House
2d7901372e Change ZIP file layout to be flat. 2019-10-26 20:39:24 -07:00
Bart House
eef880214b Modified travis builds to deploy the x86 windows build to github if tagged.
Moved the travis visual studio build bash script to live outside of
the travis YML file.  Updated the script to use powershell to generate
ZIP file form the binary results.

Deploy Windows build ZIP file to github releases if build has commit
has been tagged.  Build will be marked pre-release.
2019-10-26 20:09:14 -07:00
nhmall
e05a79f302 Merge branch 'master' into NetHack-3.7 2019-06-30 14:48:50 -04:00
nhmall
4985d5d2b3 Merge branch 'NetHack-3.6' 2019-06-30 14:46:55 -04:00
nhmall
81fef499e0 remove "bogus" bit :) 2019-06-30 12:12:42 -04:00
nhmall
cde420acf6 Merge branch 'master' into NetHack-3.7 2019-06-28 19:04:27 -04:00
nhmall
fc37db4472 Merge branch 'NetHack-3.6' 2019-06-28 19:04:08 -04:00
nhmall
7c7f29a2e3 build fix for Windows if pdcurses is included after recent changes
cursmain.o : error LNK2001: unresolved external symbol _erase_char
cursmesg.o : error LNK2001: unresolved external symbol _erase_char
cursmain.o : error LNK2001: unresolved external symbol _kill_char
cursmesg.o : error LNK2001: unresolved external symbol _kill_char
2019-06-28 18:59:06 -04:00
nhmall
7054e06e42 NetHack minor release checklist items - savefiles
Make some progress on a couple of next minor release checklist
items, hopefully without introducing too many new bugs. This
is just the initial commit, and work continues.

Checklist items:

Savefiles compatible between Windows versions, whether 64-bit
or 32-bit in little-endian field format.

Selection of file formats:
 historical (structlevel saves),
 lendian (little-endian, fieldlevel saves),
 and just for proof-of-concept, ascii fieldlevel saves
 (the ascii is huge! 10x bigger than little-endian).

For the fieldlevel save, all complex data structures recursively
get broken down until until it is one of the simple types that
can't be broken down any further, and that gets when it gets
written to the output file.

New files needed for this build:

hand-coded:
include/sfprocs.h
src/sfbase.c      - really a dispatcher to one of the
                    output/input format routines.
src/sflendian.c   - little-endian output writer/reader.
src/sfascii.c     - ascii text output writer/reader.

auto-coded (generated):
include/sfproto.h
src/sfdata.c

This is just one approach. I'm sure there are countless others
and they have different pros and cons.

For producing the auto-coded files a utility called
universal-ctags, that is actively maintained and evolving,
was used to do all the heavy-lifting of parsing the
NetHack C sources to tabulate the data fields, and store
them in an intermediate file called util/nethack.tags
(not required for building NetHack if you already have a
generated include/sfproto.h and src/sfdata.c)

util/readtags (also not required for building NetHack
itself) will decipher the nethack.tags file and produce
the functions that can deal with the NetHack struct data
fields.

You can obtain the source for universal-ctags by cloning it
from here:
https://github.com/universal-ctags/ctags.git

The combination universal-ctags + util/readtags has been
tried and tested under both Windows and Linux, so it is
not tied to a particular platform.

Note: util/readtags will work only with universal-ctags
output, so other ctags are unlikely to work as-is.
Universal-ctags can be build from source very easily
under Linux, or under Windows using visual studio.
2019-06-23 00:11:46 -04:00
nhmall
bfc4445537 Merge branch 'NetHack-3.6' 2019-06-05 08:08:32 -04:00
nhmall
0b74f2adeb makedefs: add enum support when generating pm.h
Only changes pm.h content if ENUM_PM is defined when compiling
util/makedefs.c

While NON_PM and LOW_PM could be included, it would require
for the makedefs.c compile, as well as an
around their macro definitions in permonst.h so for now those
particular lines are commented out in makedefs.c
2019-06-02 17:21:35 -04:00
Bart House
3427d1ce85 Deleting test file which was just checked-in. 2019-05-28 20:30:10 -07:00
Bart House
9dea6c77d8 Merge branch 'NetHack-3.6' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6 2019-05-28 20:19:33 -07:00
Bart House
7492b1da6c Testing ability to cause chaos. 2019-05-28 20:18:27 -07:00
nhmall
969247cc14 Merge branch 'NetHack-3.6' 2019-05-27 18:44:33 -04:00