All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] xen: Override CC and CPP in make command line
@ 2022-03-09 11:09 Bertrand Marquis
  2022-03-10 19:43 ` [meta-virtualization] " Bruce Ashfield
  0 siblings, 1 reply; 4+ messages in thread
From: Bertrand Marquis @ 2022-03-09 11:09 UTC (permalink / raw)
  To: meta-virtualization; +Cc: nd, christopher.w.clark, cardoe, Michal Orzel

From: Michal Orzel <michal.orzel@arm.com>

After 4.16 release, Xen build system has been changed significantly.
When building latest status of Xen it was observed that commit
317c98cb91 broke the hypervisor build on arm32 due to the change in
handling Rules.mk that xen.inc modifies to override CC and CPP.

In order to fix the issue this patch moves overriding CC and CPP from
Rules.mk to make command line by adding them to EXTRA_OEMAKE:arm.

Take the opportunity to bump SRCREV of xen_git.bb and xen-tools_git.bb
to the current status of master.

Signed-off-by: Michal Orzel <michal.orzel@arm.com>
---
 recipes-extended/xen/xen-hypervisor.inc | 8 ++++++++
 recipes-extended/xen/xen-tools_git.bb   | 4 ++--
 recipes-extended/xen/xen.inc            | 6 ------
 recipes-extended/xen/xen_git.bb         | 4 ++--
 4 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-hypervisor.inc b/recipes-extended/xen/xen-hypervisor.inc
index 81e361f..6f3d24d 100644
--- a/recipes-extended/xen/xen-hypervisor.inc
+++ b/recipes-extended/xen/xen-hypervisor.inc
@@ -48,6 +48,14 @@ do_configure() {
     fi
 }
 
+# The hypervisor binary for arm must not be built with the hard floating point
+# ABI. Override CC and CPP when invoking make so that they do not contain
+# TUNE_CCARGS.
+EXTRA_OEMAKE:arm += "CC='${CCACHE}${HOST_PREFIX}gcc ${TOOLCHAIN_OPTIONS} \
+                         ${CC_REPRODUCIBLE_OPTIONS}' \
+                     CPP='${CCACHE}${HOST_PREFIX}gcc -E ${TOOLCHAIN_OPTIONS} \
+                         ${CC_REPRODUCIBLE_OPTIONS}'"
+
 do_compile() {
     oe_runmake xen PYTHON="${PYTHON}" \
                    EXTRA_CFLAGS_XEN_CORE="${EXTRA_CFLAGS_XEN_CORE}"
diff --git a/recipes-extended/xen/xen-tools_git.bb b/recipes-extended/xen/xen-tools_git.bb
index 8ff9c4c..e733f1d 100644
--- a/recipes-extended/xen/xen-tools_git.bb
+++ b/recipes-extended/xen/xen-tools_git.bb
@@ -1,5 +1,5 @@
-# master status on 2020-10-21
-SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
+# master status on 2022-03-08
+SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
 
 XEN_REL ?= "4.16"
 XEN_BRANCH ?= "master"
diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 4df99bf..8b86de5 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -193,12 +193,6 @@ do_post_patch() {
     fi
 }
 
-do_post_patch:append:arm()  {
-    # The hypervisor binary must not be built with the hard floating point ABI.
-    echo "CC := \$(filter-out ${TUNE_CCARGS},\$(CC))" >> ${S}/xen/arch/arm/Rules.mk
-    echo "CPP := \$(filter-out ${TUNE_CCARGS},\$(CPP))" >> ${S}/xen/arch/arm/Rules.mk
-}
-
 addtask post_patch after do_patch before do_configure
 
 # Allow all hypervisor settings in a defconfig
diff --git a/recipes-extended/xen/xen_git.bb b/recipes-extended/xen/xen_git.bb
index e014733..2fbfb54 100644
--- a/recipes-extended/xen/xen_git.bb
+++ b/recipes-extended/xen/xen_git.bb
@@ -1,5 +1,5 @@
-# master status on 2020-10-21
-SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
+# master status on 2022-03-08
+SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
 
 XEN_REL ?= "4.16"
 XEN_BRANCH ?= "master"
-- 
2.25.1



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

* Re: [meta-virtualization] [PATCH] xen: Override CC and CPP in make command line
  2022-03-09 11:09 [PATCH] xen: Override CC and CPP in make command line Bertrand Marquis
@ 2022-03-10 19:43 ` Bruce Ashfield
  2022-03-11  8:57   ` Bertrand Marquis
  0 siblings, 1 reply; 4+ messages in thread
From: Bruce Ashfield @ 2022-03-10 19:43 UTC (permalink / raw)
  To: Bertrand Marquis
  Cc: meta-virtualization, nd, christopher.w.clark, cardoe,
	Michal Orzel

I've merged the patch, if Christopher has any review comments or needs
changes, we'll stack them on top.

Bruce

In message: [meta-virtualization] [PATCH] xen: Override CC and CPP in make command line
on 09/03/2022 Bertrand Marquis wrote:

> From: Michal Orzel <michal.orzel@arm.com>
> 
> After 4.16 release, Xen build system has been changed significantly.
> When building latest status of Xen it was observed that commit
> 317c98cb91 broke the hypervisor build on arm32 due to the change in
> handling Rules.mk that xen.inc modifies to override CC and CPP.
> 
> In order to fix the issue this patch moves overriding CC and CPP from
> Rules.mk to make command line by adding them to EXTRA_OEMAKE:arm.
> 
> Take the opportunity to bump SRCREV of xen_git.bb and xen-tools_git.bb
> to the current status of master.
> 
> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> ---
>  recipes-extended/xen/xen-hypervisor.inc | 8 ++++++++
>  recipes-extended/xen/xen-tools_git.bb   | 4 ++--
>  recipes-extended/xen/xen.inc            | 6 ------
>  recipes-extended/xen/xen_git.bb         | 4 ++--
>  4 files changed, 12 insertions(+), 10 deletions(-)
> 
> diff --git a/recipes-extended/xen/xen-hypervisor.inc b/recipes-extended/xen/xen-hypervisor.inc
> index 81e361f..6f3d24d 100644
> --- a/recipes-extended/xen/xen-hypervisor.inc
> +++ b/recipes-extended/xen/xen-hypervisor.inc
> @@ -48,6 +48,14 @@ do_configure() {
>      fi
>  }
>  
> +# The hypervisor binary for arm must not be built with the hard floating point
> +# ABI. Override CC and CPP when invoking make so that they do not contain
> +# TUNE_CCARGS.
> +EXTRA_OEMAKE:arm += "CC='${CCACHE}${HOST_PREFIX}gcc ${TOOLCHAIN_OPTIONS} \
> +                         ${CC_REPRODUCIBLE_OPTIONS}' \
> +                     CPP='${CCACHE}${HOST_PREFIX}gcc -E ${TOOLCHAIN_OPTIONS} \
> +                         ${CC_REPRODUCIBLE_OPTIONS}'"
> +
>  do_compile() {
>      oe_runmake xen PYTHON="${PYTHON}" \
>                     EXTRA_CFLAGS_XEN_CORE="${EXTRA_CFLAGS_XEN_CORE}"
> diff --git a/recipes-extended/xen/xen-tools_git.bb b/recipes-extended/xen/xen-tools_git.bb
> index 8ff9c4c..e733f1d 100644
> --- a/recipes-extended/xen/xen-tools_git.bb
> +++ b/recipes-extended/xen/xen-tools_git.bb
> @@ -1,5 +1,5 @@
> -# master status on 2020-10-21
> -SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
> +# master status on 2022-03-08
> +SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
>  
>  XEN_REL ?= "4.16"
>  XEN_BRANCH ?= "master"
> diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
> index 4df99bf..8b86de5 100644
> --- a/recipes-extended/xen/xen.inc
> +++ b/recipes-extended/xen/xen.inc
> @@ -193,12 +193,6 @@ do_post_patch() {
>      fi
>  }
>  
> -do_post_patch:append:arm()  {
> -    # The hypervisor binary must not be built with the hard floating point ABI.
> -    echo "CC := \$(filter-out ${TUNE_CCARGS},\$(CC))" >> ${S}/xen/arch/arm/Rules.mk
> -    echo "CPP := \$(filter-out ${TUNE_CCARGS},\$(CPP))" >> ${S}/xen/arch/arm/Rules.mk
> -}
> -
>  addtask post_patch after do_patch before do_configure
>  
>  # Allow all hypervisor settings in a defconfig
> diff --git a/recipes-extended/xen/xen_git.bb b/recipes-extended/xen/xen_git.bb
> index e014733..2fbfb54 100644
> --- a/recipes-extended/xen/xen_git.bb
> +++ b/recipes-extended/xen/xen_git.bb
> @@ -1,5 +1,5 @@
> -# master status on 2020-10-21
> -SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
> +# master status on 2022-03-08
> +SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
>  
>  XEN_REL ?= "4.16"
>  XEN_BRANCH ?= "master"
> -- 
> 2.25.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#7079): https://lists.yoctoproject.org/g/meta-virtualization/message/7079
> Mute This Topic: https://lists.yoctoproject.org/mt/89659618/1050810
> Group Owner: meta-virtualization+owner@lists.yoctoproject.org
> Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [bruce.ashfield@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 



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

* Re: [meta-virtualization] [PATCH] xen: Override CC and CPP in make command line
  2022-03-10 19:43 ` [meta-virtualization] " Bruce Ashfield
@ 2022-03-11  8:57   ` Bertrand Marquis
  2022-03-11 11:03     ` Bruce Ashfield
  0 siblings, 1 reply; 4+ messages in thread
From: Bertrand Marquis @ 2022-03-11  8:57 UTC (permalink / raw)
  To: Bruce Ashfield
  Cc: meta-virtualization@lists.yoctoproject.org, nd,
	christopher.w.clark@gmail.com, cardoe@gentoo.org, Michal Orzel

Hi Bruce,

> On 10 Mar 2022, at 19:43, Bruce Ashfield via lists.yoctoproject.org <bruce.ashfield=gmail.com@lists.yoctoproject.org> wrote:
> 
> I've merged the patch, if Christopher has any review comments or needs
> changes, we'll stack them on top.

Could this be also added in honister branch ?

Thanks
Bertrand

> 
> Bruce
> 
> In message: [meta-virtualization] [PATCH] xen: Override CC and CPP in make command line
> on 09/03/2022 Bertrand Marquis wrote:
> 
>> From: Michal Orzel <michal.orzel@arm.com>
>> 
>> After 4.16 release, Xen build system has been changed significantly.
>> When building latest status of Xen it was observed that commit
>> 317c98cb91 broke the hypervisor build on arm32 due to the change in
>> handling Rules.mk that xen.inc modifies to override CC and CPP.
>> 
>> In order to fix the issue this patch moves overriding CC and CPP from
>> Rules.mk to make command line by adding them to EXTRA_OEMAKE:arm.
>> 
>> Take the opportunity to bump SRCREV of xen_git.bb and xen-tools_git.bb
>> to the current status of master.
>> 
>> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
>> ---
>> recipes-extended/xen/xen-hypervisor.inc | 8 ++++++++
>> recipes-extended/xen/xen-tools_git.bb   | 4 ++--
>> recipes-extended/xen/xen.inc            | 6 ------
>> recipes-extended/xen/xen_git.bb         | 4 ++--
>> 4 files changed, 12 insertions(+), 10 deletions(-)
>> 
>> diff --git a/recipes-extended/xen/xen-hypervisor.inc b/recipes-extended/xen/xen-hypervisor.inc
>> index 81e361f..6f3d24d 100644
>> --- a/recipes-extended/xen/xen-hypervisor.inc
>> +++ b/recipes-extended/xen/xen-hypervisor.inc
>> @@ -48,6 +48,14 @@ do_configure() {
>>     fi
>> }
>> 
>> +# The hypervisor binary for arm must not be built with the hard floating point
>> +# ABI. Override CC and CPP when invoking make so that they do not contain
>> +# TUNE_CCARGS.
>> +EXTRA_OEMAKE:arm += "CC='${CCACHE}${HOST_PREFIX}gcc ${TOOLCHAIN_OPTIONS} \
>> +                         ${CC_REPRODUCIBLE_OPTIONS}' \
>> +                     CPP='${CCACHE}${HOST_PREFIX}gcc -E ${TOOLCHAIN_OPTIONS} \
>> +                         ${CC_REPRODUCIBLE_OPTIONS}'"
>> +
>> do_compile() {
>>     oe_runmake xen PYTHON="${PYTHON}" \
>>                    EXTRA_CFLAGS_XEN_CORE="${EXTRA_CFLAGS_XEN_CORE}"
>> diff --git a/recipes-extended/xen/xen-tools_git.bb b/recipes-extended/xen/xen-tools_git.bb
>> index 8ff9c4c..e733f1d 100644
>> --- a/recipes-extended/xen/xen-tools_git.bb
>> +++ b/recipes-extended/xen/xen-tools_git.bb
>> @@ -1,5 +1,5 @@
>> -# master status on 2020-10-21
>> -SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
>> +# master status on 2022-03-08
>> +SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
>> 
>> XEN_REL ?= "4.16"
>> XEN_BRANCH ?= "master"
>> diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
>> index 4df99bf..8b86de5 100644
>> --- a/recipes-extended/xen/xen.inc
>> +++ b/recipes-extended/xen/xen.inc
>> @@ -193,12 +193,6 @@ do_post_patch() {
>>     fi
>> }
>> 
>> -do_post_patch:append:arm()  {
>> -    # The hypervisor binary must not be built with the hard floating point ABI.
>> -    echo "CC := \$(filter-out ${TUNE_CCARGS},\$(CC))" >> ${S}/xen/arch/arm/Rules.mk
>> -    echo "CPP := \$(filter-out ${TUNE_CCARGS},\$(CPP))" >> ${S}/xen/arch/arm/Rules.mk
>> -}
>> -
>> addtask post_patch after do_patch before do_configure
>> 
>> # Allow all hypervisor settings in a defconfig
>> diff --git a/recipes-extended/xen/xen_git.bb b/recipes-extended/xen/xen_git.bb
>> index e014733..2fbfb54 100644
>> --- a/recipes-extended/xen/xen_git.bb
>> +++ b/recipes-extended/xen/xen_git.bb
>> @@ -1,5 +1,5 @@
>> -# master status on 2020-10-21
>> -SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
>> +# master status on 2022-03-08
>> +SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
>> 
>> XEN_REL ?= "4.16"
>> XEN_BRANCH ?= "master"
>> -- 
>> 2.25.1
>> 
> 
>> 
>> 
>> 
> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#7086): https://lists.yoctoproject.org/g/meta-virtualization/message/7086
> Mute This Topic: https://lists.yoctoproject.org/mt/89659618/3619089
> Group Owner: meta-virtualization+owner@lists.yoctoproject.org
> Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [bertrand.marquis@arm.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 



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

* Re: [meta-virtualization] [PATCH] xen: Override CC and CPP in make command line
  2022-03-11  8:57   ` Bertrand Marquis
@ 2022-03-11 11:03     ` Bruce Ashfield
  0 siblings, 0 replies; 4+ messages in thread
From: Bruce Ashfield @ 2022-03-11 11:03 UTC (permalink / raw)
  To: Bertrand Marquis
  Cc: meta-virtualization@lists.yoctoproject.org, nd,
	christopher.w.clark@gmail.com, cardoe@gentoo.org, Michal Orzel

[-- Attachment #1: Type: text/plain, Size: 4842 bytes --]

On Fri, Mar 11, 2022 at 3:57 AM Bertrand Marquis <Bertrand.Marquis@arm.com>
wrote:

> Hi Bruce,
>
> > On 10 Mar 2022, at 19:43, Bruce Ashfield via lists.yoctoproject.org
> <bruce.ashfield=gmail.com@lists.yoctoproject.org> wrote:
> >
> > I've merged the patch, if Christopher has any review comments or needs
> > changes, we'll stack them on top.
>
> Could this be also added in honister branch ?
>
>
No problem. I did the cherry pick.

Bruce



> Thanks
> Bertrand
>
> >
> > Bruce
> >
> > In message: [meta-virtualization] [PATCH] xen: Override CC and CPP in
> make command line
> > on 09/03/2022 Bertrand Marquis wrote:
> >
> >> From: Michal Orzel <michal.orzel@arm.com>
> >>
> >> After 4.16 release, Xen build system has been changed significantly.
> >> When building latest status of Xen it was observed that commit
> >> 317c98cb91 broke the hypervisor build on arm32 due to the change in
> >> handling Rules.mk that xen.inc modifies to override CC and CPP.
> >>
> >> In order to fix the issue this patch moves overriding CC and CPP from
> >> Rules.mk to make command line by adding them to EXTRA_OEMAKE:arm.
> >>
> >> Take the opportunity to bump SRCREV of xen_git.bb and xen-tools_git.bb
> >> to the current status of master.
> >>
> >> Signed-off-by: Michal Orzel <michal.orzel@arm.com>
> >> ---
> >> recipes-extended/xen/xen-hypervisor.inc | 8 ++++++++
> >> recipes-extended/xen/xen-tools_git.bb   | 4 ++--
> >> recipes-extended/xen/xen.inc            | 6 ------
> >> recipes-extended/xen/xen_git.bb         | 4 ++--
> >> 4 files changed, 12 insertions(+), 10 deletions(-)
> >>
> >> diff --git a/recipes-extended/xen/xen-hypervisor.inc
> b/recipes-extended/xen/xen-hypervisor.inc
> >> index 81e361f..6f3d24d 100644
> >> --- a/recipes-extended/xen/xen-hypervisor.inc
> >> +++ b/recipes-extended/xen/xen-hypervisor.inc
> >> @@ -48,6 +48,14 @@ do_configure() {
> >>     fi
> >> }
> >>
> >> +# The hypervisor binary for arm must not be built with the hard
> floating point
> >> +# ABI. Override CC and CPP when invoking make so that they do not
> contain
> >> +# TUNE_CCARGS.
> >> +EXTRA_OEMAKE:arm += "CC='${CCACHE}${HOST_PREFIX}gcc
> ${TOOLCHAIN_OPTIONS} \
> >> +                         ${CC_REPRODUCIBLE_OPTIONS}' \
> >> +                     CPP='${CCACHE}${HOST_PREFIX}gcc -E
> ${TOOLCHAIN_OPTIONS} \
> >> +                         ${CC_REPRODUCIBLE_OPTIONS}'"
> >> +
> >> do_compile() {
> >>     oe_runmake xen PYTHON="${PYTHON}" \
> >>                    EXTRA_CFLAGS_XEN_CORE="${EXTRA_CFLAGS_XEN_CORE}"
> >> diff --git a/recipes-extended/xen/xen-tools_git.bb
> b/recipes-extended/xen/xen-tools_git.bb
> >> index 8ff9c4c..e733f1d 100644
> >> --- a/recipes-extended/xen/xen-tools_git.bb
> >> +++ b/recipes-extended/xen/xen-tools_git.bb
> >> @@ -1,5 +1,5 @@
> >> -# master status on 2020-10-21
> >> -SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
> >> +# master status on 2022-03-08
> >> +SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
> >>
> >> XEN_REL ?= "4.16"
> >> XEN_BRANCH ?= "master"
> >> diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
> >> index 4df99bf..8b86de5 100644
> >> --- a/recipes-extended/xen/xen.inc
> >> +++ b/recipes-extended/xen/xen.inc
> >> @@ -193,12 +193,6 @@ do_post_patch() {
> >>     fi
> >> }
> >>
> >> -do_post_patch:append:arm()  {
> >> -    # The hypervisor binary must not be built with the hard floating
> point ABI.
> >> -    echo "CC := \$(filter-out ${TUNE_CCARGS},\$(CC))" >>
> ${S}/xen/arch/arm/Rules.mk
> >> -    echo "CPP := \$(filter-out ${TUNE_CCARGS},\$(CPP))" >>
> ${S}/xen/arch/arm/Rules.mk
> >> -}
> >> -
> >> addtask post_patch after do_patch before do_configure
> >>
> >> # Allow all hypervisor settings in a defconfig
> >> diff --git a/recipes-extended/xen/xen_git.bb b/recipes-extended/xen/
> xen_git.bb
> >> index e014733..2fbfb54 100644
> >> --- a/recipes-extended/xen/xen_git.bb
> >> +++ b/recipes-extended/xen/xen_git.bb
> >> @@ -1,5 +1,5 @@
> >> -# master status on 2020-10-21
> >> -SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9"
> >> +# master status on 2022-03-08
> >> +SRCREV ?= "9d4a44380d273de22d5753883cbf5581795ff24d"
> >>
> >> XEN_REL ?= "4.16"
> >> XEN_BRANCH ?= "master"
> >> --
> >> 2.25.1
> >>
> >
> >>
> >>
> >>
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#7086):
> https://lists.yoctoproject.org/g/meta-virtualization/message/7086
> > Mute This Topic: https://lists.yoctoproject.org/mt/89659618/3619089
> > Group Owner: meta-virtualization+owner@lists.yoctoproject.org
> > Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub
> [bertrand.marquis@arm.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>
>

-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end
- "Use the force Harry" - Gandalf, Star Trek II

[-- Attachment #2: Type: text/html, Size: 8391 bytes --]

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

end of thread, other threads:[~2022-03-11 11:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-03-09 11:09 [PATCH] xen: Override CC and CPP in make command line Bertrand Marquis
2022-03-10 19:43 ` [meta-virtualization] " Bruce Ashfield
2022-03-11  8:57   ` Bertrand Marquis
2022-03-11 11:03     ` Bruce Ashfield

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.