guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Fix compiling on CentOS 7.


From: Mathieu Lirzin
Subject: Re: [PATCH] Fix compiling on CentOS 7.
Date: Sat, 27 Aug 2016 15:06:26 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Hi

Roel Janssen <address@hidden> writes:

> Alex Kost writes:
>
>> Tomáš Čech (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 directory
>>>>> 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=c0d2e7b197a3c511eb1bf60b61ee6fdc673e36f4
>
> 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

-- 
Mathieu Lirzin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]