Bug 135620

Summary: more cmake progress
Product: WebKit Reporter: Alex Christensen <achristensen>
Component: WebKit Misc.Assignee: Alex Christensen <achristensen>
Status: RESOLVED FIXED    
Severity: Normal CC: dfarler, gyuyoung.kim, laszlo.gombos, mrobinson, mrowe
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 135636    
Attachments:
Description Flags
Patch
none
Patch laszlo.gombos: review+

Description Alex Christensen 2014-08-05 14:21:39 PDT
JSC works on Windows and Mac with this, and I'm starting to get things working in WebCore, but that's still WIP.
Comment 1 David Farler 2014-08-05 14:24:17 PDT
Neat. What are your ideas around `-G Xcode`?
Comment 2 Alex Christensen 2014-08-05 14:29:02 PDT
Created attachment 236046 [details]
Patch
Comment 3 Alex Christensen 2014-08-05 14:30:45 PDT
(In reply to comment #1)
> Neat. What are your ideas around `-G Xcode`?
I'm pretending Xcode doesn't exist to get a working proof of concept as fast as possible.  I can't read the Xcode files anyways.  Using Xcode with CMake is my end goal, though.
Comment 4 Alex Christensen 2014-08-05 14:56:34 PDT
Created attachment 236049 [details]
Patch
Comment 5 Laszlo Gombos 2014-08-05 15:25:48 PDT
Comment on attachment 236049 [details]
Patch

lgtm.
Comment 6 Alex Christensen 2014-08-05 15:28:57 PDT
http://trac.webkit.org/changeset/172093
Comment 7 Gyuyoung Kim 2014-08-05 17:53:45 PDT
Comment on attachment 236049 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=236049&action=review

> Source/WebCore/PlatformMac.cmake:21
> +    "/usr/include/libxslt"

If user installs it to other place, can't this be problem ? EFL and GTK port use macro for this inclusion.

In OptionEfl.cmake,
 find_package(LibXml2 2.8.0 REQUIRED)
 find_package(LibXslt 1.1.7 REQUIRED)

Source/WebCore/PlatformEfl.cmake
 ${LIBXSLT_INCLUDE_DIR}
 ${LIBXML2_INCLUDE_DIR}
Comment 8 Mark Rowe (bdash) 2014-08-05 18:07:36 PDT
(In reply to comment #7)
> (From update of attachment 236049 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=236049&action=review
> 
> > Source/WebCore/PlatformMac.cmake:21
> > +    "/usr/include/libxslt"
> 
> If user installs it to other place, can't this be problem ? EFL and GTK port use macro for this inclusion.
> 
> In OptionEfl.cmake,
>  find_package(LibXml2 2.8.0 REQUIRED)
>  find_package(LibXslt 1.1.7 REQUIRED)
> 
> Source/WebCore/PlatformEfl.cmake
>  ${LIBXSLT_INCLUDE_DIR}
>  ${LIBXML2_INCLUDE_DIR}

The Mac port only ever builds against frameworks in the OS X SDKs. Packages that the user may have installed aren't interesting.
Comment 9 Gyuyoung Kim 2014-08-05 18:19:39 PDT
(In reply to comment #8)
> (In reply to comment #7)
> > (From update of attachment 236049 [details] [details])
> > View in context: https://bugs.webkit.org/attachment.cgi?id=236049&action=review
> > 
> > > Source/WebCore/PlatformMac.cmake:21
> > > +    "/usr/include/libxslt"
> > 
> > If user installs it to other place, can't this be problem ? EFL and GTK port use macro for this inclusion.
> > 
> > In OptionEfl.cmake,
> >  find_package(LibXml2 2.8.0 REQUIRED)
> >  find_package(LibXslt 1.1.7 REQUIRED)
> > 
> > Source/WebCore/PlatformEfl.cmake
> >  ${LIBXSLT_INCLUDE_DIR}
> >  ${LIBXML2_INCLUDE_DIR}
> 
> The Mac port only ever builds against frameworks in the OS X SDKs. Packages that the user may have installed aren't interesting.

I see. However, I would like to use cmake macro for including third party library.
Comment 10 Mark Rowe (bdash) 2014-08-05 18:37:51 PDT
> I see. However, I would like to use cmake macro for including third party library.

I'm not quite what you're suggesting or why you're suggesting it. Can you please elaborate?
Comment 11 Gyuyoung Kim 2014-08-05 18:54:31 PDT
(In reply to comment #10)
> > I see. However, I would like to use cmake macro for including third party library.
> 
> I'm not quite what you're suggesting or why you're suggesting it. Can you please elaborate?

EFL and GTK ports have tried to avoid hardcoding in CMake. That's why I suggested to use macro. However, as you said, hardcoded inclusion looks fine for mac. If you guys don't want to use it, I do not say it anymore. I hope this hardcoded is only used for mac port only.
Comment 12 David Farler 2014-08-05 19:03:55 PDT
http://vtk.org/Wiki/CMake:How_To_Find_Libraries