RPM Spec file for 0.17.

Edward Rudd eddie at omegaware.com
Wed Jul 10 12:49:47 EDT 2002


Attached is an RPM spec file to build physfs 0.17..
If anybody wants binaries or a pre-built source RPM I can make those
available..

The spec was tested on RH 7.2.. It should work on any RH 7.x (and
probably 6.x as well)  and it should work find on any other RPM based
distro. It is designed to run as a NON-ROOT users.  It will run as a
root user as well, but why would you do that?? 
Check http://freshrpms.net/docs/fight.html for info on setting up a
non-root build environment.. 

currently the main physfs package contains JUST the libraries, and the
physfs-devel package contains the test_physfs program, physfs.h, static
libraries, and the doxygen'd documentation.

Edward Rudd


-------------- next part --------------
%define version 0.1.7
%define release 2
%define name physfs
%define	prefix	/usr

Summary:	PhysicsFS file abstraction layer for games
Name:		%{name}
Version:	%{version}
Release:	%{release}
Prefix:		%{prefix}
Copyright:	GNU Lesser General Public License (LGPL)
Group:		System Environment/Libraries
URL:		http://www.icculus/physfs/
Source:		physfs-%{version}.tar.gz
BuildRoot:	%{_tmppath}/%{name}-%{version}
BuildRequires: doxygen, readline-devel, ncurses-devel
Requires: readline, ncurses, zlib

%description
PhysicsFS is a library to provide abstract access to various archives.
It is intended for use in video games, and the design was somewhat inspired
by Quake 3's file subsystem. The programmer defines a "write directory" on
the physical filesystem. No file writing done through the PhysicsFS API can
leave that write directory, for security. For example, an embedded scripting
language cannot write outside of this path if it uses PhysFS for all of its
I/O, which means that untrusted scripts can run more safely. Symbolic links
can be disabled as well, for added safety. For file reading, the programmer
lists directories and archives that form a "search path". Once the search
path is defined, it becomes a single, transparent hierarchical filesystem.
This makes for easy access to ZIP files in the same way as you access a file
directly on the disk, and it makes it easy to ship a new archive that will
override a previous archive on a per-file basis. Finally, PhysicsFS gives
you platform-abstracted means to determine if CD-ROMs are available, the
user's home directory, where in the real filesystem your program is running,
etc. 

%package devel
Summary: Development headers, libraries, and documentation for PhysicsFS
Group: Development/Libraries
Requires: %{name} = %{version}

%description devel
PhysicsFS is a library to provide abstract access to various archives.
This package contains the development headers, libraries, and documentaion to
build programs using PhysicsFS.

%prep
%setup
export CFLAGS="${RPM_OPT_FLAGS}" CXXFLAGS="${RPM_OPT_FLAGS}";
./configure --prefix=/usr

%build
export CFLAGS="${RPM_OPT_FLAGS}" CXXFLAGS="${RPM_OPT_FLAGS}";
make
# Make doxygen docs
doxygen

%install
[ -d ${RPM_BUILD_ROOT} ] && rm -rf ${RPM_BUILD_ROOT}
make DESTDIR=${RPM_BUILD_ROOT} install

%clean
[ -d ${RPM_BUILD_ROOT} ] && rm -rf ${RPM_BUILD_ROOT}

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig

%files
%defattr(-,root,root)
%doc CHANGELOG CREDITS INSTALL LICENSE TODO
%{_bindir}/test_physfs
%{_libdir}/*so.*

%files devel
%defattr(-,root,root)
%doc docs/*
%{_libdir}/*.so
%{_includedir}/physfs.h

%changelog
* Wed Jul 10 2002 Edward Rudd <eddie at omegaware.com>
- added doxygen to build requirements

* Wed Jul 10 2002 Edward Rudd <eddie at omegaware.com>
- updated to release 0.17

* Tue May 15 2002 Edward Rudd <eddie at omegaware.com>
- updated to latest CVS and modified spec file to use 
  the autoconf/automake support in the latest CVS

* Tue Apr 30 2002 Edward Rudd <eddie at omegaware.com>
- Initial spec file


More information about the physfs mailing list