forked from dyne/tomb
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfigure.ac
156 lines (125 loc) · 4.2 KB
/
configure.ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
dnl ==============================================================
dnl Process this file with autoconf to produce a configure script.
dnl ==============================================================
AC_PREREQ([2.60])
AC_INIT([Tomb],[1.1],[[email protected]],[Tomb])
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_HOST
dnl backwards compatibility for autoconf >= 2.64
dnl PACKAGE_URL should be the fifth argument of AC_INIT
m4_define([AC_PACKAGE_URL], [http://tomb.dyne.org])
dnl AC_DEFINE(PACKAGE_URL, "AC_PACKAGE_URL", [Package URL])
AC_SUBST(PACKAGE_URL, AC_PACKAGE_URL)
dnl ==============================================================
dnl Get the operating system and version number...
dnl ==============================================================
AC_MSG_CHECKING([for which platform we are setting up])
case "$host_os" in
*linux*)
AC_MSG_RESULT([Linux])
have_linux=yes
if test x$have_x86_64 = xyes; then
have_64bit=yes
fi
if test x$have_x86_32 = xyes; then
have_32bit=yes
fi
;;
*darwin*)
AC_MSG_RESULT([Darwin/OSX])
have_darwin=yes
;;
*freebsd*)
AC_MSG_RESULT([FreeBSD])
have_freebsd=yes
;;
*)
AC_MSG_RESULT([$host_os?!])
AC_MSG_ERROR([[
[!] Your system architecture is not supported by Tomb.
]], 0)
;;
esac
dnl ==============================================================
dnl Setup for automake
dnl ==============================================================
AM_INIT_AUTOMAKE([dist-bzip2 subdir-objects -Wno-portability])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_CONFIG_SRCDIR([src/tomb])
dnl Checks for reguired programs.
AC_PROG_CC
AC_PROG_INSTALL
dnl translation infrastructure
dnl waiting for translations..
dnl AM_GNU_GETTEXT
dnl AM_GNU_GETTEXT_VERSION(0.12)
dnl ---------------------------------------------------------------
dnl Checks for external programs.
dnl none of these will fail with error if missing since technically
dnl these are not *build* dependencies, but *runtime* dependencies.
dnl Mandatory
AC_CHECK_PROG(have_zsh,zsh,yes,no)
AC_CHECK_PROG(have_cryptsetup,cryptsetup,yes,no)
AC_CHECK_PROG(have_pinentry,pinentry,yes,no)
AC_CHECK_PROG(have_sudo,sudo,yes,no)
dnl Optional
AC_CHECK_PROG(have_wipe,wipe,yes,no)
AC_CHECK_PROG(have_dcfldd,dcfldd,yes,no)
dnl ---------------------------------------------------------------
PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.16], :,
AC_MSG_ERROR([*** Gtk+2 >=2.16 development files not found!]))
AC_SUBST([GTK2_CFLAGS])
AC_SUBST([GTK2_LIBS])
PKG_CHECK_MODULES(NOTIFY, libnotify, :,
AC_MSG_ERROR([*** libnotify development files not found!]))
AC_SUBST([NOTIFY_CFLAGS])
AC_SUBST([NOTIFY_LIBS])
REALCFLAGS="$CFLAGS"
REALLIBS="$LIBS"
CFLAGS="$NOTIFY_CFLAGS $CFLAGS"
LIBS="$NOTIFY_LIBS $LIBS"
AC_CHECK_FUNCS([notify_notification_new_with_status_icon])
CFLAGS="$REALCFLAGS"
LIBS="$REALLIBS"
dnl compile with full warnings and debugging symbols
AC_ARG_ENABLE(debug,
AS_HELP_STRING([--enable-debug],[compile with debug symbols (no)]),
[enable_debug=$enableval],
[enable_debug=no])
AC_MSG_CHECKING([if compiling with debug symbols])
if test x$enable_debug = xyes; then
AC_MSG_RESULT([yes])
CFLAGS="$CFLAGS -Wall -g -ggdb"
else
AC_MSG_RESULT([no])
fi
AC_SUBST(CFLAGS)
PACKAGE_DATA_DIR='${prefix}/share/tomb'
AC_SUBST(PACKAGE_DATA_DIR)
# mime TODO see http://www.freedesktop.org/wiki/Specifications/AddingMIMETutor
XDG_DATA_DIR='${prefix}/share/mime/packages'
AC_SUBST(XDG_DATA_DIR)
dnl alphabetic order on dir/subdir, but Makefile sorts before everything
AC_CONFIG_FILES([
Makefile
src/Makefile
doc/Makefile
share/Makefile
])
AC_OUTPUT
dnl function to print verbose configure options only if V=1 is passed to
dnl configure
AC_DEFUN([VRB],
AS_IF([test x"$V" == x1], INFO([$1])))
dnl autoconf < 2.63 compatibility
m4_ifndef([AS_VAR_APPEND],
AC_DEFUN([AS_VAR_APPEND], $1=$$1$2))
dnl convenience function so that INFO messages go to config.log and to stdout,
dnl useful when debugging user problems only config.log is needed
AC_DEFUN([INFO],
AS_ECHO(["$1"]) >&AS_MESSAGE_LOG_FD
AS_ECHO(["$1"]) >&AS_MESSAGE_FD)
dnl as above, but no newline at the end
AC_DEFUN([INFO_N],
AS_ECHO_N(["$1"]) >&AS_MESSAGE_LOG_FD
AS_ECHO_N(["$1"]) >&AS_MESSAGE_FD)