Hi! On Wed, Dec 04, 2013 at 03:56:01PM +0100, Thomas Schwinge wrote: > Hi! > > Just seen this in the Debian glibc development repository: > > On Sun, 1 Dec 2013 21:20:24 +0000, Aurelien Jarno > <[email protected]> wrote: > > Author: aurel32 > > Date: 2013-12-01 21:20:24 +0000 (Sun, 01 Dec 2013) > > New Revision: 5848 > > > --- glibc-package/branches/eglibc-2.18/debian/rules.d/build.mk > > 2013-12-01 21:03:01 UTC (rev 5847) > > +++ glibc-package/branches/eglibc-2.18/debian/rules.d/build.mk > > 2013-12-01 21:20:24 UTC (rev 5848) > > @@ -57,6 +57,11 @@ > > echo "slibdir = $(call xx,slibdir)" >> $(DEB_BUILDDIR)/configparms > > echo "rtlddir = $(call xx,rtlddir)" >> $(DEB_BUILDDIR)/configparms > > > > + # Define the installation directory for all calls to make. This avoid > > + # broken glibc makefiles to spuriously trigger install rules trying to > > + # overwrite system headers. > > + echo "install_root = $(CURDIR)/debian/tmp-$(curpass)" >> > > $(DEB_BUILDDIR)/configparms > > Just for reference, this very much looks like the issue (as well as the > "solution") that I've described in > <http://news.gmane.org/find-root.php?message_id=%3C871uv99c59.fsf%40kepler.schwinge.homeip.net%3E>.
It is actually except it is on different file, and it is inspired by your trick. I was just worried that a file is really installed and a directory created at the same time, so instead of adding code to to remove this directory later in debian/rules, I have chosen to use the final directory where the files are eventually going to be installed. Worst case the header is going to get reinstalled during the make install phase. > Someone ;-) should be doing something about this eventually. I tried a few things, that seemd to work, but they had side effects. The best workaround I have found is the following: diff --git a/Makerules b/Makerules index 92c2872..4fd5f76 100644 --- a/Makerules +++ b/Makerules @@ -328,7 +328,7 @@ endif # $(build-shared) = yes endif # sysd-sorted-done # Generate .dT files as we compile. -compile-mkdep-flags = -MD -MP -MF [email protected] -MT $@ +compile-mkdep-flags = -MMD -MP -MF [email protected] -MT $@ compile-command.S = $(compile.S) $(OUTPUT_OPTION) $(compile-mkdep-flags) compile-command.c = $(compile.c) $(OUTPUT_OPTION) $(compile-mkdep-flags) compile-command.cc = $(compile.cc) $(OUTPUT_OPTION) $(compile-mkdep-flags) That said if a system header is modified intentionally, the affected files in the glibc build won't be rebuilt anymore. It should be fine for a package, but not for upstream development. -- Aurelien Jarno GPG: 1024D/F1BCDB73 [email protected] http://www.aurel32.net -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

