| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- # Check for binary relocation support.
- # Written by Hongli Lai
- # http://autopackage.org/
- AC_DEFUN([AM_BINRELOC],
- [
- AC_ARG_ENABLE(binreloc,
- [ --enable-binreloc compile with binary relocation support
- (default=enable when available)],
- enable_binreloc=$enableval,enable_binreloc=auto)
- AC_ARG_ENABLE(binreloc-threads,
- [ --enable-binreloc-threads compile binary relocation with threads support
- (default=yes)],
- enable_binreloc_threads=$enableval,enable_binreloc_threads=yes)
- BINRELOC_CFLAGS=
- BINRELOC_LIBS=
- if test "x$enable_binreloc" = "xauto"; then
- AC_CHECK_FILE([/proc/self/maps])
- AC_CACHE_CHECK([whether everything is installed to the same prefix],
- [br_cv_valid_prefixes], [
- if test "$bindir" = '${exec_prefix}/bin' -a "$sbindir" = '${exec_prefix}/sbin' -a \
- "$datadir" = '${prefix}/share' -a "$libdir" = '${exec_prefix}/lib' -a \
- "$libexecdir" = '${exec_prefix}/libexec' -a "$sysconfdir" = '${prefix}/etc'
- then
- br_cv_valid_prefixes=yes
- else
- br_cv_valid_prefixes=no
- fi
- ])
- fi
- AC_CACHE_CHECK([whether binary relocation support should be enabled],
- [br_cv_binreloc],
- [if test "x$enable_binreloc" = "xyes"; then
- br_cv_binreloc=yes
- elif test "x$enable_binreloc" = "xauto"; then
- if test "x$br_cv_valid_prefixes" = "xyes" -a \
- "x$ac_cv_file__proc_self_maps" = "xyes"; then
- br_cv_binreloc=yes
- else
- br_cv_binreloc=no
- fi
- else
- br_cv_binreloc=no
- fi])
- if test "x$br_cv_binreloc" = "xyes"; then
- BINRELOC_CFLAGS="-DENABLE_BINRELOC"
- AC_DEFINE(ENABLE_BINRELOC,,[Use binary relocation?])
- fi
- AC_SUBST(BINRELOC_CFLAGS)
- AC_SUBST(BINRELOC_LIBS)
- ])
|