Free Hero Mesh

Check-in [60a7806b31]
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.
Overview
Comment:Improve compilation instructions and script to check for a common mistake.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 60a7806b312ed309a7b0e71227395743d71a6dbc
User & Date: user on 2022-07-12 00:02:07
Other Links: manifest | tags
Context
2022-07-14
06:09
If sqlite3.o is not present, try to automatically compile sqlite3.c if it is present. check-in: f5ea4ecd8d user: user tags: trunk
2022-07-12
00:02
Improve compilation instructions and script to check for a common mistake. check-in: 60a7806b31 user: user tags: trunk
2022-07-11
23:20
Improvements and corrections of pattern matching capability. check-in: cd1ff3c034 user: user tags: trunk
Changes

Modified README from [0d6caffb8e] to [7afab18752].

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

Requirements:

* Linux (it should hopefully work on other POSIX systems, although this is
untested; it might use some Linux-specific functions and/or GNU-specific
functions; I may be willing to accept contributions if this can be fixed).

* SQLite version 3 (a recent version). Add a symlink to the sqlite3.o file
into the same directory with the source files (or you can compile it from
source with the desired options; the default options will do, although it

is safe to omit the deprecated functions and to set SQLITE_DQS=0).

* SDL1.x (the compatibility layers have not been tested with this
software; if you have tested it please report it, and you may contribute
patches to fix it).

* A C compiler, with GNU extensions (tested with GCC; it has not been
tested with Clang, but I expect it to work; report it if it doesn't work).

* If you wish to alter some of the files, Node.js or a compatible
JavaScript runtime is required for compiling these files (you do not need
this if you do not wish to modify Free Hero Mesh).

* The smallxrm is required. It is included with this package; you must
compile smallxrm.c as smallxrm.o (one way is "bash smallxrm.c", or you
can use gcc or clang with the options you want).

* Colour display, with resolution at least 640x480 (preferably more), and
at least 256 colours.

* Keyboard and mouse, with three mouse buttons (the mouse wheel is not
needed and is not used, but it is OK if you have it).

The distributor should edit man6/heromesh.str in order to correctly







|
|
|
>
|












<
<
<
<







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

Requirements:

* Linux (it should hopefully work on other POSIX systems, although this is
untested; it might use some Linux-specific functions and/or GNU-specific
functions; I may be willing to accept contributions if this can be fixed).

* SQLite version 3 (a recent version). Add a symlink to the sqlite3.h and
sqlite3.o files into the same directory with the source files (or you can
compile it from source with the desired options; the default options will
do, although it is safe (and is recommended) to omit the deprecated
functions and to set SQLITE_DQS=0).

* SDL1.x (the compatibility layers have not been tested with this
software; if you have tested it please report it, and you may contribute
patches to fix it).

* A C compiler, with GNU extensions (tested with GCC; it has not been
tested with Clang, but I expect it to work; report it if it doesn't work).

* If you wish to alter some of the files, Node.js or a compatible
JavaScript runtime is required for compiling these files (you do not need
this if you do not wish to modify Free Hero Mesh).





* Colour display, with resolution at least 640x480 (preferably more), and
at least 256 colours.

* Keyboard and mouse, with three mouse buttons (the mouse wheel is not
needed and is not used, but it is OK if you have it).

The distributor should edit man6/heromesh.str in order to correctly

Modified compile from [8b2463d0ca] to [dd47d6a91c].

8
9
10
11
12
13
14






15
16
17
18
19
20
21
fi
test -f CFLAGS || echo xxx > CFLAGS
test "xx$CFLAGS" = "x`cat CFLAGS`" || rm bindings.o class.o picture.o function.o exec.o game.o edit.o picedit.o hash.o || true
echo "x$CFLAGS" > CFLAGS
test "x$EXE" = "x" && export EXE=~/bin/heromesh
echo 'Flags: ' "$CFLAGS"
echo 'Target filename: ' "$EXE"






which node > /dev/null || echo 'Node.js not found; ignoring changes to instructions/quarks'
which node > /dev/null || touch -cm instruc.h names.h quarks.h
test instruc -nt instruc.h && node instruc.js > instruc.h
test instruc.js -nt instruc.h && node instruc.js > instruc.h
test names.js -nt names.h && node names.js > names.h
test names.js -nt instruc.h && node instruc.js > instruc.h
test quarks -nt quarks.h && node quarks.js > quarks.h







>
>
>
>
>
>







8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
fi
test -f CFLAGS || echo xxx > CFLAGS
test "xx$CFLAGS" = "x`cat CFLAGS`" || rm bindings.o class.o picture.o function.o exec.o game.o edit.o picedit.o hash.o || true
echo "x$CFLAGS" > CFLAGS
test "x$EXE" = "x" && export EXE=~/bin/heromesh
echo 'Flags: ' "$CFLAGS"
echo 'Target filename: ' "$EXE"
if test \! \( -f sqlite3.o -a -f sqlite3.h \); then
  echo '**ERROR**'
  echo 'SQLite files are not found.'
  echo 'Please read the installation/compilation instructions in the README file.'
fi
test -f sqlite3.o -a -f sqlite3.h
which node > /dev/null || echo 'Node.js not found; ignoring changes to instructions/quarks'
which node > /dev/null || touch -cm instruc.h names.h quarks.h
test instruc -nt instruc.h && node instruc.js > instruc.h
test instruc.js -nt instruc.h && node instruc.js > instruc.h
test names.js -nt names.h && node names.js > names.h
test names.js -nt instruc.h && node instruc.js > instruc.h
test quarks -nt quarks.h && node quarks.js > quarks.h