Blame


1 00ced238 2021-09-24 thomas README.portable
2 00ced238 2021-09-24 thomas ===============
3 00ced238 2021-09-24 thomas
4 00ced238 2021-09-24 thomas **NOTE: This repository is read-only and is used only to mirror the
5 00ced238 2021-09-24 thomas got-portable repository for CI purposes.**
6 00ced238 2021-09-24 thomas
7 00ced238 2021-09-24 thomas This is the portable version of got[1] (Game of Trees), using autotools to
8 e499844e 2022-03-03 thomas provide the library checks required for GoT's dependencies.
9 00ced238 2021-09-24 thomas
10 e499844e 2022-03-03 thomas The following operating systems are supported:
11 00ced238 2021-09-24 thomas
12 e499844e 2022-03-03 thomas * FreeBSD
13 e499844e 2022-03-03 thomas * NetBSD
14 b26177ad 2022-03-03 thomas * DragonFlyBSD
15 e499844e 2022-03-03 thomas * MacOS
16 e499844e 2022-03-03 thomas * Linux
17 e499844e 2022-03-03 thomas
18 00ced238 2021-09-24 thomas DEPENDENCIES
19 00ced238 2021-09-24 thomas ============
20 00ced238 2021-09-24 thomas
21 e499844e 2022-03-03 thomas Linux:
22 00ced238 2021-09-24 thomas
23 00ced238 2021-09-24 thomas * `libncurses` (for tog(1))
24 00ced238 2021-09-24 thomas * `libmd` (BSD's digest routines)
25 bd1cad3c 2022-04-30 thomas * `libbsd` (BSD's arc4random routines)
26 00ced238 2021-09-24 thomas * `libcrypto` (often via 'libssl-dev' for SHA1 routines)
27 00ced238 2021-09-24 thomas * `libuuid` (for UUID generation)
28 00ced238 2021-09-24 thomas * `libz` (for Z compression)
29 00ced238 2021-09-24 thomas * `pkg-config` (for searching libraries)
30 ebc794c1 2021-10-20 thomas * `bison` (for configuration file grammar)
31 00ced238 2021-09-24 thomas
32 e499844e 2022-03-03 thomas FreeBSD:
33 e499844e 2022-03-03 thomas
34 e499844e 2022-03-03 thomas * `automake`
35 e499844e 2022-03-03 thomas * `pkgconf`
36 e8da6c41 2022-07-10 thomas * `GNU coreutils` (for running tests)
37 e499844e 2022-03-03 thomas
38 e499844e 2022-03-03 thomas NetBSD:
39 e499844e 2022-03-03 thomas
40 e499844e 2022-03-03 thomas * `automake`
41 e499844e 2022-03-03 thomas * `libuuid`
42 e499844e 2022-03-03 thomas * `ncuresesw`
43 e8da6c41 2022-07-10 thomas * `GNU coreutils` (for running tests)
44 e499844e 2022-03-03 thomas
45 b26177ad 2022-03-03 thomas DragonFlyBSD:
46 b26177ad 2022-03-03 thomas
47 b26177ad 2022-03-03 thomas * `automake`
48 b26177ad 2022-03-03 thomas * `pkgconf`
49 b26177ad 2022-03-03 thomas * `openssl`
50 e8da6c41 2022-07-10 thomas * `GNU coreutils` (for running tests)
51 b26177ad 2022-03-03 thomas
52 e499844e 2022-03-03 thomas Darwin (MacOS):
53 e499844e 2022-03-03 thomas
54 e499844e 2022-03-03 thomas * `automake`
55 e499844e 2022-03-03 thomas * `bison`
56 e499844e 2022-03-03 thomas * `pkg-config`
57 e499844e 2022-03-03 thomas * `ncurses`
58 e499844e 2022-03-03 thomas * `openssl`
59 e499844e 2022-03-03 thomas * `ossp-uuid`
60 e499844e 2022-03-03 thomas
61 00ced238 2021-09-24 thomas TESTS (REGRESS)
62 00ced238 2021-09-24 thomas ===============
63 00ced238 2021-09-24 thomas
64 00ced238 2021-09-24 thomas To run the test suite:
65 00ced238 2021-09-24 thomas
66 00ced238 2021-09-24 thomas ```
67 00ced238 2021-09-24 thomas $ make tests
68 00ced238 2021-09-24 thomas ```
69 00ced238 2021-09-24 thomas
70 1317cd3a 2022-03-08 thomas NOTE: For Linux, you must have the jot(1) command which is typically in the
71 e8da6c41 2022-07-10 thomas `athena-jot` package, or similar. For non-linux systems (as mentioned above),
72 e8da6c41 2022-07-10 thomas GNU Coreutils needs to be installed.
73 1317cd3a 2022-03-08 thomas
74 00ced238 2021-09-24 thomas NOTE: THIS ONLY WORKS AFTER `make install` DUE TO HOW PATHS TO LIBEXEC
75 00ced238 2021-09-24 thomas HELPERS ARE HARD-CODED INTO THE BINARIES.
76 00ced238 2021-09-24 thomas
77 00ced238 2021-09-24 thomas INSTALLATION
78 00ced238 2021-09-24 thomas ============
79 00ced238 2021-09-24 thomas
80 00ced238 2021-09-24 thomas ```
81 00ced238 2021-09-24 thomas $ ./autogen.sh
82 00ced238 2021-09-24 thomas $ ./configure && make
83 00ced238 2021-09-24 thomas $ sudo make install
84 00ced238 2021-09-24 thomas ```
85 00ced238 2021-09-24 thomas
86 00ced238 2021-09-24 thomas BRANCHES + SUBMITTING PATCHES
87 00ced238 2021-09-24 thomas =============================
88 00ced238 2021-09-24 thomas
89 00ced238 2021-09-24 thomas `got-portable` has two key branches:
90 00ced238 2021-09-24 thomas
91 00ced238 2021-09-24 thomas * `main` which tracks got upstream untainted.
92 2f4dd2c2 2021-09-27 thomas * `linux` which provides the portable version of GoT based from code on `main`
93 00ced238 2021-09-24 thomas
94 00ced238 2021-09-24 thomas Patches for portable code fixes should be based from the `linux` branch and
95 00ced238 2021-09-24 thomas sent to the mailing list for review [2] or sent to me directly (see CONTACT).
96 00ced238 2021-09-24 thomas
97 00ced238 2021-09-24 thomas The read-only Github repository also runs CI checks using Cirrus-CI on Linux
98 00ced238 2021-09-24 thomas and FreeBSD.
99 00ced238 2021-09-24 thomas
100 00ced238 2021-09-24 thomas TODO
101 00ced238 2021-09-24 thomas ====
102 00ced238 2021-09-24 thomas
103 00ced238 2021-09-24 thomas This port is incomplete in that only got(1) and tog(1) have been ported.
104 00ced238 2021-09-24 thomas gotweb has yet to be ported.
105 00ced238 2021-09-24 thomas
106 00ced238 2021-09-24 thomas configure.ac should start defining AC_ENABLE arguments to allow for
107 00ced238 2021-09-24 thomas finer-grained control of where to search for includes/libraries, etc.
108 00ced238 2021-09-24 thomas
109 00ced238 2021-09-24 thomas CONTACT
110 00ced238 2021-09-24 thomas =======
111 00ced238 2021-09-24 thomas
112 00ced238 2021-09-24 thomas Thomas Adam <thomas@xteddy.org>
113 00ced238 2021-09-24 thomas thomas_adam (#gameoftrees on irc.libera.chat)
114 00ced238 2021-09-24 thomas
115 00ced238 2021-09-24 thomas [1] https://gameoftrees.org
116 6bfde126 2021-09-29 thomas [2] https://lists.openbsd.org/cgi-bin/mj_wwwusr?user=&passw=&func=lists-long-full&extra=gameoftrees