From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mathieu Lirzin Subject: Re: [PATCH] Fix compiling on CentOS 7. Date: Sat, 27 Aug 2016 15:06:26 +0200 Message-ID: <87oa4euzsd.fsf@gnu.org> References: <87d1kvpazv.fsf@gnu.org> <20160827065756.kblwxq3gmg63eug2@venom> <87wpj2a9m9.fsf@gmail.com> <87lgziy4qn.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:33451) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bddJk-0008Hg-Ji for guix-devel@gnu.org; Sat, 27 Aug 2016 09:06:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bddJf-0002xm-HH for guix-devel@gnu.org; Sat, 27 Aug 2016 09:06:35 -0400 In-Reply-To: <87lgziy4qn.fsf@gnu.org> (Roel Janssen's message of "Sat, 27 Aug 2016 10:51:12 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Roel Janssen Cc: guix-devel@gnu.org, Alex Kost Hi Roel Janssen writes: > Alex Kost writes: > >> Tom=C3=A1=C5=A1 =C4=8Cech (2016-08-27 09:57 +0300) wrote: >> >>> On Fri, Aug 26, 2016 at 09:48:36PM +0200, Roel Janssen wrote: >>>>Dear Guix, >>>> >>>>Due to an old Automake version (1.13), running the `./configure' phase = on >>>>CentOS 7 fails with: >>>> >>>>> autoreconf: running: automake --add-missing --copy --force-missing >>>>> configure.ac:21: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, = and its use is discouraged. >>>>> configure.ac:21: You should use the Autoconf-provided 'AC_PROG_MKDIR_= P' macro instead, >>>>> configure.ac:21: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your = Makefile.am files. >>>>> Makefile.am:422: warning: AM_GNU_GETTEXT used but 'po' not in SUBDIRS >>>>> automake: error: cannot open < ./%D%/guix.texi: No such file or direc= tory >>>>> autoreconf: automake failed with exit status: 1 >>>> >>>>(It does not replace %D% with the appropriate directory..) >>>> >>>>The attached patch replaces each instance of %D%, which I believe stands >>>>for the current subdirectory from the project root, with the appropriate >>>>directory. With these changes, I've been able to compile GNU Guix on >>>>CentOS 7. >>>> >>>>I am not sure how this change impacts custom configure options, so I >>>>would like to ask someone with more Automake knowledge and experience to >>>>elaborate on the possible downsides of applying this patch. >>>> >>>>If this change is acceptable to the project, I will update the commit >>>>message to a more detailed and conforming message. Suggestions are >>>>welcome here though. >>>> >>>>What do you think about making Guix compilable on this "stable" >>>>distribution? :-) >>> >>> I'd prefer to keep this patch in CentOS (or similar distribution with >>> outdated software) as distro specific. I can assume that CentOS 8 >>> won't need it and you can just drop it for newer releases. >> >> I also think this patch should stay on the CentOS side. Roel, what you >> suggest is a revert of commit c0d2e7b: >> >> http://git.savannah.gnu.org/cgit/guix.git/commit/?id=3Dc0d2e7b197a3c511e= b1bf60b61ee6fdc673e36f4 > > Ha! I hadn't seen that commit. It is indeed a revert of this commit. > > Let me rephrase my thought: > I don't see any good reason to break compatibility with well established > distributions. And the commit message does not state why a macro is > better than spelling out the relative path. > > Because the above commit shows that we used to be able to compile GNU > Guix without the macro, I am more confident that it is > harmless. Possibly Mathieu can elaborate on the necessity of the > change. :) There is no necessity in that change, it was just introduced because the it can be confusing for some people that the Makefile fragment contains file names relative to the 'top_srcdir' not the actual fragment location. Moreover it has the slight benefit of potentially avoiding some manual modifications when moving files around. IMO supporting the Automake versions distributed in Debian Stable and The last RHEL/CentOS version is desirable and the above feature doesn't worth the breakage. So I am in favor of reverting my commit. I think it would make sense to explicitly state in the manual which version of Autoconf, Automake, etc we are supporting: https://www.gnu.org/software/guix/manual/guix.html#Building-from-Git --=20 Mathieu Lirzin