3 # AMANDA_DISABLE_INSTALLPERMS
7 # Handle the --disable-installperms option, which disables all post-install
8 # chown/chmod operations. This is useful when packaging, as most packaging
9 # systems build as non-root, and apply permissions in the post-install step of
12 AC_DEFUN([AMANDA_DISABLE_INSTALLPERMS],
15 AC_ARG_ENABLE(installperms,
16 AS_HELP_STRING([--disable-installperms],
17 [do not modify ownership and permissions on installed files]),
18 [ WANT_INSTALLPERMS="$enableval" ],
19 [ WANT_INSTALLPERMS="yes" ]
21 AM_CONDITIONAL(WANT_INSTALLPERMS, test x"$WANT_INSTALLPERMS" = x"yes")
26 # AMANDA_WITH_FORCE_UID
30 # Handle the --without-force-id option, which disables userid checks for
31 # all Amanda applications. Defines and substitutes CHECK_USERID *unless*
32 # this option is given, and also sets AM_CONDITIONAL CHECK_USERID
34 AC_DEFUN([AMANDA_WITH_FORCE_UID],
36 AC_ARG_WITH(force-uid,
37 AS_HELP_STRING([--without-force-uid],
38 [do not check userids when running programs]),
39 CHECK_USERID="$withval",
42 case "$CHECK_USERID" in
45 AC_DEFINE(CHECK_USERID, 1,
46 [Define to force to another user on client machines. ])
52 AC_MSG_ERROR([*** You must not supply an argument to --with-force-uid option.])
54 AC_SUBST(CHECK_USERID)
55 AM_CONDITIONAL(CHECK_USERID, test x"$CHECK_USERID" = x"1")
64 # Handle the --with-user option, which sets the userid Amanda expects to run
65 # under. Defines and substitutes CLIENT_LOGIN.
67 AC_DEFUN([AMANDA_WITH_USER],
70 AS_HELP_STRING([--with-user=USER],
71 [force execution to USER on client systems (REQUIRED)]),
74 "" | y | ye | yes | n | no)
75 AC_MSG_ERROR([*** You must supply an argument to the --with-user option.])
78 CLIENT_LOGIN="$withval"
82 AMANDA_MSG_WARN([[no user specified (--with-user) -- using 'amanda']])
87 AC_DEFINE_UNQUOTED(CLIENT_LOGIN,"$CLIENT_LOGIN",
88 [Define as a the user to force to on client machines. ])
89 AC_SUBST(CLIENT_LOGIN)
98 # Handle the --with-group option, which sets the groupid Amanda expects to run
99 # under. Substitutes (but does not define) SETUID_GROUP.
101 AC_DEFUN([AMANDA_WITH_GROUP],
104 AS_HELP_STRING([--with-group=GROUP],
105 [group allowed to execute setuid-root programs (REQUIRED)]),
108 "" | y | ye | yes | n | no)
109 AC_MSG_ERROR([*** You must supply an argument to the --with-group option.])
111 *) SETUID_GROUP="$withval"
115 AMANDA_MSG_WARN([[no group specified (--with-group) -- using 'backup']])
119 AC_SUBST(SETUID_GROUP)
128 # Handle the --with-owner option, which sets the userid the 'make install' process
129 # will use. Substitutes and defines BINARY_OWNER.
131 AC_DEFUN([AMANDA_WITH_OWNER],
133 AC_REQUIRE([AMANDA_WITH_USER])
135 AS_HELP_STRING([--with-owner=USER]
136 [force ownership of installed files to USER (default same as --with-user)]),
139 "" | y | ye | yes | n | no)
140 AC_MSG_ERROR([*** You must supply an argument to the --with-owner option.])
142 *) BINARY_OWNER="$withval"
146 BINARY_OWNER="$CLIENT_LOGIN"
149 AC_DEFINE_UNQUOTED(BINARY_OWNER,"$BINARY_OWNER",
150 [Define as the user who owns installed binaries. ])
151 AC_SUBST(BINARY_OWNER)
156 # AMANDA_WITH_SINGLE_USERID
160 # Check if this system is one on which clients should be built setuid,
161 # Sets up AM_CONDITIONAL/define WANT_SETUID_CLIENT and defines
162 # SINGLE_USERID if either the system requires it or the user specified it.
164 AC_DEFUN([AMANDA_WITH_SINGLE_USERID],
166 SINGLE_USERID=${SINGLE_USERID:-no}
167 WANT_SETUID_CLIENT=${WANT_SETUID_CLIENT:-true}
169 AC_ARG_WITH(single-userid,
170 AS_HELP_STRING([--with-single-userid]
171 [force amanda to run as a single userid (for testing)]),
172 [ SINGLE_USERID=$withval ])
176 WANT_SETUID_CLIENT=false
181 if test x"$WANT_SETUID_CLIENT" = x"true"; then
182 AC_DEFINE(WANT_SETUID_CLIENT,1,
183 [Define if clients should be built setuid-root])
185 AM_CONDITIONAL(WANT_SETUID_CLIENT, test x"$WANT_SETUID_CLIENT" = x"true")
187 if test x"$SINGLE_USERID" = x"yes"; then
188 AC_DEFINE(SINGLE_USERID, 1,
189 [Define if all of Amanda will run as a single userid (e.g., on Cygwin or for installchecks)])