flex.spec 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. ##
  2. ## flex.spec -- OpenPKG RPM Specification
  3. ## Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
  4. ## Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
  5. ##
  6. ## Permission to use, copy, modify, and distribute this software for
  7. ## any purpose with or without fee is hereby granted, provided that
  8. ## the above copyright notice and this permission notice appear in all
  9. ## copies.
  10. ##
  11. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  12. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  13. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  14. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  15. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  16. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  17. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  18. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  19. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  20. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  21. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  22. ## SUCH DAMAGE.
  23. ##
  24. # package information
  25. Name: flex
  26. Summary: Fast Lexical Analyzer Generator
  27. Group: Language
  28. URL: http://www.gnu.org/software/flex/
  29. Vendor: Free Software Foundation
  30. Packager: rse@openpkg.org
  31. Distribution: OpenPKG
  32. License: BSD
  33. Version: 2.5.4a
  34. Release: 1
  35. # list of sources
  36. Source0: ftp://ftp.gnu.org/non-gnu/flex/flex-%{version}.tar.gz
  37. # build information
  38. Prefix: %{l_prefix}
  39. BuildRoot: %{l_buildroot}
  40. BuildPreReq: OpenPKG, openpkg >= 0.9-30, bison
  41. PreReq: OpenPKG, openpkg >= 0.9-30
  42. AutoReq: no
  43. AutoReqProv: no
  44. %description
  45. Flex is a tool for generating scanners: programs which recognized lexical
  46. patterns in text. flex reads the given input files for a description of a
  47. scanner to generate. The description is in the form of pairs of regular
  48. expressions and C code, called rules. flex generates as output a C source
  49. file, lex.yy.c, which defines a routine yylex(). This file is compiled and
  50. linked with the -lfl library to produce an executable. When the executable
  51. is run, it analyzes its input for occurrences of the regular expressions.
  52. Whenever it finds one, it executes the corresponding C code.
  53. %prep
  54. %setup -q -n flex-2.5.4
  55. %build
  56. PATH="%{l_prefix}/bin:%{l_prefix}/sbin:$PATH"
  57. export PATH
  58. CC="%{l_cc}" \
  59. CFLAGS="%{l_cflags -O}" \
  60. ./configure \
  61. --prefix=$RPM_BUILD_ROOT%{l_prefix}
  62. %{l_make} %{l_mflags}
  63. %install
  64. rm -rf $RPM_BUILD_ROOT
  65. %{l_make} %{l_mflags} install
  66. strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
  67. rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/flex++
  68. ln $RPM_BUILD_ROOT%{l_prefix}/bin/flex $RPM_BUILD_ROOT%{l_prefix}/bin/flex++
  69. ln $RPM_BUILD_ROOT%{l_prefix}/man/man1/flex.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/flex++.1
  70. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
  71. %files -f files
  72. %clean
  73. rm -rf $RPM_BUILD_ROOT