On configure systems
I will never understand the point of using autotools, cmake or whatever configure system, when later the code uses an hardcoded list of architectures to determine the size of a pointer… Unfortunately for porters this pattern is quite common.
Update: As people keep asking, the way to check for the size of a given type is explained in the autoconf manual. To check for the size of the pointer, the following entry has to be added to configure.ac:
On a 64-bit system, this will lead to the following entry in config.h:
/* The size of `void *', as computed by sizeof. */
#define SIZEOF_VOID_P 8