Next: , Previous: Largefile Support (LFS), Up: Preparation


2.4 Using Automake

It is much easier if you use GNU Automake instead of writing your own Makefiles. If you do that you do not have to worry about finding and invoking the gpgme-config script at all. GPGME provides an extension to Automake that does all the work for you.

— Macro: AM_PATH_GPGME ([minimum-version], [action-if-found], [action-if-not-found])
— Macro: AM_PATH_GPGME_PTH ([minimum-version], [action-if-found], [action-if-not-found])
— Macro: AM_PATH_GPGME_PTHREAD ([minimum-version], [action-if-found], [action-if-not-found])

Check whether GPGME (at least version minimum-version, if given) exists on the host system. If it is found, execute action-if-found, otherwise do action-if-not-found, if given.

Additionally, the function defines GPGME_CFLAGS to the flags needed for compilation of the program to find the gpgme.h header file, and GPGME_LIBS to the linker flags needed to link the program to the GPGME library.

AM_PATH_GPGME_PTH checks for the version of GPGME that can be used with GNU Pth, and defines GPGME_PTH_CFLAGS and GPGME_PTH_LIBS.

AM_PATH_GPGME_PTHREAD checks for the version of GPGME that can be used with the native pthread implementation, and defines GPGME_PTHREAD_CFLAGS and GPGME_PTHREAD_LIBS.

You can use the defined Autoconf variables like this in your Makefile.am:

     AM_CPPFLAGS = $(GPGME_CFLAGS)
     LDADD = $(GPGME_LIBS)