build.xml
changeset 87 25dec6931f18
parent 82 90a58fca78e5
child 121 1a32988c4fef
equal deleted inserted replaced
86:3136e1ad9a5b 87:25dec6931f18
    24 	<property name="šablona" value="šablona"/>
    24 	<property name="šablona" value="šablona"/>
    25 	<property name="seznamMaker" value="${šablona}/.makra-seznam.xsl"/>
    25 	<property name="seznamMaker" value="${šablona}/.makra-seznam.xsl"/>
    26 	<property name="temp" value="temp"/>
    26 	<property name="temp" value="temp"/>
    27 	<property name="funkce" value="${šablona}/funkce/build/classes"/>
    27 	<property name="funkce" value="${šablona}/funkce/build/classes"/>
    28 	<property name="čára" value="----------------------------------------------------------------"/>
    28 	<property name="čára" value="----------------------------------------------------------------"/>
    29 	
    29 
    30 	<property name="vstupníPřípona" value=".xml"/>
    30 	<property name="vstupníPřípona" value=".xml"/>
    31 	<property name="výstupníPřípona" value=".xhtml"/>
    31 	<property name="výstupníPřípona" value=".xhtml"/>
    32 	
    32 
    33 	<target	name="generuj" description="Vygeneruje kompletní web." depends="licence,agregace,stránky">
    33 	<target name="generuj" description="Vygeneruje kompletní web." depends="licence,agregace,stránky"/>
    34 	</target>
    34 
    35 	
    35 	<target name="stránky" description="Vygeneruje samotné XHTML webové stránky." depends="statický-obsah,syntaxe,kompiluj-funkce,makra">
    36 	<target name="stránky" description="Vygeneruje samotné XHTML webové stránky." depends="statický-obsah,syntaxe,kompiluj-funkce,makra">		
       
    37 		<xslt basedir="${vstup}" destdir="${výstup}" includes="*${vstupníPřípona}" extension="${výstupníPřípona}" style="${šablona}/stránka.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    36 		<xslt basedir="${vstup}" destdir="${výstup}" includes="*${vstupníPřípona}" extension="${výstupníPřípona}" style="${šablona}/stránka.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    38 			<param name="podporaZaostalýchProhlížečů" expression="false"/>
    37 			<param name="podporaZaostalýchProhlížečů" expression="false"/>
    39 			<param name="vstupníPřípona" expression="${vstupníPřípona}"/>
    38 			<param name="vstupníPřípona" expression="${vstupníPřípona}"/>
    40 			<param name="výstupníPřípona" expression="${výstupníPřípona}"/>
    39 			<param name="výstupníPřípona" expression="${výstupníPřípona}"/>
    41 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    40 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    42 			<classpath location="${funkce}"/>
    41 			<classpath location="${funkce}"/>
    43 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    42 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    44 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>				
    43 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>	
    45 			</factory>
    44 			</factory>
    46 		</xslt>
    45 		</xslt>
    47 	</target>
    46 	</target>
    48 	
    47 
    49 	<target name="syntaxe" description="Vygeneruje CSS styl pro zvýrazňování syntaxe" depends="kompiluj-funkce">
    48 	<target name="syntaxe" description="Vygeneruje CSS styl pro zvýrazňování syntaxe" depends="kompiluj-funkce">
    50 		<xslt in="${vstup}/web.conf" out="${výstup}/css/syntaxe.css" style="${šablona}/syntaxe.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    49 		<xslt in="${vstup}/web.conf" out="${výstup}/css/syntaxe.css" style="${šablona}/syntaxe.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    51 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    50 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    52 			<classpath location="${funkce}"/>
    51 			<classpath location="${funkce}"/>
    53 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    52 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    54 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>				
    53 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>
    55 			</factory>
    54 			</factory>
    56 		</xslt>
    55 		</xslt>
    57 	</target>
    56 	</target>
    58 	
    57 
    59 	<target name="makra" description="Vygeneruje seznam maker podle souborů v příslušných složkách" depends="kompiluj-funkce">
    58 	<target name="makra" description="Vygeneruje seznam maker podle souborů v příslušných složkách" depends="kompiluj-funkce">
    60 		<xslt in="${vstup}/web.conf" out="${seznamMaker}" style="${šablona}/makra.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    59 		<xslt in="${vstup}/web.conf" out="${seznamMaker}" style="${šablona}/makra.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    61 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    60 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    62 			<classpath location="${funkce}"/>
    61 			<classpath location="${funkce}"/>
    63 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    62 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    64 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>				
    63 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>	
    65 			</factory>
    64 			</factory>
    66 		</xslt>
    65 		</xslt>
    67 	</target>
    66 	</target>
    68 	
    67 
    69 	<target name="agregace" description="Vytvoří agregované výstupy: RSS, Atom, Sitemap.xml." depends="kompiluj-funkce">
    68 	<target name="agregace" description="Vytvoří agregované výstupy: RSS, Atom, Sitemap.xml." depends="kompiluj-funkce">
    70 		<!-- TODO: sloučit, zjednodušit, parametrizovat -->
    69 		<!-- TODO: sloučit, zjednodušit, parametrizovat -->
    71 	
    70 
    72 		<!-- Atom -->
    71 		<!-- Atom -->
    73 		<xslt in="${vstup}/web.conf" out="${výstup}/atom.xml" style="${šablona}/atom.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    72 		<xslt in="${vstup}/web.conf" out="${výstup}/atom.xml" style="${šablona}/atom.xsl" processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    74 			<param name="vstupníPřípona" expression="${vstupníPřípona}"/>
    73 			<param name="vstupníPřípona" expression="${vstupníPřípona}"/>
    75 			<param name="výstupníPřípona" expression="${výstupníPřípona}"/>
    74 			<param name="výstupníPřípona" expression="${výstupníPřípona}"/>
    76 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    75 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    77 			<classpath location="${funkce}"/>
    76 			<classpath location="${funkce}"/>
    78 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    77 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    79 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>				
    78 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>	
    80 			</factory>
    79 			</factory>
    81 		</xslt>
    80 		</xslt>
    82 		
    81 
    83 		<!-- RSS --> 
    82 		<!-- RSS --> 
    84 		<xslt in="${výstup}/atom.xml" out="${výstup}/rss.xml" style="${šablona}/rss.xsl"  processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">			
    83 		<xslt in="${výstup}/atom.xml" out="${výstup}/rss.xml" style="${šablona}/rss.xsl"  processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">
    85 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    84 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    86 			<classpath location="${funkce}"/>
    85 			<classpath location="${funkce}"/>
    87 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    86 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    88 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>				
    87 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>
    89 			</factory>
    88 			</factory>
    90 		</xslt>
    89 		</xslt>
    91 		
    90 
    92 		<!-- Sitemap.xml -->
    91 		<!-- Sitemap.xml -->
    93 		<xslt in="${výstup}/atom.xml" out="${výstup}/sitemap.xml" style="${šablona}/sitemap.xsl"  processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">			
    92 		<xslt in="${výstup}/atom.xml" out="${výstup}/sitemap.xml" style="${šablona}/sitemap.xsl"  processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">			
    94 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    93 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
    95 			<classpath location="${funkce}"/>
    94 			<classpath location="${funkce}"/>
    96 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    95 			<factory name="net.sf.saxon.TransformerFactoryImpl">
    97 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>				
    96 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>
    98 			</factory>
    97 			</factory>
    99 		</xslt>
    98 		</xslt>
   100 		
    99 
   101 		<!-- Seznam stránek --> 
   100 		<!-- Seznam stránek --> 
   102 		<xslt in="${výstup}/atom.xml" out="${vstup}/.seznam.xml" style="${šablona}/seznam.xsl"  processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">			
   101 		<xslt in="${výstup}/atom.xml" out="${vstup}/.seznam.xml" style="${šablona}/seznam.xsl"  processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison">			
   103 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
   102 			<classpath location="/usr/share/java/saxonb-9.0.jar"/>
   104 			<classpath location="${funkce}"/>
   103 			<classpath location="${funkce}"/>
   105 			<factory name="net.sf.saxon.TransformerFactoryImpl">
   104 			<factory name="net.sf.saxon.TransformerFactoryImpl">
   106 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>				
   105 				<attribute name="http://saxon.sf.net/feature/allow-external-functions" value="true"/>
   107 			</factory>
   106 			</factory>
   108 		</xslt>
   107 		</xslt>
   109 		
   108 
   110 	</target>
   109 	</target>
   111 	
   110 
   112 	<target name="kompiluj-funkce" description="Přeloží funkce napsané v Javě.">		
   111 	<target name="kompiluj-funkce" description="Přeloží funkce napsané v Javě.">
   113 		<mkdir dir="${funkce}"/>
   112 		<mkdir dir="${funkce}"/>
   114 		<javac
   113 		<javac
   115 			srcdir="${šablona}/funkce/src"
   114 			srcdir="${šablona}/funkce/src"
   116 			destdir="${funkce}"			
   115 			destdir="${funkce}"
   117 			includeAntRuntime="no">
   116 			includeAntRuntime="no">
   118 		</javac>
   117 		</javac>
   119 	</target>
   118 	</target>
   120 	
   119 
   121 	<target name="statický-obsah" description="Kopíruje JS, CSS, obrázky atd.">
   120 	<target name="statický-obsah" description="Kopíruje JS, CSS, obrázky atd.">
   122 		<copy todir="${výstup}">
   121 		<copy todir="${výstup}">
   123 			<fileset dir="${vstup}" excludes="*.xml,makra/**,*.inc,web.conf"/>
   122 			<fileset dir="${vstup}" excludes="*.xml,makra/**,*.inc,web.conf"/>
   124 		</copy>
   123 		</copy>
   125 	</target>
   124 	</target>
   126 	
   125 
   127 	<target name="čisti" description="Smaže vygenerovaný obsah.">
   126 	<target name="čisti" description="Smaže vygenerovaný obsah.">
   128 		<delete includeemptydirs="true">
   127 		<delete includeemptydirs="true">
   129 			<fileset dir="${výstup}" includes="**/*"/>
   128 			<fileset dir="${výstup}" includes="**/*"/>
   130 			<fileset dir="${funkce}" includes="**/*"/>
   129 			<fileset dir="${funkce}" includes="**/*"/>
   131 			<fileset file="${seznamMaker}"/>
   130 			<fileset file="${seznamMaker}"/>
   132 		</delete>
   131 		</delete>
   133 	</target>
   132 	</target>
   134 	
   133 
   135 	<target name="prohlédni" description="Otevře vygenerované stránky ve www prohlížeči.">
   134 	<target name="prohlédni" description="Otevře vygenerované stránky ve www prohlížeči.">
   136 		<exec executable="x-www-browser" os="Linux">
   135 		<exec executable="x-www-browser" os="Linux">
   137 			<arg value="${výstup}/index${výstupníPřípona}"/>
   136 			<arg value="${výstup}/index${výstupníPřípona}"/>
   138 		</exec>
   137 		</exec>
   139 	</target>
   138 	</target>
   141 	<target name="dokumentace" description="Sestaví dokumentaci">
   140 	<target name="dokumentace" description="Sestaví dokumentaci">
   142 		<javadoc destdir="dokumentace/javadoc" linksource="true" windowtitle="XML Web generátor – javadoc">
   141 		<javadoc destdir="dokumentace/javadoc" linksource="true" windowtitle="XML Web generátor – javadoc">
   143 			<fileset dir="šablona/funkce/src"/>
   142 			<fileset dir="šablona/funkce/src"/>
   144 		</javadoc>
   143 		</javadoc>
   145 	</target>
   144 	</target>
   146 	
   145 
   147 	<target name="licence">
   146 	<target name="licence">
   148 		<echo>${čára}
   147 		<echo>${čára}
   149 XML Web generátor Copyright © 2012 František Kučera (frantovo.cz)
   148 XML Web generátor Copyright © 2012 František Kučera (frantovo.cz)
   150 This program comes with ABSOLUTELY NO WARRANTY;
   149 This program comes with ABSOLUTELY NO WARRANTY;
   151 This is free software, and you are welcome to redistribute it
   150 This is free software, and you are welcome to redistribute it
   152 under certain conditions; type ‚ant licence-gpl‘ for details.
   151 under certain conditions; type ‚ant licence-gpl‘ for details.
   153 ${čára}</echo>
   152 ${čára}</echo>
   154 	</target>
   153 	</target>
   155 	
   154 
   156 	<target name="licence-gpl">
   155 	<target name="licence-gpl">
   157 		<loadfile property="licence.txt" srcFile="licence/licence.txt"/>
   156 		<loadfile property="licence.txt" srcFile="licence/licence.txt"/>
   158 		<loadfile property="gpl-3.0.txt" srcFile="licence/gpl-3.0.txt"/>
   157 		<loadfile property="gpl-3.0.txt" srcFile="licence/gpl-3.0.txt"/>
   159 		<echo>${čára}</echo> 
   158 		<echo>${čára}</echo> 
   160 		<echo>${licence.txt}</echo> 
   159 		<echo>${licence.txt}</echo> 
   161 		<echo>${čára}</echo> 
   160 		<echo>${čára}</echo> 
   162 		<echo>${gpl-3.0.txt}</echo> 
   161 		<echo>${gpl-3.0.txt}</echo> 
   163 		<echo>${čára}</echo> 
   162 		<echo>${čára}</echo> 
   164 	</target>
   163 	</target>
   165 	
   164 
   166 </project>
   165 </project>
       
   166