%global namedreltag -b001 %global namedversion %{version}%{?namedreltag} Name: glassfish-pfl Version: 3.2.0 Release: 0.1.b001%{?dist} Summary: GlassFish Primitive Function Library Group: Development/Libraries License: CDDL and GPLv2 with exceptions URL: http://java.net/projects/gmbal/pages/Home # hg clone -r VERSION-3.2.0-b001 https://hg.java.net/hg/gmbal~pfl glassfish-pfl-3.2.0-b001 # find glassfish-pfl-3.2.0-b001/ -name '*.jar' -delete # find glassfish-pfl-3.2.0-b001/ -name '*.class' -delete # find glassfish-pfl-3.2.0-b001/ -name '*.zip' -delete # rm -rf glassfish-pfl-3.2.0-b001/src/org/glassfish/pfl/objectweb # tar czf glassfish-pfl-3.2.0-b001-src-hg.tar.gz glassfish-pfl-3.2.0-b001 Source0: %{name}-%{namedversion}-src-hg.tar.gz # custom build file Source1: %{name}-%{namedversion}-00-build.xml Source2: http://repo1.maven.org/maven2/org/glassfish/pfl/pfl-basic/3.2.0-b001/pfl-basic-3.2.0-b001.pom Source3: http://repo1.maven.org/maven2/org/glassfish/pfl/pfl-basic-tools/3.2.0-b001/pfl-basic-tools-3.2.0-b001.pom Source4: http://repo1.maven.org/maven2/org/glassfish/pfl/pfl-dynamic/3.2.0-b001/pfl-dynamic-3.2.0-b001.pom # custom pom file Source5: pfl-ff-%{namedversion}.pom Source6: http://repo1.maven.org/maven2/org/glassfish/pfl/pfl-tf/3.2.0-b001/pfl-tf-3.2.0-b001.pom Source7: http://repo1.maven.org/maven2/org/glassfish/pfl/pfl-tf-tools/3.2.0-b001/pfl-tf-tools-3.2.0-b001.pom Source8: http://repo1.maven.org/maven2/org/glassfish/pfl/pfl-test/3.2.0-b001/pfl-test-3.2.0-b001.pom # wget -O glassfish-LICENSE.txt https://svn.java.net/svn/glassfish~svn/tags/legal-1.1/src/main/resources/META-INF/LICENSE.txt # glassfish-pfl package don't include the license file Source9: glassfish-LICENSE.txt Patch0: %{name}-%{namedversion}-use-system-asm.patch BuildRequires: java-devel BuildRequires: jpackage-utils BuildRequires: ant BuildRequires: aqute-bnd BuildRequires: objectweb-asm # test deps BuildRequires: geronimo-ejb BuildRequires: junit4 Requires: objectweb-asm Requires: java Requires: jpackage-utils BuildArch: noarch %description The GlassFish MBean Annotation Library (gmbal, pronounced "Gumball") is a library for using annotations to create Open MBeans. There is similar functionality in JSR 255 for JDK 7, but gmbal only requires JDK 5. Gmbal also supports JSR 77 ObjectNames and the GlassFish Version 3 AMX requirements for MBeans. AS a consequence, gmbal-enabled classes will be fully manageable in GlassFish v3 using the standard GlassFish v3 admin tools, while still being manageable with generic MBean tools when not run under GlassFish v3. This package contains the gmbal primitive function libraries. %package javadoc Group: Documentation Summary: Javadoc for %{name} Requires: jpackage-utils %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n %{name}-%{namedversion} cp -p %{SOURCE1} build.xml %patch0 -p1 cp -p %{SOURCE4} pom-dynamic.xml %pom_remove_dep org.glassfish.pfl:pfl-asm pom-dynamic.xml %pom_xpath_inject "pom:project/pom:dependencies" " asm asm 3.3.1 asm asm-util 3.3.1 " pom-dynamic.xml cp -p %{SOURCE6} pom-tf.xml %pom_remove_dep org.glassfish.pfl:pfl-asm pom-tf.xml %pom_xpath_inject "pom:project/pom:dependencies" " asm asm 3.3.1 asm asm-tree 3.3.1 asm asm-util 3.3.1 " pom-tf.xml cp -p %{SOURCE7} pom-tf-tools.xml %pom_remove_dep org.glassfish.pfl:pfl-asm pom-tf-tools.xml %pom_xpath_inject "pom:project/pom:dependencies" " asm asm 3.3.1 asm asm-tree 3.3.1 asm asm-util 3.3.1 " pom-tf-tools.xml cp -p %{SOURCE9} LICENSE.txt sed -i 's/\r//' LICENSE.txt %build %ant dist javadoc test %install mkdir -p %{buildroot}%{_javadir}/%{name} install -m 644 target/pfl-basic.jar %{buildroot}%{_javadir}/%{name}/%{name}-basic.jar install -m 644 target/pfl-basic-tools.jar %{buildroot}%{_javadir}/%{name}/%{name}-basic-tools.jar install -m 644 target/pfl-dynamic.jar %{buildroot}%{_javadir}/%{name}/%{name}-dynamic.jar install -m 644 target/pfl-ff.jar %{buildroot}%{_javadir}/%{name}/%{name}-ff.jar install -m 644 target/pfl-test.jar %{buildroot}%{_javadir}/%{name}/%{name}-test.jar install -m 644 target/pfl-tf-tools.jar %{buildroot}%{_javadir}/%{name}/%{name}-tf-tools.jar install -m 644 target/pfl-tf.jar %{buildroot}%{_javadir}/%{name}/%{name}-tf.jar mkdir -p %{buildroot}%{_mavenpomdir} install -pm 644 %{SOURCE2} %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-basic.pom %add_maven_depmap JPP.%{name}-%{name}-basic.pom %{name}/%{name}-basic.jar install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-basic-tools.pom %add_maven_depmap JPP.%{name}-%{name}-basic-tools.pom %{name}/%{name}-basic-tools.jar install -pm 644 pom-dynamic.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-dynamic.pom %add_maven_depmap JPP.%{name}-%{name}-dynamic.pom %{name}/%{name}-dynamic.jar install -pm 644 %{SOURCE5} %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-ff.pom %add_maven_depmap JPP.%{name}-%{name}-ff.pom %{name}/%{name}-ff.jar install -pm 644 pom-tf.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-tf.pom %add_maven_depmap JPP.%{name}-%{name}-tf.pom %{name}/%{name}-tf.jar install -pm 644 pom-tf-tools.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-tf-tools.pom %add_maven_depmap JPP.%{name}-%{name}-tf-tools.pom %{name}/%{name}-tf-tools.jar install -pm 644 %{SOURCE8} %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}-test.pom %add_maven_depmap JPP.%{name}-%{name}-test.pom %{name}/%{name}-test.jar mkdir -p %{buildroot}%{_javadocdir}/%{name} cp -pr target/apidocs/* %{buildroot}%{_javadocdir}/%{name} %files %dir %{_javadir}/%{name} %{_javadir}/%{name}/%{name}-*.jar %{_mavenpomdir}/JPP.%{name}-%{name}-*.pom %{_mavendepmapfragdir}/%{name} %doc LICENSE.txt %files javadoc %{_javadocdir}/%{name} %doc LICENSE.txt %changelog * Wed Sep 19 2012 gil cattaneo 3.2.0-0.1.b001 - initial rpm