2 ## Copyright 2009, The Android Open Source Project
4 ## Redistribution and use in source and binary forms, with or without
5 ## modification, are permitted provided that the following conditions
7 ## * Redistributions of source code must retain the above copyright
8 ## notice, this list of conditions and the following disclaimer.
9 ## * Redistributions in binary form must reproduce the above copyright
10 ## notice, this list of conditions and the following disclaimer in the
11 ## documentation and/or other materials provided with the distribution.
13 ## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY
14 ## EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16 ## PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
17 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18 ## EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19 ## PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20 ## PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21 ## OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 ## (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 ## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 # CSS property names and value keywords
28 GEN
:= $(intermediates
)/css
/CSSPropertyNames.h
29 $(GEN
): SCRIPT
:= $(LOCAL_PATH
)/css
/makeprop.pl
30 $(GEN
): $(intermediates
)/%.h
: $(LOCAL_PATH
)/%.in
$(LOCAL_PATH
)/css
/SVGCSSPropertyNames.in
31 @echo
"Generating CSSPropertyNames.h <= CSSPropertyNames.in"
33 @cat
$< > $(dir $@
)/$(notdir $<)
34 ifeq ($(ENABLE_SVG
),true
)
35 @cat
$^
> $(@
:%.h
=%.in
)
37 @cp
-f
$(SCRIPT
) $(dir $@
)
38 @cd
$(dir $@
) ; perl .
/$(notdir $(SCRIPT
))
39 LOCAL_GENERATED_SOURCES
+= $(GEN
)
41 GEN
:= $(intermediates
)/css
/CSSValueKeywords.h
42 $(GEN
): SCRIPT
:= $(LOCAL_PATH
)/css
/makevalues.pl
43 $(GEN
): $(intermediates
)/%.h
: $(LOCAL_PATH
)/%.in
$(LOCAL_PATH
)/css
/SVGCSSValueKeywords.in
44 @echo
"Generating CSSValueKeywords.h <= CSSValueKeywords.in"
46 @cp
-f
$(SCRIPT
) $(dir $@
)
47 ifeq ($(ENABLE_SVG
),true
)
48 @perl
-ne
'print lc' $^
> $(@
:%.h
=%.in
)
50 @perl
-ne
'print lc' $< > $(@
:%.h
=%.in
)
52 @cd
$(dir $@
); perl makevalues.pl
53 LOCAL_GENERATED_SOURCES
+= $(GEN
)
58 GEN
:= $(intermediates
)/html
/DocTypeStrings.
cpp
59 $(GEN
): PRIVATE_CUSTOM_TOOL
= gperf
-CEot
-L ANSI-C
-k
"*" -N findDoctypeEntry
-F
,PubIDInfo
::eAlmostStandards
,PubIDInfo
::eAlmostStandards
$< > $@
60 $(GEN
): $(LOCAL_PATH
)/html
/DocTypeStrings.gperf
61 $(transform-generated-source
)
62 # we have to do this dep by hand:
63 $(intermediates
)/html
/HTMLDocument.o
: $(GEN
)
68 GEN
:= $(intermediates
)/html
/HTMLEntityNames.c
69 $(GEN
): PRIVATE_CUSTOM_TOOL
= gperf
-a
-L ANSI-C
-C
-G
-c
-o
-t
-k
'*' -N findEntity
-D
-s
2 $< > $@
70 $(GEN
): $(LOCAL_PATH
)/html
/HTMLEntityNames.gperf
71 $(transform-generated-source
)
72 LOCAL_GENERATED_SOURCES
+= $(GEN
)
77 GEN
:= $(intermediates
)/platform
/ColorData.c
78 $(GEN
): PRIVATE_CUSTOM_TOOL
= gperf
-CDEot
-L ANSI-C
-k
'*' -N findColor
-D
-s
2 $< > $@
79 $(GEN
): $(LOCAL_PATH
)/platform
/ColorData.gperf
80 $(transform-generated-source
)
81 LOCAL_GENERATED_SOURCES
+= $(GEN
)
86 GEN
:= $(intermediates
)/css
/tokenizer.
cpp
87 $(GEN
): PRIVATE_CUSTOM_TOOL
= $(OLD_FLEX
) -t
$< | perl
$(dir $<)/maketokenizer
> $@
88 $(GEN
): $(LOCAL_PATH
)/css
/tokenizer.flex
$(LOCAL_PATH
)/css
/maketokenizer
89 $(transform-generated-source
)
90 # we have to do this dep by hand:
91 $(intermediates
)/css
/CSSParser.o
: $(GEN
)
95 GEN
:= $(intermediates
)/CSSGrammar.
cpp
96 $(GEN
) : PRIVATE_YACCFLAGS
:= -p cssyy
97 $(GEN
): $(LOCAL_PATH
)/css
/CSSGrammar.y
98 $(call local-transform-y-to-cpp
,.
cpp)
99 $(GEN
): $(LOCAL_BISON
)
101 LOCAL_GENERATED_SOURCES
+= $(GEN
)
103 # user agent style sheets
105 style_sheets
:= $(LOCAL_PATH
)/css
/html.css
$(LOCAL_PATH
)/css
/quirks.css
$(LOCAL_PATH
)/css
/view-source.css
$(LOCAL_PATH
)/css
/mediaControls.css
106 ifeq ($(ENABLE_SVG
), true
)
107 style_sheets
:= $(style_sheets
) $(LOCAL_PATH
)/css
/svg.css
109 GEN
:= $(intermediates
)/css
/UserAgentStyleSheets.h
110 make_css_file_arrays
:= $(LOCAL_PATH
)/css
/make-css-file-arrays.pl
111 $(GEN
): PRIVATE_CUSTOM_TOOL
= $< $@
$(basename $@
).
cpp $(filter %.css
,$^
)
112 $(GEN
): $(make_css_file_arrays
) $(style_sheets
)
113 $(transform-generated-source
)
114 LOCAL_GENERATED_SOURCES
+= $(GEN
) $(GEN
:%.h
=%.
cpp)
116 # character set name table
119 $(LOCAL_PATH
)/platform
/make-charset-table.pl \
120 $(LOCAL_PATH
)/platform
/character-sets.txt \
121 $(LOCAL_PATH
)/platform
/android
/android-encodings.txt
122 #GEN := $(intermediates)/platform/CharsetData.cpp
123 #$(GEN): PRIVATE_CUSTOM_TOOL = $^ "android::Encoding::ENCODING_" > $@
124 #$(GEN): $(gen_inputs)
125 # $(transform-generated-source)
126 #LOCAL_GENERATED_SOURCES += $(GEN)
128 # the above rule will make this build too
129 $(intermediates
)/css
/UserAgentStyleSheets.
cpp : $(GEN
)
131 # XML attribute names
133 GEN
:= $(intermediates
)/XMLNames.
cpp
134 $(GEN
): PRIVATE_PATH
:= $(LOCAL_PATH
)
135 $(GEN
): PRIVATE_CUSTOM_TOOL
= perl
-I
$(PRIVATE_PATH
)/bindings
/scripts
$< --attrs
$(xml_attrs
) --output
$(dir $@
)
136 $(GEN
): xml_attrs
:= $(LOCAL_PATH
)/xml
/xmlattrs.in
137 $(GEN
): $(LOCAL_PATH
)/dom
/make_names.pl
$(xml_attrs
)
138 $(transform-generated-source
)
139 LOCAL_GENERATED_SOURCES
+= $(GEN
)
141 # XLink attribute names
143 ifeq ($(ENABLE_SVG
), true
)
144 GEN
:= $(intermediates
)/XLinkNames.
cpp
145 $(GEN
): PRIVATE_PATH
:= $(LOCAL_PATH
)
146 $(GEN
): PRIVATE_CUSTOM_TOOL
= perl
-I
$(PRIVATE_PATH
)/bindings
/scripts
$< --attrs
$(xlink_attrs
) --output
$(dir $@
)
147 $(GEN
): xlink_attrs
:= $(LOCAL_PATH
)/svg
/xlinkattrs.in
148 $(GEN
): $(LOCAL_PATH
)/dom
/make_names.pl
$(xlink_attrs
)
149 $(transform-generated-source
)
150 LOCAL_GENERATED_SOURCES
+= $(GEN
)