| 6 |
dnl be defined as -RC2, for example. For real releases, it should be defined |
dnl be defined as -RC2, for example. For real releases, it should be defined |
| 7 |
dnl empty. |
dnl empty. |
| 8 |
|
|
| 9 |
m4_define(pcre_major, [7]) |
m4_define(pcre_major, [8]) |
| 10 |
m4_define(pcre_minor, [6]) |
m4_define(pcre_minor, [0]) |
| 11 |
m4_define(pcre_prerelease, [-RC1]) |
m4_define(pcre_prerelease, [-RC0]) |
| 12 |
m4_define(pcre_date, [2008-01-19]) |
m4_define(pcre_date, [2008-07-04]) |
| 13 |
|
|
| 14 |
# Libtool shared library interface versions (current:revision:age) |
# Libtool shared library interface versions (current:revision:age) |
| 15 |
m4_define(libpcre_version, [0:1:0]) |
m4_define(libpcre_version, [0:1:0]) |
| 60 |
fi |
fi |
| 61 |
fi |
fi |
| 62 |
|
|
| 63 |
|
# AC_PROG_CXX will return "g++" even if no c++ compiler is installed. |
| 64 |
|
# Check for that case, and just disable c++ code if g++ doesn't run. |
| 65 |
|
AC_LANG_PUSH(C++) |
| 66 |
|
AC_COMPILE_IFELSE(AC_LANG_PROGRAM([],[]),, CXX=""; CXXCP=""; CXXFLAGS="") |
| 67 |
|
AC_LANG_POP |
| 68 |
|
|
| 69 |
AC_PROG_INSTALL |
AC_PROG_INSTALL |
| 70 |
AC_LIBTOOL_WIN32_DLL |
AC_LIBTOOL_WIN32_DLL |
| 282 |
then |
then |
| 283 |
AC_LANG_PUSH(C++) |
AC_LANG_PUSH(C++) |
| 284 |
|
|
| 285 |
|
# Older versions of pcre defined pcrecpp::no_arg, but in new versions |
| 286 |
|
# it's called pcrecpp::RE::no_arg. For backwards ABI compatibility, |
| 287 |
|
# we want to make one an alias for the other. Different systems do |
| 288 |
|
# this in different ways. Some systems, for instance, can do it via |
| 289 |
|
# a linker flag: -alias (for os x 10.5) or -i (for os x <=10.4). |
| 290 |
|
OLD_LDFLAGS="$LDFLAGS" |
| 291 |
|
for flag in "-alias,__ZN7pcrecpp2RE6no_argE,__ZN7pcrecpp6no_argE" \ |
| 292 |
|
"-i__ZN7pcrecpp6no_argE:__ZN7pcrecpp2RE6no_argE"; do |
| 293 |
|
AC_MSG_CHECKING([for alias support in the linker]) |
| 294 |
|
LDFLAGS="$OLD_LDFLAGS -Wl,$flag" |
| 295 |
|
# We try to run the linker with this new ld flag. If the link fails, |
| 296 |
|
# we give up and remove the new flag from LDFLAGS. |
| 297 |
|
AC_LINK_IFELSE(AC_LANG_PROGRAM([namespace pcrecpp { |
| 298 |
|
class RE { static int no_arg; }; |
| 299 |
|
int RE::no_arg; |
| 300 |
|
}], |
| 301 |
|
[]), |
| 302 |
|
[AC_MSG_RESULT([yes]); |
| 303 |
|
EXTRA_LIBPCRECPP_LDFLAGS="$EXTRA_LIBPCRECPP_LDFLAGS -Wl,$flag"; |
| 304 |
|
break;], |
| 305 |
|
AC_MSG_RESULT([no])) |
| 306 |
|
done |
| 307 |
|
LDFLAGS="$OLD_LDFLAGS" |
| 308 |
|
|
| 309 |
# We could be more clever here, given we're doing AC_SUBST with this |
# We could be more clever here, given we're doing AC_SUBST with this |
| 310 |
# (eg set a var to be the name of the include file we want). But we're not |
# (eg set a var to be the name of the include file we want). But we're not |
| 311 |
# so it's easy to change back to 'regular' autoconf vars if we needed to. |
# so it's easy to change back to 'regular' autoconf vars if we needed to. |
| 315 |
[pcre_have_bits_type_traits="0"]) |
[pcre_have_bits_type_traits="0"]) |
| 316 |
AC_CHECK_HEADERS(type_traits.h, [pcre_have_type_traits="1"], |
AC_CHECK_HEADERS(type_traits.h, [pcre_have_type_traits="1"], |
| 317 |
[pcre_have_type_traits="0"]) |
[pcre_have_type_traits="0"]) |
| 318 |
|
|
| 319 |
AC_LANG_POP |
AC_LANG_POP |
| 320 |
fi |
fi |
| 321 |
# Using AC_SUBST eliminates the need to include config.h in a public .h file |
# Using AC_SUBST eliminates the need to include config.h in a public .h file |
| 331 |
AC_C_CONST |
AC_C_CONST |
| 332 |
AC_TYPE_SIZE_T |
AC_TYPE_SIZE_T |
| 333 |
|
|
| 334 |
AC_CHECK_TYPES([long long], |
pcre_have_strotolonglong=0 |
| 335 |
[pcre_have_long_long="1"], |
AC_CHECK_FUNCS(strtoq strtoll _strtoi64, [pcre_have_strotolonglong="1"; break]) |
| 336 |
[pcre_have_long_long="0"]) |
# If we can't convert a string to a long long, pretend we don't even |
| 337 |
AC_CHECK_TYPES([unsigned long long], |
# have a long long. |
| 338 |
[pcre_have_ulong_long="1"], |
if test $pcre_have_strotolonglong = "0"; then |
| 339 |
[pcre_have_ulong_long="0"]) |
pcre_have_long_long="0" |
| 340 |
|
pcre_have_ulong_long="0" |
| 341 |
|
else |
| 342 |
|
AC_CHECK_TYPES([long long], |
| 343 |
|
[pcre_have_long_long="1"], |
| 344 |
|
[pcre_have_long_long="0"]) |
| 345 |
|
AC_CHECK_TYPES([unsigned long long], |
| 346 |
|
[pcre_have_ulong_long="1"], |
| 347 |
|
[pcre_have_ulong_long="0"]) |
| 348 |
|
fi |
| 349 |
AC_SUBST(pcre_have_long_long) |
AC_SUBST(pcre_have_long_long) |
| 350 |
AC_SUBST(pcre_have_ulong_long) |
AC_SUBST(pcre_have_ulong_long) |
| 351 |
|
|
| 352 |
# Checks for library functions. |
# Checks for library functions. |
| 353 |
|
|
| 354 |
AC_CHECK_FUNCS(bcopy memmove strerror strtoq strtoll _strtoi64) |
AC_CHECK_FUNCS(bcopy memmove strerror) |
| 355 |
|
|
| 356 |
# Check for the availability of libz (aka zlib) |
# Check for the availability of libz (aka zlib) |
| 357 |
|
|
| 520 |
# The extra LDFLAGS for each particular library |
# The extra LDFLAGS for each particular library |
| 521 |
# (Note: The libpcre*_version bits are m4 variables, assigned above) |
# (Note: The libpcre*_version bits are m4 variables, assigned above) |
| 522 |
|
|
| 523 |
EXTRA_LIBPCRE_LDFLAGS="$NO_UNDEFINED -version-info libpcre_version" |
EXTRA_LIBPCRE_LDFLAGS="$EXTRA_LIBPCRE_LDFLAGS \ |
| 524 |
|
$NO_UNDEFINED -version-info libpcre_version" |
| 525 |
|
|
| 526 |
EXTRA_LIBPCREPOSIX_LDFLAGS="$NO_UNDEFINED -version-info libpcreposix_version" |
EXTRA_LIBPCREPOSIX_LDFLAGS="$EXTRA_LIBPCREPOSIX_LDFLAGS \ |
| 527 |
|
$NO_UNDEFINED -version-info libpcreposix_version" |
| 528 |
|
|
| 529 |
EXTRA_LIBPCRECPP_LDFLAGS="$NO_UNDEFINED $EXPORT_ALL_SYMBOLS -version-info libpcrecpp_version" |
EXTRA_LIBPCRECPP_LDFLAGS="$EXTRA_LIBPCRECPP_LDFLAGS \ |
| 530 |
|
$NO_UNDEFINED -version-info libpcrecpp_version \ |
| 531 |
|
$EXPORT_ALL_SYMBOLS" |
| 532 |
|
|
| 533 |
AC_SUBST(EXTRA_LIBPCRE_LDFLAGS) |
AC_SUBST(EXTRA_LIBPCRE_LDFLAGS) |
| 534 |
AC_SUBST(EXTRA_LIBPCREPOSIX_LDFLAGS) |
AC_SUBST(EXTRA_LIBPCREPOSIX_LDFLAGS) |