diff options
author | Vincent Sanders <vince@netsurf-browser.org> | 2011-01-19 23:12:37 +0000 |
---|---|---|
committer | Vincent Sanders <vince@netsurf-browser.org> | 2011-01-19 23:12:37 +0000 |
commit | 6a50bef84ae6a0a67e03ac1356f8d85d15fe09d6 (patch) | |
tree | 01f78f04b22517899f603787f6005f70b359271e /src/parse/properties/Makefile | |
parent | 63c21aca7c77b1d37cb64ad2b1fa76d6b0b92f48 (diff) | |
download | libcss-6a50bef84ae6a0a67e03ac1356f8d85d15fe09d6.tar.gz libcss-6a50bef84ae6a0a67e03ac1356f8d85d15fe09d6.tar.bz2 |
Merge parser autogeneration and string handling refactor branch r=jmb,kinnison,vince
svn path=/trunk/libcss/; revision=11408
Diffstat (limited to 'src/parse/properties/Makefile')
-rw-r--r-- | src/parse/properties/Makefile | 176 |
1 files changed, 62 insertions, 114 deletions
diff --git a/src/parse/properties/Makefile b/src/parse/properties/Makefile index 9a76d48..43a2cf1 100644 --- a/src/parse/properties/Makefile +++ b/src/parse/properties/Makefile @@ -1,117 +1,65 @@ # Sources -DIR_SOURCES := utils.c properties.c \ - azimuth.c \ - background_attachment.c \ - background.c \ - background_color.c \ - background_image.c \ - background_position.c \ - background_repeat.c \ - border_bottom.c \ - border_bottom_color.c \ - border_bottom_style.c \ - border_bottom_width.c \ - border.c \ - border_collapse.c \ - border_color.c \ - border_left.c \ - border_left_color.c \ - border_left_style.c \ - border_left_width.c \ - border_right.c \ - border_right_color.c \ - border_right_style.c \ - border_right_width.c \ - border_spacing.c \ - border_style.c \ - border_top.c \ - border_top_color.c \ - border_top_style.c \ - border_top_width.c \ - border_width.c \ - bottom.c \ - caption_side.c \ - clear.c \ - clip.c \ - color.c \ - content.c \ - conter_reset.c \ - counter_increment.c \ - cue.c \ - cursor.c \ - direction.c \ - display.c \ - elevation.c \ - empty_cells.c \ - float.c \ - font.c \ - font_family.c \ - font_size.c \ - font_style.c \ - font_variant.c \ - font_weight.c \ - height.c \ - left.c \ - letter_spacing.c \ - line_height.c \ - list_style.c \ - list_style_image.c \ - list_style_position.c \ - list_style_type.c \ - margin_bottom.c \ - margin.c \ - margin_left.c \ - margin_right.c \ - margin_top.c \ - max_height.c \ - max_width.c \ - min_height.c \ - min_width.c \ - orphans.c \ - outline.c \ - outline_color.c \ - outline_style.c \ - outline_width.c \ - overflow.c \ - padding_bottom.c \ - padding.c \ - padding_left.c \ - padding_right.c \ - padding_top.c \ - page_break_after.c \ - page_break_before.c \ - page_break_inside.c \ - pause_after.c \ - pause_before.c \ - pause.c \ - pitch.c \ - pitch_range.c \ - play_during.c \ - position.c \ - quotes.c \ - richness.c \ - right.c \ - speak.c \ - speak_header.c \ - speak_numeral.c \ - speak_punctuation.c \ - speech_rate.c \ - stress.c \ - table_layout.c \ - text_align.c \ - text_decoration.c \ - text_indent.c \ - text_transform.c \ - top.c \ - unicode_bidi.c \ - vertical_align.c \ - visibility.c \ - voice_family.c \ - volume.c \ - white_space.c \ - widows.c \ - width.c \ - word_spacing.c \ - z_index.c +# background.c +# border.c +# border_color.c +# border_style.c +# border_width.c +# content.c +# cue.c +# cursor.c +# font.c +# font_family.c +# list_style.c +# margin.c +# outline.c +# padding.c +# pause.c +# play_during.c +# quotes.c +# text_decoration.c +# voice_family.c + +AUTOGEN_PARSERS=$(shell perl -pe'$$_="" unless /^([^\#][^:]+):/;$$_=$$1 . " "' $(DIR)properties.gen) + +# Dodgy use of define/eval to bypass DIR changing +define build_gen_parser + +$(BUILDDIR)/gen_parser: $(DIR)css_property_parser_gen.c + $$(VQ)$$(ECHO) $$(ECHOFLAGS) " PREPARE: $$@" + $$(Q)$$(HOST_CC) -o $$@ $$^ + +endef + +$(eval $(build_gen_parser)) + +define gen_prop_parser + +$(DIR)autogenerated_$1.c: $(DIR)properties.gen $(BUILDDIR)/gen_parser + $$(VQ)$$(ECHO) $$(ECHOFLAGS) "GENERATE: $$@" + $$(Q)$$(BUILDDIR)/gen_parser -o $$@ '$(shell grep "^$1:" $(DIR)properties.gen)' + +AUTOGEN_SOURCES := $$(AUTOGEN_SOURCES) autogenerated_$1.c + +endef + +AUTOGEN_SOURCES := + +$(eval $(foreach PROP,$(AUTOGEN_PARSERS),$(call gen_prop_parser,$(PROP)))) + + + +DIR_SOURCES := azimuth.c text_decoration.c background.c utils.c \ + background_position.c border_spacing.c font.c outline.c \ + voice_family.c border_style.c cue.c \ + font_family.c list_style.c padding.c cursor.c \ + list_style_type.c pause.c border.c border_width.c margin.c \ + play_during.c clip.c properties.c border_color.c content.c \ + elevation.c font_weight.c quotes.c utils.c + +DIR_SOURCES := $(DIR_SOURCES) $(AUTOGEN_SOURCES) + +PRE_TARGETS := $(foreach AP,$(AUTOGEN_PARSERS),src/parse/properties/autogenerated_$(AP).c) + +DISTCLEAN_ITEMS := $(foreach AP,$(AUTOGEN_PARSERS),src/parse/properties/autogenerated_$(AP).c) include build/makefiles/Makefile.subdir |