commit:     9eadbeff6f7002b09d96d46a2e277ead28ad7e88
Author:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 29 20:30:59 2023 +0000
Commit:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
CommitDate: Thu Jun 29 20:47:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9eadbeff

net-misc/nx: add 3.5.99.27

Signed-off-by: Bernard Cafarelli <voyageur <AT> gentoo.org>

 net-misc/nx/Manifest                       |   1 +
 net-misc/nx/files/nx-3.5.99.27-which.patch |  22 +++++
 net-misc/nx/nx-3.5.99.27.ebuild            | 141 +++++++++++++++++++++++++++++
 3 files changed, 164 insertions(+)

diff --git a/net-misc/nx/Manifest b/net-misc/nx/Manifest
index a26e72b420fc..9c2a681ac06b 100644
--- a/net-misc/nx/Manifest
+++ b/net-misc/nx/Manifest
@@ -1 +1,2 @@
 DIST nx-libs-3.5.99.26.tar.gz 11070624 BLAKE2B 
f67f522b127858aa2ddf1c9723468a74722a5ef2fa1e7f438844a8e5b05b868cacac22abf2c604c67d5e83a346217b192773f5debe67945d085768ae43205cb7
 SHA512 
1aead6161e4d7b8d7229ff80937935b23ad1f87135a578ae483a00348d0df7de35e9f9b78c47c473fda3ab2cc896ef23e845cc5656344a43520b091af9663211
+DIST nx-libs-3.5.99.27.tar.gz 11076330 BLAKE2B 
713f6052a8405bd61916bc2c31cff1b3b14f63f78138a2d8a3c8d85170fede3d126071ef0e03fa267ef1533432f324992ed67edc86f922e3dda4f0cb40811045
 SHA512 
bfba1eea6f4debe90fa020276079027c3716daaff91bded72297ecab2a8c9f56d07630ca8bc9084c319d2c674304ad80131190ec1272c161c05221d6f19089d0

diff --git a/net-misc/nx/files/nx-3.5.99.27-which.patch 
b/net-misc/nx/files/nx-3.5.99.27-which.patch
new file mode 100644
index 000000000000..4d452dad0157
--- /dev/null
+++ b/net-misc/nx/files/nx-3.5.99.27-which.patch
@@ -0,0 +1,22 @@
+--- a/nx-X11/Makefile
++++ b/nx-X11/Makefile
+@@ -70,7 +70,7 @@
+       else \
+           exit 0; \
+       fi
+-      which $(IMAKE) 1>/dev/null && $(IMAKE_CMD) $(MFLAGS) -s xmakefile 
-DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
++      command -v $(IMAKE) 1>/dev/null && $(IMAKE_CMD) $(MFLAGS) -s xmakefile 
-DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
+ 
+ # don't allow any default rules in this Makefile
+ .SUFFIXES:
+--- a/nx-X11/extras/Mesa_6.4.2/bin/mklib
++++ b/nx-X11/extras/Mesa_6.4.2/bin/mklib
+@@ -285,7 +285,7 @@
+               # -linker was not specified, choose default linker now
+               if [ $CPLUSPLUS = 1 ] ; then
+                   # determine linker and options for C++ code
+-                  if [ `which c++` ] ; then
++                  if [ `command -v c++` ] ; then
+                       # use Sun c++
+                       LINK="c++"
+                   elif [ `type g++` ] ; then

diff --git a/net-misc/nx/nx-3.5.99.27.ebuild b/net-misc/nx/nx-3.5.99.27.ebuild
new file mode 100644
index 000000000000..e054f77bb1e5
--- /dev/null
+++ b/net-misc/nx/nx-3.5.99.27.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit autotools toolchain-funcs
+
+DESCRIPTION="NX compression technology core libraries"
+HOMEPAGE="https://github.com/ArcticaProject/nx-libs";
+
+SRC_URI="https://github.com/ArcticaProject/nx-libs/archive/${PV}.tar.gz -> 
nx-libs-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc ~riscv ~x86"
+
+RDEPEND="dev-libs/libxml2
+       media-libs/libjpeg-turbo:*
+       >=media-libs/libpng-1.2.8:0=
+       >=sys-libs/zlib-1.2.3
+       x11-libs/libX11
+       x11-libs/libXcomposite
+       x11-libs/libXdamage
+       x11-libs/libXdmcp
+       x11-libs/libXext
+       x11-libs/libXfixes
+       x11-libs/libXfont2
+       x11-libs/libXinerama
+       x11-libs/libXpm
+       x11-libs/libXrandr
+       x11-libs/libXrender
+       x11-libs/libXtst
+       x11-libs/pixman"
+
+DEPEND="${RDEPEND}
+       x11-base/xorg-proto
+       x11-libs/libfontenc"
+
+BDEPEND="virtual/pkgconfig
+       x11-misc/gccmakedep
+       x11-misc/imake"
+
+S="${WORKDIR}/nx-libs-${PV}"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.5.99.26-musl.patch"
+       "${FILESDIR}/${PN}-3.5.99.27-which.patch"
+)
+
+src_prepare() {
+       default
+
+       # We want predictable behavior. So let's assume we never
+       # have quilt installed.
+       sed 's@which quilt@false@' -i mesa-quilt || die
+
+       # Do not compress man pages by default
+       sed '/^[[:space:]]*gzip.*man/d' -i Makefile || die
+
+       # run autoreconf in all needed folders
+       local subdir
+       for subdir in nxcomp nxdialog nx-X11/lib nxcompshad nxproxy ; do
+               pushd ${subdir} || die
+               eautoreconf
+               popd || die
+       done
+}
+
+src_configure() {
+       # From xorg-x11-6.9.0-r3.ebuild
+       pushd nx-X11 || die
+       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}
+       # Disable SunRPC, #370767
+       echo "#define HasSecureRPC NO" >> ${HOSTCONF}
+       popd || die
+
+       local subdir
+       for subdir in nxcomp nxdialog nxcompshad nxproxy ; do
+               pushd ${subdir} || die
+               econf --enable-static
+               popd || die
+       done
+
+       pushd "nx-X11/lib" || die
+       econf --disable-poll
+       popd || die
+}
+
+src_compile() {
+       # First set up the build environment
+       emake build-env
+
+       # We replicate the "build-full" make target here because
+       # we cannot call "make build-full" as it
+       #  - calls autoreconf several times
+       #  - invokes make directly but we prefer our emake
+
+       emake -C nxcomp
+       emake -C nx-X11/lib
+
+       mkdir -p nx-X11/exports/lib/ || die
+       local nxlib
+       for nxlib in libNX_X11.so{,.6{,.3.0}} ; do
+               ln -s ../../lib/src/.libs/${nxlib} nx-X11/exports/lib/${nxlib} 
|| die
+       done
+
+       emake -C nxcompshad
+
+       ./mesa-quilt push -a || die
+
+       emake -C nx-X11 BuildDependsOnly
+       # Parallel make issue resurfaced, upstream working on autotools switch
+       emake -j1 -C nx-X11 World \
+               USRLIBDIR="${EPREFIX}/usr/$(get_libdir)/${PN}/X11" \
+               SHLIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+               ETCDIR_NX="${EPREFIX}/etc/nxagent"
+
+       emake -C nxproxy
+}
+
+src_install() {
+       emake \
+               DESTDIR="${D}" \
+               PREFIX="${EPREFIX}/usr" \
+               NXLIBDIR="${EPREFIX}/usr/$(get_libdir)/${PN}" \
+               SHLIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+               USRLIBDIR="${EPREFIX}/usr/$(get_libdir)/${PN}/X11" \
+               ETCDIR_NX="${EPREFIX}/etc/nxagent" \
+               install
+
+       # Already provided by mesa & related packages
+       rm -r "${ED}"/usr/include/GL || die
+
+       # Get rid of libtool files and static libs.
+       find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
+}

Reply via email to