From f85abf19c252470b946ff94fa941893d45469656 Mon Sep 17 00:00:00 2001 From: Bertrand Jacquin Date: Sun, 27 Apr 2014 23:30:12 +0200 Subject: sys-apps/winexe: Add live ebuild from git, use WAF build system, remove non necessary gnutls USE flag, remove non necessary net-libs/gnutls and dev-libs/cyrus-sasl DEPEND, mingw (32 and 64) are needed to build, so pkg_pretend() to find them, refresh NT_STATUS_SERVICE_DOES_NOT_EXIST patch to valid one Package-Manager: portage-2.2.10 --- sys-apps/winexe/ChangeLog | 12 +++- sys-apps/winexe/Manifest | 4 +- ...Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch | 29 +++++++++ sys-apps/winexe/winexe-9999.ebuild | 74 ++++++++++++++++++++++ 4 files changed, 117 insertions(+), 2 deletions(-) create mode 100644 sys-apps/winexe/files/9999-BUG-MEDIUM-Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch create mode 100644 sys-apps/winexe/winexe-9999.ebuild (limited to 'sys-apps') diff --git a/sys-apps/winexe/ChangeLog b/sys-apps/winexe/ChangeLog index 564ccd85..83a731a9 100644 --- a/sys-apps/winexe/ChangeLog +++ b/sys-apps/winexe/ChangeLog @@ -1,7 +1,17 @@ # ChangeLog for sys-apps/winexe -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ +*winexe-9999 (27 Apr 2014) + + 27 Apr 2014; Bertrand Jacquin + +files/9999-BUG-MEDIUM-Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch, + +winexe-9999.ebuild: + sys-apps/winexe: Add live ebuild from git, use WAF build system, remove non + necessary gnutls USE flag, remove non necessary net-libs/gnutls and dev-libs + /cyrus-sasl DEPEND, mingw (32 and 64) are needed to build, so pkg_pretend() to + find them, refresh NT_STATUS_SERVICE_DOES_NOT_EXIST patch to valid one + 15 Jun 2013; Bertrand Jacquin winexe-1.00.ebuild: sys-apps/winexe: remove unneeded die() diff --git a/sys-apps/winexe/Manifest b/sys-apps/winexe/Manifest index e868c89e..536f7c03 100644 --- a/sys-apps/winexe/Manifest +++ b/sys-apps/winexe/Manifest @@ -1,5 +1,7 @@ +AUX 9999-BUG-MEDIUM-Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch 1250 SHA256 79c98e41d1ac40c4eb86acba190fde4b856947edc60611d3b385dcd6d4302c3a WHIRLPOOL e326533e052e1e2b31088aad0be1e9717c25f90c8f2a6a6ace4bac8150ff63df6683fdff5d422cce1ff9fbf47f06f0ae3f06f4769ff9ace6b5fb230ffb12d79d AUX filesdir.patch 505 SHA256 bac1d7e1ac0b81a35e3edc8bc24718b8d31913a79b7c860001e60de73e3c736b WHIRLPOOL 9f3b30ad5be4f4e2e4c16711d36f906796eb449bbbad94267e92add23ed7ec8f39c90f2cacdd4129b54b8b304453c4cf844e98137447d15c2aff1d1099b7435f DIST winexe-1.00.tar.gz 21931368 SHA256 99238bd3e1c0637041c737c86a05bd73a9375abc9794dca71d2765e22d87537e WHIRLPOOL 84fc03e1e683dbf7272f9362acd59649643389cbe535d0d00eae4a472326fe49268f2ac7e3c2d3f307ea62b09113d5212540a89adcdcd4b17d42a3461d9bca0b EBUILD winexe-1.00.ebuild 760 SHA256 a89dad84686a6ab4f8bbae803fe55efe9e5b6c6b00198df99236a168b0a7e21b WHIRLPOOL 008dd1eaa4967bdfd20487ec8443dcaed75ffaca56543c1d3d5f893bed1b8040b5cc464abcd8f1a86fc1bdb0bf8bb07b0ac31c14a4106307e920cba572fd633d -MISC ChangeLog 925 SHA256 a17fac4fa397b44fd30f56056b08d828eb87e46d228dd9ba01d7ac2851a5eb84 WHIRLPOOL 57b0d4a93591d39a2704a54ffd2dae45bf442a3b9a74d80a44208d3cc840c11b3734ee9f6a5fcb6913293d78d144c3cc6ad06020afa2d1ec0f2f10f63cb18a4c +EBUILD winexe-9999.ebuild 1718 SHA256 ba6bf1ca8760adcc6090852df9df29ee17202125f820d8e5a4eebb871c3a676d WHIRLPOOL 99ce4fb49c257859db461792e8ea62861c2c21d3ff00d6ec595c68b12d168436a90b81dbfecc4124a4af061bb9b24040fa187d74dd0e5552f143e4f43dad1630 +MISC ChangeLog 1415 SHA256 254b3cfc16565289c8f1ff654805272f7250f847a0b28971c49e9c228174b535 WHIRLPOOL 280d0f6370ed5a8347c34890d806e9a41b6e00f9f6abbdd78807b69155ac77bf61eb6039970fc36ac34382c9f8c5ac571f44662162bff86cf9a583b2fadb58fc MISC metadata.xml 254 SHA256 c56bc3d6780712c960298c70bb86867aeb6661e97a317cc624516b0e16b72fcc WHIRLPOOL 2ebbfaa14ef0c1847284fe64a79f052cd7e73b25a724fba728c084aaaf2dd0692e068eedcf42ccef7e205077f00c35780ded7ec69118dc01ddb988b4802e46ae diff --git a/sys-apps/winexe/files/9999-BUG-MEDIUM-Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch b/sys-apps/winexe/files/9999-BUG-MEDIUM-Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch new file mode 100644 index 00000000..4168cf1d --- /dev/null +++ b/sys-apps/winexe/files/9999-BUG-MEDIUM-Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch @@ -0,0 +1,29 @@ +From 48a6ff7243d8b72fabe827df2179b400b4fba7ec Mon Sep 17 00:00:00 2001 +From: Bertrand Jacquin +Date: Sun, 27 Apr 2014 23:10:34 +0200 +Subject: [PATCH] BUG/MEDIUM: Fix NT_STATUS_SERVICE_DOES_NOT_EXIST definition + +Avoiding error like: + [winexe/winexe.c:120:on_ctrl_pipe_error()] ERROR: Failed to install service winexesvc - NT code 0x00000424 + +See also: http://infosys.beckhoff.com/index.php?content=../content/1031/tcdiagnostics/html/tcdiagnostics_win32_errorcodes.htm&id= +--- + source/svcinstall.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/source/svcinstall.c b/source/svcinstall.c +index 06848cc..a97de0d 100644 +--- a/source/svcinstall.c ++++ b/source/svcinstall.c +@@ -30,7 +30,7 @@ + #define SERVICE_DEMAND_START (0x00000003) + #define SERVICE_ERROR_NORMAL (0x00000001) + #define SERVICE_CONTROL_STOP (0x00000001) +-#define NT_STATUS_SERVICE_DOES_NOT_EXIST NT_STATUS(0xc0000424) ++#define NT_STATUS_SERVICE_DOES_NOT_EXIST NT_STATUS(0x00000424) + + #define NT_ERR(status, lvl, args...) if (!NT_STATUS_IS_OK(status)) { DEBUG(lvl,("ERROR: " args)); DEBUG(lvl,(". %s.\n", nt_errstr(status))); return status; } + #define NT_RES(status, werr) (NT_STATUS_IS_OK(status) ? werror_to_ntstatus(werr) : status) +-- +1.8.3.2 + diff --git a/sys-apps/winexe/winexe-9999.ebuild b/sys-apps/winexe/winexe-9999.ebuild new file mode 100644 index 00000000..ba5a8e81 --- /dev/null +++ b/sys-apps/winexe/winexe-9999.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 +inherit eutils waf-utils git-r3 + +DESCRIPTION="winexe remotely executes commands on WindowsNT/2000/XP/2003 systems" +HOMEPAGE="http://sourceforge.net/projects/winexe" +EGIT_REPO_URI="git://git.code.sf.net/p/winexe/winexe-waf" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="" +IUSE="" + +DEPEND=">=net-fs/samba-4 + dev-libs/popt" +RDEPEND="${DEPEND}" + +S="${S}/source" + +pkg_pretend () { + # From source/wscript + # AR32 = ['i386', 'i586', 'i686'] + # AR64 = ['x86_64', 'amd64'] + # TC = ['mingw32', 'mingw32msvc', 'w64-mingw32'] + MINGW32_VARIANT=( i{3,4,6}86-{w64-,}mingw32 ) + MINGW64_VARIANT=( x86_64-{w64-,}mingw32 ) + + local tc + + for tc in ${MINGW32_VARIANT[@]} ; do + if type -p "${tc}-gcc" > /dev/null ; then + MINGW32_CC="${tc}" + break + fi + done + + for tc in ${MINGW64_VARIANT[@]} ; do + if type -p "${tc}-gcc" > /dev/null ; then + MINGW64_CC="${tc}" + break + fi + done + + if [[ -z "${MINGW32_CC}" || -z "${MINGW64_CC}" ]] ; then + eerror "Before you could emerge ${PN}, you need to install mingw" + eerror "Run the following commands:" + eerror " emerge crossdev" + eerror " crossdev --stable --libc '[latest]' -t i686-w64-mingw32" + eerror " crossdev --stable --libc '[latest]' -t x86_64-w64-mingw32" + die "mingw environnement not available" + fi + + return 0 +} + +src_prepare () { + epatch "${FILESDIR}/${PV}-BUG-MEDIUM-Fix-NT_STATUS_SERVICE_DOES_NOT_EXIST-defi.patch" +} + +src_configure () { + NO_WAF_LIBDIR=yes \ + waf-utils_src_configure \ + --samba-inc-dirs="${EROOT}usr/include/samba-4.0" \ + --samba-lib-dirs="${EROOT}usr/$(get_libdir)/samba" +} + +src_install () { + waf-utils_src_install + + dodoc ../README +} -- cgit v1.2.3