Blame


1 8d3a30b1 2024-02-23 op AC_INIT([telescope], [0.9], [telescope@omarpolo.com], [telescope], [gemini://telescope.omarpolo.com])
2 2758e1bb 2022-02-24 op AC_CONFIG_AUX_DIR(etc)
3 b0003f58 2021-03-08 op AC_CONFIG_LIBOBJ_DIR(compat)
4 1470eab3 2021-07-27 op AC_CANONICAL_HOST
5 60c891c2 2021-03-12 op AM_INIT_AUTOMAKE([-Wall foreign subdir-objects])
6 81d99233 2023-10-14 op AC_PROG_CC
7 a625907c 2021-03-19 op AC_USE_SYSTEM_EXTENSIONS
8 69bdd906 2021-06-15 op AC_PROG_YACC
9 5e11c00c 2021-03-02 op
10 5e11c00c 2021-03-02 op PKG_PROG_PKG_CONFIG
11 5e11c00c 2021-03-02 op
12 71066d24 2021-11-26 op AC_ARG_VAR(HOSTCC, [The C compiler on the host.])
13 71066d24 2021-11-26 op AC_ARG_VAR(HOSTCFLAGS, [CFLAGS for the host compiler])
14 71066d24 2021-11-26 op
15 71066d24 2021-11-26 op test -z "${HOSTCC}" && HOSTCC='$(CC)'
16 71066d24 2021-11-26 op test -z "${HOSTCFLAGS}" && HOSTCFLAGS='$(CFLAGS)'
17 71066d24 2021-11-26 op
18 d94e08d2 2024-01-13 op AC_ARG_WITH([Werror],
19 d94e08d2 2024-01-13 op AS_HELP_STRING([--with-Werror],
20 d94e08d2 2024-01-13 op [Add the compiler flag -Werror]))
21 d94e08d2 2024-01-13 op
22 7eaf997f 2021-08-19 op AC_ARG_WITH([libimsg],
23 7eaf997f 2021-08-19 op AS_HELP_STRING([--with-libimsg],
24 7eaf997f 2021-08-19 op [Build with imsg-compat library (default: disabled)]))
25 7eaf997f 2021-08-19 op
26 86ce72db 2021-08-19 op AC_ARG_WITH([libbsd],
27 86ce72db 2021-08-19 op AS_HELP_STRING([--with-libbsd],
28 86ce72db 2021-08-19 op [Build with libbsd library (default: disabled)]))
29 86ce72db 2021-08-19 op
30 86ce72db 2021-08-19 op AS_IF([test "x$with_libbsd" = "xyes"], [
31 86ce72db 2021-08-19 op PKG_CHECK_MODULES([libbsd], [libbsd-overlay libbsd-ctor], [
32 86ce72db 2021-08-19 op CFLAGS="$libbsd_CFLAGS $CFLAGS"
33 86ce72db 2021-08-19 op LIBS="$libbsd_LIBS $LIBS"
34 86ce72db 2021-08-19 op ])
35 86ce72db 2021-08-19 op ])
36 86ce72db 2021-08-19 op
37 b0003f58 2021-03-08 op AC_REPLACE_FUNCS([
38 b0003f58 2021-03-08 op asprintf \
39 b0003f58 2021-03-08 op err \
40 beada781 2021-07-28 op explicit_bzero \
41 b0003f58 2021-03-08 op freezero \
42 b0003f58 2021-03-08 op getdtablecount \
43 b0003f58 2021-03-08 op getdtablesize \
44 b0003f58 2021-03-08 op getprogname \
45 e21e40a9 2021-03-13 op memmem \
46 abe0273c 2024-02-06 op reallocarray \
47 60c891c2 2021-03-12 op recallocarray \
48 e80a23a1 2021-07-14 op strcasestr \
49 b0003f58 2021-03-08 op strlcat \
50 b0003f58 2021-03-08 op strlcpy \
51 fbaf9fba 2021-04-25 op strsep \
52 b0003f58 2021-03-08 op strtonum \
53 b0003f58 2021-03-08 op setproctitle \
54 b0003f58 2021-03-08 op ])
55 b0003f58 2021-03-08 op
56 87e40628 2021-05-14 op AC_MSG_CHECKING([for sys/queue.h with TAILQ_FOREACH_SAFE])
57 87e40628 2021-05-14 op AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
58 87e40628 2021-05-14 op #include <sys/queue.h>
59 87e40628 2021-05-14 op #include <stddef.h>
60 87e40628 2021-05-14 op ], [
61 87e40628 2021-05-14 op TAILQ_HEAD(tailhead, entry) head;
62 87e40628 2021-05-14 op struct entry {
63 87e40628 2021-05-14 op TAILQ_ENTRY(entry) entries;
64 87e40628 2021-05-14 op } *np, *nt;
65 87e40628 2021-05-14 op TAILQ_INIT(&head);
66 87e40628 2021-05-14 op TAILQ_FOREACH_SAFE(np, &head, entries, nt) {
67 87e40628 2021-05-14 op /* nop */ ;
68 87e40628 2021-05-14 op }
69 87e40628 2021-05-14 op return 0;
70 87e40628 2021-05-14 op ])], [
71 87e40628 2021-05-14 op AC_MSG_RESULT(yes)
72 87e40628 2021-05-14 op AC_DEFINE([HAVE_QUEUE_H], 1, [QUEUE_H])
73 87e40628 2021-05-14 op ], AC_MSG_RESULT(no))
74 87e40628 2021-05-14 op
75 b45ef13d 2024-02-19 op AC_CHECK_DECL(timespecsub,
76 b45ef13d 2024-02-19 op [AC_DEFINE([HAVE_TIMESPECSUB], 1, [have timespecsub])], [],
77 b45ef13d 2024-02-19 op [#include <sys/time.h>])
78 b45ef13d 2024-02-19 op
79 b45ef13d 2024-02-19 op AC_CHECK_DECL(timercmp,
80 b45ef13d 2024-02-19 op [AC_DEFINE([HAVE_TIMERCMP], 1, [have timercmp])], [],
81 b45ef13d 2024-02-19 op [#include <sys/time.h>])
82 b45ef13d 2024-02-19 op
83 b45ef13d 2024-02-19 op dnl can't be used as r-value.
84 b45ef13d 2024-02-19 op AC_MSG_CHECKING([for TIMEVAL_TO_TIMESPEC])
85 b45ef13d 2024-02-19 op AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
86 b45ef13d 2024-02-19 op #include <sys/time.h>
87 b45ef13d 2024-02-19 op ], [
88 b45ef13d 2024-02-19 op struct timeval a = {0, 0};
89 b45ef13d 2024-02-19 op struct timespec b;
90 b45ef13d 2024-02-19 op TIMEVAL_TO_TIMESPEC(&a, &b);
91 b45ef13d 2024-02-19 op return (int)b.tv_sec;
92 b45ef13d 2024-02-19 op ])], [
93 b45ef13d 2024-02-19 op AC_MSG_RESULT(yes)
94 b45ef13d 2024-02-19 op AC_DEFINE([HAVE_TIMEVAL_TO_TIMESPEC], 1, [have TIMEVAL_TO_TIMESPEC])
95 b45ef13d 2024-02-19 op ], AC_MSG_RESULT(no))
96 b45ef13d 2024-02-19 op
97 b3ea1dea 2023-07-02 op AC_CHECK_HEADER([endian.h], [AC_DEFINE(HAVE_ENDIAN_H, 1, [have endian.h])], [
98 b3ea1dea 2023-07-02 op AC_CHECK_HEADER([sys/endian.h],
99 b3ea1dea 2023-07-02 op [AC_DEFINE(HAVE_SYS_ENDIAN_H, 1, [have sys/endian.h])], [
100 b3ea1dea 2023-07-02 op AC_CHECK_HEADERS([libkern/OSByteOrder.h],
101 b3ea1dea 2023-07-02 op [AC_DEFINE(HAVE_LIBKERN_OSBYTEORDER_H, 1, [have OSByteOrder.h])],
102 b3ea1dea 2023-07-02 op [AC_MSG_ERROR([can't find compatible endian.h header])],
103 b3ea1dea 2023-07-02 op [#include <machine/endian.h>])
104 b3ea1dea 2023-07-02 op ])
105 b3ea1dea 2023-07-02 op ])
106 b3ea1dea 2023-07-02 op
107 b0003f58 2021-03-08 op AC_CHECK_DECL(PR_SET_NAME, AC_DEFINE([HAVE_PR_SET_NAME], 1, [pr_set_name]), [],
108 b0003f58 2021-03-08 op [[#include <sys/prctl.h>]])
109 b0003f58 2021-03-08 op
110 1d08c280 2021-03-06 op AC_SEARCH_LIBS([initscr], [ncursesw ncurses], [], [
111 1d08c280 2021-03-06 op AC_MSG_ERROR([requires either ncursesw or ncurses library])
112 1d08c280 2021-03-06 op ])
113 5e11c00c 2021-03-02 op
114 8671caea 2021-08-19 op AC_SEARCH_LIBS([keyname], [ncursesw ncurses tinfow tinfo], [], [
115 8671caea 2021-08-19 op AC_MSG_ERROR([requires either ncursesw or ncurses library with terminfo support])
116 8671caea 2021-08-19 op ])
117 8671caea 2021-08-19 op
118 27437492 2023-10-14 op AC_SEARCH_LIBS([tls_init], [tls], [], [
119 1d08c280 2021-03-06 op AC_MSG_ERROR([requires libtls])
120 1d08c280 2021-03-06 op ])
121 5e11c00c 2021-03-02 op
122 a7d562e2 2022-11-02 op PKG_CHECK_MODULES([libgrapheme], [libgrapheme], [
123 3448adb0 2022-11-02 op AC_SUBST([LIBGRAPHEME], [])
124 a7d562e2 2022-11-02 op CFLAGS="$libgrapheme_CFLAGS $CFLAGS"
125 a7d562e2 2022-11-02 op LIBS="$libgrapheme_LIBS $LIBS"
126 3448adb0 2022-11-02 op ], [
127 3448adb0 2022-11-02 op # build the bundled version.
128 3448adb0 2022-11-02 op AC_SUBST([LIBGRAPHEME], "$srcdir/libgrapheme/libgrapheme.a")
129 3448adb0 2022-11-02 op CFLAGS="-I$srcdir/libgrapheme $CFLAGS"
130 d5e0ee08 2022-10-09 op ])
131 d5e0ee08 2022-10-09 op
132 7eaf997f 2021-08-19 op AS_IF([test "x$with_libimsg" = "xyes"], [
133 7eaf997f 2021-08-19 op PKG_CHECK_MODULES([libimsg], [libimsg], [
134 7eaf997f 2021-08-19 op CFLAGS="$libimsg_CFLAGS $CFLAGS"
135 7eaf997f 2021-08-19 op LIBS="$libimsg_LIBS $LIBS"
136 7eaf997f 2021-08-19 op ])
137 7eaf997f 2021-08-19 op ])
138 7eaf997f 2021-08-19 op
139 7eaf997f 2021-08-19 op AC_SEARCH_LIBS([imsg_init], [util], [
140 7eaf997f 2021-08-19 op AC_DEFINE([HAVE_IMSG], 1,
141 7eaf997f 2021-08-19 op [Define to 1 if you have imsg functions (-lutil or -limsg).])
142 7eaf997f 2021-08-19 op ], [
143 7eaf997f 2021-08-19 op AC_LIBOBJ(imsg)
144 7eaf997f 2021-08-19 op AC_LIBOBJ(imsg-buffer)
145 7eaf997f 2021-08-19 op ]
146 7eaf997f 2021-08-19 op )
147 7eaf997f 2021-08-19 op
148 27437492 2023-10-14 op AC_SEARCH_LIBS([ohash_init], [util], [], [
149 82550776 2021-03-17 op AC_LIBOBJ(ohash)
150 0e1eff5b 2021-06-23 op AC_LIBOBJ(fmt_scaled)
151 b0003f58 2021-03-08 op ])
152 5e11c00c 2021-03-02 op
153 cc4953ef 2021-03-16 op AC_CHECK_FUNCS([asr_run])
154 cc4953ef 2021-03-16 op
155 7d2a2ace 2024-01-24 op AC_SEARCH_LIBS([RAND_add], [crypto], [:], [
156 7d2a2ace 2024-01-24 op AC_MSG_ERROR([can't find libcrypto])
157 7d2a2ace 2024-01-24 op ])
158 7d2a2ace 2024-01-24 op
159 7d2a2ace 2024-01-24 op AC_SEARCH_LIBS([SSL_CTX_new], [ssl], [:], [
160 7d2a2ace 2024-01-24 op AC_MSG_ERROR([can't find libssl])
161 7d2a2ace 2024-01-24 op ])
162 7d2a2ace 2024-01-24 op
163 d58e3018 2024-02-12 op AC_CHECK_HEADERS([linux/landlock.h])
164 a9d11f81 2021-10-08 op
165 d94e08d2 2024-01-13 op dnl after all the function checks, add optional support for -Werror
166 d94e08d2 2024-01-13 op AS_IF([test "x$with_Werror" = "xyes"], [
167 d94e08d2 2024-01-13 op CFLAGS="$CFLAGS -Werror"
168 d94e08d2 2024-01-13 op ])
169 d94e08d2 2024-01-13 op
170 e18a9f14 2021-03-15 op # check compiler flags
171 e18a9f14 2021-03-15 op AC_DEFUN([CC_ADD_CHECK_FLAGS], [
172 e18a9f14 2021-03-15 op AC_MSG_CHECKING([if $CC supports $1 flag])
173 e18a9f14 2021-03-15 op old_CFLAGS="$CFLAGS"
174 f924a1df 2024-02-19 op CFLAGS="$CFLAGS -Werror $1"
175 f924a1df 2024-02-19 op AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])], [
176 f924a1df 2024-02-19 op AC_MSG_RESULT(yes)
177 f924a1df 2024-02-19 op CFLAGS="$old_CFLAGS $1"
178 f924a1df 2024-02-19 op ], [
179 e18a9f14 2021-03-15 op AC_MSG_RESULT(no)
180 f924a1df 2024-02-19 op CFLAGS="$old_CFLAGS"
181 f924a1df 2024-02-19 op ])
182 e18a9f14 2021-03-15 op ])
183 e18a9f14 2021-03-15 op CC_ADD_CHECK_FLAGS([-Wall])
184 e18a9f14 2021-03-15 op CC_ADD_CHECK_FLAGS([-Wextra])
185 6ecb1353 2022-01-20 op CC_ADD_CHECK_FLAGS([-Wmissing-declarations])
186 e18a9f14 2021-03-15 op CC_ADD_CHECK_FLAGS([-Wmissing-prototypes])
187 e18a9f14 2021-03-15 op CC_ADD_CHECK_FLAGS([-Wstrict-prototypes])
188 e18a9f14 2021-03-15 op CC_ADD_CHECK_FLAGS([-Wwrite-strings])
189 e18a9f14 2021-03-15 op CC_ADD_CHECK_FLAGS([-Wno-unused-parameter])
190 db067589 2024-02-19 op CC_ADD_CHECK_FLAGS([-Wno-format-truncation])
191 db067589 2024-02-19 op CC_ADD_CHECK_FLAGS([-Wno-pointer-sign])
192 6ecb1353 2022-01-20 op CC_ADD_CHECK_FLAGS([-Wpointer-arith])
193 6ecb1353 2022-01-20 op CC_ADD_CHECK_FLAGS([-Wsign-compare])
194 6ecb1353 2022-01-20 op CC_ADD_CHECK_FLAGS([-Wcast-align])
195 e18a9f14 2021-03-15 op
196 5e11c00c 2021-03-02 op AC_CONFIG_HEADERS([config.h])
197 5e11c00c 2021-03-02 op AC_CONFIG_FILES([
198 5e11c00c 2021-03-02 op Makefile
199 23a912c2 2022-01-20 op test/Makefile
200 0e4c3d62 2022-02-26 op pages/about_about.gmi
201 0e4c3d62 2022-02-26 op pages/about_blank.gmi
202 8064b849 2021-07-20 op pages/about_crash.gmi
203 0e4c3d62 2022-02-26 op pages/about_help.gmi
204 0e4c3d62 2022-02-26 op pages/about_license.gmi
205 0e4c3d62 2022-02-26 op pages/about_new.gmi
206 0e4c3d62 2022-02-26 op pages/bookmarks.gmi
207 5e11c00c 2021-03-02 op ])
208 5e11c00c 2021-03-02 op
209 5e11c00c 2021-03-02 op AC_OUTPUT