Makefile
brancharpeges
changeset 0 1397c2bfefa2
child 1 c072d78b7ac2
equal deleted inserted replaced
-1:000000000000 0:1397c2bfefa2
       
     1 #!/usr/bin/make
       
     2 
       
     3 MAKE_RCS_VERSION="$Revision: 1841 $ $Name$"
       
     4 
       
     5 TOP=$(shell pwd)
       
     6 
       
     7 PACKAGE=arpeges
       
     8 INSTALL_DIR=install
       
     9 PROFCOND=full
       
    10 
       
    11 ifdef SHORT_VERSION
       
    12 VALID_OPTIONS=-iSHORT_VERSION
       
    13 JADEFLAGS=-iSHORT_VERSION -V $(PACKAGE)-short-version
       
    14 NAME_SUFFIX=-basic
       
    15 # FOP=fop
       
    16 else
       
    17 NAME_SUFFIX=
       
    18 endif
       
    19 
       
    20 HTML_OUTPUTDIR=$(PACKAGE)$(NAME_SUFFIX)
       
    21 XML_EXT=sgml
       
    22 SGML_CATALOG_FILES=$(shell pwd)/catalog
       
    23 
       
    24 DTD_FILES=struct.dtd
       
    25 SGML_MAIN_FILE=$(PACKAGE)$(NAME_SUFFIX).sgml
       
    26 SGML_FILES=arpeges-main.sgml
       
    27 ifdef SHORT_VERSION
       
    28 	SGML_FILES+=\
       
    29 	license_basic.sgml\
       
    30 	intro_allegee.sgml\
       
    31 	perso_basic.sgml\
       
    32 	action_basic.sgml
       
    33 else
       
    34 	SGML_FILES+=\
       
    35 		license.sgml\
       
    36 		intro.sgml\
       
    37 		principe.sgml\
       
    38 		prefbase.sgml\
       
    39 		rulename.sgml\
       
    40 		prefcopy.sgml\
       
    41 		preftodo.sgml\
       
    42 		chrono.sgml\
       
    43 		baserule.sgml\
       
    44                 advrules.sgml\
       
    45 		optrules.sgml\
       
    46 		guide.sgml\
       
    47 		racetype.sgml\
       
    48 		appharm.sgml
       
    49 endif
       
    50 
       
    51 COPYRIGHT_FILES=COPYING GFDL GFDL_fr HARMONIQUE
       
    52 SGML_FILES+=$(COPYRIGHT_FILES)\
       
    53 	info.sgml\
       
    54 	prefhist.sgml\
       
    55 	merci.sgml\
       
    56 	harmonie.sgml\
       
    57 	blessure.sgml\
       
    58 	hasard.sgml\
       
    59 	attribut.sgml\
       
    60 	leitmotv.sgml\
       
    61 	dommages.sgml\
       
    62 	competen.sgml\
       
    63 	creation.sgml\
       
    64 	creatquest.sgml\
       
    65 	actions.sgml\
       
    66 	objets.sgml\
       
    67 	advrules.sgml\
       
    68 	advacts.sgml\
       
    69 	depassement.sgml\
       
    70         taches.sgml\
       
    71 	actgroup.sgml\
       
    72 	group_adv.sgml\
       
    73 	ressources.sgml\
       
    74 	ouvrages.sgml\
       
    75 	domadv.sgml\
       
    76 	bless2.sgml\
       
    77         armesgen.sgml\
       
    78 	armes.sgml\
       
    79 	armestir.sgml\
       
    80 	projectiles.sgml\
       
    81 	combat.sgml\
       
    82 	bagarre.sgml\
       
    83 	tir.sgml\
       
    84 	tirvise.sgml\
       
    85 	balistique.sgml\
       
    86 	rafale.sgml\
       
    87 	esquive.sgml\
       
    88 	licharm.sgml\
       
    89 	licfdlen.sgml\
       
    90 	licfdlfr.sgml
       
    91 
       
    92 all: a4 letter
       
    93 
       
    94 install:
       
    95 	$(MAKE) all
       
    96 
       
    97 a4:
       
    98 	$(MAKE) PAPERCONF=a4 normal short aides
       
    99 
       
   100 letter:
       
   101 	$(MAKE) PAPERCONF=letter normal short aides
       
   102 
       
   103 validate:
       
   104 ifdef SHORT_VERSION
       
   105 	$(error "Please, undefined SHORT_VERSION before running this target")
       
   106 else
       
   107 	$(MAKE) valid
       
   108 	$(MAKE) SHORT_VERSION=1 valid
       
   109 endif
       
   110 
       
   111 normal:
       
   112 ifdef SHORT_VERSION
       
   113 	$(error "Please, undefined SHORT_VERSION before running this target")
       
   114 else
       
   115 	$(MAKE) dist
       
   116 endif
       
   117 
       
   118 short:
       
   119 	$(MAKE) SHORT_VERSION=1 dist
       
   120 
       
   121 aides: perso.ps perso.pdf perso.svg create.ps create.pdf
       
   122 	mkdir -p $(INSTALL_DIR)
       
   123 	$(foreach target,$^,cp $(target) $(INSTALL_DIR)/$(basename $(target))$(filter-out -,-$(RELEASE))$(suffix $(target));)
       
   124 
       
   125 include $(TOP)/utils/Makefile.rules
       
   126 
       
   127 SUFFIX_TARGETS=-$(PAPERCONF)-book.pdf .txt -$(PAPERCONF).pdf .html .html.tar.gz
       
   128 DIST_TARGETS=$(addprefix $(PACKAGE)$(NAME_SUFFIX),$(SUFFIX_TARGETS))
       
   129 
       
   130 dist: $(PACKAGE)$(NAME_SUFFIX)-$(PAPERCONF).fo $(DIST_TARGETS)
       
   131 	mkdir -p $(INSTALL_DIR)
       
   132 	for target in $(DIST_TARGETS) ; do			\
       
   133 		cp $$target					\
       
   134 			$(INSTALL_DIR)/`echo $$target | sed	\
       
   135 			s/$(PACKAGE)$(NAME_SUFFIX)/$(PACKAGE)$(NAME_SUFFIX)$(filter-out -,-$(RELEASE))/` ;	\
       
   136 	done
       
   137 	-rm -r $(INSTALL_DIR)/$(PACKAGE)$(NAME_SUFFIX)$(filter-out -,-$(RELEASE))
       
   138 	cp -r $(PACKAGE) $(INSTALL_DIR)/$(PACKAGE)$(NAME_SUFFIX)$(filter-out -,-$(RELEASE))
       
   139 
       
   140 .PHONY: all normal short dist validate aides install a4 letter
       
   141 
       
   142 # $(PACKAGE): ps pdf text html html_one rtf htgz zip dvi tex
       
   143 $(PACKAGE): html
       
   144 
       
   145 dvi: $(PACKAGE)$(NAME_SUFFIX)-$(PAPERCONF).dvi
       
   146 
       
   147 view: $(PACKAGE)$(NAME_SUFFIX)-$(PAPERCONF).dvi
       
   148 	xdvi $<
       
   149 
       
   150 text: $(PACKAGE)$(NAME_SUFFIX).txt
       
   151 
       
   152 print: pdf
       
   153 
       
   154 ps: $(PACKAGE)$(NAME_SUFFIX)-$(PAPERCONF).ps
       
   155 #	lpr $@
       
   156 
       
   157 html: $(HTML_ROOTFILE)
       
   158 
       
   159 html_one: $(PACKAGE)$(NAME_SUFFIX).html
       
   160 
       
   161 pdf: $(PACKAGE)$(NAME_SUFFIX)-$(PAPERCONF).fo $(PACKAGE)$(NAME_SUFFIX)-$(PAPERCONF).pdf
       
   162 
       
   163 rtf: $(PACKAGE)$(NAME_SUFFIX).rtf
       
   164 
       
   165 htgz: $(PACKAGE)$(NAME_SUFFIX).html.tar.gz
       
   166 
       
   167 zip: $(PACKAGE)$(NAME_SUFFIX).html.zip
       
   168 
       
   169 tex: $(PACKAGE)$(NAME_SUFFIX).tex
       
   170 
       
   171 zTXT: $(PACKAGE)$(NAME_SUFFIX).zTXT
       
   172 
       
   173 $(PACKAGE)$(NAME_SUFFIX).html.tar.gz: $(HTML_ROOTFILE)
       
   174 	tar -czf $@ $(HTML_OUTPUTDIR)
       
   175 
       
   176 $(PACKAGE)$(NAME_SUFFIX).html.zip:  $(HTML_ROOTFILE)
       
   177 	zip -9r $@ $(HTML_OUTPUTDIR)
       
   178 
       
   179 arpeges-basic.sgml: $(SGML_FILES)
       
   180 	xsltproc --xinclude --stringparam profile.userlevel basic --stringparam profile.condition $(PROFCOND) -o $@ $(DOCBOOK_XSL_PATH)/profiling/profile.xsl $<
       
   181 	 perl -pi -e 's;xmlns:xi=".*?";;' $@
       
   182 
       
   183 arpeges.sgml: $(SGML_FILES)
       
   184 	xsltproc --xinclude --stringparam profile.userlevel adv --stringparam profile.condition $(PROFCOND) -o $@ $(DOCBOOK_XSL_PATH)/profiling/profile.xsl $<
       
   185 	 perl -pi -e 's;xmlns:xi=".*?";;' $@
       
   186 
       
   187 booklet: $(PACKAGE)$(NAME_SUFFIX)-$(PAPERCONF)-book.pdf
       
   188 
       
   189 purge_it:
       
   190 	rm -f *.fo *.gif *.png *.eps *.ps *.pdf *.svg \
       
   191 		$(addprefix $(PACKAGE)$(NAME_SUFFIX), .sgml .txt .rtf -$(PAPERCONF).ps -$(PAPERCONF).pdf .html .html.tar.gz .zip $(PAPERCONF).dvi .tex .ltx -$(PAPERCONF).fo -$(PAPERCONF)-book.ps -$(PAPERCONF)-book.pdf)
       
   192 	rm -rf $(PACKAGE)$(NAME_SUFFIX)
       
   193 
       
   194 purge: clean
       
   195 	for paper in $(PAPER_TYPE) ; do					\
       
   196 		$(MAKE) PAPERCONF=$$paper purge_it ;			\
       
   197 		$(MAKE) PAPERCONF=$$paper SHORT_VERSION=1 purge_it ;	\
       
   198 	done
       
   199 
       
   200 snapshot:
       
   201 	rm -f ../$(PACKAGE).tar.bz2 
       
   202 	$(MAKE) ../$(PACKAGE).tar.bz2
       
   203 
       
   204 .PHONY:	dvi view text print ps html html_one pdf rtf zTXT purge purge_it booklet