All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/2] Extend Jailhouse package with custom repo option
@ 2020-05-28 14:43 Mario Mintel
  2020-05-28 14:43 ` [Buildroot] [PATCH 1/2] package/jailhouse: bump version to 0.12 Mario Mintel
  2020-05-28 14:43 ` [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch Mario Mintel
  0 siblings, 2 replies; 9+ messages in thread
From: Mario Mintel @ 2020-05-28 14:43 UTC (permalink / raw)
  To: buildroot

Sorry for resending but this email wasn't subscribed to the buildroot
mailing list hence the last one was automatically rejected.
This Patch extends the Jailhouse package with the option to specify a
custom repository. This adds more flexibility for customs
configurations. While at it I also bumped the version from 0.11 to 0.12.

Mario Mintel (2):
  package/jailhouse: bump version to 0.12
  package/jailhouse: add option to choose custom repo/branch

 package/jailhouse/Config.in      | 36 ++++++++++++++++++++++++++++++--
 package/jailhouse/jailhouse.hash |  2 +-
 package/jailhouse/jailhouse.mk   | 17 +++++++++++++--
 3 files changed, 50 insertions(+), 5 deletions(-)

-- 
2.26.1

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

* [Buildroot] [PATCH 1/2] package/jailhouse: bump version to 0.12
  2020-05-28 14:43 [Buildroot] [PATCH 0/2] Extend Jailhouse package with custom repo option Mario Mintel
@ 2020-05-28 14:43 ` Mario Mintel
  2020-06-06 21:58   ` Thomas Petazzoni
  2020-05-28 14:43 ` [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch Mario Mintel
  1 sibling, 1 reply; 9+ messages in thread
From: Mario Mintel @ 2020-05-28 14:43 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Mario Mintel <mariomintel@gmail.com>
---
 package/jailhouse/jailhouse.hash | 2 +-
 package/jailhouse/jailhouse.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/jailhouse/jailhouse.hash b/package/jailhouse/jailhouse.hash
index 9fb4d599da..13a260e8d0 100644
--- a/package/jailhouse/jailhouse.hash
+++ b/package/jailhouse/jailhouse.hash
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256 8de2406f455db07794cc750238ce57bc897673ba2b68c56fc9ae2d8079142b33  jailhouse-0.11.tar.gz
+sha256 3777a553c2acb2b693843fe4d16ab80333879daedd47d9c9f3717c9644e6cf93  jailhouse-0.12.tar.gz
 sha256 3aafb31a2436178323663e00511f16d58fc36ea654b1457532e79d017205efd8  COPYING
diff --git a/package/jailhouse/jailhouse.mk b/package/jailhouse/jailhouse.mk
index 1aa7851707..6356c5a7aa 100644
--- a/package/jailhouse/jailhouse.mk
+++ b/package/jailhouse/jailhouse.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-JAILHOUSE_VERSION = 0.11
+JAILHOUSE_VERSION = 0.12
 JAILHOUSE_SITE = $(call github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
 JAILHOUSE_LICENSE = GPL-2.0
 JAILHOUSE_LICENSE_FILES = COPYING
-- 
2.26.1

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

* [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch
  2020-05-28 14:43 [Buildroot] [PATCH 0/2] Extend Jailhouse package with custom repo option Mario Mintel
  2020-05-28 14:43 ` [Buildroot] [PATCH 1/2] package/jailhouse: bump version to 0.12 Mario Mintel
@ 2020-05-28 14:43 ` Mario Mintel
  2020-05-29 20:48   ` Yann E. MORIN
  1 sibling, 1 reply; 9+ messages in thread
From: Mario Mintel @ 2020-05-28 14:43 UTC (permalink / raw)
  To: buildroot

In addition to official releases of Jailhouse, allow to specify a custom
Git URI + branches. This adds more flexibility for custom
configurations.

Signed-off-by: Mario Mintel <mariomintel@gmail.com>
---
 package/jailhouse/Config.in    | 36 ++++++++++++++++++++++++++++++++--
 package/jailhouse/jailhouse.mk | 17 ++++++++++++++--
 2 files changed, 49 insertions(+), 4 deletions(-)

diff --git a/package/jailhouse/Config.in b/package/jailhouse/Config.in
index 596b4951db..47523747f9 100644
--- a/package/jailhouse/Config.in
+++ b/package/jailhouse/Config.in
@@ -3,18 +3,50 @@ config BR2_PACKAGE_JAILHOUSE
 	depends on BR2_aarch64 || BR2_x86_64
 	depends on BR2_LINUX_KERNEL
 	help
-	  The Jailhouse partitioning Hypervisor based on Linux.
+	  The Jailhouse Linux-based partitioning hypervisor.
 
 	  https://github.com/siemens/jailhouse
 
 if BR2_PACKAGE_JAILHOUSE
 
+choice
+	prompt "Jailhouse Version"
+
+config BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
+	bool "Version 0.12"
+
+config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
+	bool "Custom Git repository"
+	help
+	  This option allows Buildroot to get the Jailhouse source code
+	  from a custom Git repository.
+
+endchoice
+
+if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
+
+config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI
+	string "URI of custom repository"
+	default "https://github.com/siemens/jailhouse.git"
+
+config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH
+	string "Name of Git branch"
+	default "master"
+
+endif
+
+config BR2_PACKAGE_JAILHOUSE_VERSION
+	string
+	default "0.12" if BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
+	default BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH \
+		if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
+
 config BR2_PACKAGE_JAILHOUSE_HELPER_SCRIPTS
 	bool "helper scripts"
 	depends on BR2_PACKAGE_PYTHON
 	select BR2_PACKAGE_PYTHON_MAKO # runtime
 	help
-	  Python-based helpers for the Jailhouse Hypervisor.
+	  Python-based helpers for the Jailhouse hypervisor.
 
 	  https://github.com/siemens/jailhouse
 
diff --git a/package/jailhouse/jailhouse.mk b/package/jailhouse/jailhouse.mk
index 6356c5a7aa..d134b3d1b4 100644
--- a/package/jailhouse/jailhouse.mk
+++ b/package/jailhouse/jailhouse.mk
@@ -4,10 +4,23 @@
 #
 ################################################################################
 
-JAILHOUSE_VERSION = 0.12
-JAILHOUSE_SITE = $(call github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
+JAILHOUSE_VERSION = $(call qstrip,$(BR2_PACKAGE_JAILHOUSE_VERSION))
 JAILHOUSE_LICENSE = GPL-2.0
+ifeq ($(BR2_PACKAGE_JAILHOUSE_LATEST_VERSION),y)
 JAILHOUSE_LICENSE_FILES = COPYING
+endif
+
+ifeq ($(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT),y)
+JAILHOUSE_SITE = $(call qstrip,$(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI))
+JAILHOUSE_SITE_METHOD = git
+else
+JAILHOUSE_SITE = $(call github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
+endif
+
+ifeq ($(BR2_PACKAGE_JAILHOUSE)$(BR2_PACKAGE_JAILHOUSE_CUSTIM_GIT),y)
+BR_NO_CHECK_HASH_FOR += $(JAILHOUSE_SOURCE)
+endif
+
 JAILHOUSE_DEPENDENCIES = \
 	linux
 
-- 
2.26.1

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

* [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch
  2020-05-28 14:43 ` [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch Mario Mintel
@ 2020-05-29 20:48   ` Yann E. MORIN
       [not found]     ` <3806f122-f6b0-efba-e94a-64a3729fbe8a@oth-regensburg.de>
  0 siblings, 1 reply; 9+ messages in thread
From: Yann E. MORIN @ 2020-05-29 20:48 UTC (permalink / raw)
  To: buildroot

Mario, All,

On 2020-05-28 16:43 +0200, Mario Mintel spake thusly:
> In addition to official releases of Jailhouse, allow to specify a custom
> Git URI + branches. This adds more flexibility for custom
> configurations.

The overwhelming majority of packages do not allow selecting an
alternate location. Why would jailhouse be different?

Are you trying to cover for development? In that case, the usual way is
to use the override srcdir mechanism. See BR2_PACKAGE_OVERRIDE_FILE and
provide such a file with definitions like;

    JAILHOUSE_OVERRIDE_SRCDIR = /path/to/your/local/development/tree/jailhouse

Regards,
Yann E. MORIN.

> Signed-off-by: Mario Mintel <mariomintel@gmail.com>
> ---
>  package/jailhouse/Config.in    | 36 ++++++++++++++++++++++++++++++++--
>  package/jailhouse/jailhouse.mk | 17 ++++++++++++++--
>  2 files changed, 49 insertions(+), 4 deletions(-)
> 
> diff --git a/package/jailhouse/Config.in b/package/jailhouse/Config.in
> index 596b4951db..47523747f9 100644
> --- a/package/jailhouse/Config.in
> +++ b/package/jailhouse/Config.in
> @@ -3,18 +3,50 @@ config BR2_PACKAGE_JAILHOUSE
>  	depends on BR2_aarch64 || BR2_x86_64
>  	depends on BR2_LINUX_KERNEL
>  	help
> -	  The Jailhouse partitioning Hypervisor based on Linux.
> +	  The Jailhouse Linux-based partitioning hypervisor.
>  
>  	  https://github.com/siemens/jailhouse
>  
>  if BR2_PACKAGE_JAILHOUSE
>  
> +choice
> +	prompt "Jailhouse Version"
> +
> +config BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
> +	bool "Version 0.12"
> +
> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
> +	bool "Custom Git repository"
> +	help
> +	  This option allows Buildroot to get the Jailhouse source code
> +	  from a custom Git repository.
> +
> +endchoice
> +
> +if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
> +
> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI
> +	string "URI of custom repository"
> +	default "https://github.com/siemens/jailhouse.git"
> +
> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH
> +	string "Name of Git branch"
> +	default "master"
> +
> +endif
> +
> +config BR2_PACKAGE_JAILHOUSE_VERSION
> +	string
> +	default "0.12" if BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
> +	default BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH \
> +		if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
> +
>  config BR2_PACKAGE_JAILHOUSE_HELPER_SCRIPTS
>  	bool "helper scripts"
>  	depends on BR2_PACKAGE_PYTHON
>  	select BR2_PACKAGE_PYTHON_MAKO # runtime
>  	help
> -	  Python-based helpers for the Jailhouse Hypervisor.
> +	  Python-based helpers for the Jailhouse hypervisor.
>  
>  	  https://github.com/siemens/jailhouse
>  
> diff --git a/package/jailhouse/jailhouse.mk b/package/jailhouse/jailhouse.mk
> index 6356c5a7aa..d134b3d1b4 100644
> --- a/package/jailhouse/jailhouse.mk
> +++ b/package/jailhouse/jailhouse.mk
> @@ -4,10 +4,23 @@
>  #
>  ################################################################################
>  
> -JAILHOUSE_VERSION = 0.12
> -JAILHOUSE_SITE = $(call github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
> +JAILHOUSE_VERSION = $(call qstrip,$(BR2_PACKAGE_JAILHOUSE_VERSION))
>  JAILHOUSE_LICENSE = GPL-2.0
> +ifeq ($(BR2_PACKAGE_JAILHOUSE_LATEST_VERSION),y)
>  JAILHOUSE_LICENSE_FILES = COPYING
> +endif
> +
> +ifeq ($(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT),y)
> +JAILHOUSE_SITE = $(call qstrip,$(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI))
> +JAILHOUSE_SITE_METHOD = git
> +else
> +JAILHOUSE_SITE = $(call github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
> +endif
> +
> +ifeq ($(BR2_PACKAGE_JAILHOUSE)$(BR2_PACKAGE_JAILHOUSE_CUSTIM_GIT),y)
> +BR_NO_CHECK_HASH_FOR += $(JAILHOUSE_SOURCE)
> +endif
> +
>  JAILHOUSE_DEPENDENCIES = \
>  	linux
>  
> -- 
> 2.26.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch
       [not found]     ` <3806f122-f6b0-efba-e94a-64a3729fbe8a@oth-regensburg.de>
@ 2020-05-30 17:28       ` Mario Mintel
  2020-06-01 16:23         ` Mario Mintel
  0 siblings, 1 reply; 9+ messages in thread
From: Mario Mintel @ 2020-05-30 17:28 UTC (permalink / raw)
  To: buildroot

Hi everyone,

Am Fr., 29. Mai 2020 um 23:40 Uhr schrieb Ralf Ramsauer <
ralf.ramsauer@oth-regensburg.de>:

> Hi Yann,
>
> On 5/29/20 10:48 PM, Yann E. MORIN wrote:
> > Mario, All,
> >
> > On 2020-05-28 16:43 +0200, Mario Mintel spake thusly:
> >> In addition to official releases of Jailhouse, allow to specify a custom
> >> Git URI + branches. This adds more flexibility for custom
> >> configurations.
> >
> > The overwhelming majority of packages do not allow selecting an
> > alternate location. Why would jailhouse be different?
>
> Jailhouse requires system-specific configurations. Those configurations
> are compiled from C source files to binaries during the build process.
> While upstream Jailhouse comes with a lot of samples for supported
> systems, you will need a lot of fine tuning to for a specific use case.
>
> >
> > Are you trying to cover for development? In that case, the usual way is
>
> In our case -- Yes.
>
> > to use the override srcdir mechanism. See BR2_PACKAGE_OVERRIDE_FILE and
> > provide such a file with definitions like;
> >
> >     JAILHOUSE_OVERRIDE_SRCDIR =
> /path/to/your/local/development/tree/jailhouse
>
> Oh, that could maybe work. Mario, could you please check that? In case
> this works, we can simply add those definitions to our br2-external tree.
>
>

Yeah sure I can try that. Although I won't be able to until Monday as I
have no
access to my working computer as of right now.

I will report back as soon as I have results.

Greetings,
Mario


> Thanks
>   Ralf
>
> >
> > Regards,
> > Yann E. MORIN.
> >
> >> Signed-off-by: Mario Mintel <mariomintel@gmail.com>
> >> ---
> >>  package/jailhouse/Config.in    | 36 ++++++++++++++++++++++++++++++++--
> >>  package/jailhouse/jailhouse.mk | 17 ++++++++++++++--
> >>  2 files changed, 49 insertions(+), 4 deletions(-)
> >>
> >> diff --git a/package/jailhouse/Config.in b/package/jailhouse/Config.in
> >> index 596b4951db..47523747f9 100644
> >> --- a/package/jailhouse/Config.in
> >> +++ b/package/jailhouse/Config.in
> >> @@ -3,18 +3,50 @@ config BR2_PACKAGE_JAILHOUSE
> >>      depends on BR2_aarch64 || BR2_x86_64
> >>      depends on BR2_LINUX_KERNEL
> >>      help
> >> -      The Jailhouse partitioning Hypervisor based on Linux.
> >> +      The Jailhouse Linux-based partitioning hypervisor.
> >>
> >>        https://github.com/siemens/jailhouse
> >>
> >>  if BR2_PACKAGE_JAILHOUSE
> >>
> >> +choice
> >> +    prompt "Jailhouse Version"
> >> +
> >> +config BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
> >> +    bool "Version 0.12"
> >> +
> >> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
> >> +    bool "Custom Git repository"
> >> +    help
> >> +      This option allows Buildroot to get the Jailhouse source code
> >> +      from a custom Git repository.
> >> +
> >> +endchoice
> >> +
> >> +if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
> >> +
> >> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI
> >> +    string "URI of custom repository"
> >> +    default "https://github.com/siemens/jailhouse.git"
> >> +
> >> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH
> >> +    string "Name of Git branch"
> >> +    default "master"
> >> +
> >> +endif
> >> +
> >> +config BR2_PACKAGE_JAILHOUSE_VERSION
> >> +    string
> >> +    default "0.12" if BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
> >> +    default BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH \
> >> +            if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
> >> +
> >>  config BR2_PACKAGE_JAILHOUSE_HELPER_SCRIPTS
> >>      bool "helper scripts"
> >>      depends on BR2_PACKAGE_PYTHON
> >>      select BR2_PACKAGE_PYTHON_MAKO # runtime
> >>      help
> >> -      Python-based helpers for the Jailhouse Hypervisor.
> >> +      Python-based helpers for the Jailhouse hypervisor.
> >>
> >>        https://github.com/siemens/jailhouse
> >>
> >> diff --git a/package/jailhouse/jailhouse.mk b/package/jailhouse/
> jailhouse.mk
> >> index 6356c5a7aa..d134b3d1b4 100644
> >> --- a/package/jailhouse/jailhouse.mk
> >> +++ b/package/jailhouse/jailhouse.mk
> >> @@ -4,10 +4,23 @@
> >>  #
> >>
> ################################################################################
> >>
> >> -JAILHOUSE_VERSION = 0.12
> >> -JAILHOUSE_SITE = $(call github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
> >> +JAILHOUSE_VERSION = $(call qstrip,$(BR2_PACKAGE_JAILHOUSE_VERSION))
> >>  JAILHOUSE_LICENSE = GPL-2.0
> >> +ifeq ($(BR2_PACKAGE_JAILHOUSE_LATEST_VERSION),y)
> >>  JAILHOUSE_LICENSE_FILES = COPYING
> >> +endif
> >> +
> >> +ifeq ($(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT),y)
> >> +JAILHOUSE_SITE = $(call qstrip,$(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI))
> >> +JAILHOUSE_SITE_METHOD = git
> >> +else
> >> +JAILHOUSE_SITE = $(call github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
> >> +endif
> >> +
> >> +ifeq ($(BR2_PACKAGE_JAILHOUSE)$(BR2_PACKAGE_JAILHOUSE_CUSTIM_GIT),y)
> >> +BR_NO_CHECK_HASH_FOR += $(JAILHOUSE_SOURCE)
> >> +endif
> >> +
> >>  JAILHOUSE_DEPENDENCIES = \
> >>      linux
> >>
> >> --
> >> 2.26.1
> >>
> >> _______________________________________________
> >> buildroot mailing list
> >> buildroot at busybox.net
> >> http://lists.busybox.net/mailman/listinfo/buildroot
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20200530/ff0a426a/attachment.html>

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

* [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch
  2020-05-30 17:28       ` Mario Mintel
@ 2020-06-01 16:23         ` Mario Mintel
  2020-06-01 21:19           ` Yann E. MORIN
  0 siblings, 1 reply; 9+ messages in thread
From: Mario Mintel @ 2020-06-01 16:23 UTC (permalink / raw)
  To: buildroot

Hi again,

Am Sa., 30. Mai 2020 um 19:28 Uhr schrieb Mario Mintel <
mariomintel@gmail.com>:

> Hi everyone,
>
> Am Fr., 29. Mai 2020 um 23:40 Uhr schrieb Ralf Ramsauer <
> ralf.ramsauer at oth-regensburg.de>:
>
>> Hi Yann,
>>
>> On 5/29/20 10:48 PM, Yann E. MORIN wrote:
>> > Mario, All,
>> >
>> > On 2020-05-28 16:43 +0200, Mario Mintel spake thusly:
>> >> In addition to official releases of Jailhouse, allow to specify a
>> custom
>> >> Git URI + branches. This adds more flexibility for custom
>> >> configurations.
>> >
>> > The overwhelming majority of packages do not allow selecting an
>> > alternate location. Why would jailhouse be different?
>>
>> Jailhouse requires system-specific configurations. Those configurations
>> are compiled from C source files to binaries during the build process.
>> While upstream Jailhouse comes with a lot of samples for supported
>> systems, you will need a lot of fine tuning to for a specific use case.
>>
>> >
>> > Are you trying to cover for development? In that case, the usual way is
>>
>> In our case -- Yes.
>>
>> > to use the override srcdir mechanism. See BR2_PACKAGE_OVERRIDE_FILE and
>> > provide such a file with definitions like;
>> >
>> >     JAILHOUSE_OVERRIDE_SRCDIR =
>> /path/to/your/local/development/tree/jailhouse
>>
>> Oh, that could maybe work. Mario, could you please check that? In case
>> this works, we can simply add those definitions to our br2-external tree.
>>
>>
>
> Yeah sure I can try that. Although I won't be able to until Monday as I
> have no
> access to my working computer as of right now.
>
> I will report back as soon as I have results.
>

It does work as proposed by Yann. I wasn't aware of that option. I guess
that makes this patch redundant.

Greetings,
Mario


>
> Greetings,
> Mario
>
>
>> Thanks
>>   Ralf
>>
>> >
>> > Regards,
>> > Yann E. MORIN.
>> >
>> >> Signed-off-by: Mario Mintel <mariomintel@gmail.com>
>> >> ---
>> >>  package/jailhouse/Config.in    | 36 ++++++++++++++++++++++++++++++++--
>> >>  package/jailhouse/jailhouse.mk | 17 ++++++++++++++--
>> >>  2 files changed, 49 insertions(+), 4 deletions(-)
>> >>
>> >> diff --git a/package/jailhouse/Config.in b/package/jailhouse/Config.in
>> >> index 596b4951db..47523747f9 100644
>> >> --- a/package/jailhouse/Config.in
>> >> +++ b/package/jailhouse/Config.in
>> >> @@ -3,18 +3,50 @@ config BR2_PACKAGE_JAILHOUSE
>> >>      depends on BR2_aarch64 || BR2_x86_64
>> >>      depends on BR2_LINUX_KERNEL
>> >>      help
>> >> -      The Jailhouse partitioning Hypervisor based on Linux.
>> >> +      The Jailhouse Linux-based partitioning hypervisor.
>> >>
>> >>        https://github.com/siemens/jailhouse
>> >>
>> >>  if BR2_PACKAGE_JAILHOUSE
>> >>
>> >> +choice
>> >> +    prompt "Jailhouse Version"
>> >> +
>> >> +config BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
>> >> +    bool "Version 0.12"
>> >> +
>> >> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
>> >> +    bool "Custom Git repository"
>> >> +    help
>> >> +      This option allows Buildroot to get the Jailhouse source code
>> >> +      from a custom Git repository.
>> >> +
>> >> +endchoice
>> >> +
>> >> +if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
>> >> +
>> >> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI
>> >> +    string "URI of custom repository"
>> >> +    default "https://github.com/siemens/jailhouse.git"
>> >> +
>> >> +config BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH
>> >> +    string "Name of Git branch"
>> >> +    default "master"
>> >> +
>> >> +endif
>> >> +
>> >> +config BR2_PACKAGE_JAILHOUSE_VERSION
>> >> +    string
>> >> +    default "0.12" if BR2_PACKAGE_JAILHOUSE_LATEST_VERSION
>> >> +    default BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_BRANCH \
>> >> +            if BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT
>> >> +
>> >>  config BR2_PACKAGE_JAILHOUSE_HELPER_SCRIPTS
>> >>      bool "helper scripts"
>> >>      depends on BR2_PACKAGE_PYTHON
>> >>      select BR2_PACKAGE_PYTHON_MAKO # runtime
>> >>      help
>> >> -      Python-based helpers for the Jailhouse Hypervisor.
>> >> +      Python-based helpers for the Jailhouse hypervisor.
>> >>
>> >>        https://github.com/siemens/jailhouse
>> >>
>> >> diff --git a/package/jailhouse/jailhouse.mk b/package/jailhouse/
>> jailhouse.mk
>> >> index 6356c5a7aa..d134b3d1b4 100644
>> >> --- a/package/jailhouse/jailhouse.mk
>> >> +++ b/package/jailhouse/jailhouse.mk
>> >> @@ -4,10 +4,23 @@
>> >>  #
>> >>
>> ################################################################################
>> >>
>> >> -JAILHOUSE_VERSION = 0.12
>> >> -JAILHOUSE_SITE = $(call
>> github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
>> >> +JAILHOUSE_VERSION = $(call qstrip,$(BR2_PACKAGE_JAILHOUSE_VERSION))
>> >>  JAILHOUSE_LICENSE = GPL-2.0
>> >> +ifeq ($(BR2_PACKAGE_JAILHOUSE_LATEST_VERSION),y)
>> >>  JAILHOUSE_LICENSE_FILES = COPYING
>> >> +endif
>> >> +
>> >> +ifeq ($(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT),y)
>> >> +JAILHOUSE_SITE = $(call
>> qstrip,$(BR2_PACKAGE_JAILHOUSE_CUSTOM_GIT_URI))
>> >> +JAILHOUSE_SITE_METHOD = git
>> >> +else
>> >> +JAILHOUSE_SITE = $(call
>> github,siemens,jailhouse,v$(JAILHOUSE_VERSION))
>> >> +endif
>> >> +
>> >> +ifeq ($(BR2_PACKAGE_JAILHOUSE)$(BR2_PACKAGE_JAILHOUSE_CUSTIM_GIT),y)
>> >> +BR_NO_CHECK_HASH_FOR += $(JAILHOUSE_SOURCE)
>> >> +endif
>> >> +
>> >>  JAILHOUSE_DEPENDENCIES = \
>> >>      linux
>> >>
>> >> --
>> >> 2.26.1
>> >>
>> >> _______________________________________________
>> >> buildroot mailing list
>> >> buildroot at busybox.net
>> >> http://lists.busybox.net/mailman/listinfo/buildroot
>> >
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20200601/7ace33fb/attachment.html>

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

* [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch
  2020-06-01 16:23         ` Mario Mintel
@ 2020-06-01 21:19           ` Yann E. MORIN
       [not found]             ` <8ede0323-ef3b-a405-81dc-80f92085ab93@oth-regensburg.de>
  0 siblings, 1 reply; 9+ messages in thread
From: Yann E. MORIN @ 2020-06-01 21:19 UTC (permalink / raw)
  To: buildroot

Mario, Ralf, All,

On 2020-06-01 18:23 +0200, Mario Mintel spake thusly:
> Am Sa., 30. Mai 2020 um 19:28?Uhr schrieb Mario Mintel < [1]mariomintel@gmail.com>:
>   Am Fr., 29. Mai 2020 um 23:40?Uhr schrieb Ralf Ramsauer < [2]ralf.ramsauer@oth-regensburg.de>:
>   On 5/29/20 10:48 PM, Yann E. MORIN wrote:
>   > Mario, All,
>   > On 2020-05-28 16:43 +0200, Mario Mintel spake thusly:
>   >> In addition to official releases of Jailhouse, allow to specify a custom
>   >> Git URI + branches. This adds more flexibility for custom
>   >> configurations.
>   > The overwhelming majority of packages do not allow selecting an
>   > alternate location. Why would jailhouse be different?
> 
>   Jailhouse requires system-specific configurations. Those configurations
>   are compiled from C source files to binaries during the build process.
>   While upstream Jailhouse comes with a lot of samples for supported
>   systems, you will need a lot of fine tuning to for a specific use case.

I am not sure I entirely followed... Note that I am totally ignorant to
how jailhouse works (and I barely know what it is). So I had a quick
look into the github repo, and I noticed this:

    A system configuration can be created on an x86 target system by
    running the following command:

        jailhouse config create sysconfig.c

    In order to translate this into the required binary form, place
    this file in the configs/x86/ directory. The build system will pick
    up every .c file from there and generate a corresponding .cell file.

Is this what you were trying to explain?

If so, then I think we need a way for people to indeed provide their
cells descriptions files, so that they do get compiled by jailhouse,
without resorting to using an OVERRDIE_SRCDIR.

So I see a few options:

 1- let people provide those .c files as a patch against jailhouse. This
    requires no infra in Buildroot, but this is not very convenient;

 2- add a configuration option in jailhouse/Config.in, which people
    could set as a path to a directory with .c files; those would be
    copied into the jailhouse build directory before the actual build,
    so the documented way (see above) will be used; those files would
    have to be in a br2-external tree or whatever, but not in a package
    (because we'd have no way to ensure that package be extracted before
    jailhouse gets built).

 3- let people write their own package(s) (e.g. in a br2-external tree)
    that only builds the cell files. That package would depend on
    jailhouse (or rather, the to-be-introduced host-jailhouse). And
    packages could also provide their own cell definitions, too...

I think option 3 is the best solution, as it is the most flexible and
most generic one. However, it will depend on the possibility to
introduce a host-jailhoue package that can just install the 'jailhouse
cell cross compiler'. As far as I see, this is just a bunch of objcopy,
but this is quite tightly integrated into the kernel Kbiuld process, so
might not so simple to come up with.

Option 2 is probably a good compromise if option 3 turns out to be too
difficult to come up with...

[--SNIP--]
> It does work as proposed by Yann. I wasn't aware of that option. I
> guess that makes this patch redundant.

Using a completely separate tree? Yes, I think this is not an option.

However, given the above, maybe we still need a way for people to
provide their cells descriptions and have them somehow copied at build
(or configure) time...

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch
       [not found]             ` <8ede0323-ef3b-a405-81dc-80f92085ab93@oth-regensburg.de>
@ 2020-06-02 10:53               ` Jan Kiszka
  0 siblings, 0 replies; 9+ messages in thread
From: Jan Kiszka @ 2020-06-02 10:53 UTC (permalink / raw)
  To: buildroot

On 02.06.20 12:04, Ralf Ramsauer wrote:
> Hi Yann,
> 
> On 6/1/20 11:19 PM, Yann E. MORIN wrote:
>> Mario, Ralf, All,
>>
>> On 2020-06-01 18:23 +0200, Mario Mintel spake thusly:
>>> Am Sa., 30. Mai 2020 um 19:28?Uhr schrieb Mario Mintel < [1]mariomintel@gmail.com>:
>>>   Am Fr., 29. Mai 2020 um 23:40?Uhr schrieb Ralf Ramsauer < [2]ralf.ramsauer@oth-regensburg.de>:
>>>   On 5/29/20 10:48 PM, Yann E. MORIN wrote:
>>>   > Mario, All,
>>>   > On 2020-05-28 16:43 +0200, Mario Mintel spake thusly:
>>>   >> In addition to official releases of Jailhouse, allow to specify a custom
>>>   >> Git URI + branches. This adds more flexibility for custom
>>>   >> configurations.
>>>   > The overwhelming majority of packages do not allow selecting an
>>>   > alternate location. Why would jailhouse be different?
>>>
>>>   Jailhouse requires system-specific configurations. Those configurations
>>>   are compiled from C source files to binaries during the build process.
>>>   While upstream Jailhouse comes with a lot of samples for supported
>>>   systems, you will need a lot of fine tuning to for a specific use case.
>>
>> I am not sure I entirely followed... Note that I am totally ignorant to
>> how jailhouse works (and I barely know what it is). So I had a quick
>> look into the github repo, and I noticed this:
>>
>>     A system configuration can be created on an x86 target system by
>>     running the following command:
>>
>>         jailhouse config create sysconfig.c
>>
>>     In order to translate this into the required binary form, place
>>     this file in the configs/x86/ directory. The build system will pick
>>     up every .c file from there and generate a corresponding .cell file.
>>
>> Is this what you were trying to explain?
> 
> Yes. And that we want to use a git repository rather than a fixed
> release for development reasons.
> 
>>
>> If so, then I think we need a way for people to indeed provide their
>> cells descriptions files, so that they do get compiled by jailhouse,
>> without resorting to using an OVERRDIE_SRCDIR.
> 
> For the operational use-case, yes. For development purposes,
> OVERRIDE_SRCDIR is works fine.
> 
>>
>> So I see a few options:
>>
>>  1- let people provide those .c files as a patch against jailhouse. This
>>     requires no infra in Buildroot, but this is not very convenient;
>>
>>  2- add a configuration option in jailhouse/Config.in, which people
>>     could set as a path to a directory with .c files; those would be
>>     copied into the jailhouse build directory before the actual build,
>>     so the documented way (see above) will be used; those files would
>>     have to be in a br2-external tree or whatever, but not in a package
>>     (because we'd have no way to ensure that package be extracted before
>>     jailhouse gets built).
>>
>>  3- let people write their own package(s) (e.g. in a br2-external tree)
>>     that only builds the cell files. That package would depend on
>>     jailhouse (or rather, the to-be-introduced host-jailhouse). And
>>     packages could also provide their own cell definitions, too...
>>
>> I think option 3 is the best solution, as it is the most flexible and
>> most generic one. However, it will depend on the possibility to
>> introduce a host-jailhoue package that can just install the 'jailhouse
>> cell cross compiler'. As far as I see, this is just a bunch of objcopy,
>> but this is quite tightly integrated into the kernel Kbiuld process, so
>> might not so simple to come up with.
>>
>> Option 2 is probably a good compromise if option 3 turns out to be too
>> difficult to come up with...
> 
> True, option 3 would probably be the best way, though it could get a bit
> tricky.
> 
> BTW, Jan, is there a reason why we don't (optionally) install the
> hypervisor's headers yet? This would probably be enough to allow us for
> compiling cell configurations apart from Jailhouse's build process.

No particular reason, we could indeed enable a -dev package.

Installation is a bit inconsistent so far. We also do not install the
generated configs and demo inmates in upstream, we do so in
jailhouse-images.

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

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

* [Buildroot] [PATCH 1/2] package/jailhouse: bump version to 0.12
  2020-05-28 14:43 ` [Buildroot] [PATCH 1/2] package/jailhouse: bump version to 0.12 Mario Mintel
@ 2020-06-06 21:58   ` Thomas Petazzoni
  0 siblings, 0 replies; 9+ messages in thread
From: Thomas Petazzoni @ 2020-06-06 21:58 UTC (permalink / raw)
  To: buildroot

On Thu, 28 May 2020 16:43:32 +0200
Mario Mintel <mariomintel@gmail.com> wrote:

> Signed-off-by: Mario Mintel <mariomintel@gmail.com>
> ---
>  package/jailhouse/jailhouse.hash | 2 +-
>  package/jailhouse/jailhouse.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

end of thread, other threads:[~2020-06-06 21:58 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-28 14:43 [Buildroot] [PATCH 0/2] Extend Jailhouse package with custom repo option Mario Mintel
2020-05-28 14:43 ` [Buildroot] [PATCH 1/2] package/jailhouse: bump version to 0.12 Mario Mintel
2020-06-06 21:58   ` Thomas Petazzoni
2020-05-28 14:43 ` [Buildroot] [PATCH 2/2] package/jailhouse: add option to choose custom repo/branch Mario Mintel
2020-05-29 20:48   ` Yann E. MORIN
     [not found]     ` <3806f122-f6b0-efba-e94a-64a3729fbe8a@oth-regensburg.de>
2020-05-30 17:28       ` Mario Mintel
2020-06-01 16:23         ` Mario Mintel
2020-06-01 21:19           ` Yann E. MORIN
     [not found]             ` <8ede0323-ef3b-a405-81dc-80f92085ab93@oth-regensburg.de>
2020-06-02 10:53               ` Jan Kiszka

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.