Bug 380141

Summary: libOSMesa32.so.6 not linked against libselinux.so
Product: [Fedora] Fedora Reporter: Mamoru TASAKA <mtasaka>
Component: mesaAssignee: Adam Jackson <ajax>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: high    
Version: rawhideCC: ajax, fedora, kwizart, orion
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 7.1-0.4.fc9 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-11-16 14:27:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Mamoru TASAKA 2007-11-13 15:20:54 UTC
Description of problem:
Well,
$ ldd -r /usr/lib/libOSMesa32.so.6
        linux-gate.so.1 =>  (0x00110000)
        libm.so.6 => /lib/libm.so.6 (0x0037b000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x003a4000)
        libc.so.6 => /lib/libc.so.6 (0x003bd000)
        /lib/ld-linux.so.2 (0x007b7000)
undefined symbol: security_get_boolean_active   (/usr/lib/libOSMesa32.so.6)
undefined symbol: is_selinux_enabled    (/usr/lib/libOSMesa32.so.6)
undefined symbol: security_get_boolean_pending  (/usr/lib/libOSMesa32.so.6)

xscreensaver (which I maintain) contains many GL based hacks.
However according to this undefined symbols, linkage against
GL libraries fails and xscreensaver cannot compile correctly.

configure:16522: gcc -pedantic -Wall -Wstrict-prototypes -Wnested-externs
-Wmissing-prototypes -std=c89 -U__STRICT_ANSI__ -o conftest -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4
-m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -I/usr/include
-L/usr/lib conftest.c -lGL -lGLU -lpthread -lX11 -lXext -lXxf86vm -lm  >&5
conftest.c:100: warning: function declaration isn't a prototype
conftest.c:103: warning: function declaration isn't a prototype
/usr/lib/libOSMesa32.so.6: undefined reference to `security_get_boolean_active'
/usr/lib/libOSMesa32.so.6: undefined reference to `is_selinux_enabled'
/usr/lib/libOSMesa32.so.6: undefined reference to `security_get_boolean_pending'
collect2: ld returned 1 exit status
configure:16528: $? = 1
configure: failed program was:
..........
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char glXCreateContext ();
| int
| main ()
| {
| return glXCreateContext ();
|   ;
|   return 0;
| }


Version-Release number of selected component (if applicable):
mesa-libOSMesa-7.1-0.3.fc9
xscreensaver-5.04-1.fc9 (src)

How reproducible:
100%

Comment 1 Nicolas Chauvet (kwizart) 2007-11-14 21:50:06 UTC
Experienced this: while rebuilding libquicktime for lvn devel:

gcc -DLOCALE_DIR=\"/usr/share/locale\" -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4
-m32 -finline-functions -Wall -Winline -o .libs/lqtplay lqtplay.o common.o 
../src/.libs/libquicktime.so -lXaw -lXt -lSM -lICE -lXext -lXv -lGLU -lGL -lX11
-lasound -lpthread -lm -lz -ldl
/usr/lib/libOSMesa32.so.6: undefined reference to `security_get_boolean_pending'
/usr/lib/libOSMesa32.so.6: undefined reference to `is_selinux_enabled'
/usr/lib/libOSMesa32.so.6: undefined reference to `security_get_boolean_active'
collect2: ld returned 1 exit status
make[3]: *** [lqtplay] Error 1







Comment 2 Orion Poplawski 2007-11-14 22:14:32 UTC
*** Bug 383471 has been marked as a duplicate of this bug. ***

Comment 3 Orion Poplawski 2007-11-14 22:17:16 UTC
Is this the problem?

diff -u -r1.2 mesa-7.0-selinux-awareness.patch
--- mesa-7.0-selinux-awareness.patch    1 Nov 2007 06:55:38 -0000       1.2
+++ mesa-7.0-selinux-awareness.patch    14 Nov 2007 22:16:18 -0000
@@ -140,7 +140,7 @@
  INCDIR = $(TOP)/include

 -OSMESA_LIBS = -L$(TOP)/$(LIB_DIR) -lOSMesa $(APP_LIB_DEPS)
-+OSMESA_LIBS = -L$(TOP)/$(LIB_DIR) -lOSMesa $(APP_LIB_DEPS) -l selinux
++OSMESA_LIBS = -L$(TOP)/$(LIB_DIR) -lOSMesa $(APP_LIB_DEPS) -lselinux

  OSMESA16_LIBS = -L$(TOP)/$(LIB_DIR) -lglut -lOSMesa16 -lGLU -lGL $(APP_LIB_DEPS)



Comment 4 Mamoru TASAKA 2007-11-16 13:29:01 UTC
Seems spot fixed this.
https://www.redhat.com/archives/fedora-extras-commits/2007-November/msg03741.html

Now I am trying for xscreensaver.


Comment 5 Mamoru TASAKA 2007-11-16 14:27:24 UTC
Seems fixed. Now available on koji.