Fix building when root.
authorAlistair Bush <ali_bush@gentoo.org>
Sun, 6 Jun 2010 21:50:33 +0000 (21:50 +0000)
committerAlistair Bush <ali_bush@gentoo.org>
Sun, 6 Jun 2010 21:50:33 +0000 (21:50 +0000)
Package-Manager: portage-2.1.8.3/cvs/Linux x86_64

dev-java/dynalang/ChangeLog
dev-java/dynalang/Manifest
dev-java/dynalang/dynalang-0.4.ebuild
dev-java/dynalang/files/build.xml [new file with mode: 0644]

index eb0d01e54f29fcd72499f8ff01cf760463ba649d..a69f826f271e2c646da810ac6aaa9f9fb7d18ffc 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for dev-java/dynalang
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-java/dynalang/ChangeLog,v 1.1 2010/06/05 08:24:22 ali_bush Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-java/dynalang/ChangeLog,v 1.2 2010/06/06 21:50:32 ali_bush Exp $
+
+  06 Jun 2010; Alistair Bush <ali_bush@gentoo.org> dynalang-0.4.ebuild,
+  +files/build.xml:
+  Fix issue when builting as root.
 
 *dynalang-0.4 (05 Jun 2010)
 
index 40abf855a8decb64237a3795c689f862394dbee8..e250395df921542274926253f83ed2823611e645 100644 (file)
@@ -1,4 +1,5 @@
+AUX build.xml 6787 RMD160 8b30a2a3b2cfc5f685a5022aeb14a7a7ae206e08 SHA1 d14043c62ad86d94c2d9ea13b7779a6f597fafbf SHA256 cc3c0ede12ca39b0304e11055f7dba7411e38032f0190d7856c1ce61daf754bb
 DIST dynalang-mop-0.4.tgz 227338 RMD160 de4b1b364124b45b0847f00689a395e0e8bf1f9c SHA1 046d0962d7dca64a364f8ff26c487798c9cf603b SHA256 b241b763d8178f7ba74123ed6145df4f255f78df39757665f3569e3ccd11d5cb
-EBUILD dynalang-0.4.ebuild 1276 RMD160 64f7b23023aae52be1b92e42f01e349b05c4337f SHA1 b35785dc5530e0f87d237399949b50d57dde0838 SHA256 4380160597bb7810a738dc83d95030dda4b836062fab2e57ebe10eb3938a634d
-MISC ChangeLog 344 RMD160 1b102681a1afcc6161b5126ea8221162a514efc3 SHA1 dc6098fe4310c18d554806298ae9e9cb68832ca2 SHA256 f273ef48c861af8b02f5a848704b53abe0d0c0bcf967ce186aa94e96814ca276
+EBUILD dynalang-0.4.ebuild 1390 RMD160 a0fdb58943662499f16f107b43a9f133430ee372 SHA1 47245ea8b0e3b2358a6bf93580cd95aa97a5ed8f SHA256 34944dc7df5f1fd86a9bd44985e39f7bb5e9fdd6a782ac8e8b02d9ebeeca7d6f
+MISC ChangeLog 472 RMD160 673a2c928644e760665c78ec73ef8e2512518775 SHA1 fd1e04fcc88d15b9bdf5dad460d344513e50831e SHA256 3779aa67dcbe28a4930f446834e9b8bf03af25bb3951d3f9b692a707194fb7b6
 MISC metadata.xml 159 RMD160 5259d4be0ca7b74c28e711d45a289def9aeadbd9 SHA1 c4ec40cd8f19e0d780a5133941bc50043be198cf SHA256 1c070a909e96d9d193f84ad9304d196febbe33b60a724cc4b0d20634bb82255b
index a1fe5f4ac0a37ff6b9f3461a1305d78357498d06..8f30b5c9509dc92d95df0ee8b106f729da428160 100644 (file)
@@ -1,10 +1,11 @@
 # Copyright 1999-2010 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-java/dynalang/dynalang-0.4.ebuild,v 1.3 2010/06/06 04:46:03 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-java/dynalang/dynalang-0.4.ebuild,v 1.4 2010/06/06 21:50:32 ali_bush Exp $
 
 EAPI=3
 
 JAVA_PKG_IUSE="doc source"
+JAVA_PKG_BSFIX="off"
 
 inherit java-pkg-2 java-ant-2
 
@@ -30,11 +31,13 @@ DEPEND=">=virtual/jdk-1.5
 
 S="${WORKDIR}/${MY_P}"
 
-src_prepare() {
+java_prepare() {
+       cp "${FILESDIR}/build.xml" build.xml || die
+
        find . -iname '*.jar' -delete
 
        sed -i -e '/ivy:retrieve/d' build.xml || die
-
+       sed -i -e 's_\.\./ivy_ivy_' build.xml || die
        sed -i -e \
                's/clazz.getConstructors/(Constructor<T>[])clazz.getConstructors/' \
                src/org/dynalang/mop/beans/BeanMetaobjectProtocol.java || die
@@ -53,5 +56,5 @@ src_test() {
 src_install() {
        java-pkg_newjar "build/${MY_P}.jar"
        use doc && java-pkg_dojavadoc build/doc/javadoc
-       use source && java-pkg_dosrc src/*
+       use source && java-pkg_dosrc src/org
 }
diff --git a/dev-java/dynalang/files/build.xml b/dev-java/dynalang/files/build.xml
new file mode 100644 (file)
index 0000000..1fbad95
--- /dev/null
@@ -0,0 +1,180 @@
+<project name="org.dynalang.mop" basedir=".">\r
+<!--\r
+   Copyright 2007 Attila Szegedi\r
+\r
+   Licensed under the Apache License, Version 2.0 (the "License");\r
+   you may not use this file except in compliance with the License.\r
+   You may obtain a copy of the License at\r
+\r
+       http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+   Unless required by applicable law or agreed to in writing, software\r
+   distributed under the License is distributed on an "AS IS" BASIS,\r
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+   See the License for the specific language governing permissions and\r
+   limitations under the License.\r
+-->\r
+<!-- $Id: build.xml,v 1.1 2010/06/06 21:50:33 ali_bush Exp $ -->\r
+       <property name="project.name" value="JVM Dynamic Languages Metaobject Protocol"/>\r
+       <property name="artifact.name" value="dynalang-mop"/>\r
+       <property name="revision" value="0.4"/>\r
+       <property name="build.dir" location="build"/>\r
+\r
+       <target name="clean">\r
+               <mkdir dir="${build.dir}"/>\r
+               <delete dir="${build.dir}"/>\r
+       </target>\r
+\r
+        <target name="resolve">\r
+        </target>\r
+\r
+       <path id="compile.classpath">\r
+                <fileset dir="build/lib/default"/>\r
+       </path>\r
+\r
+       <target name="compile" depends="resolve">\r
+               <mkdir dir="build/lib/default"/>\r
+               <property name="classes.dir" location="${build.dir}/classes"/>\r
+               <mkdir dir="${classes.dir}"/>\r
+               <javac srcdir="src" destdir="${classes.dir}" deprecation="off" \r
+                      debug="on" optimize="off" target="1.5" source="1.5"\r
+                      classpathref="compile.classpath"/>\r
+               <copy toDir="${classes.dir}">\r
+                       <fileset dir="src"\r
+                   excludes="**/CVS/**,**/*.bak,**/*.java,**/*.jj,**/package.html,overview.html"/>\r
+               </copy>\r
+       </target>\r
+       \r
+       <target name="jar" depends="compile">\r
+               <property name="jarfile" location="build/${artifact.name}-${revision}.jar"/>\r
+               <jar destfile="${jarfile}" basedir="${classes.dir}">\r
+                       <manifest>\r
+                               <attribute name="Implementation-Vendor" value="Attila Szegedi"/>\r
+                               <attribute name="Implementation-Version" value="${revision}"/>\r
+                               <attribute name="Implementation-Title" value="${project.name}"/>\r
+                               <attribute name="Implementation-URL" value="http://sourceforge.net/projects/dynalang"/>\r
+                   </manifest>\r
+               </jar>\r
+       </target>\r
+\r
+       <target depends="" name="doc">\r
+               <mkdir dir="${build.dir}/doc/javadoc"/>\r
+               <delete includeEmptyDirs="yes">\r
+                       <fileset dir="${build.dir}/doc/javadoc" includes="**/*" />\r
+               </delete>\r
+               <javadoc author="true"\r
+                       destdir="${build.dir}/doc/javadoc"\r
+                       doctitle="${project.name} ${revision}"\r
+                       packagenames="org.dynalang.*"\r
+                       sourcepath="src"\r
+                       version="true"\r
+                       windowtitle="${project.name} ${revision} API"\r
+                       overview="src/overview.html"\r
+                       use="true">\r
+               </javadoc>\r
+               <copy todir="${build.dir}/doc">\r
+                       <fileset dir="src/doc" includes="**/*"/>\r
+               </copy>\r
+       </target>\r
+\r
+       <target name="coverage-instrument" depends="compile">\r
+               <property name="coverage.dir" location="${build.dir}/coverage"/>\r
+               <property name="coverage.classes.dir" location="${build.dir}/coverage/classes"/>\r
+               <mkdir dir="${coverage.classes.dir}"/>\r
+               <path id="emma.lib">\r
+                       <pathelement location="build/lib/test/emma.jar" />\r
+                       <pathelement location="build/lib/test/emma_ant.jar" />\r
+               </path>\r
+               <taskdef resource="emma_ant.properties" classpathref="emma.lib" />\r
+               <property name="coverage.instrumentationfile" location="${coverage.dir}/instrumentation"/>\r
+               <emma enabled="true">\r
+                       <instr \r
+               instrpath="${classes.dir}" outdir="${coverage.classes.dir}" \r
+               outfile="${coverage.instrumentationfile}" mode="copy"/>\r
+               </emma>\r
+               <copy todir="${coverage.classes.dir}">\r
+                       <fileset dir="src" excludes="**/*.java"/>\r
+               </copy>\r
+               <copy todir="${coverage.classes.dir}">\r
+                       <fileset dir="${classes.dir}"/>\r
+               </copy>\r
+               <property name="coverage.outfile" location="${coverage.dir}/coverage"/>\r
+       </target>\r
+\r
+       <target name="test-compile" depends="compile">\r
+               <property name="test.classes.dir" location="${build.dir}/test/classes"/>\r
+               <mkdir dir="${test.classes.dir}"/>\r
+               <javac srcdir="testsrc" destdir="${test.classes.dir}" deprecation="off" \r
+                      debug="on" optimize="off" target="1.5" source="1.5">\r
+                       <classpath>\r
+                               <pathelement path="${classes.dir}" />\r
+                               <pathelement path="build/lib/test/junit.jar" />\r
+                       </classpath>\r
+               </javac>\r
+               <copy toDir="${test.classes.dir}">\r
+                       <fileset dir="testsrc"\r
+                   excludes="**/CVS/**,**/*.bak,**/*.java,**/*.jj,**/package.html"/>\r
+               </copy>\r
+       </target>\r
+\r
+       <target name="test-run" depends="test-compile, coverage-instrument">\r
+               <junit printsummary="on" fork="true" forkmode="once" \r
+                       showoutput="true" haltonerror="true" haltonfailure="true">\r
+                       <sysproperty key="emma.coverage.out.file" value="${coverage.outfile}"/>\r
+                       <classpath>\r
+                               <pathelement path="${coverage.classes.dir}" />\r
+                               <pathelement path="${test.classes.dir}" />\r
+                               <pathelement path="build/lib/test/emma.jar"/>\r
+                               <pathelement path="build/lib/test/junit.jar"/>\r
+                       </classpath>\r
+                       <batchtest todir="build/test">\r
+                               <fileset dir="${test.classes.dir}" includes="**/Test*.class"/>\r
+                       </batchtest>\r
+                       <formatter type="plain" usefile="false" />\r
+                       <formatter type="xml"/>\r
+               </junit>\r
+               <mkdir dir="build/test/report"/>\r
+               <junitreport todir="build/test">\r
+                       <fileset dir="build/test" includes="TEST-*.xml"/>\r
+                       <report todir="build/test/report"/>\r
+               </junitreport>\r
+       </target>\r
+\r
+       <target name="test" depends="test-run">\r
+               <property name="coverage.report.dir" location="${build.dir}/coverage/report"/>\r
+               <mkdir dir="${coverage.report.dir}"/>\r
+               <delete dir="${coverage.report.dir}"/>\r
+               <mkdir dir="${coverage.report.dir}"/>\r
+               <emma enabled="true">\r
+                       <report>\r
+                               <fileset dir="${basedir}">\r
+                                       <include name="build/coverage/instrumentation"/>\r
+                                       <include name="build/coverage/coverage"/>\r
+                               </fileset>\r
+                               <sourcepath>\r
+                                       <dirset dir="${basedir}">\r
+                                               <include name="src"/>\r
+                                       </dirset>\r
+                               </sourcepath>\r
+                               <html outfile="${coverage.report.dir}/index.html"/>\r
+                       </report>\r
+               </emma>\r
+       </target>\r
+       \r
+       <target name="dist" depends="clean,test-run,jar,doc">\r
+               <mkdir dir="build/${artifact.name}-${revision}"/>\r
+               <copy todir="build/${artifact.name}-${revision}">\r
+                       <fileset dir="." excludes="build/**/*"/>\r
+               </copy>\r
+               <copy todir="build/${artifact.name}-${revision}">\r
+                       <fileset dir="." \r
+                               includes="\r
+                                       build/doc/**/* \r
+                                       build/${artifact.name}-${revision}.jar"\r
+                       />\r
+               </copy>\r
+               <tar destfile="build/${artifact.name}-${revision}.tgz" \r
+                       compression="gzip" basedir="build" \r
+                       includes="${artifact.name}-${revision}/**/*"/>\r
+       </target>\r
+</project>\r