commit:     7da5376f5d63f70afe715fd6cdce3bd794a94296
Author:     Bennjamin Blast <bennjamin.blast <AT> gmail <DOT> com>
AuthorDate: Tue May 10 03:37:50 2016 +0000
Commit:     Heather Cynede <cynede <AT> gentoo <DOT> org>
CommitDate: Tue May 10 03:48:54 2016 +0000
URL:        https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=7da5376f

Add monodevelop-6.0.0.4761

 .../files/6.0-aspnet-template-references-fix.patch |  20 +++
 dev-util/monodevelop/files/6.0-kill-gnome.patch    | 184 +++++++++++++++++++++
 dev-util/monodevelop/monodevelop-6.0.0.4761.ebuild | 124 ++++++++++++++
 3 files changed, 328 insertions(+)

diff --git 
a/dev-util/monodevelop/files/6.0-aspnet-template-references-fix.patch 
b/dev-util/monodevelop/files/6.0-aspnet-template-references-fix.patch
new file mode 100644
index 0000000..9cc1f26
--- /dev/null
+++ b/dev-util/monodevelop/files/6.0-aspnet-template-references-fix.patch
@@ -0,0 +1,20 @@
+diff -u -r 
work.unpacked/monodevelop-6.0/src/addins/AspNet/Templates/Projects/EmptyMvcProject.xpt.xml
 
work/monodevelop-6.0/src/addins/AspNet/Templates/Projects/EmptyMvcProject.xpt.xml
+--- 
work.unpacked/monodevelop-6.0/src/addins/AspNet/Templates/Projects/EmptyMvcProject.xpt.xml
++++ 
work/monodevelop-6.0/src/addins/AspNet/Templates/Projects/EmptyProject.xpt.xml
+@@ -27,5 +27,6 @@
+                       <References>
+                               <Reference type="Package" refto="System, 
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+                               <Reference type="Package" refto="System.Web, 
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
++                              <Reference type="Package" 
refto="System.Web.Mvc" />
+                               <Reference type="Package" refto="System.Xml, 
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+                               <Reference type="Package" refto="System.Core" />
+diff -u -r 
work.unpacked/monodevelop-6.0/src/addins/AspNet/Templates/Projects/MvcProject.xpt.xml
 work/monodevelop-6.0/src/addins/AspNet/Templates/Projects/MvcProject.xpt.xml
+--- 
work.unpacked/monodevelop-6.0/src/addins/AspNet/Templates/Projects/MvcProject.xpt.xml
++++ 
work/monodevelop-6.0/src/addins/AspNet/Templates/Projects/MvcProject.xpt.xml
+@@ -29,5 +29,6 @@
+                       <References>
+                               <Reference type="Package" refto="System, 
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+                               <Reference type="Package" refto="System.Web, 
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
++                              <Reference type="Package" 
refto="System.Web.Mvc" />
+                               <Reference type="Package" refto="System.Xml, 
Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+                               <Reference type="Package" refto="System.Core" />

diff --git a/dev-util/monodevelop/files/6.0-kill-gnome.patch 
b/dev-util/monodevelop/files/6.0-kill-gnome.patch
new file mode 100644
index 0000000..c70ba24
--- /dev/null
+++ b/dev-util/monodevelop/files/6.0-kill-gnome.patch
@@ -0,0 +1,184 @@
+diff -rupN configure.in configure.in
+--- configure.in       2016-05-08 19:44:27.107588191 -0400
++++ configure.in       2016-05-08 19:47:32.570263105 -0400
+@@ -137,13 +137,6 @@ PKG_CHECK_MODULES(MONODOC, monodoc >= $M
+ AC_SUBST(MONODOC_LIBS)
+ 
+ dnl soft dependencies
+-PKG_CHECK_MODULES(GNOME_SHARP, gnome-sharp-2.0 >= $GTKSHARP_REQUIRED_VERSION, 
[gnome_sharp=yes], [gnome_sharp=no])
+-AC_SUBST(GNOME_SHARP_LIBS)
+-PKG_CHECK_MODULES(GNOME_VFS_SHARP, gnome-vfs-sharp-2.0 >= 
$GTKSHARP_REQUIRED_VERSION, [gnome_vfs_sharp=yes], [gnome_vfs_sharp=no])
+-AC_SUBST(GNOME_VFS_SHARP_LIBS)
+-PKG_CHECK_MODULES(GCONF_SHARP, gconf-sharp-2.0 >= $GTKSHARP_REQUIRED_VERSION, 
[gconf_sharp=yes], [gconf_sharp=no])
+-AC_SUBST(GCONF_SHARP_LIBS)
+-
+ gtksharp_prefix="`$PKG_CONFIG --variable=prefix gtk-sharp-2.0`"
+ AC_SUBST(gtksharp_prefix)
+ 
+@@ -202,13 +195,4 @@ AC_ARG_ENABLE(gnomeplatform,
+ if test x$enable_gnomeplatform = xyes; then
+-      if test x$gnome_sharp = xno; then
+-              AC_MSG_ERROR([Cannot enable GNOME platform without 
gnome-sharp-2.0])
+-      fi
+-      if test x$gnome_vfs_sharp = xno; then
+-              AC_MSG_ERROR([Cannot enable GNOME platform without 
gnome-vfs-sharp-2.0])
+-      fi
+-      if test x$gconf_sharp = xno; then
+-              AC_MSG_ERROR([Cannot enable GNOME platform without 
gconf-sharp-2.0])
+-      fi
+       platform_bindings="${platform_bindings}GNOME "
+ fi
+ 
+diff -rupN configure configure
+--- configure   2016-05-08 19:53:21.359551637 -0400
++++ configure   2016-05-08 19:53:29.043391220 -0400
+@@ -4116,13 +4116,4 @@
+ if test x$enable_gnomeplatform = xyes; then
+-      if test x$gnome_sharp = xno; then
+-              as_fn_error $? "Cannot enable GNOME platform without 
gnome-sharp-2.0" "$LINENO" 5
+-      fi
+-      if test x$gnome_vfs_sharp = xno; then
+-              as_fn_error $? "Cannot enable GNOME platform without 
gnome-vfs-sharp-2.0" "$LINENO" 5
+-      fi
+-      if test x$gconf_sharp = xno; then
+-              as_fn_error $? "Cannot enable GNOME platform without 
gconf-sharp-2.0" "$LINENO" 5
+-      fi
+       platform_bindings="${platform_bindings}GNOME "
+ fi
+ 
+diff -rupN src/addins/GnomePlatform/GnomePlatform.cs 
src/addins/GnomePlatform/GnomePlatform.cs
+--- src/addins/GnomePlatform/GnomePlatform.cs  2015-07-18 18:40:15.946222126 
+0200
++++ src/addins/GnomePlatform/GnomePlatform.cs  2015-07-18 19:56:35.272686234 
+0200
+@@ -26,7 +26,6 @@
+ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ //
+ 
+-using Gnome;
+ using MonoDevelop.Ide.Desktop;
+ using System;
+ using System.Collections.Generic;
+@@ -40,44 +39,13 @@ namespace MonoDevelop.Platform
+ {
+       public class GnomePlatform : PlatformService
+       {
+-              static bool useGio;
+-
+-              Gnome.ThumbnailFactory thumbnailFactory = new 
Gnome.ThumbnailFactory (Gnome.ThumbnailSize.Normal);
+-
+               static GnomePlatform ()
+               {
+                       try {
+                               Gio.GetDefaultForType ("text/plain");
+-                              useGio = true;
+                       } catch (Exception ex) {
+                               Console.WriteLine (ex);
+                       }
+-                      //apparently Gnome.Icon needs GnomeVFS initialized even 
when we're using GIO.
+-                      Gnome.Vfs.Vfs.Initialize ();
+-              }
+-              
+-              DesktopApplication GetGnomeVfsDefaultApplication (string 
mimeType)
+-              {
+-                      var app = Gnome.Vfs.Mime.GetDefaultApplication 
(mimeType);
+-                      if (app != null)
+-                              return (DesktopApplication) 
Marshal.PtrToStructure (app.Handle, typeof(DesktopApplication));
+-                      else
+-                              return null;
+-              }
+-              
+-              IEnumerable<DesktopApplication> GetGnomeVfsApplications (string 
mimeType)
+-              {
+-                      var def = GetGnomeVfsDefaultApplication (mimeType);
+-                      var list = new List<DesktopApplication> ();
+-                      var apps = Gnome.Vfs.Mime.GetAllApplications (mimeType);
+-                      foreach (var app in apps) {
+-                              var dap = (GnomeVfsApp) Marshal.PtrToStructure 
(app.Handle, typeof(GnomeVfsApp));
+-                              if (!string.IsNullOrEmpty (dap.Command) && 
!string.IsNullOrEmpty (dap.DisplayName) && !dap.Command.Contains ("monodevelop 
")) {
+-                                      var isDefault = def != null && def.Id 
== dap.Command;
+-                                      list.Add (new GnomeDesktopApplication 
(dap.Command, dap.DisplayName, isDefault));
+-                              }
+-                      }
+-                      return list;
+               }
+               
+               public override IEnumerable<DesktopApplication> GetApplications 
(string filename)
+@@ -88,10 +56,7 @@ namespace MonoDevelop.Platform
+ 
+               IEnumerable<DesktopApplication> GetApplicationsForMimeType 
(string mimeType)
+               {
+-                      if (useGio)
+-                              return Gio.GetAllForType (mimeType);
+-                      else
+-                              return GetGnomeVfsApplications (mimeType);
++                      return Gio.GetAllForType (mimeType);
+               }
+               
+               struct GnomeVfsApp {
+@@ -100,23 +65,15 @@ namespace MonoDevelop.Platform
+ 
+               protected override string OnGetMimeTypeDescription (string mt)
+               {
+-                      if (useGio)
+-                              return Gio.GetMimeTypeDescription (mt);
+-                      else
+-                              return Gnome.Vfs.Mime.GetDescription (mt);
++                      return Gio.GetMimeTypeDescription (mt);
+               }
+ 
+               protected override string OnGetMimeTypeForUri (string uri)
+               {
+                       if (uri == null)
+                               return null;
+-                      
+-                      if (useGio) {
+-                              string mt = Gio.GetMimeTypeForUri (uri);
+-                              if (mt != null)
+-                                      return mt;
+-                      }
+-                      return Gnome.Vfs.MimeType.GetMimeTypeForUri 
(ConvertFileNameToVFS (uri));
++
++                      return Gio.GetMimeTypeForUri (uri);
+               }
+               
+               protected override bool OnGetMimeTypeIsText (string mimeType)
+@@ -128,19 +85,9 @@ namespace MonoDevelop.Platform
+                       return base.OnGetMimeTypeIsText (mimeType);
+               }
+ 
+-
+-              public override void ShowUrl (string url)
+-              {
+-                      Gnome.Url.Show (url);
+-              }
+-              
+               public override string DefaultMonospaceFont {
+                       get {
+-                              try {
+-                                      return (string) (new GConf.Client 
().Get ("/desktop/gnome/interface/monospace_font_name"));
+-                              } catch (Exception) {
+-                                      return "Monospace 11";
+-                              }
++                              return "Monospace 11";
+                       }
+               }
+               
+@@ -159,18 +106,8 @@ namespace MonoDevelop.Platform
+                               filename = EscapeFileName (filename);
+                               if (filename == null)
+                                       return "gnome-fs-regular";
+-                              
+-                              string icon = null;
+-                              Gnome.IconLookupResultFlags result;
+-                              try {
+-                                      icon = Gnome.Icon.LookupSync 
(IconTheme.Default, thumbnailFactory, filename, null, 
+-                                                                    
Gnome.IconLookupFlags.None, out result);
+-                              } catch {}
+-                              if (icon != null && icon.Length > 0)
+-                                      return icon;
+-                      }                       
++                      }
+                       return "gnome-fs-regular";
+-                      
+               }
+               
+               protected override Xwt.Drawing.Image OnGetIconForFile (string 
filename)

diff --git a/dev-util/monodevelop/monodevelop-6.0.0.4761.ebuild 
b/dev-util/monodevelop/monodevelop-6.0.0.4761.ebuild
new file mode 100644
index 0000000..bba1fe1
--- /dev/null
+++ b/dev-util/monodevelop/monodevelop-6.0.0.4761.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit fdo-mime gnome2-utils dotnet versionator eutils
+
+ROSLYN_COMMIT="16e117c2400d0ab930e7d89512f9894a169a0e6e"
+
+DESCRIPTION="Integrated Development Environment for .NET"
+HOMEPAGE="http://www.monodevelop.com/";
+SRC_URI="http://download.mono-project.com/sources/monodevelop/${P}.tar.bz2
+       https://github.com/mono/roslyn/archive/${ROSLYN_COMMIT}.zip -> 
roslyn-${ROSLYN_COMMIT}.zip
+       https://launchpadlibrarian.net/68057829/NUnit-2.5.10.11092.zip";
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+subversion +git doc +gnome qtcurve"
+
+COMMON_DEPEND="
+       >=dev-lang/mono-3.2.8
+       >=dev-dotnet/gtk-sharp-2.12.21:2
+       >=dev-dotnet/nuget-2.8.7
+       dev-dotnet/referenceassemblies-pcl
+       net-libs/libssh2
+       gnome? ( >=dev-dotnet/gnome-sharp-2.24.2-r1 )"
+RDEPEND="${COMMON_DEPEND}
+       dev-util/ctags
+       sys-apps/dbus[X]
+       >=www-servers/xsp-2
+       doc? ( dev-util/mono-docbrowser )
+       git? ( dev-vcs/git )
+       subversion? ( dev-vcs/subversion )
+       !<dev-util/monodevelop-boo-$(get_version_component_range 1-2)
+       !<dev-util/monodevelop-java-$(get_version_component_range 1-2)
+       !<dev-util/monodevelop-database-$(get_version_component_range 1-2)
+       !<dev-util/monodevelop-debugger-gdb-$(get_version_component_range 1-2)
+       !<dev-util/monodevelop-debugger-mdb-$(get_version_component_range 1-2)
+       !<dev-util/monodevelop-vala-$(get_version_component_range 1-2)"
+DEPEND="${COMMON_DEPEND}
+       dev-util/intltool
+       virtual/pkgconfig
+       sys-devel/gettext
+       x11-misc/shared-mime-info
+       x11-terms/xterm
+       app-arch/unzip"
+
+MAKEOPTS="${MAKEOPTS} -j1" #nowarn
+S="${WORKDIR}/${PN}-6.0"
+
+src_unpack() {
+       cd "${T}"
+       unpack NUnit-2.5.10.11092.zip
+
+       cd "${WORKDIR}"
+       unpack "${P}.tar.bz2"
+
+       # roslyn dlls are missing from monodevelop tarball
+       cd "${S}/external"
+       unpack "roslyn-${ROSLYN_COMMIT}.zip"
+       rm -rf "roslyn"
+       mv "roslyn-${ROSLYN_COMMIT}" "roslyn"
+}
+
+src_prepare() {
+       # Remove the git rev-parse (changelog?)
+       sed -i '/<Exec.*rev-parse/ d' 
"${S}/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj" || die
+       # Set specific_version to prevent binding problem
+       # when gtk#-3 is installed alongside gtk#-2
+       find "${S}" -name '*.csproj' -exec sed -i 
's#<SpecificVersion>.*</SpecificVersion>#<SpecificVersion>True</SpecificVersion>#'
 {} + || die
+
+       # bundled nuget is missing => use system nuget.
+       sed -i 's|mono .nuget/NuGet.exe|nuget|g' Makefile* || die
+
+       # fix for https://github.com/gentoo/dotnet/issues/42
+       epatch "${FILESDIR}/6.0-aspnet-template-references-fix.patch"
+       use gnome || epatch "${FILESDIR}/6.0-kill-gnome.patch"
+       use qtcurve && epatch "${FILESDIR}/kill-qtcurve-warning.patch"
+
+       # copy missing binaries
+       mkdir -p "${S}"/external/cecil/Test/libs/nunit-2.5.10/ || die
+       cp -fR "${T}"/NUnit-2.5.10.11092/bin/net-2.0/framework/* 
"${S}"/external/cecil/Test/libs/nunit-2.5.10/ || die
+
+       default
+}
+
+src_configure() {
+       # env vars are added as the fix for 
https://github.com/gentoo/dotnet/issues/29
+       MCS=/usr/bin/dmcs CSC=/usr/bin/dmcs GMCS=/usr/bin/dmcs econf \
+               --disable-update-mimedb \
+               --disable-update-desktopdb \
+               --enable-monoextensions \
+               --enable-gnomeplatform \
+               $(use_enable subversion) \
+               $(use_enable git)
+       # https://github.com/mrward/xdt/issues/4
+       # Main.sln file is created on the fly during econf
+       epatch -p2 "${FILESDIR}/mrward-xdt-issue-4.patch"
+       # fix of https://github.com/gentoo/dotnet/issues/38
+       sed -i -E -e 
's#(EXE_PATH=")(.*)(/lib/monodevelop/bin/MonoDevelop.exe")#\1'${EPREFIX}'/usr\3#g'
 "${S}/monodevelop" || die
+}
+
+src_compile() {
+       xbuild 
"${S}/external/libgit2sharp/Lib/CustomBuildTasks/CustomBuildTasks.csproj"
+       cp 
"${S}/external/libgit2sharp/Lib/CustomBuildTasks/bin/Debug/CustomBuildTasks.dll"
 "${S}/external/libgit2sharp/Lib/CustomBuildTasks/"
+
+       default
+}
+
+pkg_preinst() {
+       gnome2_icon_savelist
+}
+
+pkg_postinst() {
+       gnome2_icon_cache_update
+       fdo-mime_mime_database_update
+       fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+       gnome2_icon_cache_update
+       fdo-mime_mime_database_update
+       fdo-mime_desktop_database_update
+}

Reply via email to