[PATCH, vtv update] Fix /tmp directory issues in libvtv

Florian Weimer fweimer@redhat.com
Tue Aug 20 19:15:00 GMT 2013


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



More information about the Gcc-patches mailing list