[FFmpeg-devel] [PATCH] configure: Clean up the documentation building mechanism

Stefano Sabatini stefasab at gmail.com
Thu Dec 27 16:08:04 CET 2012


On date Tuesday 2012-12-18 04:05:36 -0300, jamal encoded:
> Hello.
> 
> The attached patch removes some superfluous variables from the configure 
> script and makes the necessary changes so the checks can work using only
> the remaining variables.
> 
> Regards.

> From 89d0fee1e83282862231819df2da2dfa55297c46 Mon Sep 17 00:00:00 2001
> From: James Almer <jamrial at gmail.com>
> Date: Tue, 18 Dec 2012 03:35:09 -0300
> Subject: [PATCH] configure: Clean up the documentation building mechanism
> 
> The variables texi2html, pod2man and makeinfo became superfluous
> with commit c3da2c19.
> Podpages, manpages, htmlpages and txtpages are enough.
> 
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
>  configure | 25 +++++++++++--------------
>  1 file changed, 11 insertions(+), 14 deletions(-)
> 
> diff --git a/configure b/configure
> index a50d073..e5cd023 100755
> --- a/configure
> +++ b/configure
> @@ -1396,7 +1396,6 @@ HAVE_LIST="
>      lzo1x_999_compress
>      machine_ioctl_bt848_h
>      machine_ioctl_meteor_h
> -    makeinfo
>      malloc_h
>      MapViewOfFile
>      memalign
> @@ -1408,7 +1407,6 @@ HAVE_LIST="
>      nanosleep
>      PeekNamedPipe
>      perl
> -    pod2man
>      poll_h
>      posix_memalign
>      pthread_cancel
> @@ -1448,7 +1446,6 @@ HAVE_LIST="
>      sys_time_h
>      sys_videoio_h
>      termios_h
> -    texi2html
>      threads
>      unistd_h
>      usleep
> @@ -2020,11 +2017,10 @@ ffserver_deps="avformat ffm_muxer fork rtp_protocol rtsp_demuxer"
>  ffserver_extralibs='$ldl'
>  
>  # documentation
> -podpages_deps="perl"
> -manpages_deps="perl pod2man"
> -htmlpages_deps="texi2html"
> -txtpages_deps="makeinfo"
> -doc_deps_any="manpages htmlpages podpages txtpages"
> +podpages_deps="perl doc"
> +manpages_deps="podpages"
> +htmlpages_deps="perl doc"
> +txtpages_deps="doc"
>  
>  # default parameters
>  
> @@ -3907,10 +3903,10 @@ else
>  fi
>  enabled sdl && add_cflags $sdl_cflags && add_extralibs $sdl_libs
>  
> -texi2html --help 2> /dev/null | grep -q 'init-file' && enable texi2html || disable texi2html
> -makeinfo --version > /dev/null 2>&1 && enable makeinfo  || disable makeinfo
>  perl --version > /dev/null 2>&1 && enable perl || disable perl
> -pod2man --help > /dev/null 2>&1 && enable pod2man || disable pod2man
> +disabled htmlpages || texi2html --help   2> /dev/null | grep -q 'init-file' || disable htmlpages
> +disabled txtpages  || makeinfo  --version > /dev/null 2>&1 || disable txtpages
> +disabled manpages  || pod2man   --help    > /dev/null 2>&1 || disable manpages
>  rsync --help 2> /dev/null | grep -q 'contimeout' && enable rsync_contimeout || disable rsync_contimeout
>  
>  check_header linux/fb.h
> @@ -4278,10 +4274,11 @@ echo "openal enabled            ${openal-no}"
>  echo "openssl enabled           ${openssl-no}"
>  echo "zlib enabled              ${zlib-no}"
>  echo "bzlib enabled             ${bzlib-no}"
> -echo "texi2html enabled         ${texi2html-no}"
>  echo "perl enabled              ${perl-no}"
> -echo "pod2man enabled           ${pod2man-no}"
> -echo "makeinfo enabled          ${makeinfo-no}"
> +echo "HTML pages enabled        ${htmlpages-no}"
> +echo "POD pages enabled         ${podpages-no}"
> +echo "MAN pages enabled         ${manpages-no}"
> +echo "TXT pages enabled         ${txtpages-no}"
>  test -n "$random_seed" &&
>      echo "random seed               ${random_seed}"

My gut feeling is that I prefer the older version, because it makes
clear the dependencies between the presence of a program and the
generated objects. Also, with the intermediary variables it is in
theory possible to expose why a document was not produced
(e.g. 'manpages' was enabled but required 'pod2man' was disabled).
-- 
FFmpeg = Fast Freak Multimedia Portable Elastic Genius


More information about the ffmpeg-devel mailing list