From: "Mikhail Pukhlikov" <cynede@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/dotnet:master commit in: dev-dotnet/conemu-control-winforms/, eclass/, ...
Date: Mon, 19 Sep 2016 13:16:09 +0000 (UTC) [thread overview]
Message-ID: <1473532539.91dd57dca99c01b951b87d22e23e13e32a5f084f.cynede@gentoo> (raw)
commit: 91dd57dca99c01b951b87d22e23e13e32a5f084f
Author: ArsenShnurkov <Arsen.Shnurkov <AT> gmail <DOT> com>
AuthorDate: Sat Sep 10 18:35:39 2016 +0000
Commit: Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
CommitDate: Sat Sep 10 18:35:39 2016 +0000
URL: https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=91dd57dc
dependency of GitExtensions
...onemu-control-winforms-1.0.0_p2016051802.ebuild | 50 ++++++++++++++++++++++
.../files/add-release-configuration.patch | 45 +++++++++++++++++++
dev-dotnet/conemu-control-winforms/metadata.xml | 21 +++++++++
eclass/gac.eclass | 32 ++++++++++++++
4 files changed, 148 insertions(+)
diff --git a/dev-dotnet/conemu-control-winforms/conemu-control-winforms-1.0.0_p2016051802.ebuild b/dev-dotnet/conemu-control-winforms/conemu-control-winforms-1.0.0_p2016051802.ebuild
new file mode 100644
index 0000000..8b27e98
--- /dev/null
+++ b/dev-dotnet/conemu-control-winforms/conemu-control-winforms-1.0.0_p2016051802.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+USE_DOTNET="net45"
+inherit gac dotnet
+IUSE+=" +net45 +pkg-config debug"
+
+KEYWORDS="~amd64 ~x86"
+
+DESCRIPTION="console emulator control, embeds a console view in a Windows Forms window"
+HOMEPAGE="http://conemu.github.io/"
+SRC_URI="http://download.mono-project.com/sources/mono/mono-4.6.0.150.tar.bz2"
+RESTRICT="mirror"
+
+NAME="conemu-inside"
+HOMEPAGE="https://github.com/Maximus5/${NAME}"
+
+EGIT_COMMIT="b4800195f09b86eca14c4b96141a78136ee1d872"
+SRC_URI="${HOMEPAGE}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${NAME}-${EGIT_COMMIT}"
+
+LICENSE="BSD" # https://github.com/Maximus5/ConEmu/blob/master/Release/ConEmu/License.txt
+SLOT="0"
+
+src_prepare() {
+ eapply "${FILESDIR}/add-release-configuration.patch"
+ eapply_user
+}
+
+src_compile() {
+ if use debug; then
+ CONFIGURATION=Debug
+ else
+ CONFIGURATION=Release
+ fi
+ exbuild_raw /p:SignAssembly=true /p:AssemblyOriginatorKeyFile="${S}/ConEmuWinForms/Snk.Snk" /p:VersionNumber=1.0.0.2016051802 /p:Configuration=${CONFIGURATION} ConEmuWinForms/ConEmuWinForms.csproj
+}
+
+src_install() {
+ if use debug; then
+ DIR=Debug
+ else
+ DIR=Release
+ fi
+ egacinstall "${S}/ConEmuWinForms/bin/${DIR}/ConEmu.WinForms.dll"
+ einstall_pc_file "${PN}" "${NAME}.dll"
+}
diff --git a/dev-dotnet/conemu-control-winforms/files/add-release-configuration.patch b/dev-dotnet/conemu-control-winforms/files/add-release-configuration.patch
new file mode 100644
index 0000000..f46aee0
--- /dev/null
+++ b/dev-dotnet/conemu-control-winforms/files/add-release-configuration.patch
@@ -0,0 +1,45 @@
+diff -ur a/ConEmuWinForms/ConEmuWinForms.csproj b/ConEmuWinForms/ConEmuWinForms.csproj
+--- a/ConEmuWinForms/ConEmuWinForms.csproj 2016-05-18 03:51:11.000000000 +0300
++++ b/ConEmuWinForms/ConEmuWinForms.csproj 2016-09-10 21:08:35.859758408 +0300
+@@ -9,7 +9,6 @@
+ <RootNamespace>ConEmu.WinForms</RootNamespace>
+ <AssemblyName>ConEmu.WinForms</AssemblyName>
+ <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+- <TargetFrameworkProfile>Client</TargetFrameworkProfile>
+ <NuGetPackageImportStamp>
+ </NuGetPackageImportStamp>
+ </PropertyGroup>
+@@ -17,7 +16,19 @@
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+- <OutputPath>bin\</OutputPath>
++ <OutputPath>bin\Debug</OutputPath>
++ <DefineConstants>DEBUG;TRACE</DefineConstants>
++ <ErrorReport>prompt</ErrorReport>
++ <WarningLevel>4</WarningLevel>
++ <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
++ <NoWarn>1696;1591</NoWarn>
++ <DocumentationFile>bin\ConEmu.WinForms.Xml</DocumentationFile>
++ </PropertyGroup>
++ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
++ <DebugSymbols>true</DebugSymbols>
++ <DebugType>pdbonly</DebugType>
++ <Optimize>true</Optimize>
++ <OutputPath>bin\Release</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+@@ -88,11 +99,4 @@
+ </EmbeddedResource>
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+- <Import Project="..\packages\ConEmu.Core.16.4.3.1\build\ConEmu.Core.Targets" Condition="Exists('..\packages\ConEmu.Core.16.4.3.1\build\ConEmu.Core.Targets')" />
+- <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
+- <PropertyGroup>
+- <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
+- </PropertyGroup>
+- <Error Condition="!Exists('..\packages\ConEmu.Core.16.4.3.1\build\ConEmu.Core.Targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\ConEmu.Core.16.4.3.1\build\ConEmu.Core.Targets'))" />
+- </Target>
+ </Project>
+\ No newline at end of file
diff --git a/dev-dotnet/conemu-control-winforms/metadata.xml b/dev-dotnet/conemu-control-winforms/metadata.xml
new file mode 100644
index 0000000..438a44a
--- /dev/null
+++ b/dev-dotnet/conemu-control-winforms/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>dotnet@gentoo.org</email>
+ <description>Gentoo Dotnet Project</description>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/gentoo/dotnet/issues</bugs-to>
+ <remote-id type="github">Maximus5/conemu-inside</remote-id>
+ </upstream>
+ <use>
+ <flag name='pkg-config'>create .pc file(s) for .dll(s) installed to gac</flag>
+ </use>
+ <longdescription lang="en">
+ This is a console emulator control that embeds a fully functional console view in a Windows Forms window.
+ It is capable of running any console application with full interactivity and advanced console functions.
+ Applications will detect it as an actual console and will not fall back
+ to the output redirection mode with reduced interactivity or formatting.
+ </longdescription>
+</pkgmetadata>
diff --git a/eclass/gac.eclass b/eclass/gac.eclass
index c5b7e85..1523301 100644
--- a/eclass/gac.eclass
+++ b/eclass/gac.eclass
@@ -59,3 +59,35 @@ egacdel() {
# don't die
fi
}
+
+# @FUNCTION: einstall_pc_file
+# @DESCRIPTION: installs .pc file
+# The file format contains predefined metadata keywords and freeform variables (like ${prefix} and ${exec_prefix})
+# $1 = ${PN}
+# $2 = myassembly.dll
+einstall_pc_file()
+{
+ if use pkg-config; then
+ dodir /usr/$(get_libdir)/pkgconfig
+ ebegin "Installing ${PC_FILE_NAME}.pc file"
+ sed \
+ -e "s:@LIBDIR@:$(get_libdir):" \
+ -e "s:@PACKAGENAME@:$1:" \
+ -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
+ -e "s:@VERSION@:${PV}:" \
+ -e 's*@LIBS@*-r:${libdir}'"/mono/$1/$2"'*' \
+ <<-EOF >"${D}/usr/$(get_libdir)/pkgconfig/$1.pc" || die
+ prefix=\${pcfiledir}/../..
+ exec_prefix=\${prefix}
+ libdir=\${exec_prefix}/@LIBDIR@
+ Name: @PACKAGENAME@
+ Description: @DESCRIPTION@
+ Version: @VERSION@
+ Libs: @LIBS@
+ EOF
+
+ einfo PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config --exists "$1"
+ PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config --exists "$1" || die ".pc file failed to validate."
+ eend $?
+ fi
+}
reply other threads:[~2016-09-19 13:16 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1473532539.91dd57dca99c01b951b87d22e23e13e32a5f084f.cynede@gentoo \
--to=cynede@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox