1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-25 09:34:11 +00:00

- New port: sysutils/deltarpm

DeltaRPM is a tool that generates RPMs that contains the difference between an
old and a new version of an RPM. This makes it possible to recreate the new RPM
from the deltarpm and the old one. You don't have to have a copy of the old
RPM, as it can also work with installed RPMs. The package also contains tools
for creating and applying delta ISOs.

WWW: http://freecode.com/projects/deltarpm/
This commit is contained in:
Pietro Cerutti 2014-10-09 15:55:39 +00:00
parent 79760392a5
commit 0614be37f6
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=370552
5 changed files with 83 additions and 0 deletions

View File

@ -164,6 +164,7 @@
SUBDIR += ddrescue
SUBDIR += debhelper
SUBDIR += debootstrap
SUBDIR += deltarpm
SUBDIR += deltup
SUBDIR += desktop-installer
SUBDIR += detach

View File

@ -0,0 +1,56 @@
# Created by: gahr
# $FreeBSD$
PORTNAME= deltarpm
PORTVERSION= 3.6
CATEGORIES= sysutils
MASTER_SITES= ftp://ftp.suse.com/pub/projects/deltarpm/
MAINTAINER= gahr@FreeBSD.org
COMMENT= Tool that generates delta RPMs
LICENSE= BSD3CLAUSE
LIB_DEPENDS= librpm.so:${PORTSDIR}/archivers/rpm4
USES= gmake python shebangfix tar:bz2
SHEBANG_FILES= drpmsync
ALL_TARGET= all
MAKE_ARGS+= prefix=${PREFIX}
post-patch:
${REINPLACE_CMD} \
-e '/prefix=/s|=|?=|' \
-e '/^CFLAGS/s|$$| -I${LOCALBASE}/include|' \
-e '/^LDFLAGS/s|$$| -L${LOCALBASE}/lib|' \
-e '/^PYTHONS/s|= .*$$|= ${PYTHON_CMD}|' \
-e 's|make |${MAKE_CMD} |g' \
-e 's|-m 755|-m 755 -s|' \
-e 's|-s drpmsync|drpmsync|' \
${WRKSRC}/${MAKEFILE}
${FIND} ${WRKSRC} -name "*.[ch]" | ${XARGS} ${REINPLACE_CMD} \
-e 's|off64_t|off_t|g' \
-e 's|mkstemp64|mkstemp|g' \
-e 's|fopen64|fopen|g' \
-e 's|ftello64|ftello|g' \
-e 's|pwrite64|pwrite|g' \
-e 's|pread64|pread|g' \
-e 's|fseeko64|fseeko|g' \
-e 's|ftruncate64|ftruncate|g' \
-e 's|S_ISLINK|S_ISLNK|g'
${REINPLACE_CMD} -e '8,11d' ${WRKSRC}/applydeltarpm.c
post-build:
cd ${WRKSRC} && ${CC} -shared -o _deltarpm.so \
readdeltarpm.o rpmhead.o util.o md5.o cfile.o \
deltarpmmodule.c \
`${PYTHON_CMD}-config --cflags` -fPIC \
-lbz2 -lz -llzma
post-install:
${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
${INSTALL_PROGRAM} ${WRKSRC}/_deltarpm.so ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
${INSTALL_DATA} ${WRKSRC}/deltarpm.py ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
.include <bsd.port.mk>

View File

@ -0,0 +1,2 @@
SHA256 (deltarpm-3.6.tar.bz2) = fcc35db53e9913f12cdc013bdf922614ac8ef6fd5e7187e75203be8809d177be
SIZE (deltarpm-3.6.tar.bz2) = 500420

View File

@ -0,0 +1,7 @@
DeltaRPM is a tool that generates RPMs that contains the difference between an
old and a new version of an RPM. This makes it possible to recreate the new RPM
from the deltarpm and the old one. You don't have to have a copy of the old
RPM, as it can also work with installed RPMs. The package also contains tools
for creating and applying delta ISOs.
WWW: http://freecode.com/projects/deltarpm/

View File

@ -0,0 +1,17 @@
bin/applydeltaiso
bin/applydeltarpm
bin/combinedeltarpm
bin/drpmsync
bin/fragiso
bin/makedeltaiso
bin/makedeltarpm
bin/rpmdumpheader
%%PYTHON_SITELIBDIR%%/_deltarpm.so
%%PYTHON_SITELIBDIR%%/deltarpm.py
man/man8/applydeltaiso.8.gz
man/man8/applydeltarpm.8.gz
man/man8/combinedeltarpm.8.gz
man/man8/drpmsync.8.gz
man/man8/fragiso.8.gz
man/man8/makedeltaiso.8.gz
man/man8/makedeltarpm.8.gz