Carl Worth [Wed, 24 Apr 2013 00:25:13 +0000 (17:25 -0700)]
Compile both 32-bit and 64-bit versions of the wrapper library.
This is intended to make it transparent to run fips with either a
32-bit or a 64-bit program. And it does do that once you successfully
build both versions of the library.
Actually being able to build both versions of the library is a little
tricky though. Here are some of the tricks:
1. You will need to have installed both a 32-bit and a 64-bit .so file
for each dependent library, (currently libelf and libtalloc).
The current configure script doesn't check for both versions, so
you don't get a lot of guidance here. And that's because...
2. On Debian, at least, one cannot currently install both
libtalloc-dev:amd64 and libtalloc-dev:i386 at the same time.
Contrast with libelf-dev:i386 and libelf-dev:amd64 which work just
fine when installed simultaneously.
One can work around this by just install libtalloc-dev:amd64 and then
manually creating the link you need for the i386 package. Namely:
Carl Worth [Tue, 23 Apr 2013 21:17:33 +0000 (14:17 -0700)]
Start wrapping OpenGL, and print periodic FPS value to stdout.
In addition to the fips binary, we now also compile a libfips.so library
and LD_PRELOAD that before executing the program specified on the command-
line.
The libfips.so library wraps OpenGL calls of interest for purpose of
instrumentation. So far, the only call wrapped is glXSwapBuffers and
the only instrumentation is to compute and print out a frames-per-second
value every 60 frames.