Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build phase 7: cleanup #236

Closed
wants to merge 6 commits into from
Closed

Conversation

pspacek
Copy link
Contributor

@pspacek pspacek commented Nov 11, 2016

Depends on PR #233.

  • Clean-up ancient leftovers and clean minor bugs here and there.
  • Support --enable-silent-rules and V=0 variable for make to make the build less verbose and warnings more visible.

@@ -30,26 +27,22 @@ AM_CPPFLAGS = \
$(SASL_CFLAGS) \
$(POPT_CFLAGS) \
$(WARN_CFLAGS) \
$(INI_CFLAGS) \
$(NULL)
$(INI_CFLAGS)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reason why is $(NULL) is at the end of list is simpler diff when adding new entries.

If there is not NULL at the end and you want to add new entry there then diff will contain 1 removed line + 2 added lines

If there is NULL at the end and you want to add new entry there then diff will contain just 1 added line.

@lslebodn
Copy link
Contributor

You should the opposite of the last patch "Build: clean-up spurious NULL variables from Makefile.am files". The NULL should be added to each list.

NACK to the last patch. It does not simplify anything and it makes diff more complicated for adding new entries

@@ -2,13 +2,10 @@

AUTOMAKE_OPTIONS = 1.7 subdir-objects

NULL =

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These lines can be removed because NULL needn't be defined.

@pspacek
Copy link
Contributor Author

pspacek commented Nov 14, 2016

Hi Lukas. Given there is no technical justification to have it I'm going to remove these. Simple is better than complex.

@lslebodn
Copy link
Contributor

Hi Lukas. Given there is no technical justification to have it I'm going to remove these. Simple is better than complex.
I am sorry I do not agree. The technical justification was explained in previous comments few time. The $(NULL) at the end of list makes patches much simpler and easier to read. The purpose of refactoring is make code simpler but also easier to maintain/review

Copy link
Contributor

@lslebodn lslebodn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The last patch should either add $(NULL) to the end of each list or it should be dropped from this patch set.

# run configure with the same parameters as RPM build
# this makes it easy to tweak files locally and use make install
test ! -f "Makefile" && ./configure --enable-silent-rules \
--host=$(rpm -E %{_host}) \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NACK

rpm should be an optional dependency to support platforms without rpm command.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tiran can you explain how a script with the name makerpms.sh cannot be rpm specific?

@pspacek
Copy link
Contributor Author

pspacek commented Nov 15, 2016

@lslebodn I've dropped the controversial patch which removes NULLs to allow you to send PR which adds it everywhere as you proposed. I'm going to wait till deadline at end of this working week. If your PR is not revied by then I'm going to push the removal so things are at least consistent.

@lslebodn
Copy link
Contributor

Thank you very much for removing problematic patch. Do not forget to remove it from "Build phase 8" :-) as well

A) there are few conflicts => patch need to be rebased

B) I do not think that @tiran objection about rpm in makerpms.sh is valid but he should reply.

Otherwise ACK after rebase
Nice work and thank you very much for it.

BTW is there a plan to have "make dictcheck" functional?

Setuptools will print only warnings. The option has to be used before
setuptools command specification, otherwise it will not apply to sub-commands.

https://fedorahosted.org/freeipa/ticket/6418
Build called from makerpms.sh is not verbose by default anymore.
It still prints all directories and files it builds but the long
command lines are hidden by default.

It has the advantage that compiler and other warnings are visible to
developers right away. If you need to debug something,
use --disable-silent-rules to override the default
(or call configure manually).

https://fedorahosted.org/freeipa/ticket/6418
Automake manual section 13 What Gets Cleaned says that make maintainer-clean
should not remove files necessary for subsequent runs of ./configure.

It practically means that all usage of MAINTAINERCLEANFILES were incorrect
so I've removed them.

https://fedorahosted.org/freeipa/ticket/6418
This allows us to simply use makerpms.sh to configure the build tree,
install RPMs to configure system for the first time and then use make install
for rapid devel/test cycles.

Configuration parameteres were taken from rpm-4.13.0-0.rc1.27.fc24.x86_64.

https://fedorahosted.org/freeipa/ticket/6418
Some of .less files included by ipa.less were not listed in the
Makefile.am so some changes might not trigger rebuild.

https://fedorahosted.org/freeipa/ticket/6418
@pspacek
Copy link
Contributor Author

pspacek commented Nov 15, 2016

Rebased.

@pspacek
Copy link
Contributor Author

pspacek commented Nov 15, 2016

@lslebodn There is currently no plan to support distcheck: Python setuptools do not support VPATH builds as AFAIK it is impossible to do that without patching setuptools heavily.

@pspacek
Copy link
Contributor Author

pspacek commented Nov 15, 2016

ACKing on behalf of Lukas.

@pspacek pspacek added the ack Pull Request approved, can be merged label Nov 15, 2016
@MartinBasti MartinBasti added the pushed Pull Request has already been pushed label Nov 16, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ack Pull Request approved, can be merged pushed Pull Request has already been pushed
Projects
None yet
4 participants