styx.spec 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. ##
  2. ## styx.spec -- OpenPKG RPM Specification
  3. ## Copyright (c) 2000-2003 Cable & Wireless Deutschland GmbH
  4. ## Copyright (c) 2000-2003 The OpenPKG Project <http://www.openpkg.org/>
  5. ## Copyright (c) 2000-2003 Ralf S. Engelschall <rse@engelschall.com>
  6. ##
  7. ## Permission to use, copy, modify, and distribute this software for
  8. ## any purpose with or without fee is hereby granted, provided that
  9. ## the above copyright notice and this permission notice appear in all
  10. ## copies.
  11. ##
  12. ## THIS SOFTWARE IS PROVIDED AS IS'' AND ANY EXPRESSED OR IMPLIED
  13. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  14. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  15. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  16. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  17. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  18. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  19. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  20. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  21. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  22. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  23. ## SUCH DAMAGE.
  24. ##
  25. # package information
  26. Name: styx
  27. Summary: Scanner & Parser Generator
  28. URL: http://www.speculate.de/styx/
  29. Vendor: Lars Dölle, Heike Manns
  30. Packager: The OpenPKG Project
  31. Distribution: OpenPKG [EVAL]
  32. Group: Compiler
  33. License: GPL
  34. Version: 1.5
  35. Release: 20020717
  36. # list of sources
  37. Source0: http://www.speculate.de/styx/styx-%{version}.tgz
  38. Patch0: styx.patch
  39. # build information
  40. Prefix: %{l_prefix}
  41. BuildRoot: %{l_buildroot}
  42. BuildPreReq: OpenPKG, openpkg >= 20020206, make, gcc, libiconv
  43. PreReq: OpenPKG, openpkg >= 20020206
  44. AutoReq: no
  45. AutoReqProv: no
  46. %description
  47. Styx is a scanner/parser generator designed to address some
  48. shortcomings of the traditional lex/yacc combination. It has unique
  49. features like automatic derivation of depth grammar, production of
  50. the derivation tree including it's C interface, preservation of full
  51. source information and pretty printing to faciliate source-source
  52. translation, persistence to aid rapid interpreter writing. For
  53. application in contemporary computing environments, it supports
  54. unicode, reentrancy and offers thread-safeness.
  55. %prep
  56. %setup -q
  57. %patch -p0
  58. find . -name "*.[ch]" -print |\
  59. xargs %{l_shtool} subst -e 's;<malloc.h>;<stdlib.h>;'
  60. rm -f config.cache
  61. %build
  62. CC="%{l_cc}" \
  63. CFLAGS="%{l_cflags -O}" \
  64. CPPFLAGS="-I%{l_prefix}/include" \
  65. LDFLAGS="-L%{l_prefix}/lib" \
  66. LIBS="-liconv" \
  67. ./configure \
  68. --prefix=%{l_prefix} \
  69. --disable-shared
  70. %{l_make} %{l_mflags}
  71. %install
  72. rm -rf $RPM_BUILD_ROOT
  73. %{l_make} %{l_mflags} install \
  74. prefix=$RPM_BUILD_ROOT%{l_prefix} \
  75. exec_prefix=$RPM_BUILD_ROOT%{l_prefix}
  76. mkdir $RPM_BUILD_ROOT%{l_prefix}/include/styx
  77. mv $RPM_BUILD_ROOT%{l_prefix}/include/*.h \
  78. $RPM_BUILD_ROOT%{l_prefix}/include/styx/
  79. rm -rf $RPM_BUILD_ROOT%{l_prefix}/tutorial
  80. mkdir $RPM_BUILD_ROOT%{l_prefix}/share
  81. mv $RPM_BUILD_ROOT%{l_prefix}/doc \
  82. $RPM_BUILD_ROOT%{l_prefix}/share/styx
  83. strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
  84. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
  85. %files -f files
  86. %clean
  87. rm -rf $RPM_BUILD_ROOT