[Buildroot] [PATCH 1/1] mono: remove copy of host etc files on install

Angelo Compagnucci angelo.compagnucci at gmail.com
Thu Apr 6 17:08:35 UTC 2017


Dusty,

2017-03-19 17:17 GMT+01:00 Dusty <dustin.r.johnson at gmail.com>:

> Angelo,
>
> Below is the diff between staging and host. I am using a Ubuntu VM to
> compile for an ARM target with uCLibc.
> The appropriate .so files (libc.so.0) are referenced in the config file in
> the staging directory but not in the host.
> The patch I referenced in my commit is:
>   * package/mono/0002-Adjust-libc.so-path-depending-on-C-
> library-being-use.patch
> This patch addresses the proper generation of the /etc/mono/config file in
> the staging directory, I believe.
>
> Thanks!
>

Could you send me a minimal example that exibits the problem?!

Thanks!


>
> Dusty
>
>
> diff -u output/host/etc/mono/ output/staging/etc/mono/
> Common subdirectories: output/host/etc/mono/2.0 and
> output/staging/etc/mono/2.0
> Common subdirectories: output/host/etc/mono/4.0 and
> output/staging/etc/mono/4.0
> Common subdirectories: output/host/etc/mono/4.5 and
> output/staging/etc/mono/4.5
> diff -u output/host/etc/mono/config output/staging/etc/mono/config
> --- output/host/etc/mono/config 2017-03-12 22:53:07.450555843 +0000
> +++ output/staging/etc/mono/config      2017-03-15 02:31:40.272008856 +0000
> @@ -1,9 +1,9 @@
>  <configuration>
> -       <dllmap dll="i:cygwin1.dll" target="libc.so.6" os="!windows" />
> -       <dllmap dll="libc" target="libc.so.6" os="!windows"/>
> +       <dllmap dll="i:cygwin1.dll" target="libc.so.0" os="!windows" />
> +       <dllmap dll="libc" target="libc.so.0" os="!windows"/>
>         <dllmap dll="intl" target="libc.so.6" os="!windows"/>
> -       <dllmap dll="intl" name="bind_textdomain_codeset"
> target="libc.so.6" os="solaris"/>
> -       <dllmap dll="libintl" name="bind_textdomain_codeset"
> target="libc.so.6" os="solaris"/>
> +       <dllmap dll="intl" name="bind_textdomain_codeset"
> target="libc.so.0" os="solaris"/>
> +       <dllmap dll="libintl" name="bind_textdomain_codeset"
> target="libc.so.0" os="solaris"/>
>         <dllmap dll="libintl" target="libc.so.6" os="!windows"/>
>         <dllmap dll="i:libxslt.dll" target="libxslt.so" os="!windows"/>
>         <dllmap dll="i:odbc32.dll" target="libodbc.so" os="!windows"/>
> @@ -11,11 +11,11 @@
>         <dllmap dll="oci" target="libclntsh.so" os="!windows"/>
>         <dllmap dll="db2cli" target="libdb2_36.so" os="!windows"/>
>         <dllmap dll="MonoPosixHelper" target="$mono_libdir/libMonoPosixHelper.so"
> os="!windows" />
> -       <dllmap dll="i:msvcrt" target="libc.so.6" os="!windows"/>
> -       <dllmap dll="i:msvcrt.dll" target="libc.so.6" os="!windows"/>
> +       <dllmap dll="i:msvcrt" target="libc.so.0" os="!windows"/>
> +       <dllmap dll="i:msvcrt.dll" target="libc.so.0" os="!windows"/>
>         <dllmap dll="sqlite" target="libsqlite.so.0" os="!windows"/>
>         <dllmap dll="sqlite3" target="libsqlite3.so.0" os="!windows"/>
> -       <dllmap dll="libX11" target="libX11.so.6" os="!windows" />
> +       <dllmap dll="libX11" target="libX11.so" os="!windows" />
>         <dllmap dll="libgdk-x11-2.0" target="libgdk-x11-2.0.so.0"
> os="!windows"/>
>         <dllmap dll="libgtk-x11-2.0" target="libgtk-x11-2.0.so.0"
> os="!windows"/>
>         <dllmap dll="libXinerama" target="libXinerama.so.1" os="!windows"
> />
> Only in output/host/etc/mono/: mconfig
>
>
> On Sat, Mar 18, 2017 at 10:39 AM, Thomas Petazzoni <thomas.petazzoni at free-
> electrons.com> wrote:
>
>> Hello,
>>
>> Angelo, could you comment on this patch touching the Mono package?
>>
>> Copying $(HOST_DIR)/etc/mono to $(TARGET_DIR)/etc has been there since
>> you contributed the package, but apparently causes some issues. It
>> would be nice if you could have a look at the patch proposed by Dustin.
>>
>> Thanks a lot!
>>
>> Thomas
>>
>> On Tue, 14 Mar 2017 22:24:58 -0400, Dustin Johnson wrote:
>> > When the mono package is installed, the autotools installer installs
>> > the /etc/mono files to the target. A post_install hook then copies
>> > over the mono libraries to the target as well as the host /etc/mono
>> > files which overrides the target files. The target specific mono
>> > configuration file (/etc/mono/config) is overridden with the host
>> > settings. This causes mono on the target to be unable to locate target
>> > specific .so files as it overrides the changes enacted by the patches
>> > for the package.
>> >
>> > Signed-off-by: Dustin Johnson <dustin.r.johnson at gmail.com>
>> > ---
>> >  package/mono/mono.mk | 1 -
>> >  1 file changed, 1 deletion(-)
>> >
>> > diff --git a/package/mono/mono.mk b/package/mono/mono.mk
>> > index 20b920568..4996b7c60 100644
>> > --- a/package/mono/mono.mk
>> > +++ b/package/mono/mono.mk
>> > @@ -31,7 +31,6 @@ MONO_CONF_OPTS = --disable-gtk-doc \
>> >  define MONO_INSTALL_LIBS
>> >       rsync -av --exclude=*.so --exclude=*.mdb \
>> >               $(HOST_DIR)/usr/lib/mono $(TARGET_DIR)/usr/lib/
>> > -     rsync -av $(HOST_DIR)/etc/mono $(TARGET_DIR)/etc
>> >  endef
>> >
>> >  MONO_POST_INSTALL_TARGET_HOOKS += MONO_INSTALL_LIBS
>>
>>
>>
>> --
>> Thomas Petazzoni, CTO, Free Electrons
>> Embedded Linux and Kernel engineering
>> http://free-electrons.com
>>
>
>


-- 
Profile: http://it.linkedin.com/in/compagnucciangelo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20170406/39ef81c2/attachment-0002.html>


More information about the buildroot mailing list