[
https://issues.apache.org/jira/browse/MESOS-2537?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14382422#comment-14382422
]
James Peach edited comment on MESOS-2537 at 3/26/15 6:43 PM:
-------------------------------------------------------------
Thanks for that explanation [~cmaloney]. I wondered why the two options were
linked.
I hoped to post the patch for review sooner, but it is taking longer than I
expected. I've converted all the {{\--enable-foo}} options to work correctly
with their {{\--disable-foo}} variants. People familiar with autotools
conventions expect this to work, and it seems fairly confusing that
{{\--disable-foo}} will actually cause foo to be enabled in many cases.
I refrained from decoupling {{\--enable-optimize}} and {{\--enable-debug}}
though my personal preference would be to decouple them and allow them to be
specified independently.
I thought that I had made the change entirely compatible, but on consideration,
it's not possible to express the first supported combination you listed. This
is an interesting combination because you are not in debug mode not in release
mode (ie. neither {{DEBUG}} nor {{OPTIMIZE}} will be defined in the source).
FWIW, this was triggered by a weird build problem I had on CentOS7 (gcc
4.8.2-16), where "\-O2 \-g" would cause {{src/slave/paths.cpp}} generate an
empty object file :-/
was (Author: jamespeach):
Thanks for that explanation [~cmaloney]. I wondered why the two options were
linked.
I hoped to post the patch for review sooner, but it is taking longer than I
expected. I've converted all the {{\--enable-foo}} options to work correctly
with their {{\--disable-foo}} variants. People familiar with autotools
conventions expect this to work, and it seems fairly confusing that
{{\--disable-foo}} will actually cause foo to be enabled in many cases.
I refrained from decoupling {{\--enable-optimize}} and {{\--enable-debug}}
though my personal preference would be to decouple them and allow them to be
specified independently.
I thought that I had made the change entirely compatible, but on consideration,
it's not possible to express the first supported combination you listed. This
is an interesting combination because you are not in debug mode not in release
mode (ie. neither {{DEBUG}} nor {{OPTIMIZE}} will be defined in the source).
FWIW, this was triggered by a weird build problem I had on CentOS7 (gcc
4.8.2-16), where "\-O2 -g" would cause {{src/slave/paths.cpp}} generate an
empty object file :-/
> AC_ARG_ENABLED checks are broken
> --------------------------------
>
> Key: MESOS-2537
> URL: https://issues.apache.org/jira/browse/MESOS-2537
> Project: Mesos
> Issue Type: Bug
> Components: build
> Reporter: James Peach
> Assignee: James Peach
> Priority: Minor
>
> In a number of places, the Mesos configure script passes "$foo=yes" to the
> 2nd argument of {{AC_ARG_ENABLED}}. However, the 2nd argument is invoked when
> the option is provided in any form, not just when the {{\--enable-foo}} form
> is used. One result of this is that {{\--disable-optimize}} doesn't work.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)