[Swan-dev] what should "make ; sudo make install" do (again)
Andrew Cagney
andrew.cagney at gmail.com
Fri May 15 20:06:08 EEST 2015
[inlibne]
On 14 May 2015 at 15:20, D. Hugh Redelmeier <hugh at mimosa.com> wrote:
> | From: Andrew Cagney <andrew.cagney at gmail.com>
>
> | First, as discussed on IRC, it turns out that the sequence:
> |
> | make programs ; sudo make install
> |
> | is very much entrenched as a standard way to get everything installed.
> | Consequently, to avoid having "make install" build stuff, "make programs"
> | will need to build everything - it can't just build programs.
> Effectively
> | "programs" and "all" are synonyms.
>
> Ouch.
>
> I frequently do "make programs" to build JUST userland.
>
>
Just to clarify, up until a few days ago "make programs install"
built/installed:
- binaries
- scripts
- configs
- just docs (aka man pages) install worked - if xmlto was in your path the
build tended to die; and it if wasn't, good luck is what let things continue
As proposed, I changed things, and fixed some bugs, so that "make all
install" did all the above (including docs) and worked; and then set up
"make programs install-programs" to do binaries, scripts and configs but
not docs/manpages.
Unfortunatly, it turned out that "make programs; sudo make install" was
more entrenched than I realized.
> It seems really dumb to make "make programs" do something other than make
> programs.
>
See above, that initial mistake was made long ago.
My suggestion here is to remove "programs" from any and all documentation;
but accept it as an undocumented alias for building all of userland
including manuals.
> Surely
> make ; sudo make install
> or
> make all ; sudo make install
>
I personally think "all" should build modules as well; but that seems to
get messy. The argument for not having "make" default to building
everything including modules is that the user needs to select which modules
to build; hence "make" prints a help message and lets the user decide.
> would be the right way to do what people misuse
> make programs ; sudo make install
> to do.
>
The other complication is that we need some short cuts (aka targets) to:
- build/install all but documentation - linux cross compiles apparently
can't deal with documentation
- build/install just binaries and scripts - to speed up test builds (this
one would be less of an issue if the test-build process didn't rm -rf
OBJDIR)
Andrew
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.libreswan.org/pipermail/swan-dev/attachments/20150515/10e3fa40/attachment.html>
More information about the Swan-dev
mailing list