#all:html cmd header #all:init allcmd allheader allhtml vconf-internal-keys.pc #all:init allcmd allheader allhtml allwrapper #all:init allcmd allhtml allheader allwrapper allwrapper_impl vconf-internal-keys.h endproc #all:init allcmd postproc allhtml allheader vconf-internal-keys.h endproc all:init allcmd allhtml allheader vconf-internal-keys.h endproc allcmd: $(shell find . -name "*.xml" | sort | sed 's/xml/sh/') #allcmd2: $(shell find . -name "*.xml" | sed 's/xml/sh2/') allheader: $(shell find . -name "*.xml" | sort | sed 's/xml/h/') allhtml: $(shell find . -name "*.xml" | sort | sed 's/xml/html/') #allwrapper: $(shell find . -name "*.xml" | sed 's/.xml/_wrapper.h/') #allwrapper_impl: $(shell find . -name "*.xml" | sed 's/.xml/_wrapper.c/') MODEL=$(model) XMLS=$(wildcard data/*.xml) check: echo $(XMLS) $(foreach var, $(XMLS), xmllint --noout --schema check.xsd $(var) || exit;) ifneq ($(profile), ) xsltopt = --stringparam profile $(profile) else xsltopt = --stringparam profile '' endif ifneq ($(model), ) xsltopt += --stringparam target $(MODEL) else xsltopt += --stringparam target '' endif init: @mkdir -p report @mkdir -p scripts @mkdir -p include @find scripts -name "*.sh" -exec rm {} \; @find data -name "*.sh" -exec rm {} \; # if [ -a ./scripts/all.sh ]; \ # then \ # rm ./scripts/all.sh; \ # fi; cp all.sh.in ./scripts/all.sh %.html:%.xml xsltproc $(xsltopt) test_report.xsl $< > $@ mv $@ ./report %.sh:%.xml xsltproc $(xsltopt) create_cmd.xsl $< | sed '/^$$/d' > $@ cat $@ >> ./scripts/all.sh rm $@ xsltproc $(xsltopt) create_init_script.xsl $< | sed '/^$$/d' > $@ if [ -s $@ ]; then mv $@ ./scripts; fi #%.sh2:%.xml # xsltproc $(xsltopt) create_init_script.xsl $< | sed '/^$$/d' > $@ # if [ -s $@ ]; then mv $@ ./scripts; fi %.h:%.xml xsltproc $(xsltopt) create_header.xsl $< | sed '/^$$/d' > $@ mv $@ ./include #%_wrapper.h:%.xml # xsltproc $(xsltopt) create_wrapper.xsl $< | sed '/^$$/d' > $@ # xsltproc $(xsltopt) create_wrapper.xsl $< | sed '/^$$/d' > $@ # mv $@ ./include #%_wrapper.c:%.xml # xsltproc $(xsltopt) create_wrapper.xsl $< | sed '/^$$/d' | indent > $@ # xsltproc $(xsltopt) create_wrapper_impl.xsl $< | sed '/^$$/d' > $@ # sed -i '21 i #include \' $@ # sed -i '22 i #include "vconf-internal-keys.h"' $@ # sed -i '23i\\' $@ # mv $@ ./wrapper vconf-internal-keys.h: echo "#ifndef __VCONF_INTERNAL_KEYS_H__" > include/vconf-internal-keys.h echo "#define __VCONF_INTERNAL_KEYS_H__" >> include/vconf-internal-keys.h find ./include -name "*.h" -not -name "vconf-internal-keys.h" -printf "#include \"%f\" \n" | sort >> include/vconf-internal-keys.h echo "#endif /* __VCONF_INTERNAL_KEYS_H__ */" >> include/vconf-internal-keys.h clean: #@rm -rf report scripts include *.pc @rm -rf report scripts include @find . -name "*.html" -print0 | xargs -0 -r rm @rm data/vconf-*.sh @find . -name "*.h" -print0 | xargs -0 -r rm endproc: ./remove_whitespace.sh #vconf-internal-keys.pc:vconf-internal-keys.pc.in # sed -e 's/@PREFIX@/hello/' -e 's/@LIBDIR@/hello/' -e 's/@EXEC_PREFIX@/hello/' -e 's/@INCLUDEDIR@/hello/' -e 's/@VERSION@/hello/' vconf-internal-keys.pc.in > vconf-internal-keys.pc install: # cp cmd.sh /opt/usr # cp ${INSTALL_ROOT}/scripts/*.sh ${INSTALL_ROOT}/opt/usr