%define maven 0 %define with_j2se_integration 1 Name: java-codemodel Version: 2.1 Release: 3mamba Summary: Java source code generation library Group: Development/Libraries/Java Vendor: openmamba Distribution: openmamba Packager: gil URL: https://codemodel.dev.java.net/ # svn checkout https://codemodel.dev.java.net/svn/codemodel/tags/codemodel-2.1 --username Source0: codemodel-%{version}-src-svn.tar.gz Source1: maven2-2.2.0-settings.xml Source2: java-codemodel-2.1-autogeneratedfiles.tar.gz License: Common Development and Distribution License BuildRequires: apache-ant %if %maven BuildRequires: apache-maven BuildRequires: apache-maven-plugin-changes BuildRequires: apache-maven-plugin-compiler BuildRequires: apache-maven-plugin-jar BuildRequires: apache-maven-plugin-javadoc BuildRequires: apache-maven-plugin-surefire BuildRequires: java-wagon-svn %endif #BuildRequires: java-package-rename-task BuildRequires: java-junit3 Requires: jpackage-utils BuildRoot: %{_tmppath}/%{name}-%{version}-root %description CodeModel is a Java library for code generators; it provides a way to generate Java programs in a way much nicer than PrintStream.println(). This project is a spin-off from the JAXB RI for its schema compiler generate Java source files. %package javadoc Group: Documentation Summary: Javadoc for %{name} %description javadoc CodeModel is a Java library for code generators; it provides a way to generate Java programs in a way much nicer than PrintStream.println(). This project is a spin-off from the JAXB RI for its schema compiler generate Java source files. This package contains javadoc for %{name}. %prep %setup -q -n codemodel-%{version} for j in $(find . -name "*.jar"); do mv $j $j.no done for j in $(find . -name "build.xml"); do mv $j $j-old done %if %maven cp %{SOURCE1} settings.xml mkdir -p .m2/repository/JPP/maven2 sed -i -e "s|__INTERNAL_REPO_PLACEHOLDER__|file://`pwd`/external_repo|g" settings.xml sed -i -e "s|__EXTERNAL_REPO_PLACEHOLDER__|file://`pwd`/.m2/repository|g" settings.xml %else tar xf %{SOURCE2} %endif %build export JAVA_HOME=/usr/lib/jvm/jdk-sun export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository mkdir -p $MAVEN_REPO_LOCAL %if %maven export MAVEN_SETTINGS=$PWD/settings.xml mkdir external_repo ln -s %{_javadir} external_repo/JPP mvn-jpp \ -e \ -s $MAVEN_SETTINGS \ -Dmaven.test.failure.ignore=true \ -Dmaven.repo.local=$MAVEN_REPO_LOCAL \ ant:ant install javadoc:javadoc %else pushd codemodel export CLASSPATH="" CLASSPATH=$CLASSPATH:$(build-classpath junit-3.8.2):target/classes:target/test-classes ant \ -Duser.home=$PWD \ -Dmaven.repo.local=$MAVEN_REPO_LOCAL \ -Dmaven.settings.offline=true \ -Dmaven.settings.interactiveMode=false \ -Dmaven.test.skip=true \ -Dbuild.sysclasspath=first \ jar javadoc %if %with_j2se_integration mv target/codemodel-%{version}.jar ../ %endif popd pushd codemodel-annotation-compiler export CLASSPATH="" CLASSPATH=$CLASSPATH:../codemodel-%{version}.jar CLASSPATH=$CLASSPATH:$(build-classpath ant junit-3.8.2):target/classes:target/test-classes ant \ -Duser.home=$PWD \ -Dmaven.repo.local=$MAVEN_REPO_LOCAL \ -Dmaven.settings.offline=true \ -Dmaven.settings.interactiveMode=false \ -Dbuild.sysclasspath=first \ jar javadoc popd %if %with_j2se_integration pushd codemodel #ln -sf $(build-classpath package-rename-task) lib/package-rename-task.jar mv lib/package-rename-task.jar.no lib/package-rename-task.jar mv build.xml build.xml-mvn mv build.xml-old build.xml export CLASSPATH="" CLASSPATH=$CLASSPATH:../codemodel-annotation-compiler/target/codemodel-annotation-compiler-%{version}.jar CLASSPATH=$CLASSPATH:../codemodel-%{version}.jar CLASSPATH=$CLASSPATH:$(build-classpath ant junit-3.8.2):target/classes:target/test-classes ant rm -rf target/classes/com rm -rf src/main/java/com mv j2se-integration/com src/main/java/ mv build.xml build.xml-old mv build.xml-mvn build.xml export CLASSPATH="" CLASSPATH=$CLASSPATH:$(build-classpath junit-3.8.2):target/classes:target/test-classes ant \ -Duser.home=$PWD \ -Dmaven.repo.local=$MAVEN_REPO_LOCAL \ -Dmaven.settings.offline=true \ -Dmaven.settings.interactiveMode=false \ -Dmaven.test.skip=true \ -Dmaven.build.finalName=codemodel-j2se-integration-%{version} \ -Dbuild.sysclasspath=first \ jar popd %endif %endif %install [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}%{_datadir}/maven2/poms install -pm 644 pom.xml %{buildroot}%{_datadir}/maven2/poms/JPP.codemodel-parent.pom %add_to_maven_depmap com.sun codemodel %{version} JPP codemodel-parent %if %with_j2se_integration install -pm 644 codemodel/target/codemodel-j2se-integration-%{version}.jar \ %{buildroot}%{_javadir}/ install -pm 644 codemodel-%{version}.jar \ %{buildroot}%{_javadir}/codemodel-%{version}.jar %else install -pm 644 codemodel/target/codemodel-%{version}.jar \ %{buildroot}%{_javadir}/codemodel-%{version}.jar %endif install -pm 644 codemodel/pom.xml %{buildroot}%{_datadir}/maven2/poms/JPP.codemodel.pom %add_to_maven_depmap com.sun.codemodel codemodel %{version} JPP codemodel install -pm 644 codemodel-annotation-compiler/target/codemodel-annotation-compiler-%{version}.jar \ %{buildroot}%{_javadir}/codemodel-annotation-compiler-%{version}.jar install -pm 644 codemodel-annotation-compiler/pom.xml %{buildroot}%{_datadir}/maven2/poms/JPP.codemodel-annotation-compiler.pom %add_to_maven_depmap com.sun.codemodel codemodel-annotation-compiler %{version} JPP codemodel-annotation-compiler ( cd %{buildroot}%{_javadir} for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"` done ) mkdir -p %{buildroot}%{_javadocdir}/codemodel-%{version}/annotation-compiler cp -pr codemodel/target/site/apidocs/* %{buildroot}%{_javadocdir}/codemodel-%{version} cp -pr codemodel-annotation-compiler/target/site/apidocs/* %{buildroot}%{_javadocdir}/codemodel-%{version}/annotation-compiler ln -sf codemodel-%{version} %{buildroot}%{_javadocdir}/codemodel %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %files %defattr(-,root,root) %{_javadir}/codemodel-%{version}.jar %{_javadir}/codemodel.jar %{_javadir}/codemodel-annotation-compiler-%{version}.jar %{_javadir}/codemodel-annotation-compiler.jar %if %with_j2se_integration %{_javadir}/codemodel-j2se-integration-%{version}.jar %{_javadir}/codemodel-j2se-integration.jar %endif %{_datadir}/maven2/poms %{_mavendepmapfragdir} %doc LICENSE.txt %files javadoc %defattr(-,root,root) %{_javadocdir}/codemodel-%{version} %{_javadocdir}/codemodel %changelog * Fri Nov 26 2010 gil 2.1-3mamba - rebuilt devel * Sun May 23 2010 gil 2.1-2mamba - rebuilt with ant * Mon Jul 27 2009 gil 2.1-1mamba - package created by autospec