libcacard: add libcacard.la target
authorAlon Levy <alevy@redhat.com>
Sun, 15 May 2011 08:51:28 +0000 (11:51 +0300)
committerAlon Levy <alevy@redhat.com>
Tue, 31 May 2011 16:34:08 +0000 (19:34 +0300)
commit7b72bff0f94996a6353bca339856296b68aebd64
tree95bef2f50c3875e101f3173b6575c309f6de7da9
parent6305512615d2170802858e09a8bbcd895fdaf8cd
libcacard: add libcacard.la target

No flag to configure is required. Instead, added a libcacard.la target that
is not built by default, only when requested explicitly via:

mkdir build
cd build
../configure
make libcacard.la
make install-libcacard

Uses libtool to do actual linking of object files and shared library, and
installing. Tested only under linux, but supposed to work on other systems as
well.

If libtool isn't found you get a message complaining about that, only at build
time (since it is not a default target I did not add a message at configure
time).

New build artifacts:
 .libs subdirectories (at <buildroot> and <buildroot>/libcacard)
 *.lo files (at same locations as the respective o files)

Added %.lo : %.c rule that uses libtool.
Updated clean rule to clean up those artifacts.
Added specific rule to call dtrace with libtool wrapper (note that because of
a current upstream dtrace bug fixed by systemtap b1568fd85 commit the -fPIC flag
isn't actually passed on. still current dtrace+libtool produced object links fine).
If libtool is missing any of the following targets will complain and exit 1:
 any subdir: *.lo
 root and libcacard: libcacard.la, libcacard-instsall

Tested to link and load with all tracing backends.
Makefile
Makefile.objs
configure
libcacard/Makefile
rules.mak