Results 1 to 2 of 2

Thread: Building mono 3.12.x

  1. #1
    Join Date
    Jul 2014
    Location
    Cluj-Napoca, RO
    Posts
    35

    Default Building mono 3.12.x

    Hi!
    1st issue:
    I want to build mono-3.12 in OBS. I forked a convenient mono package and set it up to run only on CentOS 6. Initially it was complaining about a lot of packages but after adding EPEL 6, they reduced to 'nothing provides timezone'

    My OBS project: https://build.opensuse.org/project/s...e:savornicesei
    My repos configs:
    Code:
    <repository name="CentOS_6">
        <path project="CentOS:CentOS-6" repository="standard"/>
        <path project="Fedora:EPEL:6" repository="standard"/>
        <arch>i586</arch>
        <arch>x86_64</arch>
      </repository>
    I also wanted to add the dowload link for rpmfusion repo but it complained that I need to be an admin to add remote resources.

    I'm not sure what I miss; all other mono packages that I found in OBS use only CentOS:CentOS_6.


    2nd issue:

    I want to repackage a subset of mono in a different package (the mono_2.0 and mono_4.0 profiles) . It just that the current mono.spec creates several packages while I only want one package.
    Given this fragment from mono.spec:
    Code:
    %package -n mono-locale-extras
    License:        LGPL v2.1 only
    Summary:        Extra locale information
    Group:          Development/Languages/Mono
    Requires:       mono-core == %version-%release
    Provides:       mono(I18N.CJK) = 1.0.5000.0
    Provides:       mono(I18N.MidEast) = 1.0.5000.0
    Provides:       mono(I18N.Other) = 1.0.5000.0
    Provides:       mono(I18N.Rare) = 1.0.5000.0
    
    %description -n mono-locale-extras
    The Mono Project is an open development initiative that is working to
    develop an open source, Unix version of the .NET development platform.
    Its objective is to enable Unix developers to build and deploy
    cross-platform .NET applications. The project will implement various
    technologies that have been submitted to the ECMA for standardization.
    
    Extra locale information.
    
    %files -n mono-locale-extras
    %defattr(-, root, root)
    %_prefix/lib/mono/2.0/I18N.CJK.dll
    %_prefix/lib/mono/2.0/I18N.MidEast.dll
    %_prefix/lib/mono/2.0/I18N.Other.dll
    %_prefix/lib/mono/2.0/I18N.Rare.dll
    %_prefix/lib/mono/4.0/I18N.CJK.dll
    %_prefix/lib/mono/4.0/I18N.MidEast.dll
    %_prefix/lib/mono/4.0/I18N.Other.dll
    %_prefix/lib/mono/4.0/I18N.Rare.dll
    %_prefix/lib/mono/4.5/I18N.CJK.dll
    %_prefix/lib/mono/4.5/I18N.MidEast.dll
    %_prefix/lib/mono/4.5/I18N.Other.dll
    %_prefix/lib/mono/4.5/I18N.Rare.dll
    %_prefix/lib/mono/gac/I18N.CJK
    %_prefix/lib/mono/gac/I18N.MidEast
    %_prefix/lib/mono/gac/I18N.Other
    %_prefix/lib/mono/gac/I18N.Rare
    What does %files -n mono-locale-extras stand for? I suppose it sets the folder from where to copy files? If so, how do I setup to copy the right files from mono-core and mono-locale-extras from the excerpt?
    My package will only copy files in the %_prefix/lib/mono/2.0 and %_prefix/lib/mono/4.0 (which are empty since mono 4.0). Do I need to define Requires and Provides? If my package requires to already have mono >= 4.0 installed how do I set this dependency?

    Thank you.

    Best,
    Simo
    Joy, frustration, excitement, madness, aha's, headaches ... codito ergo sum!
    My software never has bugs. It just develops random features.

  2. #2
    Join Date
    Jun 2008
    Location
    Podunk
    Posts
    27,244
    Blog Entries
    15

    Default Re: Building mono 3.12.x

    Quote Originally Posted by savornicesei View Post
    Hi!
    1st issue:
    I want to build mono-3.12 in OBS. I forked a convenient mono package and set it up to run only on CentOS 6. Initially it was complaining about a lot of packages but after adding EPEL 6, they reduced to 'nothing provides timezone'

    My OBS project: https://build.opensuse.org/project/s...e:savornicesei
    My repos configs:
    Code:
    <repository name="CentOS_6">
        <path project="CentOS:CentOS-6" repository="standard"/>
        <path project="Fedora:EPEL:6" repository="standard"/>
        <arch>i586</arch>
        <arch>x86_64</arch>
      </repository>
    I also wanted to add the dowload link for rpmfusion repo but it complained that I need to be an admin to add remote resources.

    I'm not sure what I miss; all other mono packages that I found in OBS use only CentOS:CentOS_6.


    2nd issue:

    I want to repackage a subset of mono in a different package (the mono_2.0 and mono_4.0 profiles) . It just that the current mono.spec creates several packages while I only want one package.
    Given this fragment from mono.spec:
    Code:
    %package -n mono-locale-extras
    License:        LGPL v2.1 only
    Summary:        Extra locale information
    Group:          Development/Languages/Mono
    Requires:       mono-core == %version-%release
    Provides:       mono(I18N.CJK) = 1.0.5000.0
    Provides:       mono(I18N.MidEast) = 1.0.5000.0
    Provides:       mono(I18N.Other) = 1.0.5000.0
    Provides:       mono(I18N.Rare) = 1.0.5000.0
    
    %description -n mono-locale-extras
    The Mono Project is an open development initiative that is working to
    develop an open source, Unix version of the .NET development platform.
    Its objective is to enable Unix developers to build and deploy
    cross-platform .NET applications. The project will implement various
    technologies that have been submitted to the ECMA for standardization.
    
    Extra locale information.
    
    %files -n mono-locale-extras
    %defattr(-, root, root)
    %_prefix/lib/mono/2.0/I18N.CJK.dll
    %_prefix/lib/mono/2.0/I18N.MidEast.dll
    %_prefix/lib/mono/2.0/I18N.Other.dll
    %_prefix/lib/mono/2.0/I18N.Rare.dll
    %_prefix/lib/mono/4.0/I18N.CJK.dll
    %_prefix/lib/mono/4.0/I18N.MidEast.dll
    %_prefix/lib/mono/4.0/I18N.Other.dll
    %_prefix/lib/mono/4.0/I18N.Rare.dll
    %_prefix/lib/mono/4.5/I18N.CJK.dll
    %_prefix/lib/mono/4.5/I18N.MidEast.dll
    %_prefix/lib/mono/4.5/I18N.Other.dll
    %_prefix/lib/mono/4.5/I18N.Rare.dll
    %_prefix/lib/mono/gac/I18N.CJK
    %_prefix/lib/mono/gac/I18N.MidEast
    %_prefix/lib/mono/gac/I18N.Other
    %_prefix/lib/mono/gac/I18N.Rare
    What does %files -n mono-locale-extras stand for? I suppose it sets the folder from where to copy files? If so, how do I setup to copy the right files from mono-core and mono-locale-extras from the excerpt?
    My package will only copy files in the %_prefix/lib/mono/2.0 and %_prefix/lib/mono/4.0 (which are empty since mono 4.0). Do I need to define Requires and Provides? If my package requires to already have mono >= 4.0 installed how do I set this dependency?

    Thank you.

    Best,
    Simo
    Hi
    That's the name of the final package (rpm) and the files that are contained in the package.

    Sounds like you might just want to build all the bits, then just manually install (install -Dm0644 %{buildroot}/....) the specific files your wanting...
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SUSE SLE, openSUSE Leap/Tumbleweed (x86_64) | GNOME DE
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •