1m4_define([orca_version], [41.1])
2
3m4_define(pygobject_required_version, 3.18)
4m4_define(atspi_required_version, 2.26)
5m4_define(atkbridge_required_version, 2.26)
6
7AC_INIT([orca],
8        [orca_version],
9        [https://gitlab.gnome.org/GNOME/orca/-/issues/],
10        [orca])
11
12AC_CONFIG_MACRO_DIR([m4])
13
14AM_INIT_AUTOMAKE([1.11 tar-ustar no-dist-gzip dist-xz])
15AM_MAINTAINER_MODE([enable])
16
17dnl Gettext stuff
18# FIXME: Remove AM_GNU_GETTEXT_VERSION once autoreconf supports REQUIRE_VERSION
19AM_GNU_GETTEXT_VERSION([0.19.8])
20AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.8])
21AM_GNU_GETTEXT([external])
22
23GETTEXT_PACKAGE=AC_PACKAGE_TARNAME
24AC_SUBST(GETTEXT_PACKAGE)
25AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [gettext package])
26
27# User Documentation
28YELP_HELP_INIT
29
30PKG_CHECK_MODULES([PYGOBJECT], [pygobject-3.0 >= pygobject_required_version])
31PKG_CHECK_MODULES([ATSPI2], [atspi-2 >= atspi_required_version])
32PKG_CHECK_MODULES([ATKBRIDGE], [atk-bridge-2.0 >= atkbridge_required_version])
33PKG_CHECK_MODULES([GSTREAMER], [gstreamer-1.0], [gstreamer="yes"], [gstreamer="no"])
34
35dnl Needed programs
36AC_PROG_INSTALL
37
38dnl Check for python and python modules needed by Orca
39dnl TODO: check for incompatibilities between Orca and liblouis
40dnl per http://live.gnome.org/Orca/Braille
41AM_PATH_PYTHON(3.3)
42
43# Don't require the DISPLAY to be set - the gtk checking will fail
44# if DISPLAY is not set, and we don't like that.
45
46AM_CHECK_PYMOD(gi,,,[AC_MSG_ERROR(Could not find python module: gi)])
47AM_CHECK_PYMOD(json,,,[AC_MSG_ERROR(Could not find python module: json)])
48AM_CHECK_PYMOD(brlapi,,[brlapi_available="yes"],[brlapi_available="no"])
49AM_CHECK_PYMOD(speechd,,[speechd_available="yes"],[speechd_available="no"])
50AC_ARG_WITH([liblouis],
51  AS_HELP_STRING([--without-liblouis], [Disable liblouis support]))
52
53AS_IF([test "x$with_liblouis" != xno],
54  [AM_CHECK_PYMOD(louis,,[louis_available="yes"],[louis_available="no"])],
55  [louis_available=no])
56
57if test "x$with_liblouis" = xyes -a "x$louis_available" = xno; then
58  AC_MSG_ERROR([Liblouis was requested but could not be found])
59fi
60
61LOUIS_TABLE_DIR=""
62if test x$louis_available = "xyes"; then
63  LOUIS_TABLE_DIR=`pkg-config --variable=tablesdir liblouis`
64fi
65AC_SUBST(LOUIS_TABLE_DIR)
66
67REVISION=`git rev-parse --short HEAD 2> /dev/null`
68AC_SUBST(REVISION)
69
70dnl Check for the OS. On *Solaris systems the PATH must be set
71PLATFORM=`uname -a`
72case "${PLATFORM}" in
73    *SunOS*)
74            PLATFORM_PATH=":/usr/ccs/bin:/usr/bin:/usr/sbin:/bin:/usr/sfw/bin:/usr/openwin/bin:/usr/X11R6/bin"
75            ;;
76    *Linux*)
77            PLATFORM_PATH=":/usr/bin:/usr/sbin:/bin"
78            ;;
79esac
80AC_SUBST(PLATFORM_PATH)
81
82AC_OUTPUT([
83run_pylint.sh
84Makefile
85docs/Makefile
86docs/man/Makefile
87po/Makefile.in
88help/Makefile
89icons/Makefile
90src/Makefile
91src/orca/Makefile
92src/orca/scripts/Makefile
93src/orca/scripts/apps/Makefile
94src/orca/scripts/apps/Banshee/Makefile
95src/orca/scripts/apps/Eclipse/Makefile
96src/orca/scripts/apps/ekiga/Makefile
97src/orca/scripts/apps/empathy/Makefile
98src/orca/scripts/apps/epiphany/Makefile
99src/orca/scripts/apps/evince/Makefile
100src/orca/scripts/apps/evolution/Makefile
101src/orca/scripts/apps/gajim/Makefile
102src/orca/scripts/apps/gcalctool/Makefile
103src/orca/scripts/apps/gedit/Makefile
104src/orca/scripts/apps/gnome-documents/Makefile
105src/orca/scripts/apps/gnome-keyring-ask/Makefile
106src/orca/scripts/apps/gnome-panel/Makefile
107src/orca/scripts/apps/gnome-screensaver-dialog/Makefile
108src/orca/scripts/apps/gnome-search-tool/Makefile
109src/orca/scripts/apps/gnome-shell/Makefile
110src/orca/scripts/apps/gnome-window-properties/Makefile
111src/orca/scripts/apps/kwin/Makefile
112src/orca/scripts/apps/Instantbird/Makefile
113src/orca/scripts/apps/notification-daemon/Makefile
114src/orca/scripts/apps/notify-osd/Makefile
115src/orca/scripts/apps/Mozilla/Makefile
116src/orca/scripts/apps/pidgin/Makefile
117src/orca/scripts/apps/rhythmbox/Makefile
118src/orca/scripts/apps/soffice/Makefile
119src/orca/scripts/apps/SeaMonkey/Makefile
120src/orca/scripts/apps/smuxi-frontend-gnome/Makefile
121src/orca/scripts/apps/Thunderbird/Makefile
122src/orca/scripts/apps/xfwm4/Makefile
123src/orca/scripts/switcher/Makefile
124src/orca/scripts/terminal/Makefile
125src/orca/scripts/web/Makefile
126src/orca/scripts/toolkits/Makefile
127src/orca/scripts/toolkits/Chromium/Makefile
128src/orca/scripts/toolkits/Gecko/Makefile
129src/orca/scripts/toolkits/J2SE-access-bridge/Makefile
130src/orca/scripts/toolkits/clutter/Makefile
131src/orca/scripts/toolkits/GAIL/Makefile
132src/orca/scripts/toolkits/Qt/Makefile
133src/orca/scripts/toolkits/WebKitGtk/Makefile
134src/orca/scripts/toolkits/gtk/Makefile
135src/orca/backends/Makefile
136src/orca/orca_bin.py
137src/orca/orca_i18n.py
138src/orca/orca_platform.py
139],[chmod +x run_pylint.sh ; cp src/orca/orca_bin.py src/orca/orca])
140
141if test "x$brlapi_available" = "xno" ; then
142echo
143echo "NOTE: Braille support requires BrlTTY >= 3.9 and BrlAPI >= 0.5.1."
144fi
145if test "x$wnck_available" = "xno" ; then
146echo
147echo "NOTE: Mouse review requires wnck, which was not found."
148fi
149
150if test "x$speechd_available" = "xno" ; then
151echo
152echo "NOTE: Speech support requires speech-dispatcher >= 0.8."
153fi
154
155if test "x$gstreamer" = "xno" ; then
156echo
157echo "NOTE: Sound support requires gstreamer-1.0."
158fi
159
160echo
161echo Use speech-dispatcher: $speechd_available
162echo Use brltty: $brlapi_available
163echo Use liblouis: $louis_available
164echo Use gstreamer: $gstreamer
165echo
166