diff options
author | Michael Stahl <mstahl@redhat.com> | 2012-05-24 14:25:05 +0200 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2012-05-24 18:01:07 +0200 |
commit | e1759e1ce14058a2c132a3ed574882917d550a6d (patch) | |
tree | b26931de905f2023d4fbd3951c71b4f661051fbe /oox/CustomTarget_generated.mk | |
parent | oox: this rule needs a command (diff) | |
download | core-e1759e1ce14058a2c132a3ed574882917d550a6d.tar.gz core-e1759e1ce14058a2c132a3ed574882917d550a6d.zip |
oox: move generated stuff to custom target
Diffstat (limited to 'oox/CustomTarget_generated.mk')
-rw-r--r-- | oox/CustomTarget_generated.mk | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/oox/CustomTarget_generated.mk b/oox/CustomTarget_generated.mk new file mode 100644 index 000000000000..55d4ca1474a6 --- /dev/null +++ b/oox/CustomTarget_generated.mk @@ -0,0 +1,59 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# Copyright 2012 LibreOffice contributors. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_CustomTarget_CustomTarget,oox/generated)) + +$(call gb_GenCxxObject_get_source,oox/source/export/vmlexport-shape-types) : \ + $(SRCDIR)/oox/source/export/preset-definitions-to-shape-types.pl \ + $(SRCDIR)/oox/source/export/presetShapeDefinitions.xml \ + $(SRCDIR)/oox/source/export/presetTextWarpDefinitions.xml + mkdir -p $(dir $@) + perl $^ > $@.in_progress 2> $@.log && mv $@.in_progress $@ + +oox_SRC := $(SRCDIR)/oox/source/token +oox_MISC := $(call gb_CustomTarget_get_workdir,oox/generated)/misc +oox_INC := $(call gb_CustomTarget_get_workdir,oox/generated)/inc +oox_GENHEADERPATH := $(oox_INC)/oox/token + +$(oox_INC)/tokenhash.inc : $(oox_MISC)/tokenhash.gperf + $(GPERF) --compare-strncmp $< | sed -e 's/(char\*)0/(char\*)0, 0/g' | grep -v '^#line' > $@ + +oox_GenTarget_get_target = $(oox_MISC)/$(1) + +define oox_GenTarget +$(oox_GENHEADERPATH)/$(1).hxx $(oox_MISC)/$(2)ids.inc $(oox_INC)/$(2)names.inc \ + $(if $(3),$(oox_MISC)/$(3)) : $(call oox_GenTarget_get_target,$(1)) + @touch $$@ + +$(call oox_GenTarget_get_target,$(1)) : $(oox_SRC)/$(1).pl $(oox_SRC)/$(1).txt \ + $(oox_SRC)/$(1).hxx.head $(oox_SRC)/$(1).hxx.tail + mkdir -p $(oox_MISC) $(oox_INC) $(oox_GENHEADERPATH) + perl $(oox_SRC)/$(1).pl $(oox_SRC)/$(1).txt $(oox_MISC)/$(2)ids.inc \ + $(oox_INC)/$(2)names.inc $(if $(3),$(oox_MISC)/$(3)) \ + && cat $(oox_SRC)/$(1).hxx.head $(oox_MISC)/$(2)ids.inc \ + $(oox_SRC)/$(1).hxx.tail > $(oox_GENHEADERPATH)/$(1).hxx \ + && touch $$@ +endef + +$(eval $(call oox_GenTarget,namespaces,namespace,namespaces.txt)) +$(eval $(call oox_GenTarget,properties,property,)) +$(eval $(call oox_GenTarget,tokens,token,tokenhash.gperf)) + +$(call gb_CustomTarget_get_target,oox/generated) : \ + $(call gb_GenCxxObject_get_source,oox/source/export/vmlexport-shape-types) \ + $(oox_INC)/tokenhash.inc \ + $(oox_INC)/tokennames.inc \ + $(oox_INC)/namespacenames.inc \ + $(oox_INC)/propertynames.inc \ + $(oox_GENHEADERPATH)/tokens.hxx \ + $(oox_GENHEADERPATH)/namespaces.hxx \ + $(oox_GENHEADERPATH)/properties.hxx \ + $(oox_MISC)/namespaces.txt \ + +# vim: set noet sw=4 ts=4: |