import sources

This commit is contained in:
Adam Samalik 2023-05-05 17:23:44 +02:00
commit 121c8450ad
6 changed files with 348 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
/jflex-1.7.0-clean.tar.gz
/jflex.png

22
create-tarball.sh Executable file
View File

@ -0,0 +1,22 @@
#!/bin/bash
if [ $# -ne 1 ]; then
echo "Usage: ./create-tarball.sh VERSION"
exit 1
fi
VERSION=${1}
NAME="jflex"
wget http://jflex.de/release/${NAME}-${VERSION}.tar.gz
tar xvf ${NAME}-${VERSION}.tar.gz
(
cd ${NAME}-${VERSION}
find . -name "*.jar" -delete
rm -Rf src/main/java/java_cup/ examples/
)
tar czvf ${NAME}-${VERSION}-clean.tar.gz ${NAME}-${VERSION}
rm -Rf ${NAME}-${VERSION}.tar.gz ${NAME}-${VERSION}

57
jflex.1 Normal file
View File

@ -0,0 +1,57 @@
.TH JFLEX "1" "October 2005"
.SH NAME
jflex \- a lexical analyzer generator (also known as scanner generator) for Java
.SH SYNOPSIS
.B jflex
\fI<options> <input-files>\fR
.SH DESCRIPTION
JFlex is a lexical analyzer generator (also known as scanner generator) for Java(tm), written in Java(tm). It is also a rewrite of the very useful tool JLex. JFlex is designed to work together with the LALR parser generator CUP, and the Java modification of Berkeley Yacc BYacc/J. It can also be used together with other parser generators like ANTLR or as a standalone tool.
.SH OPTIONS
.TP
\fB\-d\fR <directory>
write generated file to <directory>
.TP
\fB\-\-skel\fR <file>
use external skeleton <file>
.TP
\fB\-\-switch\fR, \fB\-\-table\fR, \fB\-\-pack\fR
set default code generation method
.TP
\fB\-\-jlex\fR
strict JLex compatibility
.TP
\fB\-\-nomin\fR
skip minimization step
.TP
\fB\-\-nobak\fR
don't create backup files
.TP
\fB\-\-dump\fR
display transition tables
.TP
\fB\-\-dot\fR
write graphviz .dot files for the generated automata (alpha)
.TP
\fB\-\-verbose\fR, \fB\-v\fR
display generation progress messages (default)
.TP
\fB\-\-quiet\fR, \fB\-q\fR
display errors only
.TP
\fB\-\-time\fR
display generation time statistics
.TP
\fB\-\-version\fR
print the version number of this copy of jflex
.TP
\fB\-\-info\fR
print system + JDK information
.TP
\fB\-\-help\fR, \fB\-h\fR
print this message
.PP
.SH AUTHOR
This manual page was written by Wolfgang Baer <WBaer@gmx.de>,
for the Debian project (but may be used by others).

9
jflex.desktop Normal file
View File

@ -0,0 +1,9 @@
[Desktop Entry]
Name=JFlex
GenericName=JFlex
Comment=Fast Scanner Generator for Java
Exec=jflex
Icon=jflex
Terminal=false
Type=Application
Categories=Development;

256
jflex.spec Normal file
View File

@ -0,0 +1,256 @@
Summary: Fast Scanner Generator
Name: jflex
Version: 1.7.0
Release: 2%{?dist}
License: BSD
URL: http://jflex.de/
BuildArch: noarch
# ./create-tarball.sh %%{version}
Source0: %{name}-%{version}-clean.tar.gz
Source2: %{name}.desktop
Source3: %{name}.png
Source4: %{name}.1
Source5: create-tarball.sh
BuildRequires: maven-local
BuildRequires: ant
BuildRequires: jflex
BuildRequires: junit
BuildRequires: sonatype-oss-parent
BuildRequires: java-devel
BuildRequires: java_cup
# Explicit javapackages-tools requires since scripts use
# /usr/share/java-utils/java-functions
Requires: javapackages-tools
%description
JFlex is a lexical analyzer generator (also known as scanner
generator) for Java, written in Java. It is also a rewrite of the
very useful tool JLex which was developed by Elliot Berk at Princeton
University. As Vern Paxson states for his C/C++ tool flex: They do
not share any code though. JFlex is designed to work together with
the LALR parser generator CUP by Scott Hudson, and the Java
modification of Berkeley Yacc BYacc/J by Bob Jamison. It can also be
used together with other parser generators like ANTLR or as a
standalone tool.
%package javadoc
Summary: API documentation for %{name}
%description javadoc
This package provides %{summary}.
%prep
%setup -q
%mvn_file : %{name}
%pom_add_dep java_cup:java_cup
%pom_remove_plugin :jflex-maven-plugin
%pom_remove_plugin :cup-maven-plugin
%pom_remove_plugin :maven-shade-plugin
%pom_remove_dep :cup_runtime
# Tests fail with 320k stacks (default on i686), so lets increase
# stack to 16M to avoid stack overflows. See rhbz#1119308
%pom_xpath_inject "pom:plugin[pom:artifactId='maven-surefire-plugin']/pom:configuration" "<argLine>-Xss16384k</argLine>"
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-site-plugin']" parent.xml
%pom_xpath_remove "pom:plugin[pom:artifactId='fmt-maven-plugin']" parent.xml
%pom_xpath_remove "pom:plugin[pom:artifactId='cup-maven-plugin']" parent.xml
%pom_xpath_remove "pom:plugin[pom:artifactId='maven-shade-plugin']" parent.xml
%pom_xpath_remove "pom:dependency[pom:artifactId='plexus-compiler-javac-errorprone']" parent.xml
%pom_xpath_remove "pom:dependency[pom:artifactId='error_prone_core']" parent.xml
%pom_xpath_remove "pom:compilerId" parent.xml
%pom_xpath_remove "pom:compilerArgs" parent.xml
sed -i /%%inputstreamctor/d src/main/jflex/LexScan.flex
%build
java -jar $(find-jar java_cup) -parser LexParse -interface -destdir src/main/java src/main/cup/LexParse.cup
jflex -d src/main/java/jflex --skel src/main/jflex/skeleton.nested src/main/jflex/LexScan.flex
%mvn_build
%install
%mvn_install
# wrapper script for direct execution
%jpackage_script jflex.Main "" "" jflex:java_cup jflex true
# manpage
install -d -m 755 %{buildroot}%{_mandir}/man1
install -p -m 644 %{SOURCE4} %{buildroot}%{_mandir}/man1
# .desktop + icons
# Emacs files
%files -f .mfiles
%doc doc
%doc COPYRIGHT
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1.gz
%files javadoc
%doc COPYRIGHT
%doc %{_javadocdir}/%{name}
%changelog
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.7.0-2
- Mass rebuild for javapackages-tools 201902
* Thu Jun 06 2019 Marian Koncek <mkoncek@redhat.com> - 1.7.0-1
- Update to upstream version 1.7.0
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.6.1-13
- Mass rebuild for javapackages-tools 201901
* Tue Jul 31 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1.6.1-12
- Add requirement on javapackages-tools for scripts using
java-functions.
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.1-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Jun 2 2017 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.6.1-8
- Don't hardcode java_cup JAR path
* Wed May 31 2017 Michael Simacek <msimacek@redhat.com> - 1.6.1-7
- Replace absolute path with a macro
* Tue Mar 7 2017 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.6.1-6
- Add bconds for desktop and emacs
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Jun 16 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.6.1-4
- Add missing build-requires
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Tue Mar 17 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.6.1-1
- Update to upstream version 1.6.1
* Tue Jul 8 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.6.0-1
- Update to upstream version 1.6.0
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon May 12 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.5.1-1
- Update to upstream version 1.5.1
* Tue Mar 04 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 1.5.0-3
- Use Requires: java-headless rebuild (#1067528)
* Tue Jan 28 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.5.0-2
- Fix license tag
* Mon Jan 27 2014 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.5.0-1
- Update to upstream version 1.5.0
- Build with Maven
* Fri Aug 02 2013 Michal Srb <msrb@redhat.com> - 0:1.4.3-16
- Add create-tarball.sh script to SRPM
* Thu Jun 20 2013 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.4.3-15
- Fix javadoc generation
- Update to current packaging guidelines
* Thu Jun 20 2013 Michal Srb <msrb@redhat.com> - 0:1.4.3-14
- Build from clean tarball
- Install license file with javadoc package
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.4.3-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Thu Nov 22 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.4.3-12
- Install Emacs jflex-mode
* Thu Nov 22 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.4.3-11
- Remove bundled java_cup sources
- Resolves: rhbz#877051
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.4.3-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed May 2 2012 Mikolaj Izdebski <mizdebsk@redhat.com> - 0:1.4.3-9
- Fix license tag
- Import manpage from Debian's jflex 1.4.1-3 (GPL+)
* Thu Apr 19 2012 Jaromir Capik <jcapik@redhat.com> - 0:1.4.3-8
- Desktop file generated
- Icon created from the GPL licensed logo
* Mon Mar 12 2012 Jaromir Capik <jcapik@redhat.com> - 0:1.4.3-7
- Wrapper script generated
- Minor spec file changes according to the latest guidelines
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.4.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.4.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Feb 15 2010 Alexander Kurtakov <akurtako@redhat.com> 0:1.4.3-4
- Add dependency on java_cup in the maven pom.xml.
* Mon Feb 15 2010 Alexander Kurtakov <akurtako@redhat.com> 0:1.4.3-3
- Require java_cup.
* Wed Jan 20 2010 Alexander Kurtakov <akurtako@redhat.com> 0:1.4.3-3
- Provide JFlex.jar.
- Don't put java_cup classes in the jar.
* Fri Jan 8 2010 Alexander Kurtakov <akurtako@redhat.com> 0:1.4.3-2
- Add maven pom and depmaps.
* Fri Jan 8 2010 Alexander Kurtakov <akurtako@redhat.com> 0:1.4.3-1
- Update to 1.4.3.
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.4.1-0.5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0:1.4.1-0.4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Wed Jul 9 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0:1.4.1-0.3
- drop repotag
* Mon Mar 03 2008 Matt Wringe <mwringe@redhat.com> - 0:1.4.1-0jpp.2
- Add missing buildrequires on java_cup
* Fri Feb 22 2008 Matt Wringe <mwringe@redhat.com> - 0:1.4.1-0jpp.1
- Patch build file to allow bootstrap building
* Mon Feb 18 2008 Lubomir Kundrak <lkundrak@redhat.com> - 0:1.4.1-0jpp.1
- Naive attempt to update to newer version
* Mon Apr 02 2007 Matt Wringe <mwringe@redhat.com> - 0:1.3.5-2jpp.2
- Add patches jflex-CharSet_java.patch and jflex-StateSet_java.patch
to allow building with the new gcj
* Mon Feb 12 2007 Matt Wringe <mwringe@redhat.com> - 0:1.3.5-2jpp.1
- Remove javadoc post and postun sections due to new jpp standard
- Update makefile patch to compress jar
- Fix rpmlint issues
* Wed Jan 04 2006 Fernando Nasser <fnasser@redhat.com> - 0:1.3.5-2jpp
- First JPP 1.7 build
* Wed Nov 16 2005 Ralph Apel <r.apel at r-apel.de> - 0:1.3.5-1jpp
- First JPackage release

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (jflex-1.7.0-clean.tar.gz) = 4040808a543133beb1ef9243eadc1d7eb137660e6bcc3ab462fbb0799eca6c655da6ecc4e17998380b7c4abc167a361f05f45c3fb8de112f6311e232602efd09
SHA512 (jflex.png) = f0fba1f8b44a4dcec7d8be10fcb5a6260fbb34be62eb774fc66db83a14c1a1c032a30a1856d2f4f6095c781c7de6ad1878d471ead4a07217863ebab336b4b74d