All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] qemu.nsi: Install Sphinx documentation
@ 2020-03-06 13:47 Peter Maydell
  2020-03-06 14:32 ` Philippe Mathieu-Daudé
  0 siblings, 1 reply; 5+ messages in thread
From: Peter Maydell @ 2020-03-06 13:47 UTC (permalink / raw)
  To: qemu-devel; +Cc: Stefan Weil

The old qemu-doc.html is no longer built, so update the Windows
installer to install the new Sphinx manual sets.

We install all five of the manuals, even though some of them
(notably the user-mode manual) will not be very useful to Windows
users, because skipping some of them would mean broken links
in the top level 'index.html' page.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
I've tested this (building it via the fedora docker image
and installing into a Windows VM) but I don't know anything
much about the installer so there might be neater ways to do it...

NB: I didn't realize that patchew included a test of building
the Windows installer, so until we get this (or some variant)
into master I'm afraid patchew will be emailing failure reports
to every submitted patchseries. Sorry about that :-(
---
 qemu.nsi | 22 +++++++++++++++++++---
 1 file changed, 19 insertions(+), 3 deletions(-)

diff --git a/qemu.nsi b/qemu.nsi
index 0c29ba359cd..1a0112265b0 100644
--- a/qemu.nsi
+++ b/qemu.nsi
@@ -177,9 +177,20 @@ SectionEnd
 !ifdef CONFIG_DOCUMENTATION
 Section "Documentation" SectionDoc
     SetOutPath "$INSTDIR"
-    File "${BINDIR}\qemu-doc.html"
+    File "${BINDIR}\index.html"
+    SetOutPath "$INSTDIR\interop"
+    FILE /r "${BINDIR}\interop\*.*"
+    SetOutPath "$INSTDIR\specs"
+    FILE /r "${BINDIR}\specs\*.*"
+    SetOutPath "$INSTDIR\system"
+    FILE /r "${BINDIR}\system\*.*"
+    SetOutPath "$INSTDIR\tools"
+    FILE /r "${BINDIR}\tools\*.*"
+    SetOutPath "$INSTDIR\user"
+    FILE /r "${BINDIR}\user\*.*"
+    SetOutPath "$INSTDIR"
     CreateDirectory "$SMPROGRAMS\${PRODUCT}"
-    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\qemu-doc.html" "" "$INSTDIR\qemu-doc.html" 0
+    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\index.html" "" "$INSTDIR\index.html" 0
 SectionEnd
 !endif
 
@@ -227,7 +238,12 @@ Section "Uninstall"
     Delete "$INSTDIR\qemu-io.exe"
     Delete "$INSTDIR\qemu.exe"
     Delete "$INSTDIR\qemu-system-*.exe"
-    Delete "$INSTDIR\qemu-doc.html"
+    Delete "$INSTDIR\index.html"
+    RMDir /r "$INSTDIR\interop"
+    RMDir /r "$INSTDIR\specs"
+    RMDir /r "$INSTDIR\system"
+    RMDir /r "$INSTDIR\tools"
+    RMDir /r "$INSTDIR\user"
     RMDir /r "$INSTDIR\keymaps"
     RMDir /r "$INSTDIR\share"
     ; Remove generated files
-- 
2.20.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] qemu.nsi: Install Sphinx documentation
  2020-03-06 13:47 [PATCH] qemu.nsi: Install Sphinx documentation Peter Maydell
@ 2020-03-06 14:32 ` Philippe Mathieu-Daudé
  2020-03-06 14:54   ` Peter Maydell
  0 siblings, 1 reply; 5+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-03-06 14:32 UTC (permalink / raw)
  To: Peter Maydell, qemu-devel; +Cc: Stefan Weil

On 3/6/20 2:47 PM, Peter Maydell wrote:
> The old qemu-doc.html is no longer built, so update the Windows
> installer to install the new Sphinx manual sets.
> 
> We install all five of the manuals, even though some of them
> (notably the user-mode manual) will not be very useful to Windows
> users, because skipping some of them would mean broken links
> in the top level 'index.html' page.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> I've tested this (building it via the fedora docker image
> and installing into a Windows VM) but I don't know anything
> much about the installer so there might be neater ways to do it...
> 
> NB: I didn't realize that patchew included a test of building
> the Windows installer, so until we get this (or some variant)
> into master I'm afraid patchew will be emailing failure reports
> to every submitted patchseries. Sorry about that :-(
> ---
>   qemu.nsi | 22 +++++++++++++++++++---
>   1 file changed, 19 insertions(+), 3 deletions(-)
> 
> diff --git a/qemu.nsi b/qemu.nsi
> index 0c29ba359cd..1a0112265b0 100644
> --- a/qemu.nsi
> +++ b/qemu.nsi
> @@ -177,9 +177,20 @@ SectionEnd
>   !ifdef CONFIG_DOCUMENTATION
>   Section "Documentation" SectionDoc
>       SetOutPath "$INSTDIR"

Now that we have multiple files installed, I'd move them into a separate 
directory: ${INSTDIR}/docs/ seems appropriate. Can be done later.

> -    File "${BINDIR}\qemu-doc.html"
> +    File "${BINDIR}\index.html"
> +    SetOutPath "$INSTDIR\interop"
> +    FILE /r "${BINDIR}\interop\*.*"
> +    SetOutPath "$INSTDIR\specs"
> +    FILE /r "${BINDIR}\specs\*.*"
> +    SetOutPath "$INSTDIR\system"
> +    FILE /r "${BINDIR}\system\*.*"
> +    SetOutPath "$INSTDIR\tools"
> +    FILE /r "${BINDIR}\tools\*.*"
> +    SetOutPath "$INSTDIR\user"
> +    FILE /r "${BINDIR}\user\*.*"
> +    SetOutPath "$INSTDIR"

The last SetOutPath seems alone (copy/paste mistake I suppose).
Otherwise looks good.

>       CreateDirectory "$SMPROGRAMS\${PRODUCT}"
> -    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\qemu-doc.html" "" "$INSTDIR\qemu-doc.html" 0
> +    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\index.html" "" "$INSTDIR\index.html" 0
>   SectionEnd
>   !endif
>   
> @@ -227,7 +238,12 @@ Section "Uninstall"
>       Delete "$INSTDIR\qemu-io.exe"
>       Delete "$INSTDIR\qemu.exe"
>       Delete "$INSTDIR\qemu-system-*.exe"
> -    Delete "$INSTDIR\qemu-doc.html"
> +    Delete "$INSTDIR\index.html"
> +    RMDir /r "$INSTDIR\interop"
> +    RMDir /r "$INSTDIR\specs"
> +    RMDir /r "$INSTDIR\system"
> +    RMDir /r "$INSTDIR\tools"
> +    RMDir /r "$INSTDIR\user"
>       RMDir /r "$INSTDIR\keymaps"
>       RMDir /r "$INSTDIR\share"
>       ; Remove generated files
> 



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] qemu.nsi: Install Sphinx documentation
  2020-03-06 14:32 ` Philippe Mathieu-Daudé
@ 2020-03-06 14:54   ` Peter Maydell
  2020-03-06 15:02     ` Philippe Mathieu-Daudé
  0 siblings, 1 reply; 5+ messages in thread
From: Peter Maydell @ 2020-03-06 14:54 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé; +Cc: Stefan Weil, QEMU Developers

On Fri, 6 Mar 2020 at 14:32, Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>
> On 3/6/20 2:47 PM, Peter Maydell wrote:
> > The old qemu-doc.html is no longer built, so update the Windows
> > installer to install the new Sphinx manual sets.
> >
> > We install all five of the manuals, even though some of them
> > (notably the user-mode manual) will not be very useful to Windows
> > users, because skipping some of them would mean broken links
> > in the top level 'index.html' page.
> >
> > Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> > ---
> > I've tested this (building it via the fedora docker image
> > and installing into a Windows VM) but I don't know anything
> > much about the installer so there might be neater ways to do it...
> >
> > NB: I didn't realize that patchew included a test of building
> > the Windows installer, so until we get this (or some variant)
> > into master I'm afraid patchew will be emailing failure reports
> > to every submitted patchseries. Sorry about that :-(
> > ---
> >   qemu.nsi | 22 +++++++++++++++++++---
> >   1 file changed, 19 insertions(+), 3 deletions(-)
> >
> > diff --git a/qemu.nsi b/qemu.nsi
> > index 0c29ba359cd..1a0112265b0 100644
> > --- a/qemu.nsi
> > +++ b/qemu.nsi
> > @@ -177,9 +177,20 @@ SectionEnd
> >   !ifdef CONFIG_DOCUMENTATION
> >   Section "Documentation" SectionDoc
> >       SetOutPath "$INSTDIR"
>
> Now that we have multiple files installed, I'd move them into a separate
> directory: ${INSTDIR}/docs/ seems appropriate. Can be done later.
>
> > -    File "${BINDIR}\qemu-doc.html"
> > +    File "${BINDIR}\index.html"
> > +    SetOutPath "$INSTDIR\interop"
> > +    FILE /r "${BINDIR}\interop\*.*"
> > +    SetOutPath "$INSTDIR\specs"
> > +    FILE /r "${BINDIR}\specs\*.*"
> > +    SetOutPath "$INSTDIR\system"
> > +    FILE /r "${BINDIR}\system\*.*"
> > +    SetOutPath "$INSTDIR\tools"
> > +    FILE /r "${BINDIR}\tools\*.*"
> > +    SetOutPath "$INSTDIR\user"
> > +    FILE /r "${BINDIR}\user\*.*"
> > +    SetOutPath "$INSTDIR"
>
> The last SetOutPath seems alone (copy/paste mistake I suppose).
> Otherwise looks good.

No, it's deliberate. I wanted to put the output path back
to what it was at the start of this section, because I
wasn't sure if any of the commands below this point
implicitly depended on it.

> >       CreateDirectory "$SMPROGRAMS\${PRODUCT}"
> > -    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\qemu-doc.html" "" "$INSTDIR\qemu-doc.html" 0
> > +    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\index.html" "" "$INSTDIR\index.html" 0
> >   SectionEnd
> >   !endif

thanks
-- PMM


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] qemu.nsi: Install Sphinx documentation
  2020-03-06 14:54   ` Peter Maydell
@ 2020-03-06 15:02     ` Philippe Mathieu-Daudé
  2020-03-09 17:26       ` Peter Maydell
  0 siblings, 1 reply; 5+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-03-06 15:02 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Stefan Weil, QEMU Developers

On 3/6/20 3:54 PM, Peter Maydell wrote:
> On Fri, 6 Mar 2020 at 14:32, Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>>
>> On 3/6/20 2:47 PM, Peter Maydell wrote:
>>> The old qemu-doc.html is no longer built, so update the Windows
>>> installer to install the new Sphinx manual sets.
>>>
>>> We install all five of the manuals, even though some of them
>>> (notably the user-mode manual) will not be very useful to Windows
>>> users, because skipping some of them would mean broken links
>>> in the top level 'index.html' page.
>>>
>>> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
>>> ---
>>> I've tested this (building it via the fedora docker image
>>> and installing into a Windows VM) but I don't know anything
>>> much about the installer so there might be neater ways to do it...
>>>
>>> NB: I didn't realize that patchew included a test of building
>>> the Windows installer, so until we get this (or some variant)
>>> into master I'm afraid patchew will be emailing failure reports
>>> to every submitted patchseries. Sorry about that :-(
>>> ---
>>>    qemu.nsi | 22 +++++++++++++++++++---
>>>    1 file changed, 19 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/qemu.nsi b/qemu.nsi
>>> index 0c29ba359cd..1a0112265b0 100644
>>> --- a/qemu.nsi
>>> +++ b/qemu.nsi
>>> @@ -177,9 +177,20 @@ SectionEnd
>>>    !ifdef CONFIG_DOCUMENTATION
>>>    Section "Documentation" SectionDoc
>>>        SetOutPath "$INSTDIR"
>>
>> Now that we have multiple files installed, I'd move them into a separate
>> directory: ${INSTDIR}/docs/ seems appropriate. Can be done later.
>>
>>> -    File "${BINDIR}\qemu-doc.html"
>>> +    File "${BINDIR}\index.html"
>>> +    SetOutPath "$INSTDIR\interop"
>>> +    FILE /r "${BINDIR}\interop\*.*"
>>> +    SetOutPath "$INSTDIR\specs"
>>> +    FILE /r "${BINDIR}\specs\*.*"
>>> +    SetOutPath "$INSTDIR\system"
>>> +    FILE /r "${BINDIR}\system\*.*"
>>> +    SetOutPath "$INSTDIR\tools"
>>> +    FILE /r "${BINDIR}\tools\*.*"
>>> +    SetOutPath "$INSTDIR\user"
>>> +    FILE /r "${BINDIR}\user\*.*"
>>> +    SetOutPath "$INSTDIR"
>>
>> The last SetOutPath seems alone (copy/paste mistake I suppose).
>> Otherwise looks good.
> 
> No, it's deliberate. I wanted to put the output path back
> to what it was at the start of this section, because I
> wasn't sure if any of the commands below this point
> implicitly depended on it.

Ah good point.

As this patch unbreaks patchew:
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>

>>>        CreateDirectory "$SMPROGRAMS\${PRODUCT}"
>>> -    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\qemu-doc.html" "" "$INSTDIR\qemu-doc.html" 0
>>> +    CreateShortCut "$SMPROGRAMS\${PRODUCT}\User Documentation.lnk" "$INSTDIR\index.html" "" "$INSTDIR\index.html" 0
>>>    SectionEnd
>>>    !endif
> 
> thanks
> -- PMM
> 



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] qemu.nsi: Install Sphinx documentation
  2020-03-06 15:02     ` Philippe Mathieu-Daudé
@ 2020-03-09 17:26       ` Peter Maydell
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Maydell @ 2020-03-09 17:26 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé; +Cc: Stefan Weil, QEMU Developers

On Fri, 6 Mar 2020 at 15:02, Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>
> On 3/6/20 3:54 PM, Peter Maydell wrote:
> > On Fri, 6 Mar 2020 at 14:32, Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
> >>
> >> On 3/6/20 2:47 PM, Peter Maydell wrote:
> >>> The old qemu-doc.html is no longer built, so update the Windows
> >>> installer to install the new Sphinx manual sets.
> >>>
> >>> We install all five of the manuals, even though some of them
> >>> (notably the user-mode manual) will not be very useful to Windows
> >>> users, because skipping some of them would mean broken links
> >>> in the top level 'index.html' page.
> >>>
> >>> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

> As this patch unbreaks patchew:
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>

Thanks. Stefan, I've applied this to master as it unbreaks
one of the patchew configs, but feel free to let me know if
there are changes you'd like me to make and I'll send a
followup patch.

-- PMM


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-03-09 17:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-06 13:47 [PATCH] qemu.nsi: Install Sphinx documentation Peter Maydell
2020-03-06 14:32 ` Philippe Mathieu-Daudé
2020-03-06 14:54   ` Peter Maydell
2020-03-06 15:02     ` Philippe Mathieu-Daudé
2020-03-09 17:26       ` Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.