Просмотр исходного кода

new package: ragel 1.2.2 (Ragel State Machine Compiler)

Ralf S. Engelschall 24 лет назад
Родитель
Сommit
1193d3c35d
1 измененных файлов с 89 добавлено и 0 удалено
  1. 89 0
      ragel/ragel.spec

+ 89 - 0
ragel/ragel.spec

@@ -0,0 +1,89 @@
+##
+##  ragel.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2002 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2002 The OpenPKG Project <http://www.openpkg.org/>
+##  Copyright (c) 2000-2002 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  Permission to use, copy, modify, and distribute this software for
+##  any purpose with or without fee is hereby granted, provided that
+##  the above copyright notice and this permission notice appear in all
+##  copies.
+##
+##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+##  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.
+##
+
+#   package information
+Name:         ragel
+Summary:      Ragel State Machine Compiler
+URL:          http://www.essemage.com/ragel/
+Vendor:       Adrian Thurston
+Packager:     The OpenPKG Project
+Distribution: OpenPKG [EXP]
+Group:        Compiler
+License:      GPL
+Version:      1.2.2
+Release:      20020716
+
+#   list of sources
+Source0:      http://www.essemage.com/ragel/ragel-%{version}.tar.gz
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 20020206, gcc, make
+PreReq:       OpenPKG, openpkg >= 20020206
+AutoReq:      no
+AutoReqProv:  no
+
+%description
+    Ragel compiles finite state machines from regular languages into
+    runnable C code. Ragel state machines can not only recognize byte
+    sequences as regular expression machines do, but can also execute
+    code at arbitrary points in the recognition of a regular language.
+    When you wish to write down a regular language you start with some
+    simple regular language and build a bigger one using the regular
+    language operators union, concatenation, kleene star, intersection
+    and subtraction. This is precisely the way you describe to Ragel
+    how to compile your finite state machines. Ragel also understands
+    operators that insert function calls into machines and operators
+    that control any non-determinism in machines.
+
+%prep
+    %setup -q
+
+%build
+    CC="%{l_cc}" \
+    CXX="%{l_cxx}" \
+    CFLAGS="%{l_cflags -O}" \
+    CXXFLAGS="%{l_cflags -O}" \
+    ./configure \
+        --prefix=%{l_prefix}
+    %{l_make} %{l_mflags}
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+    %{l_shtool} mkdir -f -p -m 755 \
+        $RPM_BUILD_ROOT%{l_prefix}/bin \
+        $RPM_BUILD_ROOT%{l_prefix}/share/ragel
+    %{l_shtool} install -c -s -m 755 \
+        ragel $RPM_BUILD_ROOT%{l_prefix}/bin/
+    %{l_shtool} install -c -m 644 \
+        doc/user.txt $RPM_BUILD_ROOT%{l_prefix}/share/ragel/
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+