Blob Blame History Raw
%global namedreltag .Alpha2
%global namedversion %{version}%{?namedreltag}

Name:             hibernate-hql
Version:          1.3.0
Release:          0.2%{namedreltag}%{dist}
Summary:          Hibernate Query Parser
License:          LGPLv2 and ASL 2.0
Url:              https://github.com/hibernate/hibernate-hql-parser
Source0:          https://github.com/hibernate/hibernate-hql-parser/archive/%{namedversion}/%{name}-%{namedversion}.tar.gz

Source1:          https://repository.jboss.org/nexus/service/local/repositories/releases/content/org/hibernate/hql/%{name}-parser/%{namedversion}/%{name}-parser-%{namedversion}.pom
Source2:          https://repository.jboss.org/nexus/service/local/repositories/releases/content/org/hibernate/hql/%{name}-lucene/%{namedversion}/%{name}-lucene-%{namedversion}.pom

BuildRequires:    maven-local
BuildRequires:    mvn(org.antlr:antlr-runtime) >= 3.4
BuildRequires:    mvn(org.antlr:antlr3-maven-plugin)
BuildRequires:    mvn(org.antlr:stringtemplate)
BuildRequires:    mvn(org.apache.lucene:lucene-core) >= 5.3.0
BuildRequires:    mvn(org.apache.lucene:lucene-analyzers) >= 5.3.0
BuildRequires:    mvn(org.apache.lucene:lucene-facet) >= 5.3.0
BuildRequires:    mvn(org.bsc.maven:maven-processor-plugin)
BuildRequires:    mvn(org.hibernate:hibernate-search-engine) >= 5.3.0
BuildRequires:    mvn(org.hibernate.javax.persistence:hibernate-jpa-2.1-api)
BuildRequires:    mvn(org.jboss.logging:jboss-logging)
BuildRequires:    mvn(org.jboss.logging:jboss-logging-processor) >= 1.2.0

BuildArch:        noarch

%description
Experimental new parser for HQL and JP-QL queries, to convert these into SQL
and other different targets such as Lucene queries, Map/Reduce queries for
NoSQL stores, make it possible to perform more sophisticated SQL
transformations.

%package javadoc
Summary:          Javadoc for %{name}

%description javadoc
This package contains the API documentation for %{name}.

%prep
%setup -q -n %{name}-parser-%{namedversion}

find . -name '*.jar' -delete
find . -name '*.class' -delete

sed -i "s,59 Temple Place,51 Franklin Street,;s,Suite 330,Fifth Floor,;s,02111-1307,02110-1301," license.txt

cp %{SOURCE1} parser/pom.xml
cp %{SOURCE2} lucene/pom.xml
# This is a dummy POM added just to ease building in the RPM platforms
cat > pom.xml << EOF
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>org.hibernate.hql</groupId>
    <artifactId>hibernate-hql-parent</artifactId>
    <version>%{namedversion}</version>
    <packaging>pom</packaging>
    <name>Hibernate HQL/JP-QL Parent</name>
    <description>Hibernate HQL/JP-QL</description>

    <modules>
      <module>parser</module>
      <module>lucene</module>
    </modules>
  
</project>
EOF

%pom_add_plugin "org.bsc.maven:maven-processor-plugin:2.0.2 " parser '
<configuration>
    <defaultOutputDirectory>${project.build.directory}/generated-sources/logging</defaultOutputDirectory>
    <processors>
        <processor>org.jboss.logging.processor.apt.LoggingToolsProcessor</processor>
    </processors>
    <compilerArguments>
      -nowarn -proc:only -encoding UTF-8 
      -source 1.6 -target 1.6 
      -sourcepath ${project.build.directory}/generated-sources/antlr3 
      -Adebug=true -AskipTranslations=true
    </compilerArguments>
</configuration>
<executions>
    <execution>
        <id>process</id>
        <phase>generate-sources</phase>
        <goals>
            <goal>process</goal>
        </goals>
    </execution>
</executions>
<dependencies>
    <dependency>
        <groupId>org.jboss.logging</groupId>
        <artifactId>jboss-logging-processor</artifactId>
        <version>1.2.0.Final</version>
    </dependency>
</dependencies>'

%pom_add_plugin "org.antlr:antlr3-maven-plugin:3.4" parser " 
<executions>
  <execution>
   <phase>generate-sources</phase>
   <goals>
    <goal>antlr</goal>
   </goals>
   <configuration>
    <sourceDirectory>src/main/antlr</sourceDirectory>
   </configuration>
 </execution>
</executions>"

# package org.antlr.stringtemplate does not exist
%pom_add_dep org.antlr:stringtemplate:3.3-SNAPSHOT:provided parser
%pom_add_dep org.apache.lucene:lucene-core:5.3.0:provided lucene
%pom_add_dep org.apache.lucene:lucene-analyzers:5.3.0:provided lucene
%pom_add_dep org.apache.lucene:lucene-facet:5.3.0:provided lucene

%mvn_package :hibernate-hql-parent __noinstall

%build
%mvn_build -f -- -Dproject.build.sourceEncoding=UTF-8

%install
%mvn_install

%files -f .mfiles
%doc README.md
%license copyright.txt license.txt

%files javadoc -f .mfiles-javadoc
%license copyright.txt license.txt

%changelog
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.0-0.2.Alpha2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Sun Jul 10 2016 gil cattaneo <puntogil@libero.it> 1.3.0-0.1.Alpha2
- Update to 1.3.0.Alpha2

* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.0-0.7.Alpha6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Sat Aug 08 2015 gil cattaneo <puntogil@libero.it> 1.0.0-0.6.Alpha6
- fix FTBFS rhbz#1239561
- generate main Logging classes
- fix BR list and use BR mvn()-like
- force UTF-8 for source encoding
- remove duplicate files
- introduce license macro
- fix some rpmlint problem
- dummy parent pom not installed

* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-0.5.Alpha6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-0.4.Alpha6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Fri Apr 18 2014 Marek Goldmann <mgoldman@redhat.com> - 1.0.0-0.3.Alpha6
- Upstream release 1.0.0.Alpha6

* Wed Oct 23 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.0.0-0.2.Alpha5
- Rebuild to regenerate broken POMs
- Related: rhbz#1021484

* Thu Oct 10 2013 Marek Goldmann <mgoldman@redhat.com> - 1.0.0-0.1.Alpha5
- Initial import