Name: empire-db Version: 2.4.2 Release: 1%{?dist} Summary: A relational database abstraction layer and data persistence component License: ASL 2.0 URL: http://empire-db.apache.org/ Source0: http://www.apache.org/dist/%{name}/%{version}/apache-%{name}-%{version}-dist.tar.gz BuildRequires: java-devel # Core BuildRequires: mvn(commons-beanutils:commons-beanutils) BuildRequires: mvn(org.slf4j:slf4j-api) # Codegen BuildRequires: mvn(org.apache.velocity:velocity) BuildRequires: mvn(org.slf4j:slf4j-log4j12) # Maven plugin BuildRequires: mvn(log4j:log4j) BuildRequires: mvn(commons-logging:commons-logging) BuildRequires: mvn(org.apache.maven:maven-plugin-api) BuildRequires: mvn(org.apache.maven:maven-project) # Unavailable deps %if 0 # Java Server Faces 2.x extensions BuildRequires: mvn(com.sun.faces:jsf-api) BuildRequires: mvn(com.sun.faces:jsf-impl) BuildRequires: mvn(javax.servlet:servlet-api) BuildRequires: mvn(org.apache.myfaces.core:myfaces-impl) BuildRequires: mvn(org.apache.tomcat:el-api) # Struts2 extensions BuildRequires: mvn(javassist:javassist) BuildRequires: mvn(javax.portlet:portlet-api) BuildRequires: mvn(javax.servlet.jsp:jsp-api) BuildRequires: mvn(org.apache.struts:struts2-core) BuildRequires: mvn(struts2-portlet-plugin) BuildRequires: mvn(org.apache.struts.xwork:xwork-core) # Examples # CXF BuildRequires: mvn(org.apache.cxf:cxf-rt-frontend-jaxws) BuildRequires: mvn(org.apache.cxf:cxf-rt-transports-http-jetty) # JSF2 BuildRequires: mvn(org.apache.myfaces.core:myfaces-api) BuildRequires: mvn(org.codehaus.mojo:sysdeo-tomcat-maven-plugin) %endif # Advanced BuildRequires: mvn(postgresql:postgresql) # Basic BuildRequires: mvn(mysql:mysql-connector-java) # Spring BuildRequires: mvn(commons-dbcp:commons-dbcp) BuildRequires: mvn(org.springframework:spring-aop) BuildRequires: mvn(org.springframework:spring-context) BuildRequires: mvn(org.springframework:spring-jdbc) BuildRequires: mvn(org.springframework:spring-orm) # Test deps BuildRequires: mvn(com.h2database:h2) BuildRequires: mvn(commons-io:commons-io) %if %{?fedora} > 19 BuildRequires: mvn(hsqldb:hsqldb:1) %else BuildRequires: mvn(hsqldb:hsqldb) %endif BuildRequires: mvn(junit:junit) BuildRequires: mvn(org.apache.derby:derby) BuildRequires: mvn(org.mockito:mockito-core) %if 0 BuildRequires: mvn(org.xerial:sqlite-jdbc) %endif #BuildRequires: exec-maven-plugin BuildRequires: maven-local BuildRequires: maven-plugin-bundle BuildRequires: maven-plugin-plugin BuildRequires: maven-remote-resources-plugin BuildRequires: maven-site-plugin BuildArch: noarch %description Apache Empire-db is an Open Source relational data persistence component which allows database vendor independent dynamic query definition as well as safe and simple data retrieval and updating. Compared to most other solutions like e.g. Hibernate, TopLink, iBATIS or JPA implementations, Empire-db takes a considerably different approach, with a special focus on compile-time safety, reduced redundancies and improved developer productivity. %package maven-plugin Summary: Apache Empire-db Maven Plugin %description maven-plugin This package contains Maven plugin for %{name}. %package examples Summary: Apache Empire-db Examples %description examples This package contains examples for %{name}. %package javadoc Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %package doc Summary: Documentation for %{name} %description doc This package contains documentation for %{name}. %prep %setup -q -n apache-%{name}-%{version} find . -name "*.jar" -print -delete find . -name "*.class" -print -delete mv src/* . %pom_remove_plugin :maven-source-plugin %pom_remove_plugin :animal-sniffer-maven-plugin %pom_disable_module %{name}-jsf2 %pom_disable_module %{name}-struts2 %pom_disable_module %{name}-example-cxf %{name}-examples %pom_disable_module %{name}-example-struts2 %{name}-examples %pom_disable_module %{name}-example-struts2-cxf %{name}-examples %pom_disable_module %{name}-example-jsf2 %{name}-examples %if %{?fedora} > 19 %pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId = 'hsqldb']/pom:version" 1 %pom_xpath_set "pom:project/pom:dependencies/pom:dependency[pom:artifactId = 'hsqldb']/pom:version" 1 %{name}-examples/%{name}-example-codegen for p in %{name} \ %{name}-codegen \ %{name}-examples/%{name}-example-cxf \ %{name}-examples/%{name}-example-jsf2 \ %{name}-examples/%{name}-example-spring \ %{name}-examples/%{name}-example-struts2; do %pom_xpath_inject "pom:project/pom:dependencies/pom:dependency[pom:artifactId = 'hsqldb']" "1" ${p} done %pom_xpath_set "pom:project/pom:build/pom:plugins/pom:plugin[pom:artifactId = 'empire-db-maven-plugin']/pom:dependencies/pom:dependency[pom:artifactId = 'hsqldb']/pom:version" 1 %{name}-examples/%{name}-example-codegen %endif # Use only maven3 apis %pom_remove_dep org.apache.maven:maven-project %{name}-maven-plugin %pom_add_dep org.apache.maven:maven-core %{name}-maven-plugin # Unavailable test deps %pom_remove_dep org.xerial:sqlite-jdbc %{name} rm -r %{name}/src/test/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLiteTest.java \ %{name}/src/test/java/org/apache/empire/db/IntegerTest.java %build %mvn_package ":%{name}-maven-plugin" maven-plugin %mvn_package ":%{name}-example*" examples %mvn_build %install %mvn_install %files -f .mfiles %dir %{_javadir}/%{name} %doc CHANGELOG.txt LICENSE.txt NOTICE.txt README.txt %files maven-plugin -f .mfiles-maven-plugin %doc LICENSE.txt NOTICE.txt %files examples -f .mfiles-examples %doc LICENSE.txt NOTICE.txt empire-db-examples/tutorial.doc %files javadoc -f .mfiles-javadoc %doc LICENSE.txt NOTICE.txt %files doc %doc tutorial.pdf LICENSE.txt NOTICE.txt %changelog * Thu Oct 31 2013 gil cattaneo 2.4.2-1 - initial rpm