mkdb: track incomplete docs in tmpl-free build too. Fixes 568711
[gtk-doc.git] / gtkdocize.in
blob312fcdb36cf4b3a5bdc2954aa751c5653f905802
1 #!/bin/sh
3 progname=`echo "$0" | sed 's%^.*/%%'`
5 PROGRAM=gtkdocize
6 PACKAGE=@PACKAGE@
7 VERSION=@VERSION@
9 prefix=@prefix@
10 datarootdir=@datarootdir@
11 datadir=@datadir@
13 # options
14 docdir=.
15 copy=no
16 makefile=gtk-doc.make
17 flavour=legacy
19 # mini help
20 usage="\
21 usage: $progname [ --copy ] [ --docdir DIR ] [ --flavour {legacy|no-tmpl} ]"
23 while test $# -gt 0; do
24 case "$1" in
25 --help)
26 echo "$usage"
27 exit 0 ;;
28 --version)
29 echo "$PROGRAM ($PACKAGE) $VERSION"
30 exit 0 ;;
31 --copy)
32 copy=yes
33 shift ;;
34 --docdir)
35 shift
36 docdir="$1"
37 shift ;;
38 --docdir=*)
39 docdir=`expr "X$1" : '[^=]*=\(.*\)'`
40 shift ;;
41 --flavour)
42 shift
43 flavour="$1"
44 shift ;;
45 --flavour=*)
46 flavour=`expr "X$1" : '[^=]*=\(.*\)'`
47 shift ;;
48 -*)
49 echo "$progname: unrecognised option '$1'" 1>&2
50 echo "$usage" 1>&2
51 exit 1 ;;
53 echo "$progname: too many arguments" 1>&2
54 echo "$usage" 1>&2
55 exit 1 ;;
56 esac
57 done
59 case "$flavour" in
60 legacy)
62 no-tmpl)
63 makefile=gtk-doc.notmpl.make
66 echo "$progname: invalid value for --flavour" 1>&2
67 echo "$usage" 1>&2
68 exit 1 ;;
69 esac
71 if test -f configure.ac; then
72 configure=configure.ac
73 elif test -f configure.in; then
74 configure=configure.in
75 else
76 echo "$progname: neither configure.ac nor configure.in exist" 1>&2
77 exit 1
80 if grep '^GTK_DOC_CHECK' $configure >/dev/null 2>&1; then
82 else
83 echo "$progname: GTK_DOC_CHECK not called in $configure" 1>&2
84 exit 1
87 # If the AC_CONFIG_MACRO_DIR() macro is used, copy gtk-doc.m4 from our
88 # prefix to that directory. This makes sure that the M4 macro used
89 # matches the the automake fragment.
90 # If AC_CONFIG_MACRO_DIR is not used, the macro won't be copied, and
91 # the correct flags must be passed to aclocal for it to find the macro.
92 m4dir=`cat "$configure" | grep '^AC_CONFIG_MACRO_DIR' | sed -n -e 's/AC_CONFIG_MACRO_DIR(\([^()]*\))/\1/p' | sed -e 's/^\[\(.*\)\]$/\1/' | sed -e 1q`
93 if test -n "$m4dir"; then
94 rm -f $m4dir/gtk-doc.m4
95 if test "$copy" = yes; then
96 cp -f $datadir/aclocal/gtk-doc.m4 $m4dir/ ||
97 exit 1
98 else
99 ln -sf $datadir/aclocal/gtk-doc.m4 $m4dir/ ||
100 cp -f $datadir/aclocal/gtk-doc.m4 $m4dir/ ||
101 exit 1
105 rm -f $docdir/gtk-doc.make
106 if test "$copy" = yes; then
107 cp -f $datadir/gtk-doc/data/$makefile $docdir/gtk-doc.make ||
108 exit 1
109 else
110 ln -sf $datadir/gtk-doc/data/$makefile $docdir/gtk-doc.make ||
111 cp -f $datadir/gtk-doc/data/$makefile $docdir/gtk-doc.make ||
112 exit 1