new package related file

This commit is contained in:
Daniel Stenberg
2000-10-31 09:50:22 +00:00
parent 1c0fd24a36
commit 823785c53e
6 changed files with 338 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
Author: Daniel (I'm not trustworthy, replace this!)
Paul Marquis's 'make_curl_rpm' script is a fine example on how to automate the
jobs. You need to fill in your own name and email at least.

View File

@@ -0,0 +1,98 @@
%define ver 7.4.2
%define rel 1
%define prefix /usr
Summary: get a file from a FTP, GOPHER or HTTP server.
Name: curl-ssl
Version: %ver
Release: %rel
Copyright: MPL
Group: Utilities/Console
Source: curl-%{version}.tar.gz
URL: http://curl.haxx.se
BuildPrereq: openssl
BuildRoot: /tmp/%{name}-%{version}-%{rel}-root
Packager: Fill In As You Wish
Docdir: %{prefix}/doc
%description
curl-ssl is a client to get documents/files from servers, using
any of the supported protocols. The command is designed to
work without user interaction or any kind of interactivity.
curl-ssl offers a busload of useful tricks like proxy support,
user authentication, ftp upload, HTTP post, file transfer
resume and more.
Note: this version is compiled with SSL (https:) support.
Authors:
Daniel Stenberg <daniel@haxx.se>
%prep
%setup -n curl-7.4.2
%build
# Needed for snapshot releases.
if [ ! -f configure ]; then
CONF="./autogen.sh"
else
CONF="./configure"
fi
#
# Configuring the package
#
CFLAGS="${RPM_OPT_FLAGS}" ${CONF} \
--prefix=%{prefix} \
--with-ssl
[ "$SMP" != "" ] && JSMP = '"MAKE=make -k -j $SMP"'
make ${JSMP} CFLAGS="-DUSE_SSLEAY -I/usr/include/openssl";
%install
[ -d ${RPM_BUILD_ROOT} ] && rm -rf ${RPM_BUILD_ROOT}
make prefix=${RPM_BUILD_ROOT}%{prefix} install-strip
#
# Generating file lists and store them in file-lists
# Starting with the directory listings
#
find ${RPM_BUILD_ROOT}%{prefix}/{bin,lib,man} -type d | sed "s#^${RPM_BUILD_ROOT}#\%attr (-\,root\,root) \%dir #" > file-lists
#
# Then, the file listings
#
echo "%defattr (-, root, root)" >> file-lists
find ${RPM_BUILD_ROOT}%{prefix} -type f | sed -e "s#^${RPM_BUILD_ROOT}##g" >> file-lists
%clean
(cd ..; rm -rf curl-7.4.2 ${RPM_BUILD_ROOT})
%files -f file-lists
%defattr (-, root, root)
%doc BUGS
%doc CHANGES
%doc CONTRIBUTE
%doc FAQ
%doc FEATURES
%doc FILES
%doc INSTALL
%doc LEGAL
%doc MPL-1.0.txt
%doc README
%doc README.curl
%doc README.libcurl
%doc RESOURCES
%doc TODO
%doc %{name}-ssl.spec.in
%doc %{name}.spec.in

View File

@@ -0,0 +1,96 @@
%define ver 7.4.2
%define rel 1
%define prefix /usr
Summary: get a file from a FTP, GOPHER or HTTP server.
Name: curl
Version: %ver
Release: %rel
Copyright: MPL
Group: Utilities/Console
Source: %{name}-%{version}.tar.gz
URL: http://curl.haxx.se
BuildRoot: /tmp/%{name}-%{version}-%{rel}-root
Packager: Fill In As You Wish
Docdir: %{prefix}/doc
%description
curl is a client to get documents/files from servers, using
any of the supported protocols. The command is designed to
work without user interaction or any kind of interactivity.
curl offers a busload of useful tricks like proxy support,
user authentication, ftp upload, HTTP post, file transfer
resume and more.
Note: this version is compiled without SSL (https:) support.
Authors:
Daniel Stenberg <daniel@haxx.se>
%prep
%setup -n %{name}-%{version}
%build
# Needed for snapshot releases.
if [ ! -f configure ]; then
CONF="./autogen.sh"
else
CONF="./configure"
fi
#
# Configuring the package
#
CFLAGS="${RPM_OPT_FLAGS}" ${CONF} \
--prefix=%{prefix}
[ "$SMP" != "" ] && JSMP = '"MAKE=make -k -j $SMP"'
make ${JSMP};
%install
[ -d ${RPM_BUILD_ROOT} ] && rm -rf ${RPM_BUILD_ROOT}
make prefix=${RPM_BUILD_ROOT}%{prefix} install-strip
#
# Generating file lists and store them in file-lists
# Starting with the directory listings
#
find ${RPM_BUILD_ROOT}%{prefix}/{bin,lib,man} -type d | sed "s#^${RPM_BUILD_ROOT}#\%attr (-\,root\,root) \%dir #" > file-lists
#
# Then, the file listings
#
echo "%defattr (-, root, root)" >> file-lists
find ${RPM_BUILD_ROOT}%{prefix} -type f | sed -e "s#^${RPM_BUILD_ROOT}##g" >> file-lists
%clean
(cd ..; rm -rf %{name}-%{version} ${RPM_BUILD_ROOT})
%files -f file-lists
%defattr (-, root, root)
%doc BUGS
%doc CHANGES
%doc CONTRIBUTE
%doc FAQ
%doc FEATURES
%doc FILES
%doc INSTALL
%doc LEGAL
%doc MPL-1.0.txt
%doc README
%doc README.curl
%doc README.libcurl
%doc RESOURCES
%doc TODO
%doc %{name}-ssl.spec.in
%doc %{name}.spec.in

View File

@@ -0,0 +1,62 @@
#! /bin/sh
# script to build curl RPM from src RPM (SSL and non-SSL versions)
# initialize
top_dir=/usr/src/redhat
sources_dir=$top_dir/SOURCES
specs_dir=$top_dir/SPECS
rpms_dir=$top_dir/RPMS
arch=`rpm --showrc | awk 'NF == 3 && $2 == "_arch" { print $3 }'`
# fill in your own name and email here
packager_name="Mr Joe Packager Person"
packager_email='<Joe@packager.person>'
# make sure we're running as root
if test `id -u` -ne `id -u root`
then
echo "you must build the RPM as root"
exit 1
fi
# get version and release number
if test $# -lt 1
then
echo "version number?"
read version
else
version=$1
fi
if test $# -lt 2
then
echo "release number?"
read release
else
release=$2
fi
# build all the files
targets="curl curl-ssl"
for target in $targets
do
# make sure src RPM exist
src_rpm="$target-$version-$release.src.rpm"
if test -f $src_rpm
then
rpm -ivh $src_rpm
# replace packager in spec file
sed -e 's/^Packager: .*/Packager: $packager_name $packager_email/' $specs_dir/$target.spec > $specs_dir/$target-$version-$arch.spec
# build it
if ! rpm -ba $specs_dir/$target-$version-$arch.spec
then
echo "error building $target for $arch -- check output above"
fi
echo "$target rpm is now in $rpms_dir/$arch"
else
echo $src_rpm does not exist
fi
done