]> git.cworth.org Git - fips/blobdiff - configure
configure: Set GL_LDFLAGS and EGL_LDFLAGS in configure script
[fips] / configure
index 679f543ed2f93cea6f4feb2fd37409be134f7c5f..dd0a6a686d2dc73599e4791fa458ca1b59a8f7d7 100755 (executable)
--- a/configure
+++ b/configure
@@ -279,6 +279,7 @@ if pkg-config --exists gl; then
     printf "Yes.\n"
     have_gl=1
     gl_cflags=$(pkg-config --cflags gl)
+    gl_ldflags=$(pkg-config --libs gl)
 else
     printf "#include <GL/gl.h>\nint main(void){return 0;}\n" > gl-minimal.c
     if ${CC} -o gl-minimal gl-minimal.c > /dev/null 2>&1
@@ -308,14 +309,15 @@ else
 fi
 rm -f glx-minimal glx-minimal.c
 
-printf "       Checking for GL/egl.h... "
+printf "       Checking for EGL/egl.h... "
 have_egl=No
 if pkg-config --exists egl; then
     printf "Yes.\n"
     have_egl=Yes
     egl_cflags=$(pkg-config --cflags egl)
+    egl_ldflags=$(pkg-config --libs egl)
 else
-    printf "#include <GL/egl.h>\nint main(void){return 0;}\n" > egl-minimal.c
+    printf "#include <EGL/egl.h>\nint main(void){return 0;}\n" > egl-minimal.c
     if ${CC} -o egl-minimal egl-minimal.c ${gl_cflags} > /dev/null 2>&1
     then
        printf "Yes.\n"
@@ -345,6 +347,43 @@ printf "\t${WARN_CFLAGS}\n"
 
 rm -f minimal minimal.c
 
+printf "#include <features.h>\nint main(void){return 0;}\n" > arch-minimal.c
+
+printf "Checking for machine-dependent compiler support:\n"
+
+printf "       Compiler can create 32-bit binaries... "
+have_m32=Yes
+if ${CC} -m32 -o arch-minimal arch-minimal.c > /dev/null 2>&1
+then
+    printf "Yes.\n"
+else
+    printf "No.\n"
+    have_m32=No
+fi
+
+printf "       Compiler can create 64-bit binaries... "
+have_m64=Yes
+if ${CC} -m64 -o arch-minimal arch-minimal.c > /dev/null 2>&1
+then
+    printf "Yes.\n"
+else
+    printf "No.\n"
+    have_m64=No
+fi
+
+if [ "$have_m32" = "No" ] || [ "$have_m64" = "No" ]; then
+    cat <<EOF
+
+* Warning: Cannot create both 32 and 64-bit fips libraries. Fips will not
+           support applications of the non-native size. Fixing this may be
+           as simple as running a command such as:
+
+               sudo apt-get install gcc-multilib
+EOF
+fi
+
+rm -f arch-minimal arch-minimal.c
+
 if [ $errors -gt 0 ]; then
     cat <<EOF
 
@@ -474,6 +513,10 @@ mandir = ${MANDIR:=\$(prefix)/share/man}
 # The directory to which read-only (configuration) files should be installed
 sysconfdir = ${SYSCONFDIR:=\$(prefix)/etc}
 
+# Whether compiler can create 32 or 64-bit binaries
+COMPILER_SUPPORTS_32 = ${have_m32}
+COMPILER_SUPPORTS_64 = ${have_m64}
+
 # Flags needed to compile and link against talloc
 TALLOC_CFLAGS = ${talloc_cflags}
 TALLOC_LDFLAGS = ${talloc_ldflags}
@@ -487,19 +530,17 @@ HAVE_GLX = ${have_glx}
 
 # Flags needed to find GL and GLX header files (GL/gl.h and GL/glx.h)
 GL_CFLAGS = ${gl_cflags}
+GL_LDFLAGS = ${gl_ldflags}
 
 # Whether EGL headers are available
 HAVE_EGL = ${have_egl}
 
 # Flags needed to find EGL header files (EGL/egl.h)
 EGL_CFLAGS = ${egl_cflags}
+EGL_LDFLAGS = ${egl_ldflags}
 
 # Flags needed to have linker link only to necessary libraries
 AS_NEEDED_LDFLAGS = ${as_needed_ldflags}
-
-# Combined flags for compiling and linking against all of the above
-CONFIGURE_CFLAGS = \$(TALLOC_CFLAGS) \$(LIBELF_CFLAGS) \$(GL_CFLAGS) \$(EGL_CFLAGS)
-CONFIGURE_LDFLAGS = \$(TALLOC_LDFLAGS) \$(LIBELF_LDFLAGS)
 EOF
 
 # construct config.h