commit
a073e1d4f4
12
antlr-2.7.7-newgcc.patch
Normal file
12
antlr-2.7.7-newgcc.patch
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff -up ./lib/cpp/antlr/CharScanner.hpp.sav ./lib/cpp/antlr/CharScanner.hpp
|
||||||
|
--- ./lib/cpp/antlr/CharScanner.hpp.sav 2009-03-20 14:42:43.000000000 -0400
|
||||||
|
+++ ./lib/cpp/antlr/CharScanner.hpp 2009-03-20 14:43:29.000000000 -0400
|
||||||
|
@@ -11,6 +11,8 @@
|
||||||
|
#include <antlr/config.hpp>
|
||||||
|
|
||||||
|
#include <map>
|
||||||
|
+#include <strings.h>
|
||||||
|
+#include <cstdio>
|
||||||
|
|
||||||
|
#ifdef HAS_NOT_CCTYPE_H
|
||||||
|
#include <ctype.h>
|
||||||
22
antlr-2.7.7.pom
Normal file
22
antlr-2.7.7.pom
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<project>
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>antlr</groupId>
|
||||||
|
<artifactId>antlr</artifactId>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
<version>2.7.7</version>
|
||||||
|
<name>AntLR Parser Generator</name>
|
||||||
|
<description>
|
||||||
|
A framework for constructing recognizers, compilers,
|
||||||
|
and translators from grammatical descriptions containing
|
||||||
|
Java, C#, C++, or Python actions.
|
||||||
|
</description>
|
||||||
|
<url>http://www.antlr.org/</url>
|
||||||
|
<licenses>
|
||||||
|
<license>
|
||||||
|
<name>BSD License</name>
|
||||||
|
<url>http://www.antlr.org/license.html</url>
|
||||||
|
<distribution>repo</distribution>
|
||||||
|
</license>
|
||||||
|
</licenses>
|
||||||
|
<dependencies/>
|
||||||
|
</project>
|
||||||
BIN
antlr-2.7.7.tar.gz
Normal file
BIN
antlr-2.7.7.tar.gz
Normal file
Binary file not shown.
72
antlr-build.xml
Normal file
72
antlr-build.xml
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
<!-- simple generic build file -->
|
||||||
|
|
||||||
|
<project name="antlr" default="all" basedir=".">
|
||||||
|
|
||||||
|
<!-- Properties -->
|
||||||
|
|
||||||
|
<property name="name" value="antlr"/>
|
||||||
|
<property name="src" value="src"/>
|
||||||
|
<property name="build" value="work"/>
|
||||||
|
<property name="build.classes" value="${build}/classes"/>
|
||||||
|
<property name="build.doc" value="${build}/api"/>
|
||||||
|
<property name="build.lib" value="${build}/lib"/>
|
||||||
|
<property name="packagenames" value="antlr.*"/>
|
||||||
|
<property name="j2se.apidoc" value="http://java.sun.com/j2se/1.4/docs/api/"/>
|
||||||
|
|
||||||
|
<!-- Targets -->
|
||||||
|
|
||||||
|
<!-- Prepare build directories -->
|
||||||
|
<target name="prepare">
|
||||||
|
<mkdir dir="${src}"/>
|
||||||
|
<mkdir dir="${build}"/>
|
||||||
|
<mkdir dir="${build.classes}"/>
|
||||||
|
<mkdir dir="${build.lib}"/>
|
||||||
|
<mkdir dir="${build.doc}"/>
|
||||||
|
<copy todir="${src}/antlr">
|
||||||
|
<fileset dir="antlr"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- Kill all the created directories -->
|
||||||
|
<target name="clean">
|
||||||
|
<delete dir="${build}"/>
|
||||||
|
<delete dir="${src}"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- Build classes -->
|
||||||
|
<target name="classes" depends="prepare">
|
||||||
|
<javac srcdir="${src}" destdir="${build.classes}"
|
||||||
|
debug="off" optimize="on" deprecation="on"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- Build jar archives -->
|
||||||
|
<target name="jar" depends="classes">
|
||||||
|
<jar jarfile="${build.lib}/${name}.jar" basedir="${build.classes}"
|
||||||
|
index="true">
|
||||||
|
<manifest>
|
||||||
|
<attribute name="Main-Class" value="antlr.Tool"/>
|
||||||
|
</manifest>
|
||||||
|
</jar>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- Build the full JavaDocs -->
|
||||||
|
<target name="javadoc" depends="prepare">
|
||||||
|
<javadoc sourcepath="${src}"
|
||||||
|
destdir="${build.doc}"
|
||||||
|
doctitle="${name} Javadoc"
|
||||||
|
windowtitle="${name} Javadoc"
|
||||||
|
package="true"
|
||||||
|
author="true"
|
||||||
|
version="true"
|
||||||
|
packagenames="${packagenames}"
|
||||||
|
splitindex="true"
|
||||||
|
use="true"
|
||||||
|
additionalparam="-Xdoclint:none">
|
||||||
|
<link href="${j2se.apidoc}"/>
|
||||||
|
</javadoc>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- Build everything -->
|
||||||
|
<target name="all" depends="jar,javadoc"/>
|
||||||
|
|
||||||
|
</project>
|
||||||
98
antlr-examples-license.patch
Normal file
98
antlr-examples-license.patch
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
diff -up antlr-2.7.7/examples/java/unicode.IDENTs/ShowString.java.licensefix antlr-2.7.7/examples/java/unicode.IDENTs/ShowString.java
|
||||||
|
--- antlr-2.7.7/examples/java/unicode.IDENTs/ShowString.java.licensefix 2012-08-16 10:16:12.157567962 -0400
|
||||||
|
+++ antlr-2.7.7/examples/java/unicode.IDENTs/ShowString.java 2012-08-16 10:17:46.425574161 -0400
|
||||||
|
@@ -1,19 +1,33 @@
|
||||||
|
|
||||||
|
/*
|
||||||
|
- * Copyright (c) 1995-1998 Sun Microsystems, Inc. All Rights Reserved.
|
||||||
|
+ * Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
*
|
||||||
|
- * Permission to use, copy, modify, and distribute this software
|
||||||
|
- * and its documentation for NON-COMMERCIAL purposes and without
|
||||||
|
- * fee is hereby granted provided that this copyright notice
|
||||||
|
- * appears in all copies. Please refer to the file "copyright.html"
|
||||||
|
- * for further important copyright and licensing information.
|
||||||
|
+ * Redistribution and use in source and binary forms, with or without
|
||||||
|
+ * modification, are permitted provided that the following conditions
|
||||||
|
+ * are met:
|
||||||
|
*
|
||||||
|
- * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
|
||||||
|
- * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
|
||||||
|
- * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||||
|
- * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
|
||||||
|
- * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
|
||||||
|
- * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
|
||||||
|
+ * - Redistributions of source code must retain the above copyright
|
||||||
|
+ * notice, this list of conditions and the following disclaimer.
|
||||||
|
+ *
|
||||||
|
+ * - Redistributions in binary form must reproduce the above copyright
|
||||||
|
+ * notice, this list of conditions and the following disclaimer in the
|
||||||
|
+ * documentation and/or other materials provided with the distribution.
|
||||||
|
+ *
|
||||||
|
+ * - Neither the name of Oracle or the names of its
|
||||||
|
+ * contributors may be used to endorse or promote products derived
|
||||||
|
+ * from this software without specific prior written permission.
|
||||||
|
+ *
|
||||||
|
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
|
||||||
|
+ * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||||
|
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||||
|
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||||
|
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||||
|
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||||
|
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||||
|
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
|
diff -up antlr-2.7.7/examples/java/unicode.IDENTs/StreamConverter.java.licensefix antlr-2.7.7/examples/java/unicode.IDENTs/StreamConverter.java
|
||||||
|
--- antlr-2.7.7/examples/java/unicode.IDENTs/StreamConverter.java.licensefix 2012-08-16 10:18:24.649576674 -0400
|
||||||
|
+++ antlr-2.7.7/examples/java/unicode.IDENTs/StreamConverter.java 2012-08-16 10:18:49.002578275 -0400
|
||||||
|
@@ -1,19 +1,33 @@
|
||||||
|
|
||||||
|
/*
|
||||||
|
- * Copyright (c) 1995-1998 Sun Microsystems, Inc. All Rights Reserved.
|
||||||
|
+ * Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
*
|
||||||
|
- * Permission to use, copy, modify, and distribute this software
|
||||||
|
- * and its documentation for NON-COMMERCIAL purposes and without
|
||||||
|
- * fee is hereby granted provided that this copyright notice
|
||||||
|
- * appears in all copies. Please refer to the file "copyright.html"
|
||||||
|
- * for further important copyright and licensing information.
|
||||||
|
+ * Redistribution and use in source and binary forms, with or without
|
||||||
|
+ * modification, are permitted provided that the following conditions
|
||||||
|
+ * are met:
|
||||||
|
*
|
||||||
|
- * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
|
||||||
|
- * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
|
||||||
|
- * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||||
|
- * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
|
||||||
|
- * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
|
||||||
|
- * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
|
||||||
|
+ * - Redistributions of source code must retain the above copyright
|
||||||
|
+ * notice, this list of conditions and the following disclaimer.
|
||||||
|
+ *
|
||||||
|
+ * - Redistributions in binary form must reproduce the above copyright
|
||||||
|
+ * notice, this list of conditions and the following disclaimer in the
|
||||||
|
+ * documentation and/or other materials provided with the distribution.
|
||||||
|
+ *
|
||||||
|
+ * - Neither the name of Oracle or the names of its
|
||||||
|
+ * contributors may be used to endorse or promote products derived
|
||||||
|
+ * from this software without specific prior written permission.
|
||||||
|
+ *
|
||||||
|
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
|
||||||
|
+ * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||||
|
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||||
|
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||||
|
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||||
|
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||||
|
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||||
|
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||||
|
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import java.io.*;
|
||||||
25
antlr-script
Normal file
25
antlr-script
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# antlr script
|
||||||
|
# JPackage Project <http://www.jpackage.org/>
|
||||||
|
|
||||||
|
# Source functions library
|
||||||
|
if [ -f /usr/share/java-utils/java-functions ] ; then
|
||||||
|
. /usr/share/java-utils/java-functions
|
||||||
|
else
|
||||||
|
echo "Can't find functions library, aborting"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Configuration
|
||||||
|
MAIN_CLASS="antlr.Tool"
|
||||||
|
BASE_FLAGS=""
|
||||||
|
BASE_JARS="antlr.jar"
|
||||||
|
|
||||||
|
# Set parameters
|
||||||
|
set_jvm
|
||||||
|
set_classpath $BASE_JARS
|
||||||
|
set_flags $BASE_FLAGS
|
||||||
|
|
||||||
|
# Let's start
|
||||||
|
run "$@"
|
||||||
128
antlr.spec
Normal file
128
antlr.spec
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
%global debug_package %{nil}
|
||||||
|
|
||||||
|
Name: antlr
|
||||||
|
Version: 2.7.7
|
||||||
|
Release: 58
|
||||||
|
Summary: A parser generator that uses LL(*) for parsing
|
||||||
|
Epoch: 0
|
||||||
|
License: ANTLR-PD
|
||||||
|
URL: http://www.antlr2.org/
|
||||||
|
Source0: https://www.antlr2.org/download/antlr-2.7.7.tar.gz
|
||||||
|
Source1: %{name}-build.xml
|
||||||
|
Source2: %{name}-script
|
||||||
|
Source3: http://repo2.maven.org/maven2/antlr/antlr/%{version}/%{name}-%{version}.pom
|
||||||
|
Patch0001: antlr-2.7.7-newgcc.patch
|
||||||
|
Patch0002: antlr-examples-license.patch
|
||||||
|
|
||||||
|
BuildRequires: gcc-c++ make ant java-devel >= 1:1.7.0 java-javadoc javapackages-local
|
||||||
|
BuildRequires: doxygen graphviz python2-devel python2-setuptools
|
||||||
|
|
||||||
|
%description
|
||||||
|
ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading,
|
||||||
|
processing, executing, or translating structured text or binary files.
|
||||||
|
|
||||||
|
%package tool
|
||||||
|
Summary: A parser generator that uses LL(*) for parsing
|
||||||
|
Provides: %{name} = %{version}-%{release}
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description tool
|
||||||
|
ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading,
|
||||||
|
processing, executing, or translating structured text or binary files.
|
||||||
|
|
||||||
|
%package help
|
||||||
|
Summary: Help document for antlr
|
||||||
|
Provides: %{name}-manual = %{epoch}:%{version}-%{release} %{name}-javadoc = %{epoch}:%{version}-%{release}
|
||||||
|
Obsoletes: %{name}-manual < %{epoch}:%{version}-%{release} %{name}-javadoc < %{epoch}:%{version}-%{release}
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description help
|
||||||
|
Help document for antlr.
|
||||||
|
|
||||||
|
%package C++
|
||||||
|
Summary: C++ library for antlr generated parsers
|
||||||
|
Provides: antlr-static = %{version}-%{release}
|
||||||
|
|
||||||
|
%description C++
|
||||||
|
This package provides a static C++ library for parsers.
|
||||||
|
|
||||||
|
%package C++-doc
|
||||||
|
Summary: Documentation for C++ library
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description C++-doc
|
||||||
|
This package contains the documentation for C++ library.
|
||||||
|
|
||||||
|
%package -n python2-antlr
|
||||||
|
Summary: Python Code Generator for ANTLR
|
||||||
|
%{?python_provide:%python_provide python2-%{name}}
|
||||||
|
Provides: %{name}-python = %{version}-%{release}
|
||||||
|
Obsoletes: %{name}-python < 2.7.7-48
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description -n python2-antlr
|
||||||
|
Generate Lexers, Parsers and TreeParsers in Python.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n %{name}-%{version} -p1
|
||||||
|
find . -name "*.jar" -exec rm -f {} \;
|
||||||
|
cp -p %{SOURCE1} build.xml
|
||||||
|
sed -i 's/\r//' LICENSE.txt
|
||||||
|
|
||||||
|
%mvn_file antlr:antlr antlr
|
||||||
|
|
||||||
|
%build
|
||||||
|
ant -Dj2se.apidoc=%{_javadocdir}/java
|
||||||
|
cp work/lib/antlr.jar .
|
||||||
|
export CLASSPATH=.
|
||||||
|
%configure --without-examples
|
||||||
|
make CXXFLAGS="${CXXFLAGS} -fPIC" DEBUG=1 verbose=1
|
||||||
|
rm antlr.jar doc/{Makefile,Makefile.in}
|
||||||
|
chmod 0644 doc/*
|
||||||
|
|
||||||
|
cd lib/cpp
|
||||||
|
doxygen doxygen.cfg
|
||||||
|
find gen_doc -type f -exec chmod 0644 {} \;
|
||||||
|
cd -
|
||||||
|
|
||||||
|
cd lib/python
|
||||||
|
%py2_build
|
||||||
|
cd ../../
|
||||||
|
|
||||||
|
%install
|
||||||
|
%mvn_artifact %{SOURCE3} work/lib/%{name}.jar
|
||||||
|
%mvn_alias %{name}:%{name} %{name}:%{name}all
|
||||||
|
%mvn_install -J work/api
|
||||||
|
|
||||||
|
install -Dp -m755 %{SOURCE2} $RPM_BUILD_ROOT%{_bindir}/antlr
|
||||||
|
install -d $RPM_BUILD_ROOT%{_includedir}/%{name}
|
||||||
|
install -p -m644 lib/cpp/antlr/*.hpp $RPM_BUILD_ROOT%{_includedir}/%{name}
|
||||||
|
install -Dp -m644 lib/cpp/src/libantlr.a $RPM_BUILD_ROOT%{_libdir}/libantlr.a
|
||||||
|
install -p -m755 scripts/antlr-config $RPM_BUILD_ROOT%{_bindir}/antlr-config
|
||||||
|
|
||||||
|
cd lib/python
|
||||||
|
%py2_install
|
||||||
|
cd ../..
|
||||||
|
|
||||||
|
%files tool -f .mfiles
|
||||||
|
%license LICENSE.txt
|
||||||
|
%{_bindir}/antlr
|
||||||
|
|
||||||
|
%files C++
|
||||||
|
%{_includedir}/%{name}
|
||||||
|
%{_libdir}/libantlr.a
|
||||||
|
%{_bindir}/antlr-config
|
||||||
|
|
||||||
|
%files C++-doc
|
||||||
|
%doc lib/cpp/gen_doc/html/
|
||||||
|
|
||||||
|
%files help -f .mfiles-javadoc
|
||||||
|
%doc doc/*
|
||||||
|
|
||||||
|
%files -n python2-%{name}
|
||||||
|
%{python2_sitelib}/antlr/*
|
||||||
|
%{python2_sitelib}/antlr-*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Tue Jan 21 2020 chenli <chenli147@huawei.com> - 2.7.7-58
|
||||||
|
- Package init
|
||||||
Loading…
x
Reference in New Issue
Block a user