[Webkit-unassigned] [Bug 94488] --disable-dependency-tracking causes build failure due to missing directories

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Mar 17 16:21:36 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=94488


Tobias Mueller <tobiasmue at gnome.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #193474|                            |review?
               Flag|                            |




--- Comment #2 from Tobias Mueller <tobiasmue at gnome.org>  2013-03-17 16:24:03 PST ---
Created an attachment (id=193474)
 --> (https://bugs.webkit.org/attachment.cgi?id=193474&action=review)
Patch making --disable-dependency-tracking work

Aye. Same here.

Some more people suffering from this: http://lists.linuxtogo.org/pipermail/openembedded-core/2011-October/010590.html
https://bugs.gentoo.org/show_bug.cgi?id=406117

For completeness:
$ ./autogen.sh --disable-dependency-tracking
...
WebKit was configured with the following options:

Build configuration:
 Enable debugging (slow)                                  : no
 Compile with debug symbols (slow)                        : no
 Enable GCC build optimization                            : yes
 Code coverage support                                    : no
 Optimized memory allocator                               : yes
 Accelerated rendering backend                            : opengl(gl, egl, glx)

Features:
=======
 WebKit1 support                                          : yes
 WebKit2 support                                          : yes
 Accelerated Compositing                                  : yes
 Gamepad support                                          : no
 Geolocation support                                      : no
 HTML5 video element support                              : no
 JIT compilation                                          : autodetect
 Opcode stats                                             : no
 SVG fonts support                                        : yes
 SVG support                                              : yes
 Spellcheck support                                       : no
 Web Audio support                                        : no
 WebGL                                                    : yes
 XSLT support                                             : yes


GTK+ configuration:
 GTK+ version                                             : 3.0
 GDK target                                               : x11
 Introspection support                                    : no
 Generate documentation                                   : no

$ time make -j 40
  GEN    DerivedSources/WebCore/InternalSettingsGenerated.idl
  GEN    DerivedSources/webkitdom/WebKitDOMEventTarget.h
  GEN    DerivedSources/webkitdom/WebKitDOMEventTargetPrivate.h
  GEN    DerivedSources/webkitdom/webkitdomdefines.h
/bin/sh: DerivedSources/webkitdom/webkitdomdefines.h: No such file or directory
  GEN    DerivedSources/webkitdom/WebKitDOMObject.h
  GEN    DerivedSources/webkitdom/WebKitDOMCustom.h
  GEN    DerivedSources/webkitdom/webkitdom.h
/bin/sh: DerivedSources/webkitdom/webkitdom.h: No such file or directory
cp: cannot create regular file `DerivedSources/webkitdom/WebKitDOMEventTargetPrivate.h': No such file or directory
make: *** [DerivedSources/webkitdom/webkitdom.h] Error 1
make: *** Waiting for unfinished jobs....
make: *** [DerivedSources/webkitdom/webkitdomdefines.h] Error 1
make: *** [DerivedSources/webkitdom/WebKitDOMEventTargetPrivate.h] Error 1
cp: cannot create regular file `DerivedSources/webkitdom/WebKitDOMEventTarget.h': No such file or directory
make: *** [DerivedSources/webkitdom/WebKitDOMEventTarget.h] Error 1
cp: cannot create regular file `DerivedSources/webkitdom/WebKitDOMObject.h': No such file or directory
make: *** [DerivedSources/webkitdom/WebKitDOMObject.h] Error 1
cp: cannot create regular file `DerivedSources/webkitdom/WebKitDOMCustom.h': No such file or directory
make: *** [DerivedSources/webkitdom/WebKitDOMCustom.h] Error 1
$ make V=1 -j1 DerivedSources/InjectedBundle/JSAccessibilityController.cpp
/usr/bin/perl \
        -I ./Source/WebCore/bindings/scripts \
        -I ./Tools/WebKitTestRunner/InjectedBundle/Bindings \
        ./Source/WebCore/bindings/scripts/generate-bindings.pl \
        --defines \"\" --generator TestRunner \
        --include ./Tools/InjectedBundle/Bindings \
        --outputDir ./DerivedSources/InjectedBundle \
        Tools/WebKitTestRunner/InjectedBundle/Bindings/AccessibilityController.idl
Failed to open JSAccessibilityController.h for writing: No such file or directory at Tools/WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm line 53.
make: *** [DerivedSources/InjectedBundle/JSAccessibilityController.cpp] Error 2
$ 

If we create the directory before trying to put the file file there, it works:
$ git diff Tools/WebKitTestRunner/GNUmakefile.am
diff --git a/Tools/WebKitTestRunner/GNUmakefile.am b/Tools/WebKitTestRunner/GNUmakefile.am
index 1812569..c97743f 100644
--- a/Tools/WebKitTestRunner/GNUmakefile.am
+++ b/Tools/WebKitTestRunner/GNUmakefile.am
@@ -156,6 +156,7 @@ code_generation_dependencies = \
        Source/WebCore/bindings/scripts/generate-bindings.pl

 DerivedSources/InjectedBundle/JS%.cpp: Tools/WebKitTestRunner/InjectedBundle/Bindings/%.idl $(code_generation_dependencies)
+       mkdir -p $(@D)
        $(AM_V_GEN)$(PERL) \
                -I $(srcdir)/Source/WebCore/bindings/scripts \
                -I $(srcdir)/Tools/WebKitTestRunner/InjectedBundle/Bindings \
$ make --debug V=1 -j1 DerivedSources/InjectedBundle/JSAccessibilityController.cpp
GNU Make 3.82
Built for x86_64-unknown-linux-gnu
Copyright (C) 2010  Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Reading makefiles...
Updating goal targets....
 File `DerivedSources/InjectedBundle/JSAccessibilityController.cpp' does not exist.
Must remake target `DerivedSources/InjectedBundle/JSAccessibilityController.cpp'.
Invoking recipe from GNUmakefile:89360 to update target `DerivedSources/InjectedBundle/JSAccessibilityController.cpp'.
mkdir -p DerivedSources/InjectedBundle
/usr/bin/perl \
        -I ./Source/WebCore/bindings/scripts \
        -I ./Tools/WebKitTestRunner/InjectedBundle/Bindings \
        ./Source/WebCore/bindings/scripts/generate-bindings.pl \
        --defines \"\" --generator TestRunner \
        --include ./Tools/InjectedBundle/Bindings \
        --outputDir ./DerivedSources/InjectedBundle \
        Tools/WebKitTestRunner/InjectedBundle/Bindings/AccessibilityController.idl
Successfully remade target file `DerivedSources/InjectedBundle/JSAccessibilityController.cpp'.


I chased down every error I got and subsequently put mkdirs in the Makefile.ams. Now I don't get any error anymore, but if the order of the made targets changes for whatever reason, it may break again. Then, more mkdirs need to be added.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list