1. 24 May, 2018 1 commit
  2. 30 Dec, 2017 3 commits
    • Mihai Moldovan's avatar
      nx-X11: reintroduce creation of libX11 compat symlinks. · ecaa13ce
      Mihai Moldovan authored
      We need this to be able to execute the resulting nxagent binary from
      within the build directory.
      ecaa13ce
    • Mihai Moldovan's avatar
      nx-X11: build programs with a temporary RPATH/RUNPATH value and a relinked… · ffc09a73
      Mihai Moldovan authored
      nx-X11: build programs with a temporary RPATH/RUNPATH value and a relinked version with the system location.
      
      While the install target explicitly installs the relinked
      system-location version of a program, we do not actually use this.
      
      Currently, we copy nxagent directly out of the build root.
      ffc09a73
    • Mihai Moldovan's avatar
      nxagent: implement RPATH/RUNPATH override for libX11. · 26ab7b8a
      Mihai Moldovan authored
      As discussed in ArcticaProject/nx-libs#610, we need a way to load
      libNX_X11 as a fake version of libX11 into nxagent's address space.
      
      For doing so, we have to link against libX11 at build-time and specify
      a(n) RPATH/RUNPATH to our libX11 -> libNX_X11 compat symlinks.
      
      This commit is essentially doing a cross between options 3 and 4
      discussed in the provided GH issue.
      
      We link libX11 early (before specifying -Lcompat_symlinks_dir), so that
      the linker finds the "real" libX11 version with the libX11 SONAME. This
      leads to our binary depending upon both libX11 and libNX_X11 SONAMEs. We
      already always added RPATH/RUNPATH, but these values are not passed down
      to dependent libraries.
      
      What happens at run-time is that the loader searches for a libX11
      SONAME, takes RPATH/RUNPATH into account and loads our libNX_X11 library
      instead via the compat symlinks. This satisfies the libX11 SONAME and
      dependent libraries will *not* load the system libX11 version again.
      
      Debian's dpkg-shlibdeps isn't quite happy about this mismatching SONAME
      situation, so instruct to look the other way while we're minding our
      business.
      
      Fixes: ArcticaProject/nx-libs#610
      26ab7b8a
  3. 02 Nov, 2016 1 commit
  4. 31 Oct, 2016 1 commit
  5. 29 Oct, 2016 1 commit
  6. 29 Jun, 2016 1 commit
  7. 22 Apr, 2015 1 commit
  8. 13 Feb, 2015 1 commit
    • Jan Engelhardt's avatar
      Unique Library Names Patch (600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch). · c4a8556c
      Jan Engelhardt authored
        We really want to make use of rpm's automatic dependency finding.
        Binaries are scanned for DT_NEEDED entries, the latter of which are
        then used for populating the "Requires"-type deps. The "nxagent"
        binary for example would require libX11.so.6. That incurs problems:
      
        1. A package manager told to install nxagent could select xorg-x11
        rather than nx-libs, even though nxagent depends on the NX version.
      
        2. A package manager told to install $some_program could select nx-libs
        rather than xorg-x11 (since both provide libX11.so.6), but, since
        the NX library is in an obscure directory, running $some_program
        would fail as libX11.so.6 is not found.
      
        To solve this, give the NX libraries unique names different from the
        Xorg ones.
      c4a8556c
  9. 28 Mar, 2013 2 commits
  10. 10 Oct, 2011 1 commit