From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- net-misc/nx/Manifest | 11 +++ net-misc/nx/files/1.5.0/nxcomp-1.5.0-pic.patch | 20 ++++ .../files/nx-3.2.0-nxproxy_read_from_stdin.patch | 68 +++++++++++++ .../nx/files/nx-3.5.0.17-cflags_ar_ranlib.patch | 100 +++++++++++++++++++ .../files/nx-3.5.0.30-fix_X11_underlinking.patch | 11 +++ net-misc/nx/metadata.xml | 9 ++ net-misc/nx/nx-3.5.0.30.ebuild | 106 +++++++++++++++++++++ net-misc/nx/nx-3.5.0.32.ebuild | 104 ++++++++++++++++++++ 8 files changed, 429 insertions(+) create mode 100644 net-misc/nx/Manifest create mode 100644 net-misc/nx/files/1.5.0/nxcomp-1.5.0-pic.patch create mode 100644 net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch create mode 100644 net-misc/nx/files/nx-3.5.0.17-cflags_ar_ranlib.patch create mode 100644 net-misc/nx/files/nx-3.5.0.30-fix_X11_underlinking.patch create mode 100644 net-misc/nx/metadata.xml create mode 100644 net-misc/nx/nx-3.5.0.30.ebuild create mode 100644 net-misc/nx/nx-3.5.0.32.ebuild (limited to 'net-misc/nx') diff --git a/net-misc/nx/Manifest b/net-misc/nx/Manifest new file mode 100644 index 000000000000..cd90cb8fb9c2 --- /dev/null +++ b/net-misc/nx/Manifest @@ -0,0 +1,11 @@ +AUX 1.5.0/nxcomp-1.5.0-pic.patch 522 SHA256 d4fb814d5ee3bd13c39e535b731caab0acb9e552cea471c602c8ff9c8e6d535e SHA512 14e5dc5ea280704d867af971bced585adfd805f49ed70162c4b1691b81926b144720e5df1fc1257e0b3a9e5841fed0deea3a7096d92a210476c1bfd89112c52f WHIRLPOOL b4341346200fb951342535f566d5849183655a6f014be6f9f985e1da087222491b9503f9548506927ec240eaece7829828e1a8690aaf8bcb0d5d402c6c207d34 +AUX nx-3.2.0-nxproxy_read_from_stdin.patch 1382 SHA256 7674e887e1be1134110e2219a96b413efa2b32d9be50de77d15b9dcbad8a4d76 SHA512 d7ae8eb5e43371b913ebb182436284c3a7526b1485bd2e4a969e0e02299315d6a4f036f54f477ebb4299138ba23d830aea46ef2ff6e90ada2a74ef6e95948924 WHIRLPOOL 940299b85e79c6e2e23d2255acf8d37d3f38606d084dd51347dbf67e00283ad8993b6281095d499d4a78e9de11bbf866120ab42ca0d1dcf65590eb53f71f61db +AUX nx-3.5.0.17-cflags_ar_ranlib.patch 3518 SHA256 a129ea9d774997d946babe09d431e21ee4eaf5538b52a6a8a4fe2f9ff7c78f25 SHA512 df036cafc3526526e6768976f6ddca97584dbea2f7008c9c6a977922389e0e12901fd399794a10e2050380e5ad4066f364c2ebd5bd6e94e65143ccb100000400 WHIRLPOOL 6a6c909699ff9be60ecba4990b131cdd68d44959d35f95bd166846517065ee044784a48b2eec0fad6c80ecef0b821e75953a7189275a3e69bb88eaa573de61b2 +AUX nx-3.5.0.30-fix_X11_underlinking.patch 538 SHA256 3c726b2ecd3e1277b5c7f5863b1f662a50ed435d817e4e4743d05fe0f4d79c35 SHA512 dcaa0da2e6e4dea2a35586f74c4f67a331072de280e98e9fdae3cdc0c8b477b4256b57c6925fe6949084acd655b1edfc55b66eea08b2ae5090a84dce65db3d18 WHIRLPOOL 63473edc9ea2dab3928473f6b3f74cf6da80465ce7ecb17800cf55beba7d46364cac047b42d4793b2dc7968bce334312f09b352c16594b6dcac1ef7228641071 +DIST nx-libs-3.5.0.30-full.tar.gz 6639925 SHA256 60bf86a41f6e7a04a17d5fb471f77a37045c11e06e5e0786b3dc959bb6a3fc5a SHA512 223c73de1b8988d17a555a7dd56c14ddc27855b7c1d9a9b28c053161a707520c1fcef697c3d9148222dae23e1465e72821455271477ac835d5cc63498b45e005 WHIRLPOOL eebd82ff2e7b434840c1f2a451edfdf454903a28b4d9861d1c568308443bff6a05082cd73a446049c840d75bb9b107aab16c6c85fa48529b445ee3b3ac77eb24 +DIST nx-libs-3.5.0.32-full.tar.gz 6801696 SHA256 be166390ed7c08b96bd62f1e93910d720d105c679481bc389e833003da2a226d SHA512 8b4a042993d45e1aee3e13e8b86f68cd5b2a8b52e9299de6129abd8e3bb89d73cf2b44b03d3c7fabbd8329abc06dc912ac95bbf936b6478b05fc202cc29a090f WHIRLPOOL 5d97b83ad66ee51b676e15102f0fade974a619840b1e180607062e6694e7eebddf3bceb85324bc59c976d468b283eaa4e99c0a609b707cdae03096d92fab81e5 +EBUILD nx-3.5.0.30.ebuild 2743 SHA256 8fd0bfd0090c448868288bf1f20c30cddbb4c005dabb88c5d18e711e353699a7 SHA512 0ab1df3ca4443ceca485e63b1eaabb0773a861503d8c6bcf669f3a0d36e6c3bd9113a77c1cc06bd56ec78be05b58d5bfe7b972ac08e519d2c61c9ebc9e02679d WHIRLPOOL 1b79c3ef3a825cf86bc1e30933dca506742a1c8ae41e1298991633c9466c2b6adb547a7bb02824546f4fdd4da58d9f0e98b6d48dd76e4d3d06ca7a1c2c3d9d27 +EBUILD nx-3.5.0.32.ebuild 2655 SHA256 7007b026a026b38745088c86ef09d343bddb00af1de5bc0d8062a8b4d98c7ab7 SHA512 bf5638e1f600a64549cbd5651ad052593043b91d957ba064a03ffa63088780c10991d2fe0526241571aca6be8c307c5e8a6d5e338bd9b811e9dc97bf8ede4a0d WHIRLPOOL 6b814fa4bbd9f10285bba966a9f262c392c7aa8f08f52734dca9a959afce7929d80c3ca984ef6727933f3ade014f3d3f83006739fd593958afb69a9ea6225061 +MISC ChangeLog 3054 SHA256 6d83ca953b0c058a12554a687e71f63b1e5f75886cd8f1787e23947a13e5f1e6 SHA512 9adbab0fbf6b814322b950e67bd78d6247915ea4ba31ed461b655b5b66d12b6aa41756dac6a367547a9ce36ab6dab50377f0cc5b34f71d773d636feba00bbaaf WHIRLPOOL 99d4a91bd718b12b79b31ffb03b47daee3003faa069fe09fd257f443edf8766d19795aaeb61e9979d66f98c5ec911e377ccf30d3b8e2c4021efc669aeff691ec +MISC ChangeLog-2015 15379 SHA256 c0603e91cc03a40f606e6cddc42f0f08c985cea72c3172d908069f57fcbaa930 SHA512 2ea4211a731623006c6045d71ba5d4cddc6be4f51edc1163c384bde0a1b4b440c1e6d22efe15b637e7c4be34ed1ea8ff52097a359acafcd76b4ada55cf8d4b51 WHIRLPOOL 204db5809e1f55b8fc402a7603e5b4530acbdbafaa6949d42fb0e7e0422c1dc2f009fdc8c3e47c174fd4b9fbe464d38c3457bcd6b805e8c5abc7c0506bf86e7f +MISC metadata.xml 347 SHA256 92091863a3f87a915ab56c35c84ec69b4a7c4ff56b06b84910efdc2acd7ecfce SHA512 95db9d7a6f2869d74b0f960845dcaff0490bd5d137bd3df477d6fc5ba7eef910c46b3dd16fd2508830024fa56f27ff1c479b47ec7b766d15103449b2c01485b4 WHIRLPOOL 8579fc93b88063c4a7eb0753cd18105dc8603b85e10bff89ee5366c675104746c0232a05550e2a9d961f022ebbf35c24ca0febed3244b7995a3d98cf9e517208 diff --git a/net-misc/nx/files/1.5.0/nxcomp-1.5.0-pic.patch b/net-misc/nx/files/1.5.0/nxcomp-1.5.0-pic.patch new file mode 100644 index 000000000000..2ccaf978dd09 --- /dev/null +++ b/net-misc/nx/files/1.5.0/nxcomp-1.5.0-pic.patch @@ -0,0 +1,20 @@ +--- nxcomp/Makefile.in.agriffis 2005-11-12 12:48:42.000000000 -0500 ++++ nxcomp/Makefile.in 2005-12-15 12:24:46.000000000 -0500 +@@ -32,7 +32,7 @@ + + CXX = @CXX@ + CXXFLAGS = @CXXFLAGS@ @X_CFLAGS@ @DEFS@ \ +- -Wall -Wpointer-arith ++ -Wall -Wpointer-arith -fPIC + CXXINCLUDES = + CXXDEFINES = + +@@ -42,7 +42,7 @@ + + CC = @CC@ + CCFLAGS = @CFLAGS@ @X_CFLAGS@ @DEFS@ \ +- -Wall -Wpointer-arith ++ -Wall -Wpointer-arith -fPIC + CCINCLUDES = + CCDEFINES = + diff --git a/net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch b/net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch new file mode 100644 index 000000000000..bce692d10a7a --- /dev/null +++ b/net-misc/nx/files/nx-3.2.0-nxproxy_read_from_stdin.patch @@ -0,0 +1,68 @@ +--- Main.c.old 2007-07-18 17:39:13.000000000 +0200 ++++ Main.c 2008-03-12 04:40:30.000000000 +0100 +@@ -36,28 +36,48 @@ + int result = -1; + + char *options = NULL; +- ++ ++ char *nx_commfd_str = NULL; ++ + options = getenv("NX_DISPLAY"); +- +- if (NXTransParseCommandLine(argc, argv) < 0) ++ ++ if ((nx_commfd_str = getenv("NX_COMMFD")) != NULL) + { +- NXTransCleanup(); +- } ++ int nx_commfd = atoi(nx_commfd_str); + +- if (NXTransParseEnvironment(options, 0) < 0) +- { +- NXTransCleanup(); ++ if (result) ++ result = NXTransCreate(nx_commfd, NX_MODE_SERVER, options); ++ ++ // go into endless loop ++ ++ if (result) ++ { ++ while (NXTransRunning(NX_FD_ANY)) ++ result = NXTransContinue(NULL); ++ } + } ++ else ++ { ++ if (NXTransParseCommandLine(argc, argv) < 0) ++ { ++ NXTransCleanup(); ++ } ++ ++ if (NXTransParseEnvironment(options, 0) < 0) ++ { ++ NXTransCleanup(); ++ } ++ ++ /* ++ * This should not return... ++ */ ++ ++ #ifdef TEST ++ fprintf(stderr, "Main: Yielding control to NX entry point.\n"); ++ #endif + +- /* +- * This should not return... +- */ +- +- #ifdef TEST +- fprintf(stderr, "Main: Yielding control to NX entry point.\n"); +- #endif +- +- result = NXTransProxy(NX_FD_ANY, NX_MODE_ANY, NX_DISPLAY_ANY); ++ result = NXTransProxy(NX_FD_ANY, NX_MODE_ANY, NX_DISPLAY_ANY); ++ } + + /* + * ...So these should not be called. diff --git a/net-misc/nx/files/nx-3.5.0.17-cflags_ar_ranlib.patch b/net-misc/nx/files/nx-3.5.0.17-cflags_ar_ranlib.patch new file mode 100644 index 000000000000..668a6bf4c310 --- /dev/null +++ b/net-misc/nx/files/nx-3.5.0.17-cflags_ar_ranlib.patch @@ -0,0 +1,100 @@ +diff -Naur nx-libs-3.5.0.17.orig/nxcomp/Makefile.in nx-libs-3.5.0.17/nxcomp/Makefile.in +--- nx-libs-3.5.0.17.orig/nxcomp/Makefile.in 2013-01-09 15:03:33.152952758 +0100 ++++ nx-libs-3.5.0.17/nxcomp/Makefile.in 2013-01-09 15:05:39.771898159 +0100 +@@ -243,8 +243,8 @@ + + $(LIBARCHIVE): $(CXXOBJ) $(COBJ) + rm -f $(LIBARCHIVE) +- ar clq $(LIBARCHIVE) $(CXXOBJ) $(COBJ) +- ranlib $(LIBARCHIVE) ++ $(AR) $(LIBARCHIVE) $(CXXOBJ) $(COBJ) ++ $(RANLIB) $(LIBARCHIVE) + + $(LIBCYGSHARED): $(LIBARCHIVE) + $(CC) -shared -o $(LIBCYGSHARED) \ +diff -Naur nx-libs-3.5.0.17.orig/nxcomp/configure.in nx-libs-3.5.0.17/nxcomp/configure.in +--- nx-libs-3.5.0.17.orig/nxcomp/configure.in 2013-01-09 15:03:33.151952758 +0100 ++++ nx-libs-3.5.0.17/nxcomp/configure.in 2013-01-09 15:04:03.312940892 +0100 +@@ -7,8 +7,7 @@ + + dnl Set our default compilation flags. + +-CXXFLAGS="$CXXFLAGS -O3 -fno-rtti -fno-exceptions" +-CFLAGS="$CFLAGS -O3" ++CXXFLAGS="$CXXFLAGS -fno-rtti -fno-exceptions" + + dnl Reset default linking directives. + +diff -Naur nx-libs-3.5.0.17.orig/nxcompext/Makefile.in nx-libs-3.5.0.17/nxcompext/Makefile.in +--- nx-libs-3.5.0.17.orig/nxcompext/Makefile.in 2013-01-09 15:03:33.164952753 +0100 ++++ nx-libs-3.5.0.17/nxcompext/Makefile.in 2013-01-09 15:06:08.747879052 +0100 +@@ -125,8 +125,8 @@ + + $(LIBARCHIVE): $(CXXOBJ) $(COBJ) + rm -f $(LIBARCHIVE) +- ar clq $(LIBARCHIVE) $(CXXOBJ) $(COBJ) +- ranlib $(LIBARCHIVE) ++ $(AR) $(LIBARCHIVE) $(CXXOBJ) $(COBJ) ++ $(RANLIB) $(LIBARCHIVE) + + $(LIBCYGSHARED): $(LIBARCHIVE) + $(CC) -shared -o $(LIBCYGSHARED) \ +diff -Naur nx-libs-3.5.0.17.orig/nxcompext/configure.in nx-libs-3.5.0.17/nxcompext/configure.in +--- nx-libs-3.5.0.17.orig/nxcompext/configure.in 2013-01-09 15:03:33.164952753 +0100 ++++ nx-libs-3.5.0.17/nxcompext/configure.in 2013-01-09 15:04:16.247935801 +0100 +@@ -5,11 +5,6 @@ + AC_INIT(NXlib.h) + AC_PREREQ(2.13) + +-dnl Reset default compilation flags. +- +-CXXFLAGS="$CXXFLAGS -O3" +-CFLAGS="$CFLAGS -O3" +- + dnl Reset default linking directives. + + LIBSTATIC="" +diff -Naur nx-libs-3.5.0.17.orig/nxcompshad/Makefile.in nx-libs-3.5.0.17/nxcompshad/Makefile.in +--- nx-libs-3.5.0.17.orig/nxcompshad/Makefile.in 2013-01-09 15:03:33.163952754 +0100 ++++ nx-libs-3.5.0.17/nxcompshad/Makefile.in 2013-01-09 15:06:16.933873660 +0100 +@@ -158,8 +158,8 @@ + + $(LIBARCHIVE): $(CXXOBJ) $(COBJ) + rm -f $(LIBARCHIVE) +- ar clq $(LIBARCHIVE) $(CXXOBJ) $(COBJ) +- ranlib $(LIBARCHIVE) ++ $(AR) $(LIBARCHIVE) $(CXXOBJ) $(COBJ) ++ $(RANLIB) $(LIBARCHIVE) + + $(LIBDLL): $(LIBARCHIVE) + $(CC) -o $@ \ +diff -Naur nx-libs-3.5.0.17.orig/nxcompshad/configure.in nx-libs-3.5.0.17/nxcompshad/configure.in +--- nx-libs-3.5.0.17.orig/nxcompshad/configure.in 2013-01-09 15:03:33.163952754 +0100 ++++ nx-libs-3.5.0.17/nxcompshad/configure.in 2013-01-09 15:04:20.073934295 +0100 +@@ -5,11 +5,6 @@ + AC_INIT(Shadow.h) + AC_PREREQ(2.13) + +-dnl Reset default compilation flags. +- +-CXXFLAGS="$CXXFLAGS -O3" +-CPPFLAGS="$CPPFLAGS -O3" +- + dnl Reset default linking directives. + + LIBSTATIC="" +diff -Naur nx-libs-3.5.0.17.orig/nxproxy/configure.in nx-libs-3.5.0.17/nxproxy/configure.in +--- nx-libs-3.5.0.17.orig/nxproxy/configure.in 2013-01-09 15:03:33.163952754 +0100 ++++ nx-libs-3.5.0.17/nxproxy/configure.in 2013-01-09 15:04:24.842932418 +0100 +@@ -5,11 +5,6 @@ + AC_INIT(Main.c) + AC_PREREQ(2.13) + +-dnl Reset default compilation flags. +- +-CXXFLAGS="$CXXFLAGS -O3" +-CPPFLAGS="$CPPFLAGS -O3" +- + dnl Prefer headers and libraries from nx-X11 if present. + + if test -d "../nx-X11/exports/include" ; then diff --git a/net-misc/nx/files/nx-3.5.0.30-fix_X11_underlinking.patch b/net-misc/nx/files/nx-3.5.0.30-fix_X11_underlinking.patch new file mode 100644 index 000000000000..87d73c5a8d37 --- /dev/null +++ b/net-misc/nx/files/nx-3.5.0.30-fix_X11_underlinking.patch @@ -0,0 +1,11 @@ +--- nx-X11/lib/X11/Imakefile.orig 2015-04-24 15:24:36.171666957 +0200 ++++ nx-X11/lib/X11/Imakefile 2015-04-24 15:25:17.516179627 +0200 +@@ -107,7 +107,7 @@ + EXCLUDE_SYMBOL = -Wl,--exclude-symbol,XdmcpWrap:_XdmcpWrapperToOddParity + #endif + +-REQUIREDLIBS=$(REQUIREDX11LIBS) $(REQUIREDI18NLIBS) $(EXCLUDE_SYMBOL) $(NX_REQUIREDLIBS) ++REQUIREDLIBS=$(REQUIREDX11LIBS) $(REQUIREDI18NLIBS) $(EXCLUDE_SYMBOL) $(NX_REQUIREDLIBS) -ldl + + #if defined(MacIIArchitecture) || defined(SequentArchitecture) || defined(i386ScoArchitecture) + XBSDLIB = /**/ diff --git a/net-misc/nx/metadata.xml b/net-misc/nx/metadata.xml new file mode 100644 index 000000000000..1b5df39c0204 --- /dev/null +++ b/net-misc/nx/metadata.xml @@ -0,0 +1,9 @@ + + + + + voyageur@gentoo.org + Bernard Cafarelli + +Special versions of the X11 libraries to support NX compression + diff --git a/net-misc/nx/nx-3.5.0.30.ebuild b/net-misc/nx/nx-3.5.0.30.ebuild new file mode 100644 index 000000000000..36d736fb7a3b --- /dev/null +++ b/net-misc/nx/nx-3.5.0.30.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +inherit autotools eutils multilib readme.gentoo + +DESCRIPTION="NX compression technology core libraries" +HOMEPAGE="http://www.x2go.org/doku.php/wiki:libs:nx-libs" + +SRC_URI="http://code.x2go.org/releases/source/nx-libs/nx-libs-${PV}-full.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~ppc x86" +IUSE="elibc_glibc" + +RDEPEND="media-libs/freetype:2 + >=media-libs/libpng-1.2.8:* + >=sys-libs/zlib-1.2.3 + virtual/jpeg:*" + +DEPEND="${RDEPEND} + x11-libs/libfontenc + x11-misc/gccmakedep + x11-misc/imake + x11-proto/inputproto" + +S=${WORKDIR}/nx-libs-${PV} + +DOC_CONTENTS="If you get problems with rendering gtk+ apps, enable the xlib-xcb +useflag on x11-libs/cairo." + +src_prepare() { + # For nxcl/qtnx + cd "${S}"/nxproxy + epatch "${FILESDIR}"/${PN}-3.2.0-nxproxy_read_from_stdin.patch + + cd "${S}" + # -fPIC + epatch "${FILESDIR}"/1.5.0/nxcomp-1.5.0-pic.patch + # Drop force -O3, set AR/RANLIB + epatch "${FILESDIR}"/${PN}-3.5.0.17-cflags_ar_ranlib.patch + # Fix libX11 underlinking, #546868 + epatch "${FILESDIR}"/${P}-fix_X11_underlinking.patch + + # run autoreconf in all neeed folders + for i in nxcomp nxcompext nxcompshad nxproxy; do + cd "${S}"/${i} + eautoreconf ${i} + cd "${S}" + done + + # From xorg-x11-6.9.0-r3.ebuild + cd "${S}/nx-X11" + HOSTCONF="config/cf/host.def" + echo "#define CcCmd $(tc-getCC)" >> ${HOSTCONF} + echo "#define OptimizedCDebugFlags ${CFLAGS} GccAliasingArgs" >> ${HOSTCONF} + echo "#define OptimizedCplusplusDebugFlags ${CXXFLAGS} GccAliasingArgs" >> ${HOSTCONF} + # Respect LDFLAGS + echo "#define ExtraLoadFlags ${LDFLAGS}" >> ${HOSTCONF} + echo "#define SharedLibraryLoadFlags -shared ${LDFLAGS}" >> ${HOSTCONF} +} + +src_configure() { + cd "${S}"/nxproxy + econf +} + +src_compile() { + cd "${S}/nx-X11" + FAST=1 emake World WORLDOPTS="" MAKE="make" \ + AR="$(tc-getAR) clq" RANLIB="$(tc-getRANLIB)" \ + CC="$(tc-getCC)" CXX="$(tc-getCXX)" + + cd "${S}"/nxproxy + emake +} + +src_install() { + NX_ROOT=/usr/$(get_libdir)/NX + + for x in nxagent nxauth nxproxy; do + make_wrapper $x ./$x ${NX_ROOT}/bin ${NX_ROOT}/$(get_libdir) || + die " $x wrapper creation failed" + done + + into ${NX_ROOT} + dobin "${S}"/nx-X11/programs/Xserver/nxagent + dobin "${S}"/nx-X11/programs/nxauth/nxauth + dobin "${S}"/nxproxy/nxproxy + + for lib in X11 Xau Xcomposite Xdamage Xdmcp Xext Xfixes Xinerama Xpm Xrandr Xrender Xtst; + do + dolib.so "${S}"/nx-X11/lib/${lib}/libNX_${lib}.so* + done + + dolib.so "${S}"/nxcomp/libXcomp.so* + dolib.so "${S}"/nxcompext/libXcompext.so* + dolib.so "${S}"/nxcompshad/libXcompshad.so* + + insinto /etc/nxagent + newins etc/keystrokes.cfg keystroke.cfg + doicon nx-X11/programs/Xserver/hw/nxagent/x2go.xpm + + readme.gentoo_create_doc +} diff --git a/net-misc/nx/nx-3.5.0.32.ebuild b/net-misc/nx/nx-3.5.0.32.ebuild new file mode 100644 index 000000000000..d992d5fb33da --- /dev/null +++ b/net-misc/nx/nx-3.5.0.32.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +inherit autotools eutils multilib readme.gentoo + +DESCRIPTION="NX compression technology core libraries" +HOMEPAGE="http://www.x2go.org/doku.php/wiki:libs:nx-libs" + +SRC_URI="http://code.x2go.org/releases/source/nx-libs/nx-libs-${PV}-full.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="elibc_glibc" + +RDEPEND="media-libs/freetype:2 + >=media-libs/libpng-1.2.8:* + >=sys-libs/zlib-1.2.3 + virtual/jpeg:*" + +DEPEND="${RDEPEND} + x11-libs/libfontenc + x11-misc/gccmakedep + x11-misc/imake + x11-proto/inputproto" + +S=${WORKDIR}/nx-libs-${PV} + +DOC_CONTENTS="If you get problems with rendering gtk+ apps, enable the xlib-xcb +useflag on x11-libs/cairo." + +src_prepare() { + # For nxcl/qtnx + cd "${S}"/nxproxy + epatch "${FILESDIR}"/${PN}-3.2.0-nxproxy_read_from_stdin.patch + + cd "${S}" + # -fPIC + epatch "${FILESDIR}"/1.5.0/nxcomp-1.5.0-pic.patch + # Drop force -O3, set AR/RANLIB + epatch "${FILESDIR}"/${PN}-3.5.0.17-cflags_ar_ranlib.patch + + # run autoreconf in all neeed folders + for i in nxcomp nxcompext nxcompshad nxproxy; do + cd "${S}"/${i} + eautoreconf ${i} + cd "${S}" + done + + # From xorg-x11-6.9.0-r3.ebuild + cd "${S}/nx-X11" + HOSTCONF="config/cf/host.def" + echo "#define CcCmd $(tc-getCC)" >> ${HOSTCONF} + echo "#define OptimizedCDebugFlags ${CFLAGS} GccAliasingArgs" >> ${HOSTCONF} + echo "#define OptimizedCplusplusDebugFlags ${CXXFLAGS} GccAliasingArgs" >> ${HOSTCONF} + # Respect LDFLAGS + echo "#define ExtraLoadFlags ${LDFLAGS}" >> ${HOSTCONF} + echo "#define SharedLibraryLoadFlags -shared ${LDFLAGS}" >> ${HOSTCONF} +} + +src_configure() { + cd "${S}"/nxproxy + econf +} + +src_compile() { + cd "${S}/nx-X11" + FAST=1 emake World WORLDOPTS="" MAKE="make" \ + AR="$(tc-getAR) clq" RANLIB="$(tc-getRANLIB)" \ + CC="$(tc-getCC)" CXX="$(tc-getCXX)" + + cd "${S}"/nxproxy + emake +} + +src_install() { + NX_ROOT=/usr/$(get_libdir)/NX + + for x in nxagent nxauth nxproxy; do + make_wrapper $x ./$x ${NX_ROOT}/bin ${NX_ROOT}/$(get_libdir) || + die " $x wrapper creation failed" + done + + into ${NX_ROOT} + dobin "${S}"/nx-X11/programs/Xserver/nxagent + dobin "${S}"/nx-X11/programs/nxauth/nxauth + dobin "${S}"/nxproxy/nxproxy + + for lib in X11 Xau Xcomposite Xdamage Xdmcp Xext Xfixes Xinerama Xpm Xrandr Xrender Xtst; + do + dolib.so "${S}"/nx-X11/lib/${lib}/libNX_${lib}.so* + done + + dolib.so "${S}"/nxcomp/libXcomp.so* + dolib.so "${S}"/nxcompext/libXcompext.so* + dolib.so "${S}"/nxcompshad/libXcompshad.so* + + insinto /etc/nxagent + newins etc/keystrokes.cfg keystroke.cfg + doicon nx-X11/programs/Xserver/hw/nxagent/x2go.xpm + + readme.gentoo_create_doc +} -- cgit v1.2.3