make cleandocs issue: rm -rf /output when obj not defined

5 messages, 4 authors, 2021-08-17 · open the first message on its own page

make cleandocs issue: rm -rf /output when obj not defined

From: pioneer695 <hidden>
Date: 2021-07-24 19:56:06

In an attempt to get some readable documentation I cloned the git repository
to check how the PDF format is.

Entered Documentation and proceeded with:

	make pdfdocs

which failed, so to start fresh, my thought was that:

	make cleandocs

would be the next step before anything else. But, this resulted in:

	rm -rf /output

as $(obj) for some reason was empty.

Makefile for Documentation has:

	BUILDDIR      = $(obj)/output

	cleandocs:
		$(Q)rm -rf $(BUILDDIR)


This should (at least?!) be:

	BUILDDIR      = ./$(obj)/output
or:
	$(Q)rm -rf ./$(BUILDDIR)


Best regards,

Re: make cleandocs issue: rm -rf /output when obj not defined

From: Jonathan Corbet <corbet@lwn.net>
Date: 2021-07-25 20:11:51

pioneer695 [off-list ref] writes:
In an attempt to get some readable documentation I cloned the git repository
to check how the PDF format is.

Entered Documentation and proceeded with:

	make pdfdocs

which failed, so to start fresh, my thought was that:

	make cleandocs

would be the next step before anything else. But, this resulted in:

	rm -rf /output
That's not good...
as $(obj) for some reason was empty.
*This* would appear to be the real problem.  If you could do some
digging to figure out why that happened, I suspect that would be
useful. 
Makefile for Documentation has:

	BUILDDIR      = $(obj)/output

	cleandocs:
		$(Q)rm -rf $(BUILDDIR)


This should (at least?!) be:

	BUILDDIR      = ./$(obj)/output
or:
	$(Q)rm -rf ./$(BUILDDIR)
These would break builds for a lot of people and are not the right
solution.

Thanks for the report,

jon

Re: make cleandocs issue: rm -rf /output when obj not defined

From: Randy Dunlap <rdunlap@infradead.org>
Date: 2021-07-25 20:53:35

On 7/25/21 1:11 PM, Jonathan Corbet wrote:
pioneer695 [off-list ref] writes:
quoted
In an attempt to get some readable documentation I cloned the git repository
to check how the PDF format is.

Entered Documentation and proceeded with:

	make pdfdocs
Hi,
I'm curious about this part above. Are you saying that you did:

cd Documentation
make pdfdocs

I've never tried that and don't expect it to be done that way.

I do (from the top of the kernel source tree):

make pdfdocs
or
make htmldocs

with no problems, other than I may not have all of the latex
tools installed.
quoted
which failed, so to start fresh, my thought was that:

	make cleandocs

would be the next step before anything else. But, this resulted in:

	rm -rf /output
That's not good...
quoted
as $(obj) for some reason was empty.
*This* would appear to be the real problem.  If you could do some
digging to figure out why that happened, I suspect that would be
useful. 
quoted
Makefile for Documentation has:

	BUILDDIR      = $(obj)/output

	cleandocs:
		$(Q)rm -rf $(BUILDDIR)


This should (at least?!) be:

	BUILDDIR      = ./$(obj)/output
or:
	$(Q)rm -rf ./$(BUILDDIR)
These would break builds for a lot of people and are not the right
solution.

-- 
~Randy

Re: make cleandocs issue: rm -rf /output when obj not defined

From: Matthew Wilcox <willy@infradead.org>
Date: 2021-07-27 11:28:12

On Sun, Jul 25, 2021 at 01:53:30PM -0700, Randy Dunlap wrote:
On 7/25/21 1:11 PM, Jonathan Corbet wrote:
quoted
pioneer695 [off-list ref] writes:
quoted
In an attempt to get some readable documentation I cloned the git repository
to check how the PDF format is.

Entered Documentation and proceeded with:

	make pdfdocs
Hi,
I'm curious about this part above. Are you saying that you did:

cd Documentation
make pdfdocs

I've never tried that and don't expect it to be done that way.

I do (from the top of the kernel source tree):

make pdfdocs
or
make htmldocs

with no problems, other than I may not have all of the latex
tools installed.
Perhaps we should rename Documentation/Makefile to Documentation/Kbuild
to prevent this confusion?

Re: make cleandocs issue: rm -rf /output when obj not defined

From: pioneer695 <hidden>
Date: 2021-08-17 21:23:55

Hi,

Sorry for a rather delayed feedback. Got cut of due to various circumstances in real life. Added a comment below.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐

On Sunday, July 25th, 2021 at 10:53 PM, Randy Dunlap [off-list ref] wrote:
On 7/25/21 1:11 PM, Jonathan Corbet wrote:
quoted
pioneer695 pioneer695@protonmail.com writes:
quoted
In an attempt to get some readable documentation I cloned the git repository

to check how the PDF format is.

Entered Documentation and proceeded with:

make pdfdocs
Hi,

I'm curious about this part above. Are you saying that you did:

cd Documentation

make pdfdocs

I've never tried that and don't expect it to be done that way.

I do (from the top of the kernel source tree):

make pdfdocs

or

make htmldocs

with no problems, other than I may not have all of the latex

tools installed.
Yes. This is correct. After realizing my errors building from root gave no issues. I thought the Documentation was a separate make tree from the rest.

IF it could be an issue, beyond my stupidity, a simple README that say *build this from root* or similar should suffice in my opinion. I always look for README, COMPILING or the like (but that's me).

~pioneer695
quoted
quoted
which failed, so to start fresh, my thought was that:

make cleandocs

would be the next step before anything else. But, this resulted in:

rm -rf /output
That's not good...
quoted
as $(obj) for some reason was empty.
This would appear to be the real problem. If you could do some

digging to figure out why that happened, I suspect that would be

useful.
quoted
Makefile for Documentation has:

BUILDDIR = $(obj)/output

cleandocs:

$(Q)rm -rf $(BUILDDIR)

This should (at least?!) be:

BUILDDIR = ./$(obj)/output

or:

$(Q)rm -rf ./$(BUILDDIR)
These would break builds for a lot of people and are not the right

solution.
--

~Randy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help