[issue8287] python-gdb.py triggers compile errors on FreeBSD and Solaris

Dave Malcolm report at bugs.python.org
Fri Apr 2 17:34:45 CEST 2010


Dave Malcolm <dmalcolm at redhat.com> added the comment:

Sorry about this.

I believe this is the expansion of these fragments from the Makefile.pre.in  (indenting for clarity):

    gdbhooks: $(BUILDPYTHON)-gdb.py

    $(BUILDPYTHON)-gdb.py: Tools/gdb/libpython.py
            $(INSTALL_SCRIPT) $< $(BUILDPYTHON)-gdb.py

It looks like the second of these is being invoked in both cases with "$<" as the empty string, rather than "Tools/gdb/libpython.py" (and each with their own expansion of "INSTALL_SCRIPT").

I'm guessing that the "$<" is a GNU Make-ism that isn't available on all implementations of "make".  If so, the quick fix is probably to replace "$<" with "Tools/gdb/libpython.py" in Makefile.pre.in

I'm attaching a patch which introduces a variable for the path and uses this, rather than "$<".

I only have access to Linux machines; I've tested it on one, and it works.

I don't have commit rights, so I can't fix this directly myself.

$ make -v
GNU Make 3.81

>From "info make":
`$<'
     The name of the first prerequisite.  If the target got its
     commands from an implicit rule, this will be the first
     prerequisite added by the implicit rule (*note Implicit Rules::).


(In my defence, "$<" appeared to be used already in the "Some make's put the object file in the current directory" rule).


Sorry again from breaking the build on those configurations.

----------
keywords: +patch
stage: needs patch -> patch review
Added file: http://bugs.python.org/file16735/introduce-var-for-gdb-hooks.patch

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue8287>
_______________________________________


More information about the Python-bugs-list mailing list