\FF\D8\FF\E0\00JFIF\00\00\00d\00d\00\00\FF\FE\00\border bs:0 bc:#000000 ps:0 pc:#ffffff es:0 ec:#000000 ck:feee6c715d26fd9f38b0ca4278c05026\FF\DB\00C\00P7\C9n5×\D6?\BDê\9Ds\EBp\9F[`8m\B7)o\B5\E8\E6I\99\FE3]]A2\BA\8Cw\D6E\93\\DEv\C8\009\F2\F1NI?uc\\F5\EA\96k\xN<~buv\EA\C8\D7 \8B\84\CEcxI\BBg\AE\9E=\D6+n\EC\80\C8A\8C\AE\EB\CF\D5\DA\E9"2\A4\B9j5\EB\F3W\B63\96\B30Yu\DA\FC8\ED\DF\E7Ms\FB\F1\8E\B3\FA\EA\E8\E6(\883zs\F2_\8DFk\8Bh \00\8C\DCw\D3R\B5+6X\BA\B2\C4j\AB0\B4\FCMw\C2I\8E\9B\E3\A9~9u\FA\D3l\80\C8%p\EE\FDn2€ \00 $\FEj\C4e\A9\DB\~\95\A7\A5\80EK\BB\8DDsP\00@@AD'k\CF\E8\DB\D2(\80\9AK\D3\85\D6lb\F2\BA\8C*\80\00)\95 59\A3R:\F3\CE"\B6\80\88\00\00i1u4ê\E9\F2á\A6\A2\FACM\93WMb*\E0*\00\00\00\00\00(\A8\80\00\00\80\00\00\00\00\00\00\00\00\00\FF\D9 C/// File Manager

File Manager

Path: /usr/lib/rpm/redhat/

Viewing File: brp-java-repack-jars

#!/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 -not -size 0`
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
	OLD_IFS="$IFS"
	IFS=$(printf '\n\t')
	for j in $JARS ; do
		JAROWN=`ls -l $j | cut -d' ' -f3`
		JARGRP=`stat $j --printf="%G"`
		JARNAME=`basename "$j"`
		JTMPDIR=`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 "$JTMPDIR" > /dev/null
		/usr/bin/unzip -qq -o "$j"
		find -type d -exec chmod a+rx,u+w {} \;
		find -type f -exec chmod a+r,u+w {} \;
		rm -f "$j"
		
		# Create the directories first.
		find -type d | LC_ALL=C sort | while read d; 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.
		DATE="1970-01-01 UTC"

		if [ -z $_PACKAGE_BUILD_DIR ]; then
			_PACKAGE_BUILD_DIR=$RPM_BUILD_DIR/$RPM_PACKAGE_NAME-$RPM_PACKAGE_VERSION
		fi

		if [ -d $_PACKAGE_BUILD_DIR ]; then
			CHANGELOGS=`find $_PACKAGE_BUILD_DIR -type f -name ChangeLog`
			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 
		fi

		# move the contents over to the a new directory in order and set
		# the times.
		find -type f | LC_ALL=C sort | while read f; do
			cp "$f" "$JARDIR/$f"
			touch --date="$DATE" "$JARDIR/$f"
        	done
		popd > /dev/null

		# Set the times of the directories.
		find "$JARDIR" -type d | while read d; do
			touch --date="$DATE" "$d"
		done

		# make the jar
		pushd "$JARDIR" > /dev/null

		if [ -n "`find -not -name '.'`" ]; then
			if [ -e META-INF/MANIFEST.MF ]; then
			    /usr/bin/zip -q -X -9 "$j" META-INF/MANIFEST.MF
			fi
			find * -not -name '.' | LC_ALL=C sort | /usr/bin/zip -u -q -X -9 "$j" -@
		else
			# Put the empty jar back
			touch "$j"
		fi
		popd > /dev/null

		chown $JAROWN $j
		chgrp $JARGRP $j

		# Cleanup.
		rm -rf "$JTMPDIR"
		rm -rf "$JARDIR"
		rm -f "$TIMEREF"
	done
	IFS="$OLD_IFS"

	# remove $RPM_BUILD_ROOT/tmp if we created it
	if [ $rmtmp -eq 1 ]; then
		rm -rf $RPM_BUILD_ROOT/tmp
	fi
fi