All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
@ 2022-10-18 23:46 Giulio Benetti
  2022-10-19 16:16 ` Angelo Compagnucci
  2022-10-31 12:25 ` Thomas Petazzoni via buildroot
  0 siblings, 2 replies; 12+ messages in thread
From: Giulio Benetti @ 2022-10-18 23:46 UTC (permalink / raw)
  To: buildroot; +Cc: Angelo Compagnucci, Giulio Benetti

At the moment all APIs folders are copied to target increasing the size of
rootfs of ~190MB. Allow to select which API folders we want to copy to
target to shrink rootfs down.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
---
 package/mono/Config.in | 16 ++++++++++++++++
 package/mono/mono.mk   | 12 ++++++++++++
 2 files changed, 28 insertions(+)

diff --git a/package/mono/Config.in b/package/mono/Config.in
index 76178bcf9b..8690ee68ef 100644
--- a/package/mono/Config.in
+++ b/package/mono/Config.in
@@ -23,6 +23,22 @@ config BR2_PACKAGE_MONO
 
 	  http://download.mono-project.com/sources/mono/
 
+config BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
+	bool "Specify folders to install to target"
+	help
+	  Allow to specify which Mono folder to install to target
+
+if BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
+
+config BR2_PACKAGE_MONO_FOLDERS_TO_INSTALL
+	string "Mono folders to install to target"
+	help
+	  Paths to Mono folders to install to target /usr/lib/mono/.
+	  Only these folders will be copied to the target and not all
+	  the built ones. You can provide a list of folders separated by
+	  by spaces.
+
+endif
 comment "mono needs a toolchain w/ C++, NPTL, dynamic library"
 	depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS
 	depends on !BR2_INSTALL_LIBSTDCPP || \
diff --git a/package/mono/mono.mk b/package/mono/mono.mk
index 219effc5d3..8036d23205 100644
--- a/package/mono/mono.mk
+++ b/package/mono/mono.mk
@@ -30,10 +30,22 @@ MONO_CONF_OPTS = $(MONO_COMMON_CONF_OPTS) --disable-mcs-build
 
 # The libraries have been built by the host-mono build. Since they are
 # architecture-independent, we simply copy them to the target.
+ifeq ($(BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL),y)
+# Copy only selected folders
+define MONO_INSTALL_LIBS
+	mkdir -p $(TARGET_DIR)/usr/lib/mono
+	(for dir in $(call qstrip,$(BR2_PACKAGE_MONO_FOLDERS_TO_INSTALL)); do \
+		rsync -av --exclude=*.so --exclude=*.mdb \
+		$(HOST_DIR)/lib/mono/$${dir} $(TARGET_DIR)/usr/lib/mono; \
+	done)
+endef
+else
+# Copy all folders
 define MONO_INSTALL_LIBS
 	rsync -av --exclude=*.so --exclude=*.mdb \
 		$(HOST_DIR)/lib/mono $(TARGET_DIR)/usr/lib/
 endef
+endif
 
 MONO_POST_INSTALL_TARGET_HOOKS += MONO_INSTALL_LIBS
 
-- 
2.34.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-10-18 23:46 [Buildroot] [PATCH] package/mono: allow to select which folders to install to target Giulio Benetti
@ 2022-10-19 16:16 ` Angelo Compagnucci
  2022-10-31 12:25 ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 12+ messages in thread
From: Angelo Compagnucci @ 2022-10-19 16:16 UTC (permalink / raw)
  To: Giulio Benetti; +Cc: Angelo Compagnucci, buildroot


[-- Attachment #1.1: Type: text/plain, Size: 3351 bytes --]

On Wed, Oct 19, 2022 at 1:46 AM Giulio Benetti <
giulio.benetti@benettiengineering.com> wrote:

> At the moment all APIs folders are copied to target increasing the size of
> rootfs of ~190MB. Allow to select which API folders we want to copy to
> target to shrink rootfs down.
>
> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
>
Reviewed-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Tested-by: Angelo Compagnucci <angelo@amarulasolutions.com>

> ---
>

Looks good to me, even if I'm not sure how much this will be used. Mono is
usually run on beefy hardware where you have plenty of space. It's a nice
addition anyway.

 package/mono/Config.in | 16 ++++++++++++++++
>  package/mono/mono.mk   | 12 ++++++++++++
>  2 files changed, 28 insertions(+)
>
> diff --git a/package/mono/Config.in b/package/mono/Config.in
> index 76178bcf9b..8690ee68ef 100644
> --- a/package/mono/Config.in
> +++ b/package/mono/Config.in
> @@ -23,6 +23,22 @@ config BR2_PACKAGE_MONO
>
>           http://download.mono-project.com/sources/mono/
>
> +config BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
> +       bool "Specify folders to install to target"
> +       help
> +         Allow to specify which Mono folder to install to target
> +
> +if BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
> +
> +config BR2_PACKAGE_MONO_FOLDERS_TO_INSTALL
> +       string "Mono folders to install to target"
> +       help
> +         Paths to Mono folders to install to target /usr/lib/mono/.
> +         Only these folders will be copied to the target and not all
> +         the built ones. You can provide a list of folders separated by
> +         by spaces.
> +
> +endif
>  comment "mono needs a toolchain w/ C++, NPTL, dynamic library"
>         depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS
>         depends on !BR2_INSTALL_LIBSTDCPP || \
> diff --git a/package/mono/mono.mk b/package/mono/mono.mk
> index 219effc5d3..8036d23205 100644
> --- a/package/mono/mono.mk
> +++ b/package/mono/mono.mk
> @@ -30,10 +30,22 @@ MONO_CONF_OPTS = $(MONO_COMMON_CONF_OPTS)
> --disable-mcs-build
>
>  # The libraries have been built by the host-mono build. Since they are
>  # architecture-independent, we simply copy them to the target.
> +ifeq ($(BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL),y)
> +# Copy only selected folders
> +define MONO_INSTALL_LIBS
> +       mkdir -p $(TARGET_DIR)/usr/lib/mono
> +       (for dir in $(call qstrip,$(BR2_PACKAGE_MONO_FOLDERS_TO_INSTALL));
> do \
> +               rsync -av --exclude=*.so --exclude=*.mdb \
> +               $(HOST_DIR)/lib/mono/$${dir} $(TARGET_DIR)/usr/lib/mono; \
> +       done)
> +endef
> +else
> +# Copy all folders
>  define MONO_INSTALL_LIBS
>         rsync -av --exclude=*.so --exclude=*.mdb \
>                 $(HOST_DIR)/lib/mono $(TARGET_DIR)/usr/lib/
>  endef
> +endif
>
>  MONO_POST_INSTALL_TARGET_HOOKS += MONO_INSTALL_LIBS
>
> --
> 2.34.1
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
>


-- 

Angelo Compagnucci

Software Engineer

angelo@amarulasolutions.com
__________________________________
Amarula Solutions SRL

Via le Canevare 30, 31100 Treviso, Veneto, IT

T. +39 (0)42 243 5310
info@amarulasolutions.com

www.amarulasolutions.com
[`as] https://www.amarulasolutions.com|

[-- Attachment #1.2: Type: text/html, Size: 8862 bytes --]

[-- Attachment #2: Type: text/plain, Size: 150 bytes --]

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-10-18 23:46 [Buildroot] [PATCH] package/mono: allow to select which folders to install to target Giulio Benetti
  2022-10-19 16:16 ` Angelo Compagnucci
@ 2022-10-31 12:25 ` Thomas Petazzoni via buildroot
  2022-10-31 12:54   ` Yann E. MORIN
  2022-11-01  2:19   ` Giulio Benetti
  1 sibling, 2 replies; 12+ messages in thread
From: Thomas Petazzoni via buildroot @ 2022-10-31 12:25 UTC (permalink / raw)
  To: Giulio Benetti; +Cc: Angelo Compagnucci, Yann E. MORIN, buildroot

Hello Giulio,

On Wed, 19 Oct 2022 01:46:17 +0200
Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:

> At the moment all APIs folders are copied to target increasing the size of
> rootfs of ~190MB. Allow to select which API folders we want to copy to
> target to shrink rootfs down.
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>

Thanks for proposing this.

Practically speaking, could you describe which folders are needed in a
typical scenario you've had?

Here, I have these ones:

drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 2.0-api
drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 3.5-api
drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 4.0
drwxr-xr-x   2 thomas thomas 12288 oct.  25 22:58 4.0-api
drwxr-xr-x   4 thomas thomas 16384 oct.  25 22:58 4.5
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.1-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.2-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.1-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.2-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.1-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.2-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7-api
drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.8-api
drwxr-xr-x 145 thomas thomas 12288 oct.  25 22:56 gac
drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 lldb
drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 mono-configuration-crypto
drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 monodoc
drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 msbuild
drwxr-xr-x   6 thomas thomas  4096 oct.  25 22:56 xbuild
drwxr-xr-x   4 thomas thomas  4096 oct.  25 22:56 xbuild-frameworks

> +config BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
> +	bool "Specify folders to install to target"
> +	help
> +	  Allow to specify which Mono folder to install to target

I don't really have a very good suggestion, but I don't like the name
of the option. We rarely have option names that are "sentences", i.e
"specify folders to install" is a sentence.

Should we instead have a single string option
BR2_PACKAGE_MONO_INSTALL_LIB_DIRS, which is empty by default. When
empty, it means all folders are installed. Otherwise, only the
specified folders are installed.

The other obvious question is whether this shouldn't simply be left as
something to do in a post-build script. Even though I admit that
reducing 190 MB down to something reasonable can be seen as something
that is almost mandatory.

Or alternatively, do we have a better way, where we could automate this
selection of which folders are needed?

Thanks!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-10-31 12:25 ` Thomas Petazzoni via buildroot
@ 2022-10-31 12:54   ` Yann E. MORIN
  2022-11-01  2:27     ` Giulio Benetti
  2022-11-01  2:19   ` Giulio Benetti
  1 sibling, 1 reply; 12+ messages in thread
From: Yann E. MORIN @ 2022-10-31 12:54 UTC (permalink / raw)
  To: Thomas Petazzoni; +Cc: Giulio Benetti, Angelo Compagnucci, buildroot

Giulio, Thomas, All,

On 2022-10-31 13:25 +0100, Thomas Petazzoni via buildroot spake thusly:
> On Wed, 19 Oct 2022 01:46:17 +0200
> Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> > At the moment all APIs folders are copied to target increasing the size of
> > rootfs of ~190MB. Allow to select which API folders we want to copy to
> > target to shrink rootfs down.
> > 
> > Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> Practically speaking, could you describe which folders are needed in a
> typical scenario you've had?

Yes, can you provide a rationale for when only a subset of APIs is
needed?

> Here, I have these ones:
> 
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 2.0-api
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 3.5-api
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 4.0
> drwxr-xr-x   2 thomas thomas 12288 oct.  25 22:58 4.0-api
> drwxr-xr-x   4 thomas thomas 16384 oct.  25 22:58 4.5
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.1-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.2-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.1-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.2-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.1-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.2-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.8-api
> drwxr-xr-x 145 thomas thomas 12288 oct.  25 22:56 gac
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 lldb
> drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 mono-configuration-crypto
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 monodoc
> drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 msbuild
> drwxr-xr-x   6 thomas thomas  4096 oct.  25 22:56 xbuild
> drwxr-xr-x   4 thomas thomas  4096 oct.  25 22:56 xbuild-frameworks

It looks like we have three sets of directories here;
  - version-based dirs: from 2.0-api up to 4.8-api
  - gac/: big number of subdirs in there...
  - the rest

Your change trat them all on the same level, but are they all really
superfluous? Is there a set that absolutely needs to be there, or can we
really do with just one (or even none, see below)?

Note: can we unconditionally get rid of monodoc/? Of msbuild/? Of lldb/?

> > +config BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
> > +	bool "Specify folders to install to target"
> > +	help
> > +	  Allow to specify which Mono folder to install to target
> 
> I don't really have a very good suggestion, but I don't like the name
> of the option. We rarely have option names that are "sentences", i.e
> "specify folders to install" is a sentence.
> 
> Should we instead have a single string option
> BR2_PACKAGE_MONO_INSTALL_LIB_DIRS, which is empty by default. When
> empty, it means all folders are installed. Otherwise, only the
> specified folders are installed.

Agreed. I expect that having no API level installed would yield a
non-working system, so:

    config BR2_PACKAGE_MONO_API_VERSIONS
        string "API versions to install"
        help
          Keep empty to install all.

> The other obvious question is whether this shouldn't simply be left as
> something to do in a post-build script. Even though I admit that
> reducing 190 MB down to something reasonable can be seen as something
> that is almost mandatory.
> 
> Or alternatively, do we have a better way, where we could automate this
> selection of which folders are needed?

I would prefer we avoid carrying the list of versionned APIs (and the
rest, see above).

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.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-10-31 12:25 ` Thomas Petazzoni via buildroot
  2022-10-31 12:54   ` Yann E. MORIN
@ 2022-11-01  2:19   ` Giulio Benetti
  1 sibling, 0 replies; 12+ messages in thread
From: Giulio Benetti @ 2022-11-01  2:19 UTC (permalink / raw)
  To: Thomas Petazzoni; +Cc: Angelo Compagnucci, Yann E. MORIN, buildroot

Hello Thomas,

On 31/10/22 13:25, Thomas Petazzoni wrote:
> Hello Giulio,
> 
> On Wed, 19 Oct 2022 01:46:17 +0200
> Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> 
>> At the moment all APIs folders are copied to target increasing the size of
>> rootfs of ~190MB. Allow to select which API folders we want to copy to
>> target to shrink rootfs down.
>>
>> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> 
> Thanks for proposing this.
> 
> Practically speaking, could you describe which folders are needed in a
> typical scenario you've had?

One scenario I'm facing right now is:
drwxr-xr-x   4 giuliobenetti giuliobenetti 16384 ott 26 01:26 4.5
drwxr-xr-x 145 giuliobenetti giuliobenetti 12288 ott 26 01:20 gac
drwxr-xr-x   2 giuliobenetti giuliobenetti  4096 ott 26 01:22 lldb

And the total is 95MB big.
gac/ is ~56MB and that's mandatory in my case.
4.5/ is ~36MB
lldb/ is only 5K

While copying all directories is ~195MB so I was wrong, we don't save
~190MB, but anyway we save almost 100MB that for size costraint systems
and most of all for production programming save time. The latter is why
I need it most of all.

> Here, I have these ones:
> 
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 2.0-api
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 3.5-api
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 4.0
> drwxr-xr-x   2 thomas thomas 12288 oct.  25 22:58 4.0-api
> drwxr-xr-x   4 thomas thomas 16384 oct.  25 22:58 4.5
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.1-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.2-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.1-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.2-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.1-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.2-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7-api
> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.8-api
> drwxr-xr-x 145 thomas thomas 12288 oct.  25 22:56 gac
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 lldb
> drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 mono-configuration-crypto
> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 monodoc
> drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 msbuild
> drwxr-xr-x   6 thomas thomas  4096 oct.  25 22:56 xbuild
> drwxr-xr-x   4 thomas thomas  4096 oct.  25 22:56 xbuild-frameworks
> 
>> +config BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
>> +	bool "Specify folders to install to target"
>> +	help
>> +	  Allow to specify which Mono folder to install to target
> 
> I don't really have a very good suggestion, but I don't like the name
> of the option. We rarely have option names that are "sentences", i.e
> "specify folders to install" is a sentence.
> 
> Should we instead have a single string option
> BR2_PACKAGE_MONO_INSTALL_LIB_DIRS, which is empty by default. When
> empty, it means all folders are installed. Otherwise, only the
> specified folders are installed.

Yes, I can do like that.

> The other obvious question is whether this shouldn't simply be left as
> something to do in a post-build script. Even though I admit that
> reducing 190 MB down to something reasonable can be seen as something
> that is almost mandatory.

~100MB after recalculating. Anyway it's a bit odd to create ad hoc
script to remove 29 folders an keep only 3. Usually I expect a mono user
to write an application using only 1 API version.

> Or alternatively, do we have a better way, where we could automate this
> selection of which folders are needed?

In the beginning I thought that mono provided such possibility in its
build system but it's not like that, check:
https://github.com/mono/reference-assemblies/blob/680013abda911528f6befca67eed5669d80c85d5/Makefile

That is why I've ended up with this solution. Honestly I wanted to avoid
to even install these dll files to host/ but it's not possible.
Otherwise I have to patch the Makefile and in the end having 100M on
host I don't think is a problem.

-- 
Giulio Benetti
CEO/CTO@Benetti Engineering sas
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-10-31 12:54   ` Yann E. MORIN
@ 2022-11-01  2:27     ` Giulio Benetti
  2022-11-01  8:32       ` Yann E. MORIN
  0 siblings, 1 reply; 12+ messages in thread
From: Giulio Benetti @ 2022-11-01  2:27 UTC (permalink / raw)
  To: Yann E. MORIN, Thomas Petazzoni; +Cc: Angelo Compagnucci, buildroot

Hi Yann,

On 31/10/22 13:54, Yann E. MORIN wrote:
> Giulio, Thomas, All,
> 
> On 2022-10-31 13:25 +0100, Thomas Petazzoni via buildroot spake thusly:
>> On Wed, 19 Oct 2022 01:46:17 +0200
>> Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
>>> At the moment all APIs folders are copied to target increasing the size of
>>> rootfs of ~190MB. Allow to select which API folders we want to copy to
>>> target to shrink rootfs down.
>>>
>>> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
>> Practically speaking, could you describe which folders are needed in a
>> typical scenario you've had?
> 
> Yes, can you provide a rationale for when only a subset of APIs is
> needed?

I've answered on previous e-mail. I've realized only now that I could
answer to your e-mail for both.

>> Here, I have these ones:
>>
>> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 2.0-api
>> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:58 3.5-api
>> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 4.0
>> drwxr-xr-x   2 thomas thomas 12288 oct.  25 22:58 4.0-api
>> drwxr-xr-x   4 thomas thomas 16384 oct.  25 22:58 4.5
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.1-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5.2-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.5-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.1-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6.2-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.6-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.1-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7.2-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.7-api
>> drwxr-xr-x   3 thomas thomas 12288 oct.  25 22:58 4.8-api
>> drwxr-xr-x 145 thomas thomas 12288 oct.  25 22:56 gac
>> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 lldb
>> drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 mono-configuration-crypto
>> drwxr-xr-x   2 thomas thomas  4096 oct.  25 22:56 monodoc
>> drwxr-xr-x   3 thomas thomas  4096 oct.  25 22:56 msbuild
>> drwxr-xr-x   6 thomas thomas  4096 oct.  25 22:56 xbuild
>> drwxr-xr-x   4 thomas thomas  4096 oct.  25 22:56 xbuild-frameworks
> 
> It looks like we have three sets of directories here;
>    - version-based dirs: from 2.0-api up to 4.8-api
>    - gac/: big number of subdirs in there...
>    - the rest
> 
> Your change trat them all on the same level, but are they all really
> superfluous? Is there a set that absolutely needs to be there, or can we
> really do with just one (or even none, see below)?
> 
> Note: can we unconditionally get rid of monodoc/? Of msbuild/? Of lldb/?

To tell the truth I'm not expert in this. I know that my customer's
application only needed the files in those folders.
So I can't find at the moment something that clarifies this, that's why
I've given a very open solution. Of course this can give problems in
runtime. But the mono application should fail immediately if someone
skip some folder.

>>> +config BR2_PACKAGE_MONO_SPECIFY_FOLDERS_TO_INSTALL
>>> +	bool "Specify folders to install to target"
>>> +	help
>>> +	  Allow to specify which Mono folder to install to target
>>
>> I don't really have a very good suggestion, but I don't like the name
>> of the option. We rarely have option names that are "sentences", i.e
>> "specify folders to install" is a sentence.
>>
>> Should we instead have a single string option
>> BR2_PACKAGE_MONO_INSTALL_LIB_DIRS, which is empty by default. When
>> empty, it means all folders are installed. Otherwise, only the
>> specified folders are installed.
> 
> Agreed. I expect that having no API level installed would yield a
> non-working system, so:
> 
>      config BR2_PACKAGE_MONO_API_VERSIONS
>          string "API versions to install"
>          help
>            Keep empty to install all.

Ok, I go with that then!

>> The other obvious question is whether this shouldn't simply be left as
>> something to do in a post-build script. Even though I admit that
>> reducing 190 MB down to something reasonable can be seen as something
>> that is almost mandatory.
>>
>> Or alternatively, do we have a better way, where we could automate this
>> selection of which folders are needed?
> 
> I would prefer we avoid carrying the list of versionned APIs (and the
> rest, see above).

Yes I agree, otherwise the list would be pretty long.

Best regards
-- 
Giulio Benetti
CEO/CTO@Benetti Engineering sas
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-11-01  2:27     ` Giulio Benetti
@ 2022-11-01  8:32       ` Yann E. MORIN
  2022-11-01  9:19         ` Angelo Compagnucci
  2022-11-01 16:44         ` Giulio Benetti
  0 siblings, 2 replies; 12+ messages in thread
From: Yann E. MORIN @ 2022-11-01  8:32 UTC (permalink / raw)
  To: Giulio Benetti; +Cc: Angelo Compagnucci, Thomas Petazzoni, buildroot

Giulio, All,

On 2022-11-01 03:27 +0100, Giulio Benetti spake thusly:
> On 31/10/22 13:54, Yann E. MORIN wrote:
> >On 2022-10-31 13:25 +0100, Thomas Petazzoni via buildroot spake thusly:
> >>On Wed, 19 Oct 2022 01:46:17 +0200
> >>Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> >>>At the moment all APIs folders are copied to target increasing the size of
> >>>rootfs of ~190MB. Allow to select which API folders we want to copy to
> >>>target to shrink rootfs down.
> >>>
> >>>Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> >>Practically speaking, could you describe which folders are needed in a
> >>typical scenario you've had?
> >Yes, can you provide a rationale for when only a subset of APIs is
> >needed?
> I've answered on previous e-mail. I've realized only now that I could
> answer to your e-mail for both.

Hey, what you answered Thomas is not a rationale, it is an example. ;-)
A rationale is "an explanation of controlling principles of opinion,
belief, practice, or phenomena", or "an underlying reason". [0]

As a rationale, I would have expected something that explains the reason
why there are so many directories, and so why, under some circumstances,
we can get rid of them (or not). It needs not be too long, but just
provide an overview. For example, here is a totally made up blurb:

    mono provides support for a lot of legacy APIs for backward
    compatibility for existing applications, way back from the first
    stable API, 2.0 and up to the current version. The set of APIs are
    split in two categories: version-based APIs, and the rest (gac, the
    FooBar set of common Baz; monodoc, which renders documentation while
    riding a unicycle...).

    For a custom application, the set of required versioned APIs is
    limited; most often only the latest or the very few latest are
    needed. Only gac is always required, and monodoc is never used on
    the target as we never render the documentation there.

[0] https://www.merriam-webster.com/dictionary/rationale

[--SNIP--]
> >>Should we instead have a single string option
> >>BR2_PACKAGE_MONO_INSTALL_LIB_DIRS, which is empty by default. When
> >>empty, it means all folders are installed. Otherwise, only the
> >>specified folders are installed.
> >Agreed. I expect that having no API level installed would yield a
> >non-working system, so:
> >     config BR2_PACKAGE_MONO_API_VERSIONS
> >         string "API versions to install"
> >         help
> >           Keep empty to install all.
> Ok, I go with that then!

ACK.

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.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-11-01  8:32       ` Yann E. MORIN
@ 2022-11-01  9:19         ` Angelo Compagnucci
  2022-11-01 17:42           ` Yann E. MORIN
  2022-11-01 18:17           ` Giulio Benetti
  2022-11-01 16:44         ` Giulio Benetti
  1 sibling, 2 replies; 12+ messages in thread
From: Angelo Compagnucci @ 2022-11-01  9:19 UTC (permalink / raw)
  To: Yann E. MORIN
  Cc: Giulio Benetti, Angelo Compagnucci, Thomas Petazzoni,
	Buildroot Mailing List


[-- Attachment #1.1: Type: text/plain, Size: 3848 bytes --]

Il mar 1 nov 2022, 09:32 Yann E. MORIN <yann.morin.1998@free.fr> ha scritto:

> Giulio, All,
>
> On 2022-11-01 03:27 +0100, Giulio Benetti spake thusly:
> > On 31/10/22 13:54, Yann E. MORIN wrote:
> > >On 2022-10-31 13:25 +0100, Thomas Petazzoni via buildroot spake thusly:
> > >>On Wed, 19 Oct 2022 01:46:17 +0200
> > >>Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
> > >>>At the moment all APIs folders are copied to target increasing the
> size of
> > >>>rootfs of ~190MB. Allow to select which API folders we want to copy to
> > >>>target to shrink rootfs down.
> > >>>
> > >>>Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> > >>Practically speaking, could you describe which folders are needed in a
> > >>typical scenario you've had?
> > >Yes, can you provide a rationale for when only a subset of APIs is
> > >needed?
> > I've answered on previous e-mail. I've realized only now that I could
> > answer to your e-mail for both.
>
> Hey, what you answered Thomas is not a rationale, it is an example. ;-)
> A rationale is "an explanation of controlling principles of opinion,
> belief, practice, or phenomena", or "an underlying reason". [0]
>
> As a rationale, I would have expected something that explains the reason
> why there are so many directories, and so why, under some circumstances,
> we can get rid of them (or not). It needs not be too long, but just
> provide an overview. For example, here is a totally made up blurb:
>
>     mono provides support for a lot of legacy APIs for backward
>     compatibility for existing applications, way back from the first
>     stable API, 2.0 and up to the current version. The set of APIs are
>     split in two categories: version-based APIs, and the rest (gac, the
>     FooBar set of common Baz; monodoc, which renders documentation while
>     riding a unicycle...).
>
>     For a custom application, the set of required versioned APIs is
>     limited; most often only the latest or the very few latest are
>     needed. Only gac is always required, and monodoc is never used on
>     the target as we never render the documentation there.
>
> [0] https://www.merriam-webster.com/dictionary/rationale
>
> [--SNIP--]
> > >>Should we instead have a single string option
> > >>BR2_PACKAGE_MONO_INSTALL_LIB_DIRS, which is empty by default. When
> > >>empty, it means all folders are installed. Otherwise, only the
> > >>specified folders are installed.
> > >Agreed. I expect that having no API level installed would yield a
> > >non-working system, so:
> > >     config BR2_PACKAGE_MONO_API_VERSIONS
> > >         string "API versions to install"
> > >         help
> > >           Keep empty to install all.
> > Ok, I go with that then!
>
> ACK.
>

My two cents. Historically, the mono configure was offering some options to
enable only some versions of the API which was lately removed
So, removing older compatibility API folders should be perfectly fine. We
cannot remove the Global Assembly Cache (GAC).

For the rest, it would be nice if Giulio could do some testing (I can try
it too) to understand at what extent we can remove any other folder.


> 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.  |
>
> '------------------------------^-------^------------------^--------------------'
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
>

[-- Attachment #1.2: Type: text/html, Size: 5566 bytes --]

[-- Attachment #2: Type: text/plain, Size: 150 bytes --]

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-11-01  8:32       ` Yann E. MORIN
  2022-11-01  9:19         ` Angelo Compagnucci
@ 2022-11-01 16:44         ` Giulio Benetti
  1 sibling, 0 replies; 12+ messages in thread
From: Giulio Benetti @ 2022-11-01 16:44 UTC (permalink / raw)
  To: Yann E. MORIN; +Cc: Angelo Compagnucci, Thomas Petazzoni, buildroot


> Il giorno 1 nov 2022, alle ore 09:32, Yann E. MORIN <yann.morin.1998@free.fr> ha scritto:
> 
> Giulio, All,
> 
> On 2022-11-01 03:27 +0100, Giulio Benetti spake thusly:
>>> On 31/10/22 13:54, Yann E. MORIN wrote:
>>> On 2022-10-31 13:25 +0100, Thomas Petazzoni via buildroot spake thusly:
>>>> On Wed, 19 Oct 2022 01:46:17 +0200
>>>> Giulio Benetti <giulio.benetti@benettiengineering.com> wrote:
>>>>> At the moment all APIs folders are copied to target increasing the size of
>>>>> rootfs of ~190MB. Allow to select which API folders we want to copy to
>>>>> target to shrink rootfs down.
>>>>> 
>>>>> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
>>>> Practically speaking, could you describe which folders are needed in a
>>>> typical scenario you've had?
>>> Yes, can you provide a rationale for when only a subset of APIs is
>>> needed?
>> I've answered on previous e-mail. I've realized only now that I could
>> answer to your e-mail for both.
> 
> Hey, what you answered Thomas is not a rationale, it is an example. ;-)
> A rationale is "an explanation of controlling principles of opinion,
> belief, practice, or phenomena", or "an underlying reason". [0]
> 
> As a rationale, I would have expected something that explains the reason
> why there are so many directories, and so why, under some circumstances,
> we can get rid of them (or not). It needs not be too long, but just
> provide an overview. For example, here is a totally made up blurb:
> 
>    mono provides support for a lot of legacy APIs for backward
>    compatibility for existing applications, way back from the first
>    stable API, 2.0 and up to the current version. The set of APIs are
>    split in two categories: version-based APIs, and the rest (gac, the
>    FooBar set of common Baz; monodoc, which renders documentation while
>    riding a unicycle...).
> 
>    For a custom application, the set of required versioned APIs is
>    limited; most often only the latest or the very few latest are
>    needed. Only gac is always required, and monodoc is never used on
>    the target as we never render the documentation there.

Oh, thank you Yann, my English has some gap, I didn’t know that. And thanks for the example too.
So you’ve given already a rationale here.

I’ll come up with a V2 patch then!

Best regards
Giulio

> 
> [0] https://www.merriam-webster.com/dictionary/rationale
> 
> [--SNIP--]
>>>> Should we instead have a single string option
>>>> BR2_PACKAGE_MONO_INSTALL_LIB_DIRS, which is empty by default. When
>>>> empty, it means all folders are installed. Otherwise, only the
>>>> specified folders are installed.
>>> Agreed. I expect that having no API level installed would yield a
>>> non-working system, so:
>>>    config BR2_PACKAGE_MONO_API_VERSIONS
>>>        string "API versions to install"
>>>        help
>>>          Keep empty to install all.
>> Ok, I go with that then!
> 
> ACK.
> 
> 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.  |
> '------------------------------^-------^------------------^--------------------'

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-11-01  9:19         ` Angelo Compagnucci
@ 2022-11-01 17:42           ` Yann E. MORIN
  2022-11-01 20:30             ` Angelo Compagnucci
  2022-11-01 18:17           ` Giulio Benetti
  1 sibling, 1 reply; 12+ messages in thread
From: Yann E. MORIN @ 2022-11-01 17:42 UTC (permalink / raw)
  To: Angelo Compagnucci
  Cc: Giulio Benetti, Angelo Compagnucci, Thomas Petazzoni,
	Buildroot Mailing List

Angelo, All,

On 2022-11-01 10:19 +0100, Angelo Compagnucci spake thusly:
[--SNIP--]
> My two cents. Historically, the mono configure was offering some
> options to enable only some versions of the API which was lately
> removed 
> So, removing older compatibility API folders should be perfectly
> fine.

Thanks for the confirmation! :-)

My understanding, though, would be that we may need more than one such
versionned API. For example, I would (hypothetically!) develope my app
agaings current version, say 4.8-api, so I am using APIs from that
version. Then I update to a newer mono, and I start using the new APIs,
e.g. 5.3-api, in the new parts of my app, but the existing parts are
still using 4.8-api, so I need both.

Is that sensible, or did I mis-understood?

If correct, then we need to be able to select more than one versioned
API.

> We cannot remove the Global Assembly Cache (GAC).

So, we an' rely on it being listed by the user; we must explicitly
install it.

    MONO_INSTALL_DIRS = \
        gac \
        $(fitler-out gac,$(call qstrip,$(BR2_PACKAGE_MONO_API_DIRS)))

    $(foreach dir,$(MONO_INSTALL_DIRS),copy the $(d) dir)

> For the rest, it would be nice if Giulio could do some testing (I can
> try it too) to understand at what extent we can remove any other
> folder.

That would be awesome, thanks!

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.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-11-01  9:19         ` Angelo Compagnucci
  2022-11-01 17:42           ` Yann E. MORIN
@ 2022-11-01 18:17           ` Giulio Benetti
  1 sibling, 0 replies; 12+ messages in thread
From: Giulio Benetti @ 2022-11-01 18:17 UTC (permalink / raw)
  To: Angelo Compagnucci
  Cc: Angelo Compagnucci, Yann E. MORIN, Thomas Petazzoni,
	Buildroot Mailing List


[-- Attachment #1.1: Type: text/html, Size: 6632 bytes --]

[-- Attachment #2: Type: text/plain, Size: 150 bytes --]

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH] package/mono: allow to select which folders to install to target
  2022-11-01 17:42           ` Yann E. MORIN
@ 2022-11-01 20:30             ` Angelo Compagnucci
  0 siblings, 0 replies; 12+ messages in thread
From: Angelo Compagnucci @ 2022-11-01 20:30 UTC (permalink / raw)
  To: Yann E. MORIN
  Cc: Giulio Benetti, Angelo Compagnucci, Thomas Petazzoni,
	Buildroot Mailing List


[-- Attachment #1.1: Type: text/plain, Size: 2923 bytes --]

On Tue, Nov 1, 2022 at 6:42 PM Yann E. MORIN <yann.morin.1998@free.fr>
wrote:

> Angelo, All,
>
> On 2022-11-01 10:19 +0100, Angelo Compagnucci spake thusly:
> [--SNIP--]
> > My two cents. Historically, the mono configure was offering some
> > options to enable only some versions of the API which was lately
> > removed
> > So, removing older compatibility API folders should be perfectly
> > fine.
>
> Thanks for the confirmation! :-)
>
> My understanding, though, would be that we may need more than one such
> versionned API. For example, I would (hypothetically!) develope my app
> agaings current version, say 4.8-api, so I am using APIs from that
> version. Then I update to a newer mono, and I start using the new APIs,
> e.g. 5.3-api, in the new parts of my app, but the existing parts are
> still using 4.8-api, so I need both.
>

> Is that sensible, or did I mis-understood?
>
> If correct, then we need to be able to select more than one versioned
> API.
>


Last time I worked on a mono project was several years ago, so I'm a bit
rusty,

Not really sure you can mix and match assemblies from different versions,
never tried really.

Usually a developer updates the API target version in the application
manifest then rebuilds everything for the newer version.

From what I know, the various API versions are used to run a compiled
application against any mono installation. Usually a mono application is
distributed in binary form and so it needs the right assemblies for the
same version the application was compiled against.


> > We cannot remove the Global Assembly Cache (GAC).
>
> So, we an' rely on it being listed by the user; we must explicitly
> install it.
>
>     MONO_INSTALL_DIRS = \
>         gac \
>         $(fitler-out gac,$(call qstrip,$(BR2_PACKAGE_MONO_API_DIRS)))
>
>     $(foreach dir,$(MONO_INSTALL_DIRS),copy the $(d) dir)
>
>
I would say this looks right to me.

> For the rest, it would be nice if Giulio could do some testing (I can
> > try it too) to understand at what extent we can remove any other
> > folder.
>
> That would be awesome, thanks!
>
> 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.  |
>
> '------------------------------^-------^------------------^--------------------'
>


-- 

Angelo Compagnucci

Software Engineer

angelo@amarulasolutions.com
__________________________________
Amarula Solutions SRL

Via le Canevare 30, 31100 Treviso, Veneto, IT

T. +39 (0)42 243 5310
info@amarulasolutions.com

www.amarulasolutions.com
[`as] https://www.amarulasolutions.com|

[-- Attachment #1.2: Type: text/html, Size: 7892 bytes --]

[-- Attachment #2: Type: text/plain, Size: 150 bytes --]

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

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

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-18 23:46 [Buildroot] [PATCH] package/mono: allow to select which folders to install to target Giulio Benetti
2022-10-19 16:16 ` Angelo Compagnucci
2022-10-31 12:25 ` Thomas Petazzoni via buildroot
2022-10-31 12:54   ` Yann E. MORIN
2022-11-01  2:27     ` Giulio Benetti
2022-11-01  8:32       ` Yann E. MORIN
2022-11-01  9:19         ` Angelo Compagnucci
2022-11-01 17:42           ` Yann E. MORIN
2022-11-01 20:30             ` Angelo Compagnucci
2022-11-01 18:17           ` Giulio Benetti
2022-11-01 16:44         ` Giulio Benetti
2022-11-01  2:19   ` Giulio Benetti

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.