diff --git a/nx-libs-3.5.99.26-binutils-2.36.1.patch b/nx-libs-3.5.99.26-binutils-2.36.1.patch new file mode 100644 index 0000000..ec2925d --- /dev/null +++ b/nx-libs-3.5.99.26-binutils-2.36.1.patch @@ -0,0 +1,42 @@ +From d35eba919c229cecf3c52a7dd034b9cd6b120ede Mon Sep 17 00:00:00 2001 +From: ponce +Date: Mon, 5 Apr 2021 08:44:00 +0200 +Subject: [PATCH] fix building with binutils >= 2.36. + +The l option of ar in the newer binutils versions switched +from being unused to being used to specify dependencies +so here should be safely removed +--- + nx-X11/config/cf/Imake.tmpl | 12 ------------ + 1 file changed, 12 deletions(-) + +diff --git a/nx-X11/config/cf/Imake.tmpl b/nx-X11/config/cf/Imake.tmpl +index 25d985d75f..de1fca937e 100644 +--- a/nx-X11/config/cf/Imake.tmpl ++++ b/nx-X11/config/cf/Imake.tmpl +@@ -1015,25 +1015,13 @@ TCLIBDIR = TclLibDir + #define ArCmdBase ar + #endif + #ifndef ArCmd +-#if HasLargeTmp || SystemV4 + #define ArCmd ArCmdBase cq +-#else +-#define ArCmd ArCmdBase clq +-#endif + #endif + #ifndef ArAddCmd +-#if HasLargeTmp || SystemV4 + #define ArAddCmd ArCmdBase ru +-#else +-#define ArAddCmd ArCmdBase rul +-#endif + #endif + #ifndef ArExtCmd +-#if HasLargeTmp || SystemV4 + #define ArExtCmd ArCmdBase x +-#else +-#define ArExtCmd ArCmdBase xl +-#endif + #endif + #ifndef BootstrapCFlags + #define BootstrapCFlags /**/ diff --git a/nx-libs.spec b/nx-libs.spec index 4a4cc3d..e912091 100644 --- a/nx-libs.spec +++ b/nx-libs.spec @@ -1,19 +1,41 @@ %define sover %(echo %version | cut -d. -f1-3) Name: nx-libs -Version: 3.5.0.13 -Release: 2mamba +Version: 3.5.99.26 +Release: 1mamba Summary: NX X11 protocol compression libraries redistributed by X2Go dev team Group: System/X11 Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco -URL: http://wiki.x2go.org/doku.php/wiki:libs:nx-libs -Source: http://code.x2go.org/releases/source/nx-libs/nx-libs_%{version}-full.tar.gz +URL: https://github.com/ArcticaProject/nx-libs +Source: https://github.com/ArcticaProject/nx-libs/archive/%{version}/%{name}-%{version}.tar.gz +Patch0: nx-libs-3.5.99.26-binutils-2.36.1.patch License: GPL ## AUTOBUILDREQ-BEGIN BuildRequires: glibc-devel +BuildRequires: libX11-devel +BuildRequires: libXau-devel +BuildRequires: libXcomposite-devel +BuildRequires: libXdamage-devel +BuildRequires: libXdmcp-devel +BuildRequires: libXext-devel +BuildRequires: libXfixes-devel +BuildRequires: libXfont2-devel +BuildRequires: libXi-devel +BuildRequires: libXinerama-devel +BuildRequires: libXpm-devel +BuildRequires: libXrandr-devel +BuildRequires: libXrender-devel +BuildRequires: libXtst-devel +BuildRequires: libbsd-devel BuildRequires: libgcc +BuildRequires: libjpeg-devel +BuildRequires: libpixman-devel +BuildRequires: libpng-devel BuildRequires: libstdc++6-devel +BuildRequires: libtirpc-devel +BuildRequires: libxcb-devel +BuildRequires: libxml2-devel BuildRequires: libz-devel ## AUTOBUILDREQ-END Requires: libnx = %{?epoch:%epoch:}%{version}-%{release} @@ -30,16 +52,26 @@ Requires: libnx = %{?epoch:%epoch:}%{version}-%{release} %description -n nxproxy X2GO Client proxy component. -%package -n x2goagent -Group: System/Libraries +%package -n nxagent +Group: System/Tools Summary: X2GO Server Agent component Requires: libnx = %{?epoch:%epoch:}%{version}-%{release} +Requires: xkeyboard-config Provides: nx-libs -Obsoletes: nx-libs +Obsoletes: nx-libs < 3.5.0.13 +Provides: x2goagent +Obsoletes: x2goagent < 3.5.99.26 -%description -n x2goagent +%description -n nxagent X2GO Server Agent component. +%package -n nxdialog +Group: System/Libraries +Summary: X2GO nxdialog helper script + +%description -n nxdialog +X2GO nxdialog helper script. + %package -n libnx Group: System/Libraries Summary: NX X11 protocol compression libraries redistributed by X2Go dev team. @@ -59,75 +91,89 @@ This package contains libraries and header files for developing applications tha %debug_package %prep -%setup -q -n %{name}_%{version} +%setup -q #-D -T #:<< _EOF +%patch0 -p1 -# remove build cruft that is in Git (also taken from roll-tarball.sh) -rm -Rf nx*/configure nx*/autom4te.cache* -# Install into /usr -sed -i -e 's,/usr/local,/usr,' nx-X11/config/cf/site.def -# Use rpm optflags -sed -i -e 's#-O3#%{optflags}#' nx-X11/config/cf/host.def -# Use multilib dirs -# We're installing binaries into %%{_libdir}/nx/bin rather than %%{_libexedir}/nx -# because upstream expects libraries and binaries in the same directory -sed -i -e 's,/lib/nx,/%{_lib}/nx,' Makefile nx-X11/config/cf/X11.tmpl -sed -i -e 's,/lib/x2go,/%{_lib}/x2go,' Makefile -sed -i -e 's,/usr/lib/,/usr/%{_lib}/,' bin/* - # Fix FSF address +# Fix FSF address find -name LICENSE | xargs sed -i \ -e 's/59 Temple Place/51 Franklin Street/' -e 's/Suite 330/Fifth Floor/' \ -e 's/MA 02111-1307/MA 02110-1301/' # Fix source permissions find -type f -name '*.[hc]' | xargs chmod -x +# Install into /usr +sed -i -e 's,/usr/local,/usr,' nx-X11/config/cf/site.def + +:<< _OLD +# We're installing binaries into %%{_libdir}/nx/bin rather than %%{_libexedir}/nx +# because upstream expects libraries and binaries in the same directory +sed -i -e 's,/lib/nx,/%{_lib}/nx,' Makefile nx-X11/config/cf/X11.tmpl +sed -i -e 's,/lib/x2go,/%{_lib}/x2go,' Makefile +sed -i -e 's,/usr/lib/,/usr/%{_lib}/,' bin/* + %build #:<< ___EOF cat >"my_configure" <<'EOF' -%configure +%configure --disable-silent-rules "${@}" EOF chmod a+x my_configure; # The RPM macro for the linker flags does not exist on EPEL %{!?__global_ldflags: %global __global_ldflags -Wl,-z,relro} export SHLIBGLOBALSFLAGS="%{__global_ldflags}" export LOCAL_LDFLAGS="%{__global_ldflags}" +export CDEBUGFLAGS="%{optflags}" +IMAKE_DEFINES="-DUseTIRPC=YES" -%make %{?_smp_mflags} \ +%make -j1 \ CONFIGURE="$PWD/my_configure" \ - PREFIX=%{_prefix} \ - USRLIBDIR=%{_libdir} \ - SHLIBDIR=%{_libdir} + LIBDIR=%{_libdir} \ + CDEBUGFLAGS="${CDEBUGFLAGS}" \ + LOCAL_LDFLAGS="${LOCAL_LDFLAGS}" \ + SHLIBGLOBALSFLAGS="${SHLIBGLOBALSFLAGS}" \ + IMAKE_DEFINES="${IMAKE_DEFINES}" %install [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %makeinstall \ PREFIX=%{_prefix} \ - USRLIBDIR=%{_libdir} SHLIBDIR=%{_libdir} \ + LIBDIR=%{_libdir} \ + SHLIBDIR=%{_libdir} \ INSTALL_DIR="install -dm0755" \ INSTALL_FILE="install -pm0644" \ INSTALL_PROGRAM="install -pm0755" +ln -s ../X11/fonts %{buildroot}%{_datadir}/nx/fonts + # Remove static libs rm -f %{buildroot}%{_libdir}/*.a +# Fix permissions on shared libraries +chmod 755 %{buildroot}%{_libdir}/lib*.so* + +# Remove extras, GL, and other unneeded headers +rm -r %{buildroot}%{_includedir}/GL +rm -r %{buildroot}%{_includedir}/nx-X11/extensions/XK*.h +rm -r %{buildroot}%{_includedir}/nx-X11/extensions/*Xv*.h +rm -r %{buildroot}%{_includedir}/nx-X11/Xtrans + +# Fix python scripts +sed -i "s|env python$|env python3|" %{buildroot}%{_bindir}/nxdialog + +ln -s nxagent %{buildroot}%{_bindir}/x2goagent + +:<< _OLD ## Make sure x2goagent is linked relative and on 64-bit #mkdir -p %{buildroot}%{_libdir}/x2go/bin #ln -sf ../../nx/bin/nxagent %{buildroot}%{_libdir}/x2go/bin/x2goagent - ln -s ../lib/NX3/bin/nxagent %{buildroot}%{_bindir}/x2goagent -#rm -f %{buildroot}%{_includedir}/GL -rm -rf %{buildroot}%{_sysconfdir} - mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d cat > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}.conf << _EOF %{_libdir}/nx _EOF -# Fix permissions on shared libraries -chmod 755 %{buildroot}%{_libdir}/lib*.so* - # Fix '/usr/lib64/nx/libXcompext.so.3 is not a symbolic link' rm -f %{buildroot}%{_libdir}/nx/libXcompext.so.3 ln -s libXcompext.so.%{sover} %{buildroot}%{_libdir}/nx/libXcompext.so.3 @@ -139,123 +185,74 @@ ln -s -f ../../../../%{_lib}/libXext.so.6 %{buildroot}%{_libdir}/nx/X11/Xinerama ln -s -f ../../../../%{_lib}/libNX_Xinerama.so.1 %{buildroot}%{_libdir}/nx/X11/Xinerama/libXinerama.so.1 %find_lang %{name} || touch %{name}.lang +_OLD %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" -%post -n libnx -/sbin/ldconfig -: +%post -n libnx -p /sbin/ldconfig -%postun -n libnx -/sbin/ldconfig -: +%postun -n libnx -p /sbin/ldconfig %files -n nxproxy %defattr(-,root,root) %{_bindir}/nxproxy %{_mandir}/man1/nxproxy.1* -%files -n x2goagent +%files -n nxagent %defattr(-,root,root) +%dir %{_sysconfdir}/nxagent +%config(noreplace) %{_sysconfdir}/nxagent/keystrokes.cfg +%{_bindir}/nxagent %{_bindir}/x2goagent -#%{_sysconfdir}/X11/xkb/compiled -#%{_sysconfdir}/X11/xserver/SecurityPolicy -#%{_sysconfdir}/fonts/fonts.conf -#%{_sysconfdir}/fonts/fonts.dtd -%dir %{_prefix}/lib/NX3/bin -%{_prefix}/lib/NX3/bin/* -%dir %{_prefix}/lib/NX3/lib -%{_prefix}/lib/NX3/lib/* +%dir %{_libdir}/nx/bin +%{_libdir}/nx/bin/nxagent +%dir %{_datadir}/nx +%{_datadir}/nx/SecurityPolicy +%{_datadir}/nx/VERSION.* +%dir %{_datadir}/nx/X11 +%{_datadir}/nx/X11/XErrorDB +%{_datadir}/nx/X11/Xcms.txt +%{_datadir}/nx/fonts +%{_mandir}/man1/nxagent.1* -%files -n libnx -f %{name}.lang +%files -n nxdialog %defattr(-,root,root) -%{_sysconfdir}/ld.so.conf.d/%{name}.conf -%{_libdir}/libNX_FS.so.* -%{_libdir}/libNX_ICE.so.* -%{_libdir}/libNX_SM.so.* -%{_libdir}/libNX_X11.so.* -%{_libdir}/libNX_Xau.so.* -%{_libdir}/libNX_Xaw.so.* -%{_libdir}/libNX_Xcomposite.so.* -%{_libdir}/libNX_Xcursor.so.* -%{_libdir}/libNX_Xdamage.so.* -%{_libdir}/libNX_Xdmcp.so.* -%{_libdir}/libNX_Xext.so.* -%{_libdir}/libNX_Xfixes.so.* -%{_libdir}/libNX_Xfont.so.* -%{_libdir}/libNX_Xft.so.* -%{_libdir}/libNX_Xinerama.so.* -%{_libdir}/libNX_Xmu.so.* -%{_libdir}/libNX_Xmuu.so.* -%{_libdir}/libNX_Xpm.so.* -%{_libdir}/libNX_Xrandr.so.* -%{_libdir}/libNX_Xrender.so.* -%{_libdir}/libNX_Xt.so.* -%{_libdir}/libNX_Xtst.so.* -%{_libdir}/libNX_expat.so.* -%{_libdir}/libNX_fontconfig.so.* -%{_libdir}/libNX_fontenc.so.* -%{_libdir}/libNX_freetype.so.* +%{_bindir}/nxdialog +%{_mandir}/man1/nxdialog.1* + +%files -n libnx +#-f %{name}.lang +%defattr(-,root,root) +%{_libdir}/libNX_*.so.* +%{_libdir}/libXcomp.so.* +%{_libdir}/libXcompshad.so.* %dir %{_libdir}/nx -%{_libdir}/nx/libXcomp.so.* -%{_libdir}/nx/libXcompext.so.* -%{_libdir}/nx/libXcompshad.so.* %dir %{_libdir}/nx/X11 -%dir %{_libdir}/nx/X11/Xinerama -%{_libdir}/nx/X11/Xinerama/libNX_X11.so.* -%{_libdir}/nx/X11/Xinerama/libNX_Xext.so.* -%{_libdir}/nx/X11/Xinerama/libXinerama.so.* +%{_libdir}/nx/X11/libX11.so.* %files -n libnx-devel %defattr(-,root,root) -%{_includedir}/GL %dir %{_includedir}/nx %{_includedir}/nx/*.h -%dir %{_prefix}/lib/NX3/include -%{_prefix}/lib/NX3/include/* -%{_libdir}/libNX_FS.so -%{_libdir}/libNX_ICE.so -%{_libdir}/libNX_SM.so -%{_libdir}/libNX_X11.so -%{_libdir}/libNX_Xau.so -%{_libdir}/libNX_Xaw.so -%{_libdir}/libNX_Xcomposite.so -%{_libdir}/libNX_Xcursor.so -%{_libdir}/libNX_Xdamage.so -%{_libdir}/libNX_Xdmcp.so -%{_libdir}/libNX_Xext.so -%{_libdir}/libNX_Xfixes.so -%{_libdir}/libNX_Xfont.so -%{_libdir}/libNX_Xft.so -%{_libdir}/libNX_Xinerama.so -%{_libdir}/libNX_Xmu.so -%{_libdir}/libNX_Xmuu.so -%{_libdir}/libNX_Xpm.so -%{_libdir}/libNX_Xrandr.so -%{_libdir}/libNX_Xrender.so -%{_libdir}/libNX_Xt.so -%{_libdir}/libNX_Xtst.so -%{_libdir}/libNX_expat.so -%{_libdir}/libNX_fontconfig.so -%{_libdir}/libNX_fontenc.so -%{_libdir}/libNX_freetype.so -%{_libdir}/nx/libXcomp.a -%{_libdir}/nx/libXcomp.a -%{_libdir}/nx/libXcomp.so -%{_libdir}/nx/libXcompext.so -%{_libdir}/nx/libXcompshad.a -%{_libdir}/nx/libXcompshad.so -%{_libdir}/pkgconfig/fontconfig.pc -%{_libdir}/pkgconfig/freetype2.pc -%{_libdir}/pkgconfig/xcomposite.pc -%{_libdir}/pkgconfig/xcursor.pc -%{_libdir}/pkgconfig/xdamage.pc -%{_libdir}/pkgconfig/xfixes.pc -%{_libdir}/pkgconfig/xft.pc -%{_libdir}/pkgconfig/xrender.pc +%dir %{_includedir}/nx-X11 +%{_includedir}/nx-X11/*.h +%dir %{_includedir}/nx-X11/extensions +%{_includedir}/nx-X11/extensions/*.h +%{_libdir}/libNX_*.so +%{_libdir}/libNX_X11.la +%{_libdir}/libXcomp.la +%{_libdir}/libXcomp.so +%{_libdir}/libXcompshad.la +%{_libdir}/libXcompshad.so +%{_libdir}/pkgconfig/nx-x11.pc +%{_libdir}/pkgconfig/nxcomp.pc +%{_libdir}/pkgconfig/nxcompshad.pc %changelog +* Sun Apr 25 2021 Silvan Calarco 3.5.99.26-1mamba +- update to 3.5.99.26 + * Thu Mar 24 2016 Silvan Calarco 3.5.0.13-2mamba - added nxproxy and x2goagent packages; fix ldconfig problems