| Summary: | [GTK] Install all unstable webkitdom headers | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Michael Catanzaro <mcatanzaro> | ||||||
| Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | bunhere, cgarcia, commit-queue, gyuyoung.kim, rakuco, sergio | ||||||
| Priority: | P2 | ||||||||
| Version: | 528+ (Nightly build) | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Attachments: |
|
||||||||
|
Description
Michael Catanzaro
2014-08-02 11:54:37 PDT
Created attachment 235937 [details]
Patch
Comment on attachment 235937 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=235937&action=review > Source/WebCore/PlatformGTK.cmake:751 > + if (EXISTS "${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}/WebKitDOM${classname}Unstable.h") This still runs at configuration time, so won't this fail before the files are generated? Oh, I see the problem, I wonder why it works for me though. I think checking those files exist before adding them to the list was a bad idea in any case. Looking a the CMake docs, it seems we have other options, for example:
a) Assume all stable classes have an Unstable.h header and make them optional.
OPTIONAL: Specify that it is not an error if the file to be installed does not exist.
b) Use a DIRECTORY install with a FILES_MATCHING option to install only the files matching the pattern *Unstable.h.
The problem I see with option b) is that we need the list of headers to generate the introspection files, so I guess we have to go with option a)
(In reply to comment #3) > Oh, I see the problem, I wonder why it works for me though. I think checking those files exist before adding them to the list was a bad idea in any case. Looking a the CMake docs, it seems we have other options, for example: > > a) Assume all stable classes have an Unstable.h header and make them optional. > OPTIONAL: Specify that it is not an error if the file to be installed does not exist. > > b) Use a DIRECTORY install with a FILES_MATCHING option to install only the files matching the pattern *Unstable.h. > > The problem I see with option b) is that we need the list of headers to generate the introspection files, so I guess we have to go with option a) Actually, I think we should probably not expose unstable symbols to the gir file, since there's not way to hide them by default as we do in C (or at least I don't know how to do it). The symbols are marked as unstable in the docs, but I think bindings don't use that info at all. So for now, I would only expose stable symbols to bindings. Created attachment 235944 [details]
Another approach
(In reply to comment #2) > This still runs at configuration time, so won't this fail before the files are generated? Yes, my patch in bogus. I failed to removed my DerivedSources directory (maybe Carlos's problem too?) so any change at all to CMakeLists would have "fixed" this issue for me. Carlos's patch actually works; I think that's the best approach. Committed r171991: <http://trac.webkit.org/changeset/171991> |