diff --git a/pom-maven2jpp-depcat.xsl b/pom-maven2jpp-depcat.xsl
deleted file mode 100644
index e1042c5..0000000
--- a/pom-maven2jpp-depcat.xsl
+++ /dev/null
@@ -1,109 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-ERROR
-
-
-
-
-
-
-
-
-
- JPP
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-ERROR
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-ERROR
-
-
-
-
-
- .jar
- .
-
-
- .jar
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pom-maven2jpp-mapdeps.xsl b/pom-maven2jpp-mapdeps.xsl
deleted file mode 100644
index 578f568..0000000
--- a/pom-maven2jpp-mapdeps.xsl
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/pom-maven2jpp-newdepmap.xsl b/pom-maven2jpp-newdepmap.xsl
deleted file mode 100644
index ea1dcd3..0000000
--- a/pom-maven2jpp-newdepmap.xsl
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/qdox-1.12.1.tar.xz b/qdox-1.12.1.tar.xz
deleted file mode 100644
index 4206ff1..0000000
--- a/qdox-1.12.1.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:7fa0e11cfcb4d8f6be1feb77af6febd5295effb8f346aef7ecc15e973adf0a6d
-size 404280
diff --git a/qdox-1.6-jpp-depmap.xml b/qdox-1.6-jpp-depmap.xml
deleted file mode 100644
index 8b42768..0000000
--- a/qdox-1.6-jpp-depmap.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
-
-
- ant
- ant
- 1.5.1
-
-
- JPP
- ant
- ant.jar
- 1.5.1
-
-
-
-
- jmock
- jmock
- 1.0.0
-
-
- JPP
- jmock
- jmock.jar
- 1.0.0
-
-
-
-
- junit
- junit
- 3.8.1
-
-
- JPP
- junit
- junit.jar
- 3.8.1
-
-
-
-
- xml-apis
- xml-apis
- 1.0.b2
-
-
- JPP
- xml-apis
- xml-commons-apis.jar
- 2.0.2
-
-
-
diff --git a/qdox-2.0-M9-project.tar.gz b/qdox-2.0-M9-project.tar.gz
new file mode 100644
index 0000000..c2025d4
--- /dev/null
+++ b/qdox-2.0-M9-project.tar.gz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7e73518ba8399434a0f0d54f96e991395edca0ccba555ef9967ef8d94e8201bd
+size 521668
diff --git a/qdox-LocatedDef.java b/qdox-LocatedDef.java
deleted file mode 100644
index 40d7337..0000000
--- a/qdox-LocatedDef.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.thoughtworks.qdox.parser.structs;
-
-public class LocatedDef {
-
- public int lineNumber;
-
-}
diff --git a/qdox-MANIFEST.MF b/qdox-MANIFEST.MF
new file mode 100644
index 0000000..f2aea34
--- /dev/null
+++ b/qdox-MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.4
+Bundle-Name: %pluginName
+Bundle-SymbolicName: com.thoughtworks.qdox
+Bundle-Version: 1.6.3.v20081201-1400
+Export-Package: com.thoughtworks.qdox;version="1.6.3",com.thoughtworks
+ .qdox.ant;version="1.6.3",com.thoughtworks.qdox.directorywalker;versi
+ on="1.6.3",com.thoughtworks.qdox.junit;version="1.6.3",com.thoughtwor
+ ks.qdox.model;version="1.6.3",com.thoughtworks.qdox.model.util;versio
+ n="1.6.3",com.thoughtworks.qdox.parser;version="1.6.3",com.thoughtwor
+ ks.qdox.parser.impl;version="1.6.3",com.thoughtworks.qdox.parser.stru
+ cts;version="1.6.3",com.thoughtworks.qdox.tools;version="1.6.3"
+Bundle-ManifestVersion: 2
+Import-Package: junit.framework;version="[3.8.2,4.0.0)";resolution:=op
+ tional,org.apache.tools.ant;version="[1.7.0,2.0.0)";resolution:=optio
+ nal,org.apache.tools.ant.types;version="[1.7.0,2.0.0)";resolution:=op
+ tional
diff --git a/qdox-build.xml b/qdox-build.xml
deleted file mode 100644
index e4412af..0000000
--- a/qdox-build.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ================================= WARNING ================================
- Junit isn't present in your $ANT_HOME/lib directory. Tests not executed.
- ==========================================================================
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/qdox-component-info.xml b/qdox-component-info.xml
deleted file mode 100644
index 4abc725..0000000
--- a/qdox-component-info.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/qdox.changes b/qdox.changes
index 3c8650f..7c1b6ea 100644
--- a/qdox.changes
+++ b/qdox.changes
@@ -1,3 +1,8 @@
+-------------------------------------------------------------------
+Tue Jan 1 12:48:23 UTC 2019 - Fridrich Strba
+
+- Update to version 2.0-M9
+
-------------------------------------------------------------------
Mon Oct 29 10:51:58 UTC 2018 - Fridrich Strba
diff --git a/qdox.spec b/qdox.spec
index b3e94ea..afd0a06 100644
--- a/qdox.spec
+++ b/qdox.spec
@@ -1,7 +1,7 @@
#
# spec file for package qdox
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,126 +16,106 @@
#
-%define repodir %{_javadir}/repository.jboss.com/qdox/1.6.1-brew
-%define repodirlib %{repodir}/lib
-%define repodirsrc %{repodir}/src
+%global vertag M9
+%global verbase 2.0
Name: qdox
-Version: 1.12.1
+Version: %{verbase}.%{vertag}
Release: 0
Summary: Extract class/interface/method definitions from sources
License: Apache-2.0
Group: Development/Libraries/Java
-URL: http://qdox.codehaus.org/
-# svn checkout https://svn.codehaus.org/qdox/tags/qdox-1.12.1 qdox-1.12.1
-# tar --exclude-vcs -cJf qdox-1.12.1.tar.xz qdox-1.12.1
-Source0: qdox-%{version}.tar.xz
-Source1: pom-maven2jpp-depcat.xsl
-Source2: pom-maven2jpp-newdepmap.xsl
-Source3: pom-maven2jpp-mapdeps.xsl
-Source4: qdox-1.6-jpp-depmap.xml
-Source5: qdox-LocatedDef.java
-Source6: qdox-build.xml
-Source7: qdox-component-info.xml
-BuildRequires: ant >= 1.6
+URL: https://github.com/paul-hammant/qdox
+Source0: http://repo2.maven.org/maven2/com/thoughtworks/qdox/qdox/%{verbase}-%{vertag}/%{name}-%{verbase}-%{vertag}-project.tar.gz
+Source1: qdox-MANIFEST.MF
BuildRequires: byaccj
-BuildRequires: gpg2
-BuildRequires: java-cup-bootstrap
+BuildRequires: fdupes
+BuildRequires: java-cup
+BuildRequires: java-devel
BuildRequires: javapackages-local
-BuildRequires: jflex-bootstrap
-BuildRequires: xz
-Obsoletes: %{name}-javadoc
+BuildRequires: jflex
+BuildRequires: mvn(org.sonatype.oss:oss-parent:pom:)
+Requires: mvn(org.sonatype.oss:oss-parent:pom:)
BuildArch: noarch
%description
-QDox is a high speed, small footprint parser for extracting
-class/interface/method definitions from source files complete with
-JavaDoc @tags. It is designed to be used by active code generators or
-documentation tools.
-
-%package repolib
-Summary: Artifacts to be uploaded to a repository library
-Group: Development/Libraries/Java
-
-%description repolib
-QDox is a high speed, small footprint parser for extracting
-class/interface/method definitions from source files complete with
-JavaDoc @tags. It is designed to be used by active code generators or
-documentation tools.
+QDox is a high speed, small footprint parser
+for extracting class/interface/method definitions
+from source files complete with JavaDoc @tags.
+It is designed to be used by active code
+generators or documentation tools.
%package javadoc
-Summary: Extract class/interface/method definitions from sources
+Summary: Javadoc for %{name}
Group: Development/Libraries/Java
%description javadoc
-QDox is a high speed, small footprint parser for extracting
-class/interface/method definitions from source files complete with
-JavaDoc @tags. It is designed to be used by active code generators or
-documentation tools.
+API docs for %{name}.
%prep
-%setup -q
-# % patch1 -p1
-# % patch2 -p1
-cp -p %{SOURCE5} src/java/com/thoughtworks/qdox/parser/structs/LocatedDef.java
-sed -e "s/@VERSION@/%{version}/g" %{SOURCE6} > build.xml
-tag=`echo %{name}-%{version}-%{release} | sed 's|\.|_|g'`
-sed -i "s/@TAG@/$tag/g" %{SOURCE7}
+%setup -q -n %{name}-%{verbase}-%{vertag}
+find -name *.jar -delete
+find -name *.class -delete
+rm -rf bootstrap
+
+# We don't need these plugins
+%pom_remove_plugin :animal-sniffer-maven-plugin
+%pom_remove_plugin :maven-failsafe-plugin
+%pom_remove_plugin :maven-jflex-plugin
+%pom_remove_plugin :maven-enforcer-plugin
+
+%pom_xpath_set pom:workingDirectory '${basedir}/src/main/java/com/thoughtworks/qdox/parser/impl'
%build
-export OPT_JAR_LIST="junit ant/ant-junit"
-mkdir -p target/src/java/com/thoughtworks/qdox/parser/impl
-export CLASSPATH=`pwd`/target/classes:`pwd`/target/test-classes:$(build-classpath java-cup jflex jmock)
-java JFlex.Main \
- -d src/java/com/thoughtworks/qdox/parser/impl \
- --skel src/grammar/skeleton.inner \
- src/grammar/lexer.flex
-pushd target
-%{_bindir}/byaccj \
- -Jnorun \
- -Jnoconstruct \
- -Jclass=Parser \
- -Jsemantic=Value \
- -Jpackage=com.thoughtworks.qdox.parser.impl \
- ../src/grammar/parser.y
-popd
-mv target/Parser.java src/java/com/thoughtworks/qdox/parser/impl
-rm -f src/java/com/thoughtworks/qdox/junit/APITestCase.java
-ant -Dant.build.javac.source=6 -Dant.build.javac.target=6 -Dbuild.sysclasspath=only jar
+# Generate scanners (upstream does this with maven-jflex-plugin)
+# Add the --inputstreamctor option if jflex is upgraded to a version 1.6 or higher
+CLASSPATH=$(build-classpath java-cup) \
+ jflex -d src/main/java/com/thoughtworks/qdox/parser/impl src/grammar/lexer.flex
+CLASSPATH=$(build-classpath java-cup) \
+ jflex -d src/main/java/com/thoughtworks/qdox/parser/impl src/grammar/commentlexer.flex
+
+# Generate the parsers using the command-line that the exec-maven-plugin uses
+GRAMMAR_PATH=$(pwd)/src/grammar/commentparser.y && \
+ (cd src/main/java/com/thoughtworks/qdox/parser/impl && \
+ byaccj -v -Jnorun -Jnoconstruct -Jclass=DefaultJavaCommentParser \
+ -Jpackage=com.thoughtworks.qdox.parser.impl ${GRAMMAR_PATH})
+GRAMMAR_PATH=$(pwd)/src/grammar/parser.y && \
+ (cd src/main/java/com/thoughtworks/qdox/parser/impl && \
+ byaccj -v -Jnorun -Jnoconstruct -Jclass=Parser \
+ -Jimplements=CommentHandler -Jsemantic=Value \
+ -Jpackage=com.thoughtworks.qdox.parser.impl \
+ -Jstack=500 ${GRAMMAR_PATH})
+
+# Build artifact
+mkdir -p build/classes
+javac -d build/classes -source 6 -target 6 \
+ $(find src/main/java -name \*.java)
+jar cf build/%{name}-%{verbase}-%{vertag}.jar -C build/classes .
+
+# Inject OSGi manifests
+jar ufm build/%{name}-%{verbase}-%{vertag}.jar %{SOURCE1}
+
+mkdir -p build/apidoc
+javadoc -d build/apidoc -source 6 -notimestamp $(find src/main/java -name \*.java)
%install
-# jars
-install -d -m 0755 %{buildroot}%{_javadir}
-install -pm 644 target/%{name}-%{version}.jar \
- %{buildroot}%{_javadir}/%{name}-%{version}.jar
-(cd %{buildroot}%{_javadir} && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done)
-install -d -m 755 %{buildroot}%{repodir}
-install -d -m 755 %{buildroot}%{repodirlib}
-install -p -m 644 %{SOURCE7} %{buildroot}%{repodir}/component-info.xml
-install -d -m 755 %{buildroot}%{repodirsrc}
-install -p -m 644 %{SOURCE0} %{buildroot}%{repodirsrc}
-cp -p %{buildroot}%{_javadir}/qdox.jar %{buildroot}%{repodirlib}
-
+# jar
+install -dm 0755 %{buildroot}%{_javadir}
+install -pm 0644 build/%{name}-%{verbase}-%{vertag}.jar %{buildroot}%{_javadir}/%{name}.jar
# pom
-install -d -m 755 %{buildroot}%{_mavenpomdir}
-install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/%{name}-%{version}.pom
-%add_maven_depmap %{name}-%{version}.pom %{name}-%{version}.jar
+install -dm 0755 %{buildroot}%{_mavenpomdir}
+install -pm 0644 pom.xml %{buildroot}%{_mavenpomdir}/%{name}.pom
+%add_maven_depmap %{name}.pom %{name}.jar -a qdox:qdox
+# javadoc
+mkdir -p %{buildroot}%{_javadocdir}/%{name}
+cp -aL build/apidoc/* %{buildroot}%{_javadocdir}/%{name}
+%fdupes -s %{buildroot}%{_javadocdir}
-%files
-%defattr(0644,root,root,0755)
+%files -f .mfiles
%license LICENSE.txt
-%{_javadir}/%{name}.jar
-%{_javadir}/%{name}-%{version}.jar
-%{_mavenpomdir}/*
-%if %{defined _maven_repository}
-%{_mavendepmapfragdir}/%{name}
-%else
-%{_datadir}/maven-metadata/%{name}.xml*
-%endif
+%doc README.md
-%files repolib
-%defattr(0644,root,root,0755)
-%{repodir}
-%dir %{_datadir}/java/repository.jboss.com/%{name}
-%dir %{_datadir}/java/repository.jboss.com/
+%files javadoc
+%{_javadocdir}/%{name}
+%license LICENSE.txt
%changelog