| 1 | # Copyright 1999-2008 Gentoo Foundation |
1 | # Copyright 1999-2010 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/autotools.eclass,v 1.90 2010/01/15 03:19:03 vapier Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/autotools.eclass,v 1.91 2010/01/17 01:09:04 vapier Exp $ |
| 4 | |
4 | |
| 5 | # @ECLASS: autotools.eclass |
5 | # @ECLASS: autotools.eclass |
| 6 | # @MAINTAINER: |
6 | # @MAINTAINER: |
| 7 | # base-system@gentoo.org |
7 | # base-system@gentoo.org |
| 8 | # @BLURB: Regenerates auto* build scripts |
8 | # @BLURB: Regenerates auto* build scripts |
| … | |
… | |
| 78 | # the directory with include files can be specified with AT_M4DIR variable. |
78 | # the directory with include files can be specified with AT_M4DIR variable. |
| 79 | # |
79 | # |
| 80 | # Should do a full autoreconf - normally what most people will be interested in. |
80 | # Should do a full autoreconf - normally what most people will be interested in. |
| 81 | # Also should handle additional directories specified by AC_CONFIG_SUBDIRS. |
81 | # Also should handle additional directories specified by AC_CONFIG_SUBDIRS. |
| 82 | eautoreconf() { |
82 | eautoreconf() { |
| 83 | local pwd=$(pwd) x auxdir g= |
83 | local x auxdir g |
| 84 | |
84 | |
| 85 | if [[ -z ${AT_NO_RECURSIVE} ]]; then |
85 | if [[ -z ${AT_NO_RECURSIVE} ]]; then |
| 86 | # Take care of subdirs |
86 | # Take care of subdirs |
| 87 | for x in $(autotools_get_subdirs); do |
87 | for x in $(autotools_get_subdirs); do |
| 88 | if [[ -d ${x} ]] ; then |
88 | if [[ -d ${x} ]] ; then |
| 89 | cd "${x}" |
89 | pushd "${x}" >/dev/null |
| 90 | AT_NOELIBTOOLIZE="yes" eautoreconf |
90 | AT_NOELIBTOOLIZE="yes" eautoreconf |
| 91 | cd "${pwd}" |
91 | popd >/dev/null |
| 92 | fi |
92 | fi |
| 93 | done |
93 | done |
| 94 | fi |
94 | fi |
| 95 | |
95 | |
| 96 | auxdir=$(autotools_get_auxdir) |
96 | auxdir=$(autotools_get_auxdir) |
| 97 | |
97 | |
| 98 | einfo "Running eautoreconf in '$(pwd)' ..." |
98 | einfo "Running eautoreconf in '${PWD}' ..." |
| 99 | [[ -n ${auxdir} ]] && mkdir -p ${auxdir} |
99 | [[ -n ${auxdir} ]] && mkdir -p ${auxdir} |
| 100 | eaclocal |
100 | eaclocal |
| 101 | [[ ${CHOST} == *-darwin* ]] && g=g |
101 | [[ ${CHOST} == *-darwin* ]] && g=g |
| 102 | if ${LIBTOOLIZE:-${g}libtoolize} -n --install >& /dev/null ; then |
102 | if ${LIBTOOLIZE:-${g}libtoolize} -n --install >& /dev/null ; then |
| 103 | _elibtoolize --copy --force --install |
103 | _elibtoolize --copy --force --install |
| … | |
… | |
| 110 | |
110 | |
| 111 | [[ ${AT_NOELIBTOOLIZE} == "yes" ]] && return 0 |
111 | [[ ${AT_NOELIBTOOLIZE} == "yes" ]] && return 0 |
| 112 | |
112 | |
| 113 | # Call it here to prevent failures due to elibtoolize called _before_ |
113 | # Call it here to prevent failures due to elibtoolize called _before_ |
| 114 | # eautoreconf. We set $S because elibtoolize runs on that #265319 |
114 | # eautoreconf. We set $S because elibtoolize runs on that #265319 |
| 115 | S=${pwd} elibtoolize |
115 | S=${PWD} elibtoolize |
| 116 | |
116 | |
| 117 | return 0 |
117 | return 0 |
| 118 | } |
118 | } |
| 119 | |
119 | |
| 120 | # @FUNCTION: eaclocal |
120 | # @FUNCTION: eaclocal |
| … | |
… | |
| 186 | # @DESCRIPTION: |
186 | # @DESCRIPTION: |
| 187 | # Runs autoconf. |
187 | # Runs autoconf. |
| 188 | eautoconf() { |
188 | eautoconf() { |
| 189 | if [[ ! -f configure.ac && ! -f configure.in ]] ; then |
189 | if [[ ! -f configure.ac && ! -f configure.in ]] ; then |
| 190 | echo |
190 | echo |
| 191 | eerror "No configure.{ac,in} present in '$(pwd | sed -e 's:.*/::')'!" |
191 | eerror "No configure.{ac,in} present in '${PWD}'!" |
| 192 | echo |
192 | echo |
| 193 | die "No configure.{ac,in} present!" |
193 | die "No configure.{ac,in} present!" |
| 194 | fi |
194 | fi |
| 195 | |
195 | |
| 196 | autotools_run_tool autoconf "$@" |
196 | autotools_run_tool autoconf "$@" |