mirror of
https://github.com/octoleo/plantuml.git
synced 2024-12-22 02:49:06 +00:00
138 lines
4.6 KiB
XML
138 lines
4.6 KiB
XML
<!--
|
|
========================================================================
|
|
PlantUML Build File
|
|
========================================================================
|
|
Product: PlantUML - A free UML diagram generator
|
|
Project Info: https://plantuml.com
|
|
|
|
Copyright Information:
|
|
(C) Copyright 2009-2023, Arnaud Roques
|
|
|
|
Contributors:
|
|
- Original Author: Arnaud Roques
|
|
- Script Author: Ilya V. Paramonov
|
|
|
|
============================== Description ==============================
|
|
|
|
This build file offers an alternative method to build PlantUML.
|
|
|
|
While PlantUML is typically built using Gradle, this Ant build script
|
|
provides a fallback option for those who prefer or only have access to
|
|
Ant.
|
|
|
|
Usage:
|
|
To build using this file, navigate to the directory containing this
|
|
build.xml and run "ant" in the command line. For more detailed build
|
|
instructions and requirements, refer to:
|
|
https://github.com/plantuml/plantuml/blob/master/BUILDING.md
|
|
========================================================================
|
|
-->
|
|
<project name="PlantUML" default="dist" basedir=".">
|
|
<description>
|
|
PlantUML Build File
|
|
</description>
|
|
|
|
<!-- Compile source code and copy necessary files -->
|
|
<target name="compile">
|
|
<!-- Prepare the build directory -->
|
|
<delete dir="build" />
|
|
<mkdir dir="build" />
|
|
|
|
<!-- Compile Java sources -->
|
|
<javac target="1.8" source="1.8" srcdir="src" destdir="build" debug="on" />
|
|
|
|
<!-- Copy resources. Grouped by type and directory for better clarity -->
|
|
<copy todir="build/net/sourceforge/plantuml/version">
|
|
<fileset dir="src/net/sourceforge/plantuml/version">
|
|
<include name="*.png" />
|
|
</fileset>
|
|
</copy>
|
|
|
|
<copy todir="build/net/sourceforge/plantuml/openiconic/data">
|
|
<fileset dir="src/net/sourceforge/plantuml/openiconic/data">
|
|
<include name="*.txt" />
|
|
<include name="*.svg" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/net/sourceforge/plantuml/emoji/data">
|
|
<fileset dir="src/net/sourceforge/plantuml/emoji/data">
|
|
<include name="*.txt" />
|
|
<include name="*.svg" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/net/sourceforge/plantuml/fun">
|
|
<fileset dir="src/net/sourceforge/plantuml/fun">
|
|
<include name="*.png" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/sprites/archimate">
|
|
<fileset dir="src/sprites/archimate">
|
|
<include name="*.png" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/net/sourceforge/plantuml/dedication">
|
|
<fileset dir="src/net/sourceforge/plantuml/dedication">
|
|
<include name="*.png" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/net/sourceforge/plantuml/math">
|
|
<fileset dir="src/net/sourceforge/plantuml/math">
|
|
<include name="*.js" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/net/sourceforge/plantuml/utils">
|
|
<fileset dir="src/net/sourceforge/plantuml/utils">
|
|
<include name="*.txt" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/net/sourceforge/plantuml/windowsdot">
|
|
<fileset dir="src/net/sourceforge/plantuml/windowsdot">
|
|
<include name="*.dat" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/stdlib">
|
|
<fileset dir="stdlib">
|
|
<include name="**/*.repx" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/skin">
|
|
<fileset dir="skin">
|
|
<include name="**/*.skin" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/themes">
|
|
<fileset dir="themes">
|
|
<include name="**/*.puml" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="build/svg">
|
|
<fileset dir="svg">
|
|
<include name="**/*.js" />
|
|
<include name="**/*.css" />
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
|
|
|
|
<!-- Create distribution JAR and clean up -->
|
|
<target name="dist" depends="compile">
|
|
<!-- Prepare the distribution directory -->
|
|
<delete dir="dist" />
|
|
<mkdir dir="dist" />
|
|
|
|
<!-- Create JAR with required attributes in the manifest -->
|
|
<jar jarfile="plantuml.jar" basedir="build">
|
|
<manifest>
|
|
<attribute name="Automatic-Module-Name" value="net.sourceforge.plantuml" />
|
|
<attribute name="Main-Class" value="net.sourceforge.plantuml.Run" />
|
|
<attribute name="Class-Path" value="elk-full.jar avalon-framework-4.2.0.jar batik-all-1.7.jar commons-io-1.3.1.jar commons-logging-1.0.4.jar fop.jar xml-apis-ext-1.3.04.jar xmlgraphics-commons-1.4.jar jlatexmath-minimal-1.0.3.jar jlm_cyrillic.jar jlm_greek.jar vizjs.jar j2v8_win32_x86_64-3.1.6.jar j2v8_linux_x86_64-3.1.6.jar j2v8_macosx_x86_64-3.1.6.jar ditaa0_9.jar" />
|
|
</manifest>
|
|
</jar>
|
|
|
|
<!-- Clean up the build and distribution directories -->
|
|
<delete dir="build" />
|
|
<delete dir="dist" />
|
|
</target>
|
|
|
|
</project>
|