On 08/20/2013 12:24 AM, Caroline Tice wrote:
Hi All,
I could really use some help here from someone who has a better
understanding of how the config/Makefile system works than I do.
In my libvtv/configure.ac file, I have:
AC_GNU_SOURCE
AC_CHECK_FUNCS([__secure_getenv])
AC_GNU_SOURCE
AC_CHECK_FUNCS([secure_getenv])
There's nothing in Makefile.am that makes use of the substitution
variables, so configure doesn't actually emit code to define the
matching preprocessor macros.
I tried to change that, by putting "DEFS = @DEFS@" into
libvtv/Makefile.am (libvtv/Makefile.in is derived from that). The diff
below is slightly garbled, but you get the idea.
diff --git a/libvtv/Makefile.am b/libvtv/Makefile.am
index 73acfb4..567bd81 100644
--- a/libvtv/Makefile.am
+++ b/libvtv/Makefile.am
@@ -30,7 +30,7 @@ ACLOCAL_AMFLAGS = -I .. -I ../config
# May be used by toolexeclibdir.
gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
-DEFS =
+DEFS = @DEFS@
AM_CPPFLAGS = -I$(top_srcdir)/../include
AM_CFLAGS = $(XCFLAGS)
AM_CCASFLAGS = $(XCFLAGS)
But I ended up with:
libtool: compile: /home/fw/src/gnu/gcc/build/./gcc/xgcc
-B/home/fw/src/gnu/gcc/build/./gcc/ "-DPACKAGE_NAME=\"GNU Vtable
Verification Runtime Library\"" -DPACKAGE_TARNAME=\"libvtv\"
-DPACKAGE_VERSION=\"1.0\" "-DPACKAGE_STRING=\"GNU Vtable Verification
Runtime Library 1.0\"" -DPACKAGE_BUGREPORT=\"\"
-DPACKAGE_URL=\"http://www.gnu.org/software/libvtv/\"
-DPACKAGE=\"libvtv\" -DVERSION=\"1.0\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1
-DLT_OBJDIR=\".libs/\" -D__EXTENSIONS__=1 -D_ALL_SOURCE=1
-D_GNU_SOURCE=1 -D_POSIX_PTHREAD_SEMANTICS=1 -D_TANDEM_SOURCE=1
-DHAVE___SECURE_GETENV=1 -I. -I../../../git/libvtv
-I../../../git/libvtv/../include -D_GNU_SOURCE -Wall -Wextra
-fno-exceptions -Wl,-u_vtable_map_vars_start,-u_vtable_map_vars_end -g
-O2 -D_GNU_SOURCE -MT vtv_rts.lo -MD -MP -MF .deps/vtv_rts.Tpo -c
../../../git/libvtv/vtv_rts.cc -fPIC -DPIC -o .libs/vtv_rts.o
../../../git/libvtv/vtv_rts.cc:134:28: fatal error: bits/c++config.h: No
such file or directory
#include <bits/c++config.h>
^
(The caret is at the wrong position, IMHO.)
But I suspect something went wrong with regenerating Makefile.in. Have
you got automake 1.11? Then you could make the change, regenerate
Makefile.in, and try again.
--
Florian Weimer / Red Hat Product Security Team