From fa1d05cdfff44b39584ba03831dae7d3f7b2258c Mon Sep 17 00:00:00 2001 From: roland Date: Wed, 18 Oct 2006 21:23:53 +0000 Subject: 2006-10-18 Roland McGrath PR 2727 * configure.ac (elfutils build): Pass --prefix and --exec-prefix options to elfutils configure. (elfutils_abs_srcdir): New substituted variable. * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable. * configure, config.in, Makefile.in: Regenerated. --- Makefile.am | 6 ++++-- Makefile.in | 6 +++++- config.in | 6 ++++++ configure | 13 ++++++++++++- configure.ac | 9 ++++++++- 5 files changed, 35 insertions(+), 5 deletions(-) diff --git a/Makefile.am b/Makefile.am index 9ce815db..9231dce3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -11,7 +11,7 @@ AM_CFLAGS = -std=gnu99 -D_GNU_SOURCE -fexceptions \ -Wall -Werror -Wshadow -Wunused -Wformat=2 -W AM_CXXFLAGS = -Wall -dist_man_MANS = stap.1 stapprobes.5 stapfuncs.5 stapex.5 lket.5 man/stapprobes.iosched.5 man/stapprobes.netdev.5 man/stapprobes.nfs.5 man/stapprobes.nfsd.5 man/stapprobes.pagefault.5 man/stapprobes.process.5 man/stapprobes.rpc.5 man/stapprobes.scsi.5 man/stapprobes.signal.5 man/stapprobes.tcp.5 man/stapprobes.udp.5 +dist_man_MANS = stap.1 stapprobes.5 stapfuncs.5 stapex.5 lket.5 man/stapprobes.iosched.5 man/stapprobes.netdev.5 man/stapprobes.nfs.5 man/stapprobes.nfsd.5 man/stapprobes.pagefault.5 man/stapprobes.process.5 man/stapprobes.rpc.5 man/stapprobes.scsi.5 man/stapprobes.signal.5 man/stapprobes.tcp.5 man/stapprobes.udp.5 bin_PROGRAMS = stap staprun stap_SOURCES = main.cxx \ parse.cxx staptree.cxx elaborate.cxx translate.cxx \ @@ -25,6 +25,9 @@ stap_LDFLAGS = $(AM_LDFLAGS) CLEANFILES = if BUILD_ELFUTILS +# This tells automake's "make distcheck" what we need to compile. +DISTCHECK_CONFIGURE_FLAGS = --with-elfutils=$(elfutils_abs_srcdir) + stap_CPPFLAGS += -Iinclude-elfutils stap_LDFLAGS += -Llib-elfutils -Wl,-rpath-link,lib-elfutils \ -Wl,--enable-new-dtags,-rpath,$(pkglibdir) @@ -109,4 +112,3 @@ SUBDIRS = testsuite if BUILD_LKET_B2A SUBDIRS += runtime/lket/b2a endif - diff --git a/Makefile.in b/Makefile.in index 20f97fed..84bfbb08 100644 --- a/Makefile.in +++ b/Makefile.in @@ -216,6 +216,7 @@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ datadir = @datadir@ +elfutils_abs_srcdir = @elfutils_abs_srcdir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ includedir = @includedir@ @@ -241,7 +242,7 @@ AM_CFLAGS = -std=gnu99 -D_GNU_SOURCE -fexceptions \ -Wall -Werror -Wshadow -Wunused -Wformat=2 -W AM_CXXFLAGS = -Wall -dist_man_MANS = stap.1 stapprobes.5 stapfuncs.5 stapex.5 lket.5 man/stapprobes.iosched.5 man/stapprobes.netdev.5 man/stapprobes.nfs.5 man/stapprobes.nfsd.5 man/stapprobes.pagefault.5 man/stapprobes.process.5 man/stapprobes.rpc.5 man/stapprobes.scsi.5 man/stapprobes.signal.5 man/stapprobes.tcp.5 man/stapprobes.udp.5 +dist_man_MANS = stap.1 stapprobes.5 stapfuncs.5 stapex.5 lket.5 man/stapprobes.iosched.5 man/stapprobes.netdev.5 man/stapprobes.nfs.5 man/stapprobes.nfsd.5 man/stapprobes.pagefault.5 man/stapprobes.process.5 man/stapprobes.rpc.5 man/stapprobes.scsi.5 man/stapprobes.signal.5 man/stapprobes.tcp.5 man/stapprobes.udp.5 stap_SOURCES = main.cxx \ parse.cxx staptree.cxx elaborate.cxx translate.cxx \ tapsets.cxx buildrun.cxx loc2c.c @@ -251,6 +252,9 @@ stap_CXXFLAGS = -Werror $(AM_CXXFLAGS) stap_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_1) stap_LDFLAGS = $(AM_LDFLAGS) $(am__append_2) CLEANFILES = $(am__append_3) $(pkglibexec_SCRIPTS) + +# This tells automake's "make distcheck" what we need to compile. +@BUILD_ELFUTILS_TRUE@DISTCHECK_CONFIGURE_FLAGS = --with-elfutils=$(elfutils_abs_srcdir) @BUILD_ELFUTILS_TRUE@BUILT_SOURCES = stamp-elfutils @BUILD_ELFUTILS_TRUE@stap_DEPENDENCIES = lib-elfutils/libdw.so staprun_SOURCES = runtime/stpd/stpd.c runtime/stpd/librelay.c diff --git a/config.in b/config.in index 414fcfec..c1d601a9 100644 --- a/config.in +++ b/config.in @@ -9,9 +9,15 @@ /* Define to 1 if you have the `dw' library (-ldw). */ #undef HAVE_LIBDW +/* Define to 1 if you have the `pfm' library (-lpfm). */ +#undef HAVE_LIBPFM + /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H +/* Define to 1 if you have the header file. */ +#undef HAVE_MYSQL_MYSQL_H + /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H diff --git a/configure b/configure index 54080000..088242f2 100755 --- a/configure +++ b/configure @@ -310,7 +310,7 @@ ac_includes_default="\ # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CPP EGREP U ANSI2KNR RANLIB ac_ct_RANLIB BUILD_ELFUTILS_TRUE BUILD_ELFUTILS_FALSE BUILD_LKET_B2A_TRUE BUILD_LKET_B2A_FALSE MYSQL_CONFIG CXXCPP HAS_MYSQL_TRUE HAS_MYSQL_FALSE HAS_MYSQL_CONFIG_TRUE HAS_MYSQL_CONFIG_FALSE stap_LIBS DATE LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LN_S CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CPP EGREP U ANSI2KNR RANLIB ac_ct_RANLIB BUILD_ELFUTILS_TRUE BUILD_ELFUTILS_FALSE elfutils_abs_srcdir BUILD_LKET_B2A_TRUE BUILD_LKET_B2A_FALSE MYSQL_CONFIG CXXCPP HAS_MYSQL_TRUE HAS_MYSQL_FALSE HAS_MYSQL_CONFIG_TRUE HAS_MYSQL_CONFIG_FALSE stap_LIBS DATE LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -5219,6 +5219,12 @@ else BUILD_ELFUTILS_FALSE= fi +elfutils_abs_srcdir=`if test $build_elfutils = yes; then + cd $with_elfutils && pwd +fi +` + + if pkg-config --atleast-version 2.0.0 glib-2.0; then @@ -6636,6 +6642,7 @@ s,@RANLIB@,$RANLIB,;t t s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t s,@BUILD_ELFUTILS_TRUE@,$BUILD_ELFUTILS_TRUE,;t t s,@BUILD_ELFUTILS_FALSE@,$BUILD_ELFUTILS_FALSE,;t t +s,@elfutils_abs_srcdir@,$elfutils_abs_srcdir,;t t s,@BUILD_LKET_B2A_TRUE@,$BUILD_LKET_B2A_TRUE,;t t s,@BUILD_LKET_B2A_FALSE@,$BUILD_LKET_B2A_FALSE,;t t s,@MYSQL_CONFIG@,$MYSQL_CONFIG,;t t @@ -7373,12 +7380,16 @@ if test $build_elfutils = yes; then echo "$as_me: running ${elfutils_srcdir}/configure" >&6;} # Our libdw.so's libebl will look in $ORIGIN/../lib/... but that # $ORIGIN is where libdw.so resides, which is not where there is a ../lib. + # Note that $libdir might be using a quoted use of $exec_prefix or $prefix. + # So we must make sure to pass those settings to elfutils configure. elfutils_rpath="-Wl,--enable-new-dtags,-rpath,${libdir}/${PACKAGE_NAME}" here=`pwd` (mkdir -p build-elfutils && cd build-elfutils && ${elfutils_srcdir}/configure --enable-libebl-subdir=${PACKAGE_NAME} \ --includedir="${here}/include-elfutils" \ --libdir="${here}/lib-elfutils" \ + --exec-prefix="$exec_prefix" \ + --prefix="$prefix" \ CFLAGS="${CFLAGS/-Wall/}" \ LDFLAGS="$LDFLAGS $elfutils_rpath" ) diff --git a/configure.ac b/configure.ac index fb0287b9..93dbec19 100644 --- a/configure.ac +++ b/configure.ac @@ -59,6 +59,9 @@ yes) AC_MSG_ERROR([--with-elfutils requires an argument]) ;; *) build_elfutils=yes ;; esac]) AM_CONDITIONAL(BUILD_ELFUTILS, test $build_elfutils = yes) +AC_SUBST(elfutils_abs_srcdir, `AS_IF([test $build_elfutils = yes], + [cd $with_elfutils && pwd])`) + AM_CONDITIONAL(BUILD_LKET_B2A, pkg-config --atleast-version 2.0.0 glib-2.0) mysql=false @@ -77,7 +80,7 @@ else fi AC_CHECK_HEADERS(mysql/mysql.h, - AC_CHECK_LIB(mysqlclient, mysql_init, + AC_CHECK_LIB(mysqlclient, mysql_init, mysql=true, AC_MSG_NOTICE([*** Cannot find mysqlclient lib. Check your MySQL installation.]), []), AC_MSG_NOTICE([*** Cannot find mysql header file. Check your MySQL installation.]), []) @@ -123,12 +126,16 @@ if test $build_elfutils = yes; then AC_MSG_NOTICE([running ${elfutils_srcdir}/configure]) # Our libdw.so's libebl will look in $ORIGIN/../lib/... but that # $ORIGIN is where libdw.so resides, which is not where there is a ../lib. + # Note that $libdir might be using a quoted use of $exec_prefix or $prefix. + # So we must make sure to pass those settings to elfutils configure. elfutils_rpath="-Wl,--enable-new-dtags,-rpath,${libdir}/${PACKAGE_NAME}" here=`pwd` (mkdir -p build-elfutils && cd build-elfutils && ${elfutils_srcdir}/configure --enable-libebl-subdir=${PACKAGE_NAME} \ --includedir="${here}/include-elfutils" \ --libdir="${here}/lib-elfutils" \ + --exec-prefix="$exec_prefix" \ + --prefix="$prefix" \ CFLAGS="${CFLAGS/-Wall/}" \ LDFLAGS="$LDFLAGS $elfutils_rpath" ) -- cgit