diff options
author | Daryl W. Grunau <dwg@lanl.gov> | 2020-07-23 15:39:07 -0600 |
---|---|---|
committer | Eric Engestrom <eric@engestrom.ch> | 2020-08-05 22:23:20 +0200 |
commit | 414247c1ad395f48bf7919b2e070cdc14a5b37b0 (patch) | |
tree | d610e1eac4f081d5fe1ed9ac7ad7b332fec799e8 /src | |
parent | b1442e2a6b5cf2116ed1031d76cf20ebd0c7fe6e (diff) |
prevent multiply defined symbols
Without this patch applied gcc@10.1.0 fails to compile with the following
error (note mesa@18.3.6 but the latest release also posseses this problem):
ld: ../../../../src/gallium/auxiliary/.libs/libgallium.a(u_debug_symbol.o):/tmp/spack/spack-stage/spack-stage-mesa-18.3.6-be7kyg2dyxwktir3zrai27n6a6coadab/spack-src/src/galli um/auxiliary/util/u_debug_symbol.c:273: multiple definition of `symbols_hash'; ../../../../src/gallium/auxiliary/.libs/libgallium.a(u_debug_stack.o):/tmp/spa ck/spack-stage/spack-stage-mesa-18.3.6-be7kyg2dyxwktir3zrai27n6a6coadab/spack-src/src/gallium/auxiliary/util/u_debug_stack.c:49: first defined here
collect2: error: ld returned 1 exit status
make[4]: *** [libGL.la] Error 1
make[4]: Leaving directory `/tmp/spack/spack-stage/spack-stage-mesa-18.3.6-be7kyg2dyxwktir3zrai27n6a6coadab/spack-src/src/gallium/targets/libgl-xlib'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/spack/spack-stage/spack-stage-mesa-18.3.6-be7kyg2dyxwktir3zrai27n6a6coadab/spack-src/src/gallium'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/spack/spack-stage/spack-stage-mesa-18.3.6-be7kyg2dyxwktir3zrai27n6a6coadab/spack-src/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/tmp/spack/spack-stage/spack-stage-mesa-18.3.6-be7kyg2dyxwktir3zrai27n6a6coadab/spack-src/src'
make: *** [all-recursive] Error 1
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3298
Cc: mesa-stable
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6053>
(cherry picked from commit a400c2ff2265dfabb1ed7b59c8b24aa38d0557d1)
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/auxiliary/util/u_debug_stack.c | 2 | ||||
-rw-r--r-- | src/gallium/auxiliary/util/u_debug_symbol.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/util/u_debug_stack.c b/src/gallium/auxiliary/util/u_debug_stack.c index 44581e0a3fb..ca4d2b313b4 100644 --- a/src/gallium/auxiliary/util/u_debug_stack.c +++ b/src/gallium/auxiliary/util/u_debug_stack.c @@ -46,7 +46,7 @@ #include "os/os_thread.h" #include "u_hash_table.h" -struct hash_table* symbols_hash; +static struct hash_table* symbols_hash; static mtx_t symbols_mutex = _MTX_INITIALIZER_NP; /* TODO with some refactoring we might be able to re-use debug_symbol_name_cached() diff --git a/src/gallium/auxiliary/util/u_debug_symbol.c b/src/gallium/auxiliary/util/u_debug_symbol.c index 334803d008e..aa5916e89ad 100644 --- a/src/gallium/auxiliary/util/u_debug_symbol.c +++ b/src/gallium/auxiliary/util/u_debug_symbol.c @@ -270,7 +270,7 @@ debug_symbol_print(const void *addr) debug_printf("\t%s\n", buf); } -struct hash_table* symbols_hash; +static struct hash_table* symbols_hash; static mtx_t symbols_mutex = _MTX_INITIALIZER_NP; const char* |