[RFC][icedtea-web]: Configure browser paths
Omair Majid
omajid at redhat.com
Mon Jun 4 11:49:17 PDT 2012
On 06/04/2012 01:40 PM, Saad Mohammad wrote:
> The patch attached allows the user to configure browser paths and/or
> disable browsers from being used in IcedTea-Web.
I like this idea. Some comments on the implementaiton details in-line below.
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,3 +1,11 @@
> +2012-06-04 Saad Mohammad <smohammad at redhat.com>
> +
> + Allows the user to configure browser paths and/or disable browsers.
> + * acinclude.m4 (IT_FIND_BROWSER): Checks if the browser is set be disabled, or
> + if the path provided is valid. Otherwise, it locates the default path to the browser
> + if found on the system.
> + * configure.ac: Uses IT_FIND_BROWSER to find/configure browsers
> +
> 2012-06-04 Adam Domurad <adomurad at redhat.com>
>
> Added self to AUTHORS.
> diff --git a/acinclude.m4 b/acinclude.m4
> --- a/acinclude.m4
> +++ b/acinclude.m4
> @@ -880,3 +880,29 @@
> AC_MSG_RESULT([${FULL_VERSION}])
> AC_SUBST([FULL_VERSION])
> ])
> +
> +dnl REQUIRED Parameters:
> +dnl [browser name, variable to store path, default terminal command to run browser (if installed)]
Would it be possible to make the last argument optional? So if the
caller leaves out the terminal command, default to the browser name?
> +AC_DEFUN([IT_FIND_BROWSER],
> +[
> + AC_MSG_CHECKING([for $1])
> + AC_ARG_WITH([$1],
> + [AS_HELP_STRING(--with-$1,specify the location of $1 or use 'no' as value to disable browser)],
I think just "specify the location of $1" should be enough. "", "no" and
"yes" are common values that we should accept anyway.
> + [
> + if test "${withval}" = "no" ; then
> + $2=""
Please extends to handle "" (--with-firefox) and "yes"
(--with-firefox=yes) too.
> + elif test -a "${withval}" ; then
"-a" is AND. Perhaps you meant '-n "${withval}"' ? But even better would
be "-e" to ensure that ${withval} exists.
> + $2=${withval}
Please be careful with quoting. If the value of withval includes a
space, this will break.
> + else
> + AC_MSG_FAILURE([invalid location specified to $1: ${withval}])
> + fi
> + ],
Does this message make sense in the context it's printed?
"checking for firefox... " (output from AC_MSG_FAILURE)
Maybe just a "not found"?
> + [
> + $2=$(which $3 2> /dev/null)
This is probably not the best thing to do. "which" is not a posix
standard command, so some machines/shells may not have it at all. It
also breaks with aliases:
$ alias firefox='firefox --sync'
$ FIREFOX="$(which firefox 2>/dev/null)"
$ echo $FIREFOX
alias firefox='firefox --sync' /usr/bin/firefox
> + ])
> + if test -a "${$2}"; then
Another "-a" here.
Omair
More information about the distro-pkg-dev
mailing list