add the files

This commit is contained in:
Jeremy Katz 2006-09-05 20:46:39 +00:00
parent 7b32f88158
commit 90e2578ebe
2 changed files with 92 additions and 0 deletions

82
brp-java-repack-jars Normal file
View File

@ -0,0 +1,82 @@
#!/bin/sh
# If using normal root, avoid changing anything.
if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
exit 0
fi
# If zip is not installed, we can't repack the jars.
if [ ! -x /usr/bin/zip ]; then
exit 0
fi
if [ ! -x /usr/bin/unzip ]; then
exit 0
fi
JARS=`find $RPM_BUILD_ROOT -type f -name \*.jar`
if [ ! -z "$JARS" ]; then
# make $RPM_BUILD_ROOT/tmp if it doesn't exist
rmtmp=0
if [ ! -x "$RPM_BUILD_ROOT/tmp" ]; then
mkdir -p $RPM_BUILD_ROOT/tmp
rmtmp=1
fi
# unpack every jar, set the date of the files and directories and
# repack the jar
for j in $JARS ; do
JARNAME=`basename $j`
TMPDIR=`mktemp -d -p $RPM_BUILD_ROOT/tmp $JARNAME.tmpdir.XXXXXXXXXX` || exit 1
JARDIR=`mktemp -d -p $RPM_BUILD_ROOT/tmp $JARNAME.jardir.XXXXXXXXXX` || exit 1
TIMEREF=`mktemp -p $RPM_BUILD_ROOT/tmp $JARNAME.timeref.XXXXXXXXXX` || exit 1
pushd $TMPDIR > /dev/null
/usr/bin/unzip -qq -o $j
rm -f $j
# Create the directories first.
for d in `find -type d | LC_ALL=C sort`; do
mkdir -p $JARDIR/$d
done
# Get the modtime from the newest ChangeLog. If the project
# doesn't have a ChangeLog, Jan 1, 1970 will be used.
CHANGELOGS=`find $RPM_BUILD_DIR/$RPM_PACKAGE_NAME-$RPM_PACKAGE_VERSION -type f -name ChangeLog`
DATE="1970-01-01 UTC"
if [ ! -z "$CHANGELOGS" ]; then
for c in $CHANGELOGS; do
TMPDATE=`stat -c %y $c | cut -d " " -f 1-2`
if [ `date --date="$TMPDATE" +%s` -gt `date --date="$DATE" +%s` ]; then
DATE="$TMPDATE"
fi
done
fi
# move the contents over to the a new directory in order and set
# the times.
for f in `find -type f | LC_ALL=C sort`; do
cp $f $JARDIR/$f
touch --date="$DATE" $JARDIR/$f
done
popd > /dev/null
# Set the times of the directories.
touch --date="$DATE" `find $JARDIR -type d`
# make the jar
pushd $JARDIR > /dev/null
/usr/bin/zip -q -X -9 $j -r .
popd > /dev/null
# Cleanup.
rm -rf $TMPDIR
rm -rf $JARDIR
rm -f $TIMEREF
done
# remove $RPM_BUILD_ROOT/tmp if we created it
if [ $rmtmp -eq 1 ]; then
rm -rf $RPM_BUILD_ROOT/tmp
fi
fi

View File

@ -0,0 +1,10 @@
--- redhat-rpm-config-8.0.45/macros.java 2006-09-05 16:24:06.000000000 -0400
+++ redhat-rpm-config-8.0.45/macros 2006-09-05 16:24:24.000000000 -0400
@@ -86,6 +86,7 @@
/usr/lib/rpm/redhat/brp-strip-static-archive %{__strip} \
/usr/lib/rpm/redhat/brp-strip-comment-note %{__strip} %{__objdump} \
/usr/lib/rpm/brp-python-bytecompile \
+ /usr/lib/rpm/brp-java-repack-jars \
%{nil}
# /usr/lib/rpm/redhat/brp-implant-ident-static