Re: pyc files in source dir with O=

2016-09-19 Thread Jani Nikula
On Sun, 18 Sep 2016, Markus Heiser  wrote:
> Am 07.09.2016 um 15:28 schrieb Jani Nikula :
>
>> On Wed, 07 Sep 2016, Geert Uytterhoeven  wrote:
>>> When running "make htmldocs O=/path/to/somewhere", *.pyc files end up
>>> in the source tree instead of in the build tree:
>>> 
>>>$ git ls-files -o
>>>Documentation/sphinx/kernel-doc.pyc
>>>Documentation/sphinx/kernel_include.pyc
>>>Documentation/sphinx/rstFlatTable.pyc
>>>$
>>> 
>>> This is with v4.8-rc5.
>>> 
>>> With next-20160907, two more files appear:
>>> 
>>>Documentation/sphinx/cdomain.pyc
>>>Documentation/sphinx/load_config.pyc
>> 
>> This should help
>> 
>> diff --git a/Documentation/Makefile.sphinx b/Documentation/Makefile.sphinx
>> index 92deea30b183..a4cba2d1aaf1 100644
>> --- a/Documentation/Makefile.sphinx
>> +++ b/Documentation/Makefile.sphinx
>> @@ -53,6 +53,7 @@ loop_cmd = $(echo-cmd) $(cmd_$(1))
>> 
>> quiet_cmd_sphinx = SPHINX  $@ --> file://$(abspath $(BUILDDIR)/$3/$4);
>>   cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) 
>> $(build)=Documentation/media all;\
>> +PYTHONDONTWRITEBYTECODE=1 \
>>  BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath 
>> $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
>>  $(SPHINXBUILD) \
>>  -b $2 \
>> 
>> 
>> Side note, I'm really sad the Sphinx build has grown so ugly and
>> complicated now. :(
>
> Hi Jani, I feel guilty about this ... 
>
> the "sub-folder" build functionality brought some complexity to
> the cmd_sphinx. In the hope, that it helps a bit, I added a small
> comment on top ...

No amount of documentation will bring back the ability to build the
documentation with pure Sphinx.

BR,
Jani.


>
> # $2 sphinx builder e.g. "html"
> # $3 name of the build subfolder / e.g. "media", used as:
> #* dest folder relative to $(BUILDDIR) and
> #* cache folder relative to $(BUILDDIR)/.doctrees
> # $4 dest subfolder e.g. "man" for man pages at media/man
> # $5 reST source folder relative to $(srctree)/$(src),
> #e.g. "media" for the linux-tv book-set at ./Documentation/media
>
> quiet_cmd_sphinx = SPHINX  $@ --> file://$(abspath $(BUILDDIR)/$3/$4);
>   cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) 
> $(build)=Documentation/media all;\
>   BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath 
> $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
>   $(SPHINXBUILD) \
>   -b $2 \
>   -c $(abspath $(srctree)/$(src)) \
>   -d $(abspath $(BUILDDIR)/.doctrees/$3) \
>   -D version=$(KERNELVERSION) -D release=$(KERNELRELEASE) \
>   $(ALLSPHINXOPTS) \
>   $(abspath $(srctree)/$(src)/$5) \
>   $(abspath $(BUILDDIR)/$3/$4);
>
> But you are right, it is very compact / complicated.
>
> --Markus--
>
>> 
>> BR,
>> Jani.
>> 
>> 
>> -- 
>> Jani Nikula, Intel Open Source Technology Center
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-doc" in
>> the body of a message to majord...@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

-- 
Jani Nikula, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: pyc files in source dir with O=

2016-09-18 Thread Markus Heiser

Am 07.09.2016 um 15:28 schrieb Jani Nikula :

> On Wed, 07 Sep 2016, Geert Uytterhoeven  wrote:
>> When running "make htmldocs O=/path/to/somewhere", *.pyc files end up
>> in the source tree instead of in the build tree:
>> 
>>$ git ls-files -o
>>Documentation/sphinx/kernel-doc.pyc
>>Documentation/sphinx/kernel_include.pyc
>>Documentation/sphinx/rstFlatTable.pyc
>>$
>> 
>> This is with v4.8-rc5.
>> 
>> With next-20160907, two more files appear:
>> 
>>Documentation/sphinx/cdomain.pyc
>>Documentation/sphinx/load_config.pyc
> 
> This should help
> 
> diff --git a/Documentation/Makefile.sphinx b/Documentation/Makefile.sphinx
> index 92deea30b183..a4cba2d1aaf1 100644
> --- a/Documentation/Makefile.sphinx
> +++ b/Documentation/Makefile.sphinx
> @@ -53,6 +53,7 @@ loop_cmd = $(echo-cmd) $(cmd_$(1))
> 
> quiet_cmd_sphinx = SPHINX  $@ --> file://$(abspath $(BUILDDIR)/$3/$4);
>   cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) 
> $(build)=Documentation/media all;\
> + PYTHONDONTWRITEBYTECODE=1 \
>   BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath 
> $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
>   $(SPHINXBUILD) \
>   -b $2 \
> 
> 
> Side note, I'm really sad the Sphinx build has grown so ugly and
> complicated now. :(

Hi Jani, I feel guilty about this ... 

the "sub-folder" build functionality brought some complexity to
the cmd_sphinx. In the hope, that it helps a bit, I added a small
comment on top ...

# $2 sphinx builder e.g. "html"
# $3 name of the build subfolder / e.g. "media", used as:
#* dest folder relative to $(BUILDDIR) and
#* cache folder relative to $(BUILDDIR)/.doctrees
# $4 dest subfolder e.g. "man" for man pages at media/man
# $5 reST source folder relative to $(srctree)/$(src),
#e.g. "media" for the linux-tv book-set at ./Documentation/media

quiet_cmd_sphinx = SPHINX  $@ --> file://$(abspath $(BUILDDIR)/$3/$4);
  cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) 
$(build)=Documentation/media all;\
BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath 
$(srctree)/$(src)/$5/$(SPHINX_CONF)) \
$(SPHINXBUILD) \
-b $2 \
-c $(abspath $(srctree)/$(src)) \
-d $(abspath $(BUILDDIR)/.doctrees/$3) \
-D version=$(KERNELVERSION) -D release=$(KERNELRELEASE) \
$(ALLSPHINXOPTS) \
$(abspath $(srctree)/$(src)/$5) \
$(abspath $(BUILDDIR)/$3/$4);

But you are right, it is very compact / complicated.

--Markus--

> 
> BR,
> Jani.
> 
> 
> -- 
> Jani Nikula, Intel Open Source Technology Center
> --
> To unsubscribe from this list: send the line "unsubscribe linux-doc" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: pyc files in source dir with O=

2016-09-07 Thread Geert Uytterhoeven
Hi Jani,

On Wed, Sep 7, 2016 at 3:28 PM, Jani Nikula  wrote:
> On Wed, 07 Sep 2016, Geert Uytterhoeven  wrote:
>> When running "make htmldocs O=/path/to/somewhere", *.pyc files end up
>> in the source tree instead of in the build tree:
>>
>> $ git ls-files -o
>> Documentation/sphinx/kernel-doc.pyc
>> Documentation/sphinx/kernel_include.pyc
>> Documentation/sphinx/rstFlatTable.pyc
>> $
>>
>> This is with v4.8-rc5.
>>
>> With next-20160907, two more files appear:
>>
>> Documentation/sphinx/cdomain.pyc
>> Documentation/sphinx/load_config.pyc
>
> This should help
>
> diff --git a/Documentation/Makefile.sphinx b/Documentation/Makefile.sphinx
> index 92deea30b183..a4cba2d1aaf1 100644
> --- a/Documentation/Makefile.sphinx
> +++ b/Documentation/Makefile.sphinx
> @@ -53,6 +53,7 @@ loop_cmd = $(echo-cmd) $(cmd_$(1))
>
>  quiet_cmd_sphinx = SPHINX  $@ --> file://$(abspath $(BUILDDIR)/$3/$4);
>cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) 
> $(build)=Documentation/media all;\
> +   PYTHONDONTWRITEBYTECODE=1 \
> BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath 
> $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
> $(SPHINXBUILD) \
> -b $2 \

Thanks, that works (on next-20160907, doesn't apply to v4.8-rc5).
But IMHO it's a bit drastic. There's no way to let python create them in the
build directory instead?

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: pyc files in source dir with O=

2016-09-07 Thread Jani Nikula
On Wed, 07 Sep 2016, Geert Uytterhoeven  wrote:
> When running "make htmldocs O=/path/to/somewhere", *.pyc files end up
> in the source tree instead of in the build tree:
>
> $ git ls-files -o
> Documentation/sphinx/kernel-doc.pyc
> Documentation/sphinx/kernel_include.pyc
> Documentation/sphinx/rstFlatTable.pyc
> $
>
> This is with v4.8-rc5.
>
> With next-20160907, two more files appear:
>
> Documentation/sphinx/cdomain.pyc
> Documentation/sphinx/load_config.pyc

This should help

diff --git a/Documentation/Makefile.sphinx b/Documentation/Makefile.sphinx
index 92deea30b183..a4cba2d1aaf1 100644
--- a/Documentation/Makefile.sphinx
+++ b/Documentation/Makefile.sphinx
@@ -53,6 +53,7 @@ loop_cmd = $(echo-cmd) $(cmd_$(1))
 
 quiet_cmd_sphinx = SPHINX  $@ --> file://$(abspath $(BUILDDIR)/$3/$4);
   cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) 
$(build)=Documentation/media all;\
+   PYTHONDONTWRITEBYTECODE=1 \
BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath 
$(srctree)/$(src)/$5/$(SPHINX_CONF)) \
$(SPHINXBUILD) \
-b $2 \


Side note, I'm really sad the Sphinx build has grown so ugly and
complicated now. :(

BR,
Jani.


-- 
Jani Nikula, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html