dotfiles

personal dotfiles
git clone anongit@rnpnr.xyz:dotfiles.git
Log | Files | Refs | Feed | Submodules

musl-fix.patch (1698B)


      1 diff --git a/renderdoc/3rdparty/plthook/plthook_elf.c b/renderdoc/3rdparty/plthook/plthook_elf.c
      2 index 612f689d6..907e7f63e 100644
      3 --- a/renderdoc/3rdparty/plthook/plthook_elf.c
      4 +++ b/renderdoc/3rdparty/plthook/plthook_elf.c
      5 @@ -233,7 +233,11 @@ int plthook_open_by_address(plthook_t **plthook_out, void *address)
      6      struct link_map *lmap = NULL;
      7  
      8      *plthook_out = NULL;
      9 +#ifdef __GLIBC__
     10      if (dladdr1(address, &info, (void**)&lmap, RTLD_DL_LINKMAP) == 0) {
     11 +#else
     12 +    if (dladdr(address, &info) == 0) {
     13 +#endif
     14          set_errmsg("dladdr error");
     15          return PLTHOOK_FILE_NOT_FOUND;
     16      }
     17 @@ -243,7 +247,7 @@ int plthook_open_by_address(plthook_t **plthook_out, void *address)
     18  
     19  static int plthook_open_executable(plthook_t **plthook_out)
     20  {
     21 -#if defined __linux__
     22 +#if defined __linux__ && defined __GLIBC__
     23      return plthook_open_real(plthook_out, _r_debug.r_map);
     24  #elif defined __sun
     25      const char *auxv_file = "/proc/self/auxv";
     26 diff --git a/renderdoc/os/os_specific.h b/renderdoc/os/os_specific.h
     27 index cc9a6b09e..844597450 100644
     28 --- a/renderdoc/os/os_specific.h
     29 +++ b/renderdoc/os/os_specific.h
     30 @@ -31,6 +31,7 @@
     31  
     32  #pragma once
     33  
     34 +#include <time.h>
     35  #include <stdarg.h>
     36  #include <stddef.h>
     37  #include <stdint.h>
     38 diff --git a/renderdoc/os/posix/linux/linux_hook.cpp b/renderdoc/os/posix/linux/linux_hook.cpp
     39 index 4989e2865..0acb3ac0b 100644
     40 --- a/renderdoc/os/posix/linux/linux_hook.cpp
     41 +++ b/renderdoc/os/posix/linux/linux_hook.cpp
     42 @@ -36,6 +36,10 @@
     43  #include "plthook/plthook.h"
     44  #include "strings/string_utils.h"
     45  
     46 +#ifndef __GLIBC__
     47 +#define RTLD_DEEPBIND 0
     48 +#endif
     49 +
     50  Threading::CriticalSection libLock;
     51  
     52  RDOC_EXTERN_CONFIG(bool, Linux_Debug_PtraceLogging);