commit:     1fb4a621456649232e01190adc47cae290be43ab
Author:     ArsenShnurkov <Arsen.Shnurkov <AT> gmail <DOT> com>
AuthorDate: Sat Oct  1 08:19:02 2016 +0000
Commit:     Mikhail Pukhlikov <cynede <AT> gentoo <DOT> org>
CommitDate: Sat Oct  1 08:19:02 2016 +0000
URL:        https://gitweb.gentoo.org/proj/dotnet.git/commit/?id=1fb4a621

converting mine ebuilds to einstall_pc_file from eclass

 .../Open-NAT/Open-NAT-1.0.0-r201510290.ebuild      |  36 +------
 dev-dotnet/cecil/cecil-0.9.6_p20160209.ebuild      |  34 +------
 .../commandlineparser-0.6.0_p20160115.ebuild       |  31 +-----
 .../deveel-irony-1.0.0_p20150328.ebuild            |  31 +-----
 .../deveel-math-1.5.66-r201512290.ebuild           |  32 +-----
 .../deveeldb-2.0_pre_alpha_p20160101.ebuild        |  31 +-----
 .../dryioc/dryioc-2.1.0_p201512110-r1.ebuild       |  31 +-----
 dev-dotnet/ikvm/ikvm-7.2.4630.5_p201602270.ebuild  |  25 +----
 .../irony-framework-1.0.0_p20131212-r1.ebuild      |  31 +-----
 dev-dotnet/log4net/files/log4net.pc.in-r1          |   8 --
 ...t-1.2.11-r1.ebuild => log4net-1.2.11-r2.ebuild} |   8 +-
 dev-dotnet/log4net/log4net-1.2.11.ebuild           |  45 ---------
 .../monotorrent-1.0.0-r201510130.ebuild            |  56 ++++-------
 .../newtonsoft-json/newtonsoft-json-6.0.8.ebuild   |  31 +-----
 .../newtonsoft-json-7.0.1_p20150831.ebuild         |  31 +-----
 .../newtonsoft-json-8.0.1_p20151229.ebuild         |  31 +-----
 dev-dotnet/nini/files/nini.pc.in                   |   9 --
 .../{nini-1.1.0-r3.ebuild => nini-1.1.0-r4.ebuild} |  15 +--
 dev-dotnet/npgsql/npgsql-3.1.6.ebuild              |  31 +-----
 dev-dotnet/system-web/system-web-4.6.0.150.ebuild  |  32 +-----
 ...82-r1.ebuild => system-web-4.6.0.182-r2.ebuild} |  34 +------
 dev-dotnet/system-web/system-web-4.6.0.182.ebuild  | 107 ---------------------
 .../x-pagedlist-1.24.0.23549-r201512120.ebuild     |  34 +------
 23 files changed, 46 insertions(+), 708 deletions(-)

diff --git a/dev-dotnet/Open-NAT/Open-NAT-1.0.0-r201510290.ebuild 
b/dev-dotnet/Open-NAT/Open-NAT-1.0.0-r201510290.ebuild
index ef91da6..ba6e441 100644
--- a/dev-dotnet/Open-NAT/Open-NAT-1.0.0-r201510290.ebuild
+++ b/dev-dotnet/Open-NAT/Open-NAT-1.0.0-r201510290.ebuild
@@ -50,6 +50,8 @@ src_prepare() {
        enuget_restore "${METAFILETOBUILD}"
 
        patch_nuspec_file ${NUSPEC_FILE}
+
+       eapply_user
 }
 
 src_configure() {
@@ -68,7 +70,7 @@ src_install() {
 
        egacinstall "${OUTPUT_DIR}/${DIR}/${GAC_DLL_NAME}.dll"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "1.0" "${GAC_DLL_NAME}"
 }
 
 patch_nuspec_file()
@@ -89,35 +91,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's;@LIBS@;-r:${libdir}'"/mono/${PC_FILE_NAME}/${GAC_DLL_NAME}.dll;" \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.pc" || die
-prefix=${pcfiledir}/../..
-exec_prefix=${prefix}
-libdir=${exec_prefix}/@LIBDIR@
-
-Name: @PACKAGENAME@
-Description: @DESCRIPTION@
-Version: @VERSION@
-Libs: @LIBS@
-EOF
-# Package exported to: 
/var/tmp/portage/dev-dotnet/Open-NAT-1.0.0-r201510290/image//usr/lib64/mono/Open-NAT/Open.Nat.dll
 -> ../gac/Open.Nat/1.0.0.0__0738eb9f132ed756/Open.Nat.dll
-# Installed Open.Nat/bin/Release/Open.Nat.dll into the gac 
(/var/tmp/portage/dev-dotnet/Open-NAT-1.0.0-r201510290/image//usr/lib64/mono/gac)
-
-               einfo PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" 
pkg-config --exists "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}

diff --git a/dev-dotnet/cecil/cecil-0.9.6_p20160209.ebuild 
b/dev-dotnet/cecil/cecil-0.9.6_p20160209.ebuild
index 6637544..50b2aa0 100644
--- a/dev-dotnet/cecil/cecil-0.9.6_p20160209.ebuild
+++ b/dev-dotnet/cecil/cecil-0.9.6_p20160209.ebuild
@@ -106,37 +106,5 @@ src_install() {
                egacinstall 
"bin/net_${FW_UPPER}_${FW_LOWER}_${DIR}/${GAC_DLL_NAME}.dll"
        done
 
-       install_pc_file
-}
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's;@LIBS@;-r:${libdir}'"/mono/${PC_FILE_NAME}/${GAC_DLL_NAME}.dll;" \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.pc" || die
-prefix=${pcfiledir}/../..
-exec_prefix=${prefix}
-libdir=${exec_prefix}/@LIBDIR@
-
-Name: @PACKAGENAME@
-Description: @DESCRIPTION@
-Version: @VERSION@
-Libs: @LIBS@
-EOF
-# Package exported to: 
/var/tmp/portage/dev-dotnet/Open-NAT-1.0.0-r201510290/image//usr/lib64/mono/Open-NAT/Open.Nat.dll
 -> ../gac/Open.Nat/1.0.0.0__0738eb9f132ed756/Open.Nat.dll
-# Installed Open.Nat/bin/Release/Open.Nat.dll into the gac 
(/var/tmp/portage/dev-dotnet/Open-NAT-1.0.0-r201510290/image//usr/lib64/mono/gac)
-
-               einfo PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" 
pkg-config --exists "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
+       einstall_pc_file "${PN}" "0.9" "${GAC_DLL_NAME}"
 }

diff --git 
a/dev-dotnet/commandlineparser/commandlineparser-0.6.0_p20160115.ebuild 
b/dev-dotnet/commandlineparser/commandlineparser-0.6.0_p20160115.ebuild
index 35afbe2..2cf968b 100644
--- a/dev-dotnet/commandlineparser/commandlineparser-0.6.0_p20160115.ebuild
+++ b/dev-dotnet/commandlineparser/commandlineparser-0.6.0_p20160115.ebuild
@@ -179,7 +179,7 @@ src_install() {
                doins 
"src/MGR.CommandLineParser/obj/${DIR}/MGR.CommandLineParser.dll.so"
        fi
 
-       #install_pc_file
+       einstall_pc_file "${PN}" "0.6" "MGR.CommandLineParser"
 }
 
 patch_nuspec_file()
@@ -199,32 +199,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/MGR.CommandLineParser.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}

diff --git a/dev-dotnet/deveel-irony/deveel-irony-1.0.0_p20150328.ebuild 
b/dev-dotnet/deveel-irony/deveel-irony-1.0.0_p20150328.ebuild
index 77326cb..191c5ae 100644
--- a/dev-dotnet/deveel-irony/deveel-irony-1.0.0_p20150328.ebuild
+++ b/dev-dotnet/deveel-irony/deveel-irony-1.0.0_p20150328.ebuild
@@ -99,36 +99,7 @@ src_install() {
 
        egacinstall "Irony/bin/${DIR}/Irony.dll"
 
-       install_pc_file
-}
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/Irony.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
+       einstall_pc_file "${PN}" "1.0" "Irony"
 }
 
 LICENSE="MIT"

diff --git a/dev-dotnet/deveel-math/deveel-math-1.5.66-r201512290.ebuild 
b/dev-dotnet/deveel-math/deveel-math-1.5.66-r201512290.ebuild
index 17a301c..4b8df58 100644
--- a/dev-dotnet/deveel-math/deveel-math-1.5.66-r201512290.ebuild
+++ b/dev-dotnet/deveel-math/deveel-math-1.5.66-r201512290.ebuild
@@ -113,7 +113,7 @@ src_install() {
 
        egacinstall "src/Deveel.Math/bin/AnyCPU/${DIR}/Deveel.Math.dll"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "${PV}" "Deveel.Math"
 }
 
 patch_nuspec_file()
@@ -141,33 +141,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/DeveelMath.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}

diff --git a/dev-dotnet/deveeldb/deveeldb-2.0_pre_alpha_p20160101.ebuild 
b/dev-dotnet/deveeldb/deveeldb-2.0_pre_alpha_p20160101.ebuild
index 46548c5..a236fca 100644
--- a/dev-dotnet/deveeldb/deveeldb-2.0_pre_alpha_p20160101.ebuild
+++ b/dev-dotnet/deveeldb/deveeldb-2.0_pre_alpha_p20160101.ebuild
@@ -172,7 +172,7 @@ src_install() {
 
        egacinstall "src/deveeldb/bin/${DIR}/deveeldb.dll"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "2.0" "deveeldb"
 }
 
 patch_nuspec_file()
@@ -200,32 +200,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/DeveelDB.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}

diff --git a/dev-dotnet/dryioc/dryioc-2.1.0_p201512110-r1.ebuild 
b/dev-dotnet/dryioc/dryioc-2.1.0_p201512110-r1.ebuild
index 6349f52..a647f68 100644
--- a/dev-dotnet/dryioc/dryioc-2.1.0_p201512110-r1.ebuild
+++ b/dev-dotnet/dryioc/dryioc-2.1.0_p201512110-r1.ebuild
@@ -118,7 +118,7 @@ src_install() {
                newins "${DISTDIR}/${PF}.icon.png" 
"${NUSPEC_ID}.${NUSPEC_VERSION}.png"
        fi
 
-       install_pc_file
+       einstall_pc_file "${PN}" "2.1" "DryIoc"
 }
 
 patch_nuspec_file()
@@ -145,32 +145,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/DryIoc.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}

diff --git a/dev-dotnet/ikvm/ikvm-7.2.4630.5_p201602270.ebuild 
b/dev-dotnet/ikvm/ikvm-7.2.4630.5_p201602270.ebuild
index e133ae6..9954063 100644
--- a/dev-dotnet/ikvm/ikvm-7.2.4630.5_p201602270.ebuild
+++ b/dev-dotnet/ikvm/ikvm-7.2.4630.5_p201602270.ebuild
@@ -75,27 +75,6 @@ src_compile() {
        XDG_CONFIG_HOME="${T}/home/test" nant -t:mono-4.5 signed || die "ikvm 
build failed"
 }
 
-generate_pkgconfig() {
-       ebegin "Generating .pc file"
-       local dll LSTRING="Libs:"
-       dodir "/usr/$(get_libdir)/pkgconfig"
-       cat <<- EOF -> "${D}/usr/$(get_libdir)/pkgconfig/${PN}.pc"
-               prefix=/usr
-               exec_prefix=\${prefix}
-               libdir=\${prefix}/$(get_libdir)
-               Name: IKVM.NET
-               Description: An implementation of Java for Mono and the 
Microsoft .NET Framework.
-               Version: ${PV}
-       EOF
-       for dll in "${S}"/bin/IKVM.*.dll
-       do
-               LSTRING="${LSTRING} -r:"'${libdir}'"/mono/IKVM/${dll##*/}"
-       done
-       printf "${LSTRING}" >> "${D}/usr/$(get_libdir)/pkgconfig/${PN}.pc"
-       PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--silence-errors --libs ikvm &> /dev/null
-       eend $?
-}
-
 src_install() {
        local dll dllbase exe
        insinto /usr/$(get_libdir)/${PN}
@@ -110,8 +89,6 @@ src_install() {
                eend $? || die "Failed generating wrapper for ${exebase}"
        done
 
-       generate_pkgconfig || die "generating .pc failed"
-
        for dll in bin/IKVM.*.dll
        do
                dllbase=${dll##*/}
@@ -120,4 +97,6 @@ src_install() {
                        -gacdir /usr/$(get_libdir) -package IKVM &>/dev/null
                eend $? || die "Failed installing ${dllbase}"
        done
+
+       #einstall_pc_file "${PN}" "7.2" ...
 }

diff --git 
a/dev-dotnet/irony-framework/irony-framework-1.0.0_p20131212-r1.ebuild 
b/dev-dotnet/irony-framework/irony-framework-1.0.0_p20131212-r1.ebuild
index db9542e..9b80893 100644
--- a/dev-dotnet/irony-framework/irony-framework-1.0.0_p20131212-r1.ebuild
+++ b/dev-dotnet/irony-framework/irony-framework-1.0.0_p20131212-r1.ebuild
@@ -96,36 +96,7 @@ src_install() {
 
        egacinstall "Irony/bin/${DIR}/Irony.dll"
 
-       install_pc_file
-}
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/Irony.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
+       einstall_pc_file "${PN}" "1.0" "Irony"
 }
 
 LICENSE="MIT"

diff --git a/dev-dotnet/log4net/files/log4net.pc.in-r1 
b/dev-dotnet/log4net/files/log4net.pc.in-r1
deleted file mode 100644
index 262850f..0000000
--- a/dev-dotnet/log4net/files/log4net.pc.in-r1
+++ /dev/null
@@ -1,8 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-libdir=${exec_prefix}/@LIBDIR@
-
-Name: Log4net
-Description: Log4net - Logging library for C# and VB.NET
-Version: @VERSION@
-Libs: -r:${libdir}/mono/log4net/log4net.dll

diff --git a/dev-dotnet/log4net/log4net-1.2.11-r1.ebuild 
b/dev-dotnet/log4net/log4net-1.2.11-r2.ebuild
similarity index 70%
rename from dev-dotnet/log4net/log4net-1.2.11-r1.ebuild
rename to dev-dotnet/log4net/log4net-1.2.11-r2.ebuild
index c9ca4d3..9c13510 100644
--- a/dev-dotnet/log4net/log4net-1.2.11-r1.ebuild
+++ b/dev-dotnet/log4net/log4net-1.2.11-r2.ebuild
@@ -33,13 +33,7 @@ src_compile() {
 
 src_install() {
        egacinstall log4net.dll
-       dodir /usr/$(get_libdir)/pkgconfig
-       sed -e "s:@VERSION@:${PV}:" \
-               -e "s:@LIBDIR@:$(get_libdir):" \
-               -e "s:@NET_VERSION@:2.0:" \
-               "${FILESDIR}"/${PN}.pc.in-r1 > 
"${D}"/usr/$(get_libdir)/pkgconfig/${PN}-${PV}.pc
-       dosym ${PN}-${PV}.pc /usr/$(get_libdir)/pkgconfig/${PN}-${PV_MAJOR}.pc
-       dosym ${PN}-${PV}.pc /usr/$(get_libdir)/pkgconfig/${PN}.pc
+       einstall_pc_file "${PN}" "${PV}" "log4net"
 
        dodoc README.txt STATUS.txt
 }

diff --git a/dev-dotnet/log4net/log4net-1.2.11.ebuild 
b/dev-dotnet/log4net/log4net-1.2.11.ebuild
deleted file mode 100644
index 471faa0..0000000
--- a/dev-dotnet/log4net/log4net-1.2.11.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-inherit eutils mono-env multilib versionator gac
-
-PV_MAJOR=$(get_version_component_range 1-2)
-
-DESCRIPTION="tool to help the programmer output log statements to a variety of 
output targets"
-HOMEPAGE="http://logging.apache.org/log4net/";
-SRC_URI="mirror://apache/logging/log4net/source/${P}-src.zip
-       http://dev.gentoo.org/~pacho/dotnet/log4net.snk";
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND=">=dev-lang/mono-2.0"
-DEPEND="${RDEPEND}"
-
-src_compile() {
-       /usr/bin/gmcs \
-               -t:library \
-               -out:log4net.dll \
-               -keyfile:"${DISTDIR}"/log4net.snk \
-               -r:System.Data \
-               -r:System.Web \
-               $(find src -name "*.cs") || die
-}
-
-src_install() {
-       egacinstall log4net.dll
-       dodir /usr/$(get_libdir)/pkgconfig
-       sed -e "s:@VERSION@:${PV}:" \
-               -e "s:@LIBDIR@:$(get_libdir):" \
-               -e "s:@NET_VERSION@:2.0:" \
-               "${FILESDIR}"/${PN}.pc.in-r1 > 
"${D}"/usr/$(get_libdir)/pkgconfig/${PN}-${PV}.pc
-       dosym ${PN}-${PV}.pc /usr/$(get_libdir)/pkgconfig/${PN}-${PV_MAJOR}.pc
-       dosym ${PN}-${PV}.pc /usr/$(get_libdir)/pkgconfig/${PN}.pc
-
-       dodoc README.txt STATUS.txt
-}

diff --git a/dev-dotnet/monotorrent/monotorrent-1.0.0-r201510130.ebuild 
b/dev-dotnet/monotorrent/monotorrent-1.0.0-r201510130.ebuild
index 312723e..575a8cf 100644
--- a/dev-dotnet/monotorrent/monotorrent-1.0.0-r201510130.ebuild
+++ b/dev-dotnet/monotorrent/monotorrent-1.0.0-r201510130.ebuild
@@ -58,6 +58,7 @@ src_prepare() {
 
        # leafpad 
/var/tmp/portage/dev-dotnet/monotorrent-1.0.0-r201510130/work/monotorrent-master/monotorrent.nuspec
 &
        create_nuspec_file "${S}/${PN}.nuspec"
+       eapply_user
 }
 
 src_configure() {
@@ -76,7 +77,7 @@ src_install() {
 
        enupkg "${WORKDIR}/monotorrent.${NUGET_VERSION}.nupkg"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "1.0" "MonoTorrent"
 }
 
 create_nuspec_file()
@@ -88,41 +89,24 @@ create_nuspec_file()
                        DIR="Release"
                fi
                cat <<-EOF >$1 || die
-                 <?xml version="1.0"?>
-                 <package>
-                   <metadata>
-                     <id>${PN}</id>
-                     <version>${NUGET_VERSION}</version>
-                     <authors>unknown</authors>
-                     <owners>unknown</owners>
-                     <licenseUrl>${LICENSE_URL}</licenseUrl>
-                     <projectUrl>${HOMEPAGE}</projectUrl>
-                     <iconUrl>${ICON_URL}</iconUrl>
-                     <requireLicenseAcceptance>false</requireLicenseAcceptance>
-                     <description>${DESCRIPTION}</description>
-                   </metadata>
-                   <files> <!-- https://docs.nuget.org/create/nuspec-reference 
-->
-                     <file src="build/MonoTorrent/${DIR}/*.dll" 
target="lib\net45\" />
-                     <file src="build/MonoTorrent/${DIR}/*.mdb" 
target="lib\net45\" />
-                   </files>
-                 </package>
+               <?xml version="1.0"?>
+               <package>
+                 <metadata>
+                   <id>${PN}</id>
+                   <version>${NUGET_VERSION}</version>
+                   <authors>unknown</authors>
+                   <owners>unknown</owners>
+                   <licenseUrl>${LICENSE_URL}</licenseUrl>
+                   <projectUrl>${HOMEPAGE}</projectUrl>
+                   <iconUrl>${ICON_URL}</iconUrl>
+                   <requireLicenseAcceptance>false</requireLicenseAcceptance>
+                   <description>${DESCRIPTION}</description>
+                 </metadata>
+                 <files> <!-- https://docs.nuget.org/create/nuspec-reference 
-->
+                   <file src="build/MonoTorrent/${DIR}/*.dll" 
target="lib\net45\" />
+                   <file src="build/MonoTorrent/${DIR}/*.mdb" 
target="lib\net45\" />
+                 </files>
+               </package>
                EOF
        fi
 }
-
-install_pc_file()
-{
-       if use pkg-config; then
-               dodir /usr/$(get_libdir)/pkgconfig
-               ebegin "Installing .pc file"
-               sed  \
-                       -e "s:@LIBDIR@:$(get_libdir):" \
-                       -e "s:@PACKAGENAME@:${PN}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's;@LIBS@;-r:${libdir}/mono/monotorrent/MonoTorrent.dll;' \
-                       "${FILESDIR}"/${PN}.pc.in > 
"${D}"/usr/$(get_libdir)/pkgconfig/${PN}.pc || die
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists monotorrent || die ".pc file failed to validate."
-               eend $?
-       fi
-}

diff --git a/dev-dotnet/newtonsoft-json/newtonsoft-json-6.0.8.ebuild 
b/dev-dotnet/newtonsoft-json/newtonsoft-json-6.0.8.ebuild
index 1645ee5..ab30454 100644
--- a/dev-dotnet/newtonsoft-json/newtonsoft-json-6.0.8.ebuild
+++ b/dev-dotnet/newtonsoft-json/newtonsoft-json-6.0.8.ebuild
@@ -107,7 +107,7 @@ src_install() {
 
        enupkg "${WORKDIR}/${NUSPEC_ID}.${NUSPEC_VERSION}.nupkg"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "${PV}" "${NAME}"
 }
 
 patch_nuspec_file()
@@ -127,32 +127,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/Newtonsoft.Json.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}
\ No newline at end of file

diff --git a/dev-dotnet/newtonsoft-json/newtonsoft-json-7.0.1_p20150831.ebuild 
b/dev-dotnet/newtonsoft-json/newtonsoft-json-7.0.1_p20150831.ebuild
index c5ff34a..c9d1e1e 100644
--- a/dev-dotnet/newtonsoft-json/newtonsoft-json-7.0.1_p20150831.ebuild
+++ b/dev-dotnet/newtonsoft-json/newtonsoft-json-7.0.1_p20150831.ebuild
@@ -106,7 +106,7 @@ src_install() {
 
        enupkg "${WORKDIR}/${NUSPEC_ID}.${NUSPEC_VERSION}.nupkg"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "7.0" "${NAME}"
 }
 
 patch_nuspec_file()
@@ -126,32 +126,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/Newtonsoft.Json.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}
\ No newline at end of file

diff --git a/dev-dotnet/newtonsoft-json/newtonsoft-json-8.0.1_p20151229.ebuild 
b/dev-dotnet/newtonsoft-json/newtonsoft-json-8.0.1_p20151229.ebuild
index 93c41a6..aa8f4bd 100644
--- a/dev-dotnet/newtonsoft-json/newtonsoft-json-8.0.1_p20151229.ebuild
+++ b/dev-dotnet/newtonsoft-json/newtonsoft-json-8.0.1_p20151229.ebuild
@@ -106,7 +106,7 @@ src_install() {
 
        enupkg "${WORKDIR}/${NUSPEC_ID}.${NUSPEC_VERSION}.nupkg"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "8.0" "${NAME}"
 }
 
 patch_nuspec_file()
@@ -126,32 +126,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/Newtonsoft.Json.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}
\ No newline at end of file

diff --git a/dev-dotnet/nini/files/nini.pc.in b/dev-dotnet/nini/files/nini.pc.in
deleted file mode 100644
index 5a8f90b..0000000
--- a/dev-dotnet/nini/files/nini.pc.in
+++ /dev/null
@@ -1,9 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-
-
-Name: Nini
-Description: .NET Configuration Library
-Version: @VERSION@
-Libs: @libs@

diff --git a/dev-dotnet/nini/nini-1.1.0-r3.ebuild 
b/dev-dotnet/nini/nini-1.1.0-r4.ebuild
similarity index 67%
rename from dev-dotnet/nini/nini-1.1.0-r3.ebuild
rename to dev-dotnet/nini/nini-1.1.0-r4.ebuild
index 3167785..6f48100 100644
--- a/dev-dotnet/nini/nini-1.1.0-r3.ebuild
+++ b/dev-dotnet/nini/nini-1.1.0-r4.ebuild
@@ -24,6 +24,7 @@ S=${WORKDIR}/Nini/Source
 
 src_prepare() {
        uudecode -o Nini.snk "${FILESDIR}"/Nini.snk.uue
+       eapply_user
 }
 
 src_configure() {
@@ -42,23 +43,11 @@ src_compile() {
                -keyfile:Nini.snk \
                AssemblyInfo.cs Config/*.cs Ini/*.cs Util/*.cs \
                || die "Compilation failed"
-
-       sed     \
-               -e 's|@prefix@|${pcfiledir}/../..|' \
-               -e 's|@exec_prefix@|${prefix}|' \
-               -e "s|@libdir@|\$\{exec_prefix\}/$(get_libdir)|" \
-               -e "s|@libs@|-r:\$\{libdir\}/mono/Nini/Nini.dll|" \
-               -e "s|@VERSION@|${PV}|" \
-               "${FILESDIR}"/nini.pc.in > "${S}"/nini.pc
 }
 
 src_install() {
        egacinstall Nini.dll Nini
-       pkgconfigdir=/usr/$(get_libdir)/pkgconfig
-       insinto ${pkgconfigdir}
-       newins "${S}"/nini.pc ${P}.pc
-       dosym ${P}.pc ${pkgconfigdir}/${PN}-$(get_version_component_range 
1-2).pc
-       dosym ${P}.pc ${pkgconfigdir}/${PN}.pc
+       einstall_pc_file "${PN}" "${PV}" "Nini"
 
        dodoc "${S}"/../CHANGELOG.txt "${S}"/../README.txt
 }

diff --git a/dev-dotnet/npgsql/npgsql-3.1.6.ebuild 
b/dev-dotnet/npgsql/npgsql-3.1.6.ebuild
index 4f0d021..67a50e5 100644
--- a/dev-dotnet/npgsql/npgsql-3.1.6.ebuild
+++ b/dev-dotnet/npgsql/npgsql-3.1.6.ebuild
@@ -120,7 +120,7 @@ src_install() {
 
        enupkg "${WORKDIR}/${NUSPEC_ID}.${NUSPEC_VERSION}.nupkg"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "${PV}" "Npgsql"
 }
 
 patch_nuspec_file()
@@ -141,35 +141,6 @@ patch_nuspec_file()
        fi
 }
 
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/npgsql.dll"'*' \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}
-
 pkg_postinst()
 {
        egacadd "${PREFIX}/usr/lib/mono/${EBUILD_FRAMEWORK}/Npgsql.dll"

diff --git a/dev-dotnet/system-web/system-web-4.6.0.150.ebuild 
b/dev-dotnet/system-web/system-web-4.6.0.150.ebuild
index 37b41fd..a5782c2 100644
--- a/dev-dotnet/system-web/system-web-4.6.0.150.ebuild
+++ b/dev-dotnet/system-web/system-web-4.6.0.150.ebuild
@@ -73,35 +73,5 @@ src_install()
        fi
        egacinstall "${S}/mcs/class/${NAME}/obj/${DIR}/${NAME}.dll"
        egacinstall "${S}/policy.4.0.System.Web.dll"
-       install_pc_file "${PN}" "${NAME}.dll"
-}
-
-# The file format contains predefined metadata keywords and freeform variables 
(like ${prefix} and ${exec_prefix})
-# $1 = ${PN}
-# $2 = myassembly.dll
-install_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
+       einstall_pc_file "${PN}" "${PV}" "${NAME}"
 }

diff --git a/dev-dotnet/system-web/system-web-4.6.0.182-r1.ebuild 
b/dev-dotnet/system-web/system-web-4.6.0.182-r2.ebuild
similarity index 67%
rename from dev-dotnet/system-web/system-web-4.6.0.182-r1.ebuild
rename to dev-dotnet/system-web/system-web-4.6.0.182-r2.ebuild
index 4bf29d9..545c196 100644
--- a/dev-dotnet/system-web/system-web-4.6.0.182-r1.ebuild
+++ b/dev-dotnet/system-web/system-web-4.6.0.182-r2.ebuild
@@ -73,36 +73,8 @@ src_install()
                DIR="Release"
        fi
        egacinstall "${S}/mcs/class/${NAME}/obj/${DIR}/${NAME}.dll"
+       einfo "rewring symlink for System.Web.dll"
+       dosym  "../gac/System.Web/${PV}__b03f5f7f11d50a3a/System.Web.dll" 
"/usr/lib64/mono/4.5/System.Web.dll"
        egacinstall "${S}/policy.4.0.System.Web.dll"
-       install_pc_file "${PN}" "${NAME}.dll"
-}
-
-# The file format contains predefined metadata keywords and freeform variables 
(like ${prefix} and ${exec_prefix})
-# $1 = ${PN}
-# $2 = myassembly.dll
-install_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
+       einstall_pc_file "${PN}" "${PV}" "${NAME}"
 }

diff --git a/dev-dotnet/system-web/system-web-4.6.0.182.ebuild 
b/dev-dotnet/system-web/system-web-4.6.0.182.ebuild
deleted file mode 100644
index 971b97a..0000000
--- a/dev-dotnet/system-web/system-web-4.6.0.182.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# 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"
-
-DESCRIPTION="Framework for developing web-applications"
-HOMEPAGE="https://www.asp.net/";
-SRC_URI="https://github.com/ArsenShnurkov/shnurise-tarballs/archive/dev-dotnet/system-web/system-web-4.6.0.182.tar.gz";
-RESTRICT="mirror"
-S="${WORKDIR}/shnurise-tarballs-${CATEGORY}-${PN}-${PF}"
-
-NAME=System.Web
-
-LICENSE="Apache-2.0"
-SLOT="0"
-
-KEYWORDS="~amd64 ~x86"
-
-# dependency on mono is included in dotnet.eclass which is inherited with 
nupkg.eclass (so no need to include >=dev-lang/mono-4.0.2.5 here)
-# dependency on nuget is included in nupkg.eclass when USE="nupkg" is set
-COMMONDEPEND="
-"
-RDEPEND="${COMMONDEPEND}
-"
-DEPEND="${COMMONDEPEND}
-"
-
-CSPROJ=${NAME}.csproj
-
-src_prepare()
-{
-       sed -i 's/public const string FxVersion = "4.0.0.0";/public const 
string FxVersion = "'${PV}'";/g' "${S}/mcs/build/common/Consts.cs" || die
-       sed "s/4.6.0.150/4.6.0.182/g" 
"${FILESDIR}/policy.4.0.System.Web.config" > 
"${S}/policy.4.0.System.Web.config" || die
-       eapply "${FILESDIR}/add-system-diagnostics-namespace.patch"
-       eapply_user
-}
-
-src_configure()
-{
-       :;
-}
-
-KEYFILE1=${S}/mcs/class/msfinal.pub
-KEYFILE2=${S}/mcs/class/mono.snk
-
-src_compile()
-{
-       # System.Web.dll
-       exbuild /p:SignAssembly=true /p:AssemblyOriginatorKeyFile=${KEYFILE1} 
/p:DelaySign=true "${S}/mcs/class/${NAME}/${CSPROJ}"
-       if use debug; then
-               DIR="Debug"
-       else
-               DIR="Release"
-       fi
-       sn -R "${S}/mcs/class/${NAME}/obj/${DIR}/${NAME}.dll" ${KEYFILE2} || die
-
-       # Policy file
-       al "/link:${S}/policy.4.0.System.Web.config" 
"/out:${S}/policy.4.0.System.Web.dll" "/keyfile:${KEYFILE1}" /delaysign+ || die
-       sn -R "${S}/policy.4.0.System.Web.dll" ${KEYFILE2} || die
-}
-
-src_install()
-{
-       if use debug; then
-               DIR="Debug"
-       else
-               DIR="Release"
-       fi
-       egacinstall "${S}/mcs/class/${NAME}/obj/${DIR}/${NAME}.dll"
-       egacinstall "${S}/policy.4.0.System.Web.dll"
-       install_pc_file "${PN}" "${NAME}.dll"
-}
-
-# The file format contains predefined metadata keywords and freeform variables 
(like ${prefix} and ${exec_prefix})
-# $1 = ${PN}
-# $2 = myassembly.dll
-install_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
-}

diff --git a/dev-dotnet/x-pagedlist/x-pagedlist-1.24.0.23549-r201512120.ebuild 
b/dev-dotnet/x-pagedlist/x-pagedlist-1.24.0.23549-r201512120.ebuild
index 382af14..72d1446 100644
--- a/dev-dotnet/x-pagedlist/x-pagedlist-1.24.0.23549-r201512120.ebuild
+++ b/dev-dotnet/x-pagedlist/x-pagedlist-1.24.0.23549-r201512120.ebuild
@@ -72,6 +72,8 @@ src_prepare() {
        einfo "preparing nuspec"
        cp "${FILESDIR}/${NUSPEC_FILE_NAME}" "${S}/${NUSPEC_FILE_NAME}" || die
        patch_nuspec_file "${S}/${NUSPEC_FILE_NAME}"
+
+       eapply_user
 }
 
 src_configure() {
@@ -93,7 +95,7 @@ src_install() {
        egacinstall "src/X.PagedList/bin/${DIR}/X.PagedList.dll"
        egacinstall "src/X.PagedList.Mvc/bin/${DIR}/X.PagedList.Mvc.dll"
 
-       install_pc_file
+       einstall_pc_file "${PN}" "${PV}" "X.PagedList.Mvc"
 }
 
 patch_nuspec_file()
@@ -124,33 +126,3 @@ patch_nuspec_file()
                sed -i 's/<\/package>/'"${FILES_STRING//$'\n'/\\$'\n'}"'\n&/g' 
$1 || die "escaping line endings"
        fi
 }
-
-PC_FILE_NAME=${PN}
-
-install_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@:${PC_FILE_NAME}:" \
-                       -e "s:@DESCRIPTION@:${DESCRIPTION}:" \
-                       -e "s:@VERSION@:${PV}:" \
-                       -e 
's*@LIBS@*-r:${libdir}'"/mono/${PC_FILE_NAME}/X.PagedList.dll:"'${libdir}'"/mono/${PC_FILE_NAME}/X.PagedList.Mvc.dll"'*'
 \
-                       <<\EOF 
>"${D}/usr/$(get_libdir)/pkgconfig/${PC_FILE_NAME}.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 "${PC_FILE_NAME}"
-               PKG_CONFIG_PATH="${D}/usr/$(get_libdir)/pkgconfig/" pkg-config 
--exists "${PC_FILE_NAME}" || die ".pc file failed to validate."
-               eend $?
-       fi
-}

Reply via email to