1
0

physfs.spec.in 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. %define version @VERSION@
  2. %define release 1
  3. %define name physfs
  4. %define prefix /usr
  5. Summary: PhysicsFS file abstraction layer for games
  6. Name: %{name}
  7. Version: %{version}
  8. Release: %{release}
  9. Prefix: %{prefix}
  10. Copyright: zlib license
  11. Group: System Environment/Libraries
  12. URL: http://www.icculus/physfs/
  13. Source: physfs-%{version}.tar.gz
  14. BuildRoot: %{_tmppath}/%{name}-%{version}
  15. BuildRequires: doxygen, readline-devel, ncurses-devel
  16. Requires: readline, ncurses, zlib
  17. %description
  18. PhysicsFS is a library to provide abstract access to various archives.
  19. It is intended for use in video games, and the design was somewhat inspired
  20. by Quake 3's file subsystem. The programmer defines a "write directory" on
  21. the physical filesystem. No file writing done through the PhysicsFS API can
  22. leave that write directory, for security. For example, an embedded scripting
  23. language cannot write outside of this path if it uses PhysFS for all of its
  24. I/O, which means that untrusted scripts can run more safely. Symbolic links
  25. can be disabled as well, for added safety. For file reading, the programmer
  26. lists directories and archives that form a "search path". Once the search
  27. path is defined, it becomes a single, transparent hierarchical filesystem.
  28. This makes for easy access to ZIP files in the same way as you access a file
  29. directly on the disk, and it makes it easy to ship a new archive that will
  30. override a previous archive on a per-file basis. Finally, PhysicsFS gives
  31. you platform-abstracted means to determine if CD-ROMs are available, the
  32. user's home directory, where in the real filesystem your program is running,
  33. etc.
  34. %package devel
  35. Summary: Development headers, libraries, and documentation for PhysicsFS
  36. Group: Development/Libraries
  37. Requires: %{name} = %{version}
  38. %description devel
  39. PhysicsFS is a library to provide abstract access to various archives.
  40. This package contains the development headers, libraries, and documentaion to
  41. build programs using PhysicsFS.
  42. %prep
  43. %setup
  44. export CFLAGS="${RPM_OPT_FLAGS}" CXXFLAGS="${RPM_OPT_FLAGS}";
  45. ./configure --prefix=/usr
  46. %build
  47. export CFLAGS="${RPM_OPT_FLAGS}" CXXFLAGS="${RPM_OPT_FLAGS}";
  48. make
  49. # Make doxygen docs
  50. doxygen
  51. %install
  52. [ -d ${RPM_BUILD_ROOT} ] && rm -rf ${RPM_BUILD_ROOT}
  53. make DESTDIR=${RPM_BUILD_ROOT} install
  54. %clean
  55. [ -d ${RPM_BUILD_ROOT} ] && rm -rf ${RPM_BUILD_ROOT}
  56. %post -p /sbin/ldconfig
  57. %postun -p /sbin/ldconfig
  58. %files
  59. %defattr(-,root,root)
  60. %doc CHANGELOG CREDITS INSTALL LICENSE TODO zlib_license_change.txt
  61. %{_bindir}/test_physfs
  62. %{_libdir}/*so.*
  63. %files devel
  64. %defattr(-,root,root)
  65. %doc docs/*
  66. %{_libdir}/*.so
  67. %{_includedir}/physfs.h
  68. %changelog
  69. * Thu Dec 18 2002 Edward Rudd <eddie@omegaware.com>
  70. - added zlib_license_change.txt to documents
  71. * Wed Jul 10 2002 Edward Rudd <eddie@omegaware.com>
  72. - added doxygen to build requirements
  73. * Wed Jul 10 2002 Edward Rudd <eddie@omegaware.com>
  74. - updated to release 0.17
  75. * Tue May 15 2002 Edward Rudd <eddie@omegaware.com>
  76. - updated to latest CVS and modified spec file to use
  77. the autoconf/automake support in the latest CVS
  78. * Tue Apr 30 2002 Edward Rudd <eddie@omegaware.com>
  79. - Initial spec file