Give a useful error message if uuid-ossp is built without preconfiguration.

Before commit b8cc8f947, it was possible to build contrib/uuid-ossp without
having told configure you meant to; you could just cd into that directory
and "make".  That no longer works because the code depends on configure to
have done header and library probes, but the ensuing error messages are
not so easy to interpret if you're not an old C hand.  We've gotten a
couple of complaints recently from people trying to do this the low-tech
way, so add an explicit #error directing the user to use --with-uuid.

(In principle we might want to do something similar in the other
optionally-built contrib modules; but I don't think any of the others have
ever worked without preconfiguration, so there are no bad habits to break
people of.)

Back-patch to 9.4 where the previous commit came in.

Report: https://postgr.es/m/CAHeEsBf42AWTnk=1qJvFv+mYgRFm07Knsfuc86Ono8nRjf3tvQ@mail.gmail.com
Report: https://postgr.es/m/CAKYdkBrUaZX+F6KpmzoHqMtiUqCtAW_w6Dgvr6F0WTiopuGxow@mail.gmail.com
This commit is contained in:
Tom Lane 2016-12-22 11:19:04 -05:00
parent 4032ef18d0
commit b86515da1a
1 changed files with 5 additions and 5 deletions

View File

@ -30,14 +30,14 @@
*/
#define uuid_hash bsd_uuid_hash
#ifdef HAVE_UUID_H
#if defined(HAVE_UUID_H)
#include <uuid.h>
#endif
#ifdef HAVE_OSSP_UUID_H
#elif defined(HAVE_OSSP_UUID_H)
#include <ossp/uuid.h>
#endif
#ifdef HAVE_UUID_UUID_H
#elif defined(HAVE_UUID_UUID_H)
#include <uuid/uuid.h>
#else
#error "please use configure's --with-uuid switch to select a UUID library"
#endif
#undef uuid_hash