Permalink
Browse files

Top-level dist targets

  • Loading branch information...
1 parent 15c1efc commit 4d6335eb7ebe1f1662b5125419d2691274ae7081 @trejkaz committed Apr 20, 2011
Showing with 45 additions and 11 deletions.
  1. +1 −0 .gitignore
  2. +7 −4 README.markdown
  3. +5 −0 app.properties
  4. +30 −3 build.xml
  5. +2 −4 launcher/build.xml
View
@@ -1,3 +1,4 @@
+/build
/*/build
/.idea/out
/.idea/workspace.xml
View
@@ -16,10 +16,6 @@ WHAT I AM TRYING TO GET WORKING NOW
* TODO - Come up with a simpler API for defining structs in a declarative way
* TODO - More formats (still to be decided but will depend on what I'm looking at at the time.)
-* Sub-stream support
- * Ability to mark a straem as a sub-stream, possible processed in some way (e.g. zlib inflate)
- * Ability to open that stream separately
- * Ability to annotate that stream
WHAT IS IT AND WHY
------------------
@@ -87,4 +83,11 @@ BEYOND
* More data types (the list will grow as I need them.)
* Structs - a hard one but I have some ideas
* *Scriptable* structs (because I want to put a Ruby DSL in here.)
+* Sub-stream support
+ * Ability to mark a stream as a sub-stream, possibly processed in some way (e.g. zlib inflate)
+ * Ability to open that stream separately
+ * Ability to annotate that stream
+* Directory abstraction
+ * Ability to layer a directory abstraction on top of a file format (e.g. OLE2)
+ * Ability to inspect files in the abstracted directory like ordinary binaries
View
@@ -0,0 +1,5 @@
+
+app.name = Hex
+app.version = 0.1
+app.copyright = Copyright (C) 2009-2011 Trejkaz, Hex Project
+
View
@@ -1,4 +1,6 @@
<project name="hex" default="build">
+ <property file="app.properties"/>
+
<scriptdef name="run-all" language="JavaScript">
<attribute name="target"/>
<![CDATA[
@@ -13,19 +15,44 @@
}
task.perform();
}
-
+
]]>
</scriptdef>
- <target name="build" description="Runs each build in series.">
+ <target name="build" description="Runs each build in series">
<run-all/>
</target>
- <target name="test" description="Tests each build in series.">
+ <target name="test" description="Tests each build in series">
<run-all target="test"/>
</target>
+ <target name="dist-cycle" depends="clean, build" description="Cleans and builds distribution files">
+ <mkdir dir="build"/>
+
+ <!-- Source -->
+ <tar destfile="build/hex-src-${app.version}.tar" longfile="gnu">
+ <zipfileset prefix="hex-src-${app.version}" dir="." excludes="build/, */build/, projectFilesBackup, **/.DS_Store, .idea/out/, .idea/workspace.xml, .idea/dictionaries/"/>
+ </tar>
+ <bzip2 destfile="build/hex-src-${app.version}.tar.bz2" src="build/hex-src-${app.version}.tar"/>
+
+ <!-- Executable jar -->
+ <ant dir="launcher" target="executable-jar"/>
+ <zip zipfile="build/hex-bin-${app.version}.zip">
+ <zipfileset prefix="hex-bin-${app.version}" dir="launcher/build" includes="hex-${app.version}.jar"/>
+ <zipfileset prefix="hex-bin-${app.version}" dir="." includes="COPYING, README.markdown"/>
+ </zip>
+
+ <!-- Mac app bundle -->
+ <ant dir="launcher" target="mac-app-bundle"/>
+ <zip zipfile="build/Hex.app-${app.version}.zip">
+ <zipfileset prefix="Hex.app-${app.version}" dir="launcher/build" includes="Hex.app"/>
+ <zipfileset prefix="Hex.app-${app.version}" dir="." includes="COPYING, README.markdown"/>
+ </zip>
+ </target>
+
<target name="clean" description="Cleans generated files from each build">
<run-all target="clean"/>
+ <delete dir="build"/>
</target>
</project>
View
@@ -17,9 +17,7 @@
-->
<project name="launcher" default="default">
- <property name="app.name" value="Hex"/>
- <property name="app.version" value="0.1"/>
- <property name="app.copyright" value="Copyright (C) 2009 Trejkaz, Hex Project"/>
+ <property file="../app.properties"/>
<target name="default" depends="-determine-platform, -build-mac-app-bundle-if-mac, -build-executable-jar-if-other"
description="Builds whichever launcher is deemed to fit your platform best"/>
@@ -99,7 +97,7 @@
</copy>
</target>
- <target name="test" description="Does nothing. Exists to make the test target work."/>
+ <target name="test" description="Does nothing. Exists to make the test target work"/>
<target name="clean" description="Cleans generated files">
<delete dir="build"/>

0 comments on commit 4d6335e

Please sign in to comment.