Remove the Windows-specific rules from WebKit2's DerivedSources.make, Windows is...
[WebKit-https.git] / Source / WebKit2 / DerivedSources.make
1 # Copyright (C) 2010, 2011, 2012, 2013 Apple Inc. All rights reserved.
2 #
3 # Redistribution and use in source and binary forms, with or without
4 # modification, are permitted provided that the following conditions
5 # are met:
6 # 1.  Redistributions of source code must retain the above copyright
7 #     notice, this list of conditions and the following disclaimer.
8 # 2.  Redistributions in binary form must reproduce the above copyright
9 #     notice, this list of conditions and the following disclaimer in the
10 #     documentation and/or other materials provided with the distribution.
11 #
12 # THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND
13 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
14 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
15 # DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR
16 # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
17 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
18 # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
19 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
20 # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
21 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
22
23 VPATH = \
24     $(WebKit2) \
25     $(WebKit2)/NetworkProcess \
26     $(WebKit2)/NetworkProcess/mac \
27     $(WebKit2)/PluginProcess \
28     $(WebKit2)/PluginProcess/mac \
29     $(WebKit2)/Shared/Plugins \
30     $(WebKit2)/Shared \
31     $(WebKit2)/Shared/mac \
32     $(WebKit2)/Shared/Authentication \
33     $(WebKit2)/Shared/Network/CustomProtocols \
34     $(WebKit2)/WebProcess/ApplicationCache \
35     $(WebKit2)/WebProcess/Cookies \
36     $(WebKit2)/WebProcess/FullScreen \
37     $(WebKit2)/WebProcess/Geolocation \
38     $(WebKit2)/WebProcess/IconDatabase \
39     $(WebKit2)/WebProcess/MediaCache \
40     $(WebKit2)/WebProcess/Network \
41     $(WebKit2)/WebProcess/Notifications \
42     $(WebKit2)/WebProcess/Plugins \
43     $(WebKit2)/WebProcess/ResourceCache \
44     $(WebKit2)/WebProcess/Storage \
45     $(WebKit2)/WebProcess/WebCoreSupport \
46     $(WebKit2)/WebProcess/WebPage \
47     $(WebKit2)/WebProcess \
48     $(WebKit2)/UIProcess \
49     $(WebKit2)/UIProcess/Downloads \
50     $(WebKit2)/UIProcess/Network \
51     $(WebKit2)/UIProcess/Network/CustomProtocols \
52     $(WebKit2)/UIProcess/Notifications \
53     $(WebKit2)/UIProcess/Plugins \
54     $(WebKit2)/UIProcess/Storage \
55     $(WebKit2)/UIProcess/mac \
56 #
57
58 MESSAGE_RECEIVERS = \
59     AuthenticationManager \
60     CustomProtocolManager \
61     CustomProtocolManagerProxy \
62     DrawingArea \
63     DrawingAreaProxy \
64     DownloadProxy \
65     EventDispatcher \
66     NetworkProcess \
67     NetworkProcessConnection \
68     NetworkProcessProxy \
69     NetworkResourceLoader \
70     NPObjectMessageReceiver \
71     PluginControllerProxy \
72     PluginProcess \
73     PluginProcessConnection \
74     PluginProcessConnectionManager \
75     PluginProcessProxy \
76     PluginProxy \
77     StorageManager \
78     WebApplicationCacheManager \
79     WebApplicationCacheManagerProxy \
80     WebCookieManager \
81     WebCookieManagerProxy \
82     WebConnection \
83     NetworkConnectionToWebProcess \
84     RemoteLayerTreeHost \
85     SecItemShim \
86     SecItemShimProxy \
87     StorageAreaMap \
88     WebContext \
89     WebDatabaseManager \
90     WebDatabaseManagerProxy \
91     WebFullScreenManager \
92     WebFullScreenManagerProxy \
93     WebGeolocationManager \
94     WebGeolocationManagerProxy \
95     WebIconDatabase \
96     WebIconDatabaseProxy \
97     WebInspector \
98     WebInspectorProxy \
99     WebMediaCacheManager \
100     WebMediaCacheManagerProxy \
101     WebNotificationManager \
102     WebPage \
103     WebPageGroupProxy \
104     WebPageProxy \
105     WebProcess \
106     WebProcessConnection \
107     WebProcessProxy \
108     WebResourceCacheManager \
109     WebResourceCacheManagerProxy \
110     WebResourceLoader \
111 #
112
113 SCRIPTS = \
114     $(WebKit2)/Scripts/generate-message-receiver.py \
115     $(WebKit2)/Scripts/generate-messages-header.py \
116     $(WebKit2)/Scripts/webkit2/__init__.py \
117     $(WebKit2)/Scripts/webkit2/messages.py \
118     $(WebKit2)/Scripts/webkit2/model.py \
119     $(WebKit2)/Scripts/webkit2/parser.py \
120 #
121
122 .PHONY : all
123
124 all : \
125     $(MESSAGE_RECEIVERS:%=%MessageReceiver.cpp) \
126     $(MESSAGE_RECEIVERS:%=%Messages.h) \
127 #
128
129 %MessageReceiver.cpp : %.messages.in $(SCRIPTS)
130         @echo Generating messages header for $*...
131         @python $(WebKit2)/Scripts/generate-message-receiver.py $< > $@
132
133 %Messages.h : %.messages.in $(SCRIPTS)
134         @echo Generating message receiver for $*...
135         @python $(WebKit2)/Scripts/generate-messages-header.py $< > $@
136
137
138 FRAMEWORK_FLAGS = $(shell echo $(BUILT_PRODUCTS_DIR) $(FRAMEWORK_SEARCH_PATHS) | perl -e 'print "-F " . join(" -F ", split(" ", <>));')
139 HEADER_FLAGS = $(shell echo $(BUILT_PRODUCTS_DIR) $(HEADER_SEARCH_PATHS) | perl -e 'print "-I" . join(" -I", split(" ", <>));')
140
141 # Some versions of clang incorrectly strip out // comments in c89 code.
142 # Use -traditional as a workaround, but only when needed since that causes
143 # other problems with later versions of clang.
144 ifeq ($(shell echo '//x' | $(CC) -E -P -x c -std=c89 - | grep x),)
145 TEXT_PREPROCESSOR_FLAGS=-E -P -x c -traditional -w
146 else
147 TEXT_PREPROCESSOR_FLAGS=-E -P -x c -std=c89 -w
148 endif
149
150 ifneq ($(SDKROOT),)
151         SDK_FLAGS=-isysroot $(SDKROOT)
152 endif
153
154 SANDBOX_PROFILES = \
155         com.apple.WebProcess.sb \
156         com.apple.WebKit.NetworkProcess.sb
157
158 all: $(SANDBOX_PROFILES)
159
160 %.sb : %.sb.in
161         @echo Pre-processing $* sandbox profile...
162         $(CC) $(SDK_FLAGS) $(TEXT_PREPROCESSOR_FLAGS) $(FRAMEWORK_FLAGS) $(HEADER_FLAGS) -include "wtf/Platform.h" $< > $@
163