This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
RE: gdb/gnulib problems with BSD operating systems
- From: "Pierre Muller" <pierre dot muller at ics-cnrs dot unistra dot fr>
- To: "'Pierre Muller'" <pierre dot muller at ics-cnrs dot unistra dot fr>, "'Joel Brobecker'" <brobecker at adacore dot com>, "'Tom Tromey'" <tromey at redhat dot com>
- Cc: <gdb at sourceware dot org>
- Date: Sat, 31 Mar 2012 20:16:41 +0200
- Subject: RE: gdb/gnulib problems with BSD operating systems
- References: <32726.6318876811$1333031278@news.gmane.org> <87ehs9n7xx.fsf@fleche.redhat.com> <20120330213422.GX2713@adacore.com> <20120330220740.GA18842@adacore.com> <002101cd0f36$ee5b8bc0$cb12a340$@muller@ics-cnrs.unistra.fr>
> > % /path/to/gdb/configure
> > % /home/brobecke/gmake
> >
I was wondering if the fact of
adding a full path could have an influence.
So I tested 4 variants (on GDB-7.4 sources)
Variant 1) Using just 'gmake'
Variant 2) Using '/usr/local/bin/gmake'
Variant 3) Using 'gmake all-gdb'
Variant 4) Using '/usr/local/bin/gmake all-gdb'
Clearly, only variants 1 and 2 complete successfully,
while variants using all-gdb
do have
MAKE = make
instead of
MAKE = 'gmake as called, i.e. with or without path'
There are differences in the gdb/Makefile's (see below)
but I have no idea if this explains the
failure with all-gdb target.
Pierre Muller
GDB pascal language maintainer
[pierre@freelove832 ~]$ diff -c test-gmake/gdb/Makefile
test-gmake-all-gdb/gdb/Makefile
*** test-gmake/gdb/Makefile Sat Mar 31 08:38:04 2012
--- test-gmake-all-gdb/gdb/Makefile Sat Mar 31 08:43:46 2012
***************
*** 55,62 ****
LN_S = ln -s
INSTALL = /usr/bin/install -c
! INSTALL_PROGRAM = /usr/bin/install -c
! INSTALL_DATA = /usr/bin/install -c -m 644
DESTDIR =
--- 55,62 ----
LN_S = ln -s
INSTALL = /usr/bin/install -c
! INSTALL_PROGRAM = ${INSTALL}
! INSTALL_DATA = ${INSTALL} -m 644
DESTDIR =
***************
*** 107,113 ****
YLWRAP = $(srcdir)/../ylwrap
# where to find makeinfo, preferably one designed for texinfo-2
! MAKEINFO = makeinfo --split-size=5000000
MAKEINFOFLAGS = --split-size=5000000
MAKEINFO_EXTRA_FLAGS =
MAKEINFO_CMD = $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFO_EXTRA_FLAGS)
--- 107,113 ----
YLWRAP = $(srcdir)/../ylwrap
# where to find makeinfo, preferably one designed for texinfo-2
! MAKEINFO = makeinfo
MAKEINFOFLAGS = --split-size=5000000
MAKEINFO_EXTRA_FLAGS =
MAKEINFO_CMD = $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFO_EXTRA_FLAGS)
***************
*** 2197,2217 ****
# simpler scheme.
#
! ifeq ($(DEPMODE),depmode=gcc3)
# Note that we put the dependencies into a .Tpo file, then move them
# into place if the compile succeeds. We need this because gcc does
# not atomically write the dependency output file.
! override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
! -MF $(DEPDIR)/$(basename $(@F)).Tpo
! override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
! $(DEPDIR)/$(basename $(@F)).Po
! else
! override COMPILE.pre = source='$<' object='$@' libtool=no \
! DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
# depcomp handles atomicity for us, so we don't need a postcompile
# step.
! override POSTCOMPILE =
! endif
# A list of all the objects we might care about in this build, for
# dependency tracking.
--- 2197,2217 ----
# simpler scheme.
#
! #ifeq ($(DEPMODE),depmode=gcc3)
# Note that we put the dependencies into a .Tpo file, then move them
# into place if the compile succeeds. We need this because gcc does
# not atomically write the dependency output file.
! #override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
! # -MF $(DEPDIR)/$(basename $(@F)).Tpo
! #override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
! # $(DEPDIR)/$(basename $(@F)).Po
! #else
! #override COMPILE.pre = source='$<' object='$@' libtool=no \
! # DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
# depcomp handles atomicity for us, so we don't need a postcompile
# step.
! #override POSTCOMPILE =
! #endif
# A list of all the objects we might care about in this build, for
# dependency tracking.
***************
*** 2221,2233 ****
# Ensure that generated files are created early. Use order-only
# dependencies if available. They require GNU make 3.80 or newer,
# and the .VARIABLES variable was introduced at the same time.
! ifdef .VARIABLES
! $(all_object_files): | $(generated_files)
! else
$(all_object_files) : $(generated_files)
! endif
# Dependencies.
! -include $(patsubst %.o, $(DEPDIR)/%.Po, $(all_object_files))
### end of the gdb Makefile.in.
--- 2221,2233 ----
# Ensure that generated files are created early. Use order-only
# dependencies if available. They require GNU make 3.80 or newer,
# and the .VARIABLES variable was introduced at the same time.
! #ifdef .VARIABLES
! #$(all_object_files): | $(generated_files)
! #else
$(all_object_files) : $(generated_files)
! #endif
# Dependencies.
! #-include $(patsubst %.o, $(DEPDIR)/%.Po, $(all_object_files))
### end of the gdb Makefile.in.