WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
137389
[GTK] Do not generate a symlink in derived sources for every header in WebCore/bindings/gobject
https://bugs.webkit.org/show_bug.cgi?id=137389
Summary
[GTK] Do not generate a symlink in derived sources for every header in WebCor...
Carlos Garcia Campos
Reported
2014-10-03 04:34:52 PDT
We only need a symlink for static sources that are included in public generated headers, because they are added with as <webkitdom/WebKitDOMFoo.h> so they need to be inside a webkitdom directory. Also use proper targets and commands to create the symlinks only when needed instead of for every build.
Attachments
Patch
(4.13 KB, patch)
2014-10-03 04:36 PDT
,
Carlos Garcia Campos
no flags
Details
Formatted Diff
Diff
Simplified version using a foreach loop
(3.41 KB, patch)
2014-10-04 01:34 PDT
,
Carlos Garcia Campos
mrobinson
: review+
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Carlos Garcia Campos
Comment 1
2014-10-03 04:36:58 PDT
Created
attachment 239199
[details]
Patch This removes one of the targets that are always built, see
bug #130075
Martin Robinson
Comment 2
2014-10-03 09:01:25 PDT
Comment on
attachment 239199
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=239199&action=review
> Source/WebCore/PlatformGTK.cmake:770 > +# Some of the static headers are included by generated public headers with include <webkitdom/WebKitDOMFoo.h>. > +# We need those headers in the derived sources to be in webkitdom directory. > +add_custom_command( > + OUTPUT ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMCustom.h > + DEPENDS ${WEBCORE_DIR}/bindings/gobject/WebKitDOMCustom.h > + COMMAND ln -n -s -f ${WEBCORE_DIR}/bindings/gobject/WebKitDOMCustom.h ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR} > +) > +add_custom_command( > + OUTPUT ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMEventTarget.h > + DEPENDS ${WEBCORE_DIR}/bindings/gobject/WebKitDOMEventTarget.h > + COMMAND ln -n -s -f ${WEBCORE_DIR}/bindings/gobject/WebKitDOMEventTarget.h ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR} > +) > +add_custom_command( > + OUTPUT ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMNodeFilter.h > + DEPENDS ${WEBCORE_DIR}/bindings/gobject/WebKitDOMNodeFilter.h > + COMMAND ln -n -s -f ${WEBCORE_DIR}/bindings/gobject/WebKitDOMNodeFilter.h ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR} > +) > +add_custom_command( > + OUTPUT ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMObject.h > + DEPENDS ${WEBCORE_DIR}/bindings/gobject/WebKitDOMObject.h > + COMMAND ln -n -s -f ${WEBCORE_DIR}/bindings/gobject/WebKitDOMObject.h ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR} > +) > +add_custom_command( > + OUTPUT ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMXPathNSResolver.h > + DEPENDS ${WEBCORE_DIR}/bindings/gobject/WebKitDOMXPathNSResolver.h > + COMMAND ln -n -s -f ${WEBCORE_DIR}/bindings/gobject/WebKitDOMXPathNSResolver.h ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR} > +) > +add_custom_target(fake-generated-webkitdom-headers > + DEPENDS ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMCustom.h > + ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMEventTarget.h > + ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMNodeFilter.h > + ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMObject.h > + ${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOMXPathNSResolver.h
I think there are a couple ways to make this a little cleaner. One is to use a macro and a list of file names (you could even omit the directories). The other is to use a single add_custom_command with multiple outputs and dependencies.
Carlos Garcia Campos
Comment 3
2014-10-03 09:20:23 PDT
I guess I prefer the macro solution, not sure I will find the time to learn how to do that in cmake, though.
Martin Robinson
Comment 4
2014-10-03 10:56:55 PDT
Let me see if I can find a few moments to propose something this weekend.
Carlos Garcia Campos
Comment 5
2014-10-04 01:34:36 PDT
Created
attachment 239273
[details]
Simplified version using a foreach loop Hope this is cleaner
Carlos Garcia Campos
Comment 6
2014-10-05 00:41:24 PDT
Committed
r174326
: <
http://trac.webkit.org/changeset/174326
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug