Skip to content

Commit ab44138

Browse files
committed
added AUTHORS, Makefile, build.xml, ivy.xml and msgpack.iml
1 parent 3a9ad9f commit ab44138

File tree

5 files changed

+366
-0
lines changed

5 files changed

+366
-0
lines changed

AUTHORS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
FURUHASHI Sadayuki <frsyuki _at_ users.sourceforge.jp>

Makefile

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
2+
.PHONY: compile test eclipse clean package
3+
4+
all:
5+
compile
6+
7+
package:
8+
mvn package
9+
10+
install:
11+
mvn install
12+
13+
compile:
14+
mvn compile
15+
16+
test:
17+
mvn test
18+
19+
# generate .project and .classpath file for Eclipse
20+
eclipse:
21+
mvn eclipse:eclipse
22+
23+
clean:
24+
mvn clean

build.xml

Lines changed: 303 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,303 @@
1+
<project name="MessagePack for Java" default="jar"
2+
xmlns:ivy="antlib:org.apache.ivy.ant"
3+
xmlns:mvn="urn:maven-artifact-ant">
4+
5+
<property name="Name" value="MessagePack"/>
6+
<property name="name" value="msgpack"/>
7+
<property name="version" value="0.0.1"/>
8+
<property name="fullname" value="${name}-${version}"/>
9+
<property name="year" value="2011"/>
10+
11+
<!-- Load user's default properties. -->
12+
<property file="${user.home}/build.properties" />
13+
14+
<property name="src.dir" value="${basedir}/src/main/java"/>
15+
<property name="java.src.dir" value="${src.dir}/"/>
16+
<property name="build.dir" value="${basedir}/build"/>
17+
<property name="lib.dir" value="${basedir}/lib"/>
18+
<property name="dist.dir" value="${basedir}/dist"/>
19+
20+
<property name="build.classes" value="${build.dir}/classes"/>
21+
<property name="build.doc" value="${build.dir}/doc"/>
22+
<property name="build.javadoc" value="${build.doc}/api/"/>
23+
<property name="build.javadoc.log" value="${build.dir}/javadoc.log"/>
24+
25+
<property name="test.count" value="100"/>
26+
<property name="test.junit.output.format" value="plain"/>
27+
<property name="test.java.src.dir" value="${basedir}/src/test/java"/>
28+
<property name="test.java.build.dir" value="${build.dir}/test"/>
29+
<property name="test.java.classes" value="${test.java.build.dir}/classes"/>
30+
<property name="test.java.include" value="Test*"/>
31+
32+
<property name="javac.encoding" value="ISO-8859-1"/>
33+
<property name="javac.debug" value="on"/>
34+
<property name="javac.optimize" value="on"/>
35+
<property name="javac.deprecation" value="off"/>
36+
<property name="javac.version" value="1.6"/>
37+
<property name="javac.args" value=""/>
38+
<property name="javac.args.warnings" value="-Xlint:unchecked"/>
39+
40+
<property name="javadoc.link.java"
41+
value="http://java.sun.com/javase/6/docs/api/"/>
42+
<property name="javadoc.packages" value="org.${name}.*"/>
43+
44+
<!-- ivy settings -->
45+
<property name="ivy.version" value="2.1.0"/>
46+
<property name="ivy.url"
47+
value="http://repo2.maven.org/maven2/org/apache/ivy/ivy" />
48+
<property name="ivy.home" value="${user.home}/.ant" />
49+
<property name="ivy.lib" value="${build.dir}/lib"/>
50+
<property name="ivy.test.lib" value="${build.dir}/test/lib"/>
51+
<property name="mvn.repo"
52+
value="https://repository.apache.org/content/repositories/snapshots"/>
53+
54+
<!-- the normal classpath -->
55+
<path id="libs">
56+
<fileset dir="${ivy.lib}">
57+
<include name="**/*.jar" />
58+
</fileset>
59+
</path>
60+
<path id="java.classpath">
61+
<pathelement location="${build.classes}"/>
62+
<fileset dir="${lib.dir}">
63+
<include name="**/*.jar" />
64+
<exclude name="**/excluded/" />
65+
</fileset>
66+
<fileset dir="${ant.home}/lib">
67+
<include name="ant.jar" />
68+
</fileset>
69+
<path refid="libs" />
70+
</path>
71+
<path id="test.libs">
72+
<fileset dir="${ivy.test.lib}">
73+
<include name="**/*.jar" />
74+
</fileset>
75+
</path>
76+
<path id="test.java.classpath">
77+
<pathelement location="${test.java.classes}" />
78+
<path refid="java.classpath"/>
79+
<path refid="test.libs"/>
80+
</path>
81+
82+
<!-- init & clean -->
83+
<target name="init">
84+
<mkdir dir="${build.dir}" />
85+
<mkdir dir="${lib.dir}" />
86+
<mkdir dir="${build.classes}" />
87+
88+
<mkdir dir="${test.java.build.dir}"/>
89+
<mkdir dir="${test.java.classes}"/>
90+
91+
<mkdir dir="${ivy.lib}"/>
92+
<mkdir dir="${ivy.test.lib}"/>
93+
<condition property="ivy.jar.exists">
94+
<available file="${lib.dir}/ivy-${ivy.version}.jar"/>
95+
</condition>
96+
</target>
97+
<target name="clean">
98+
<delete dir="${build.dir}" />
99+
</target>
100+
101+
<!-- ivy targets -->
102+
<target name="ivy-download" unless="ivy.jar.exists" depends="init">
103+
<delete dir="${lib.dir}"
104+
includes="ivy-*.jar" excludes="ivy-${ivy.version}.jar"/>
105+
<get src="${ivy.url}/${ivy.version}/ivy-${ivy.version}.jar"
106+
dest="${lib.dir}/ivy-${ivy.version}.jar" usetimestamp="true"/>
107+
</target>
108+
<target name="ivy-init" depends="ivy-download" unless="ivy.initialized">
109+
<taskdef resource="org/apache/ivy/ant/antlib.xml"
110+
uri="antlib:org.apache.ivy.ant" classpathref="java.classpath"/>
111+
<!-- ensure that ivy taskdef is only run once, otw ant will error -->
112+
<property name="ivy.initialized" value="true"/>
113+
</target>
114+
115+
<target name="ivy-retrieve-build" depends="init,ivy-init">
116+
<ivy:retrieve type="jar" conf="build"
117+
pattern="${ivy.lib}/[artifact]-[revision].[ext]"/>
118+
</target>
119+
<target name="ivy-retrieve-test" depends="init,ivy-init">
120+
<ivy:retrieve type="jar" conf="test"
121+
pattern="${ivy.test.lib}/[artifact]-[revision].[ext]"/>
122+
</target>
123+
124+
<!-- compiler -->
125+
<macrodef name="java-compiler">
126+
<attribute name="dest" default="${build.classes}"/>
127+
<attribute name="includes" default="**/*.java"/>
128+
<attribute name="excludes" default=""/>
129+
<attribute name="classpath" default="java.classpath"/>
130+
<element name="src" implicit="yes"/>
131+
<sequential>
132+
<javac
133+
destdir="@{dest}"
134+
includes="@{includes}"
135+
excludes="@{excludes}"
136+
encoding="${javac.encoding}"
137+
debug="${javac.debug}"
138+
optimize="${javac.optimize}"
139+
target="${javac.version}"
140+
source="${javac.version}"
141+
deprecation="${javac.deprecation}">
142+
<compilerarg line="${javac.args} ${javac.args.warnings}" />
143+
<classpath refid="@{classpath}"/>
144+
<src />
145+
</javac>
146+
</sequential>
147+
</macrodef>
148+
149+
<!-- compile -->
150+
<target name="compile" depends="init,ivy-retrieve-build">
151+
<java-compiler>
152+
<src path="${java.src.dir}"/>
153+
</java-compiler>
154+
</target>
155+
156+
<!-- test -->
157+
<macrodef name="test-runner">
158+
<attribute name="files.location" />
159+
<attribute name="tests.pattern" />
160+
<attribute name="test.dir" default="${test.java.build.dir}" />
161+
<sequential>
162+
<junit showoutput="yes"
163+
printsummary="withOutAndErr"
164+
haltonfailure="no"
165+
fork="yes" forkMode="once"
166+
errorProperty="tests.failed" failureProperty="tests.failed">
167+
<sysproperty key="test.count" value="${test.count}"/>
168+
<sysproperty key="test.dir" value="@{test.dir}"/>
169+
<classpath refid="test.java.classpath"/>
170+
<formatter type="${test.junit.output.format}"/>
171+
<batchtest todir="${test.java.build.dir}" unless="testcase">
172+
<fileset dir="@{files.location}"
173+
includes="@{tests.pattern}"
174+
excludes="**/${test.java.exclude}.java" />
175+
</batchtest>
176+
<batchtest todir="${test.java.build.dir}" if="testcase">
177+
<fileset dir="@{files.location}" includes="**/${testcase}.java"/>
178+
</batchtest>
179+
</junit>
180+
<fail if="tests.failed">Tests Failed!</fail>
181+
</sequential>
182+
</macrodef>
183+
<target name="compile-test" depends="ivy-retrieve-test,compile">
184+
<java-compiler dest="${test.java.classes}"
185+
classpath="test.java.classpath">
186+
<src path="${test.java.src.dir}/org" />
187+
</java-compiler>
188+
</target>
189+
<target name="test" depends="init,compile-test">
190+
<test-runner files.location="${test.java.src.dir}"
191+
tests.pattern="**/${test.java.include}.java"/>
192+
</target>
193+
194+
<!-- jar -->
195+
<target name="jar" depends="compile">
196+
<jar jarfile="${build.dir}/${name}-${version}.jar" basedir="${build.classes}" >
197+
<manifest>
198+
<section name="org/${name}">
199+
<attribute name="Implementation-Title" value="${Name}"/>
200+
<attribute name="Implementation-Version" value="${version}"/>
201+
</section>
202+
</manifest>
203+
</jar>
204+
</target>
205+
206+
<!-- javadoc -->
207+
<target name="javadoc" depends="compile" description="Generate javadoc">
208+
<mkdir dir="${build.javadoc}"/>
209+
<record name="${build.javadoc.log}" action="start"/>
210+
<javadoc
211+
Locale="en_US"
212+
packagenames="org.${org}.${name}.*"
213+
destdir="${build.javadoc}"
214+
encoding="UTF-8"
215+
docencoding="UTF-8"
216+
author="true"
217+
version="true"
218+
use="true"
219+
windowtitle="${Name} ${version} API"
220+
doctitle="${Name} ${version} API"
221+
bottom="Copyright &amp;copy; ${year} The ${Name} Project"
222+
>
223+
<packageset dir="${java.src.dir}"/>
224+
<link href="${javadoc.link.java}"/>
225+
<classpath >
226+
<path refid="java.classpath" />
227+
</classpath>
228+
</javadoc>
229+
<record name="${build.javadoc.log}" action="stop"/>
230+
<condition property="javadoc.warnings">
231+
<isfileselected file="${build.javadoc.log}">
232+
<contains text=": warning - "/>
233+
</isfileselected>
234+
</condition>
235+
<fail if="javadoc.warnings">Javadoc warnings!</fail>
236+
</target>
237+
<target name="javadoc-jar" depends="javadoc">
238+
<jar jarfile="${build.dir}/${fullname}-javadoc.jar">
239+
<fileset dir="${build.javadoc}" includes="**/*"/>
240+
</jar>
241+
</target>
242+
243+
<!-- sources -->
244+
<target name="source">
245+
<jar jarfile="${build.dir}/${fullname}-sources.jar">
246+
<fileset dir="${java.src.dir}" includes="**/*.java"/>
247+
</jar>
248+
</target>
249+
250+
<!-- pom -->
251+
<target name="pom" depends="ivy-init">
252+
<ivy:makepom ivyfile="${basedir}/ivy.xml"
253+
pomfile="${dist.dir}/${fullname}.pom">
254+
<mapping conf="default" scope="compile"/>
255+
<mapping conf="test" scope="test"/>
256+
</ivy:makepom>
257+
</target>
258+
259+
<!-- dist -->
260+
<target name="dist" depends="jar, pom, source, javadoc-jar"
261+
description="Build distribution">
262+
<mkdir dir="${dist.dir}"/>
263+
<copy todir="${dist.dir}">
264+
<fileset file="${build.dir}/${fullname}.jar"/>
265+
<fileset file="${build.dir}/${fullname}-sources.jar"/>
266+
<fileset file="${build.dir}/${fullname}-javadoc.jar"/>
267+
</copy>
268+
</target>
269+
270+
<!-- maven: install msgpack into local m2 cache -->
271+
<target name="mvn-install" depends="jar, pom, source, javadoc-jar"
272+
description="Installs msgpack to local m2 cache">
273+
<typedef resource="org/apache/maven/artifact/ant/antlib.xml"
274+
uri="urn:maven-artifact-ant"
275+
classpathref="java.classpath"/>
276+
<mvn:pom file="${dist.dir}/${fullname}.pom" id="msgpack"/>
277+
<mvn:install file="${build.dir}/${fullname}.jar">
278+
<attach file="${build.dir}/${fullname}-sources.jar"
279+
classifier="sources" />
280+
<attach file="${build.dir}/${fullname}-javadoc.jar"
281+
classifier="javadoc" />
282+
<pom refid="msgpack"/>
283+
</mvn:install>
284+
</target>
285+
286+
<!-- maven: create local repository into ${basedir}/maven2 -->
287+
<target name="mvn-deploy" depends="jar, pom, source, javadoc-jar"
288+
description="Deploys MessagePack to Maven repo.">
289+
<typedef resource="org/apache/maven/artifact/ant/antlib.xml"
290+
uri="urn:maven-artifact-ant"
291+
classpathref="java.classpath"/>
292+
<mvn:pom file="${dist.dir}/${fullname}.pom" id="msgpack"/>
293+
<mvn:deploy file="${build.dir}/${fullname}.jar">
294+
<remoteRepository url="file://localhost/${basedir}/maven2/"/>
295+
<attach file="${build.dir}/${fullname}-sources.jar"
296+
classifier="sources" />
297+
<attach file="${build.dir}/${fullname}-javadoc.jar"
298+
classifier="javadoc" />
299+
<pom refid="msgpack"/>
300+
</mvn:deploy>
301+
</target>
302+
303+
</project>

ivy.xml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<ivy-module version="2.0"
2+
xmlns:e="http://ant.apache.org/ivy/extra">
3+
4+
<info organisation="org"
5+
module="${name}" revision="${version}">
6+
<ivyauthor name="MessagePack Project" url="http://msgpack.org/"/>
7+
<description>MessagePack</description>
8+
</info>
9+
10+
<configurations defaultconfmapping="default">
11+
<conf name="default"/> <!-- "runtime" configuration -->
12+
<conf name="test"/>
13+
<conf name="build" extends="default"/>
14+
</configurations>
15+
16+
<dependencies>
17+
<dependency org="junit" name="junit" rev="4.8.1" conf="test->default"/>
18+
<dependency org="javassist" name="javassist" rev="3.12.1.GA"/>
19+
<dependency org="org.slf4j" name="slf4j-api" rev="1.4.3"/>
20+
</dependencies>
21+
</ivy-module>

msgpack.iml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
3+
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6" inherit-compiler-output="false">
4+
<output url="file://$MODULE_DIR$/target/classes" />
5+
<output-test url="file://$MODULE_DIR$/target/test-classes" />
6+
<exclude-output />
7+
<content url="file://$MODULE_DIR$">
8+
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
9+
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
10+
<excludeFolder url="file://$MODULE_DIR$/target" />
11+
</content>
12+
<orderEntry type="inheritedJdk" />
13+
<orderEntry type="sourceFolder" forTests="false" />
14+
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.8.1" level="project" />
15+
</component>
16+
</module>
17+

0 commit comments

Comments
 (0)