#!/bin/sh -e # # brp-cleanup - cleanup buildroot. # # Copyright (C) 2000-2002 Dmitry V. Levin # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # PROG="${0##*/}" RPM_CLEANUP_METHOD="${RPM_CLEANUP_METHOD## }" RPM_CLEANUP_METHOD="${RPM_CLEANUP_METHOD%% }" echo "Cleaning files in $RPM_BUILD_ROOT ($RPM_CLEANUP_METHOD)" if [ "$RPM_CLEANUP_METHOD" = skip ]; then exit 0 fi # If using normal root, avoid changing anything. if [ -z "$(echo "$RPM_BUILD_ROOT" |tr -d ' /.')" ]; then echo "$PROG: non-/ \$RPM_BUILD_ROOT expected" >&2 exit 1 fi cd "$RPM_BUILD_ROOT" if [ "$RPM_CLEANUP_METHOD" = none ]; then exit 0 fi : ${RPM_CLEANUP_TOPDIR:=} [ -d "$RPM_BUILD_ROOT$RPM_CLEANUP_TOPDIR" ] || exit 0 : ${RPM_CLEANUP_SKIPLIST:=} export RPM_CLEANUP_SKIPLIST if [ -n "$RPM_CLEANUP_METHOD" -a "$RPM_CLEANUP_METHOD" != auto ]; then exec "$RPM_CLEANUP_METHOD" fi find .$RPM_CLEANUP_TOPDIR -type f \( \ -name '#*#' \ -o -name '*~' \ -o -name DEADJOE \ -o -name '*.orig' \ -o -name '*.rej' \ -o -name '*.bak' \ -o -name '.*.orig' \ -o -name '.*.rej' \ -o -name '.*.bak' \ -o -name .SUMS \ -o -name TAGS \ -o -name core \ -o \( -path '*/.deps/*' -a -name '*.P' \) \ \) -print0 | xargs -r0 rm -vf -- find .$RPM_CLEANUP_TOPDIR -type d -name CVS -print0 | xargs -r0 rm -vrf -- if cd ./etc/pam.d >/dev/null 2>&1; then find -type f -mindepth 1 -maxdepth 1 -print0 | xargs -r0 subst -p ' s,^\(#\?\)auth[[:space:]]\+,\1auth ,g s,^\(#\?\)account[[:space:]]\+,\1account ,g s,^\(#\?\)password[[:space:]]\+,\1password ,g s,^\(#\?\)session[[:space:]]\+,\1session ,g s,\([[:space:]]\)/lib/security/\(pam_\),\1\2,g s,\([[:space:]]\)required[[:space:]]\+pam_stack.so[[:space:]]\+service=,\1include ,g ' -- fi # All the rest is perl cleanup stuff. cd ./usr/lib/perl5 >/dev/null 2>&1 || exit 0 find -type f -name .packlist -print0 | xargs -r0 rm -vf -- find -type f -name \*.bs -size 0 -print0 | xargs -r0 rm -vf -- f="$(find -type f -name \*.bs)" if [ -n "$f" ]; then echo "$PROG: non empty *.bs file(s) found:" echo "$f" echo "$PROG: please contact packager" exit 1 fi