Received: from smtp2.stanford.edu (smtp2.Stanford.EDU [171.67.20.25]) by krbdev.mit.edu (8.9.3p2) with ESMTP id VAA11853; Mon, 19 Jun 2006 21:58:31 -0400 (EDT) Received: from smtp2.stanford.edu (localhost.localdomain [127.0.0.1]) by localhost (Postfix) with SMTP id 7940F4BEEF for ; Mon, 19 Jun 2006 18:58:30 -0700 (PDT) Received: from windlord.stanford.edu (windlord.Stanford.EDU [171.64.19.147]) by smtp2.stanford.edu (Postfix) with ESMTP id 5B5634BE27 for ; Mon, 19 Jun 2006 18:58:30 -0700 (PDT) Received: by windlord.stanford.edu (Postfix, from userid 1000) id 514F3E7945; Mon, 19 Jun 2006 18:58:30 -0700 (PDT) From: Russ Allbery To: rt@krbdev.mit.edu Subject: Re: [krbdev.mit.edu #3901] build fails using Autoconf 2.59e (2.60 to be) In-Reply-To: (Ken Raeburn via's message of "Mon, 19 Jun 2006 19:30:16 -0400 (EDT)") Organization: The Eyrie References: Date: Mon, 19 Jun 2006 18:58:30 -0700 Message-Id: <87wtbck2pl.fsf@windlord.stanford.edu> User-Agent: Gnus/5.110004 (No Gnus v0.4) XEmacs/21.4.19 (linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii RT-Send-Cc: X-RT-Original-Encoding: us-ascii Content-Length: 1420 Ken Raeburn via RT writes: > On Jun 19, 2006, at 19:21, Russ Allbery via RT wrote: >> making all in util/support... >> make[2]: Entering directory `/home/eagle/dvl/krb5/src/util/support' >> make[2]: *** No rule to make target `all-liblinks', needed by >> `all-unix'. Stop. > Does "all-liblinks:" show up in that makefile? No, and investigating a little further it looks like the problem may be that @lib_frag@ and @libobj_frag@ are not being substituted by configure when using Autoconf 2.59e. Looking at the generated configure script, Autoconf 2.59e generates the following sed logic: /^[ ]*@lib_frag@[ ]*$/{ r $lib_frag d } So, in other words, it's only doing AC_SUBST_FILE substitutions if the substitution (@lib_frag@ in this case) appears at the beginning of the line preceeded only by whitespace. util/support/Makefile.in has: # @lib_frag@ # @libobj_frag@ and therefore it loses. It looks like this is an intentional change. From the Autoconf NEWS file: ** AC_SUBST_FILE The substitution now occurs only when @variable@ is on a line by itself, optionally surrounded by spaces and tabs. The whole line is replaced. I think just removing the # markers would be a backward-compatible change. It looks like many Makefile.in files in the tree are affected. -- Russ Allbery (rra@stanford.edu)