⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cvs.sh

📁 Bookcase 是一个用于KDE的个人的书籍管理。它使用XML文件存储格式
💻 SH
字号:
#! /bin/sh## cvs.sh## This file contains support code from Makefile.common# It defines a shell function for each known target# and then does a case to call the correct function.call_and_fix_autoconf(){  $AUTOCONF || exit 1  if test -r configure.in.in ; then    perl -pi -e "print \"if test \\\"x\\\$with_fast_perl\\\" = \\\"xyes\\\"; then\    \\n  perl -i.bak \\\$ac_aux_dir/conf.change.pl \\\$CONFIG_STATUS\    \\\\\\n    || mv \\\$CONFIG_STATUS.bak \\\$CONFIG_STATUS\    \\n  rm -f \\\$CONFIG_STATUS.bak\\nfi\    \\n\" if /^\\s*chmod\\s+.*\\+x\\s+.*CONFIG_STATUS/;" configure  fi}strip_makefile(){  if test -f $makefile_wo; then :; else    perl -e '$in=0; while ( <> ) { $in = 1 if ($_=~ m/^if /); print $_ unless ($in); $in = 0 if ($_ =~ m/^endif/); }' < Makefile.am.in > $makefile_wo  fi}check_autotool_versions(){AUTOCONF_VERSION=`$AUTOCONF --version | head -1`case $AUTOCONF_VERSION in  Autoconf*2.5* | autoconf*2.5* ) : ;;  "" )    echo "*** AUTOCONF NOT FOUND!."    echo "*** KDE requires autoconf 2.52, 2.53 or 2.54"    exit 1    ;;  * )    echo "*** YOU'RE USING $AUTOCONF_VERSION."    echo "*** KDE requires autoconf 2.52, 2.53 or 2.54"    exit 1    ;;esac AUTOHEADER_VERSION=`$AUTOHEADER --version | head -1`case $AUTOHEADER_VERSION in  Autoconf*2.5* | autoheader*2.5* ) : ;;  "" )    echo "*** AUTOHEADER NOT FOUND!."    echo "*** KDE requires autoheader 2.52 or 2.53 (part of autoconf)"    exit 1    ;;  * )    echo "*** YOU'RE USING $AUTOHEADER_VERSION."    echo "*** KDE requires autoheader 2.52 or 2.53 (part of autoconf)"    exit 1    ;;esacAUTOMAKE_STRING=`$AUTOMAKE --version | head -1`case $AUTOMAKE_STRING in  automake*1.5d* | automake*1.5* | automake*1.5-* )    echo "*** YOU'RE USING $AUTOMAKE_STRING."    echo "*** KDE requires automake 1.6"    exit 1    ;;  automake*1.6.* | automake*1.7* ) : ;;  "" )    echo "*** AUTOMAKE NOT FOUND!."    echo "*** KDE requires automake 1.6.1 or newer"    exit 1    ;;  unsermake* ) :    echo "*** YOU'RE USING UNSERMAKE."    echo "*** GOOD LUCK!! :)"    ;;  * )    echo "*** YOU'RE USING $AUTOMAKE_STRING."    echo "*** KDE requires automake 1.6"    exit 1    ;;esac}cvs(){check_autotool_versions ### Produce acinclude.m4if grep '\$(top_srcdir)/acinclude.m4:' $makefile_am >/dev/null; then  echo "*** Creating acinclude.m4"  rm -f acinclude.m4 configure.files    strip_makefile  $MAKE -f $makefile_wo top_srcdir=. ./acinclude.m4fi### Make new subdirs and configure.in.### The make calls could be optimized away here,### with a little thought.if test -r configure.in.in; then  rm -f subdirs configure.in  echo "*** Creating list of subdirectories"  subdirs  echo "*** Creating configure.in"  configure_files  strip_makefile  $MAKE -f $makefile_wo top_srcdir=. ./configure.in || exit 1fiecho "*** Creating aclocal.m4"$ACLOCAL || exit 1echo "*** Creating configure"call_and_fix_autoconfif egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then  echo "*** Creating config.h template"  $AUTOHEADER || exit 1fiecho "*** Creating Makefile templates"$AUTOMAKE || exit 1if test -z "$UNSERMAKE"; then  echo "*** Postprocessing Makefile templates"  perl -w admin/am_edit || exit 1fiif egrep "^cvs-local:" $makefile_am >/dev/null; then \  strip_makefile  $MAKE -f $makefile_wo cvs-local top_srcdir=. || exit 1fiecho "*** Creating date/time stamp"touch stamp-h.inecho "*** Finished"echo "    Don't forget to run ./configure"echo "    If you haven't done so in a while, run ./configure --help"}dist(){check_autotool_versions###### First build all of the files necessary to do just "make"###if grep '\$(top_srcdir)/acinclude.m4:' $makefile_am >/dev/null; then  strip_makefile  $MAKE -f $makefile_wo top_srcdir=. ./acinclude.m4fiif test -r configure.in.in; then  subdirs  configure_files  strip_makefile  $MAKE -f $makefile_wo top_srcdir=. ./configure.infi$ACLOCAL$AUTOHEADER$AUTOMAKE --foreign --include-depsperl -w admin/am_editcall_and_fix_autoconftouch stamp-h.inif grep "^cvs-local:" $makefile_am >/dev/null; then  strip_makefile  $MAKE -f $makefile_wo cvs-local top_srcdir=.fi###### Then make messages###if test -d po; then LIST=`find ./po -name "*.po"` for i in $LIST; do  file2=`echo $i | sed -e "s#\.po#\.gmo#"`  msgfmt -o $file2 $i || touch $file2 donefiif grep "^cvs-dist-local:" $makefile_am >/dev/null; then  strip_makefile  $MAKE -f $makefile_wo cvs-dist-local top_srcdir=.fi}subdir_dist(){$ACLOCAL$AUTOHEADER$AUTOMAKE --foreign --include-depsperl -w ../admin/am_editcall_and_fix_autoconf}configure_in(){rm -f configure.in configure.in.newkde_use_qt_param=test -f configure.files || { echo "need configure.files for configure.in"; exit 1; }cat `fgrep -v "configure.in.bot" < configure.files | fgrep -v "configure.in.mid"` > configure.in.newecho "KDE_CREATE_SUBDIRSLIST" >> configure.in.newif test -f Makefile.am.in; then  subdirs=`cat subdirs`  for dir in $subdirs; do    dir=`echo $dir | sed -e "s,[-+.],_,g"`    echo "AM_CONDITIONAL($dir""_SUBDIR_included, test \"x\$$dir""_SUBDIR_included\" = xyes)" >> configure.in.new  donefimfs=`find . -type d -print | fgrep -v "/." | \     sed -e "s#\./##" -e "/^debian/d" | sort`for i in $mfs; do  topleveldir=`echo $i| sed -e "s#/.*##"`  if test -f $topleveldir/configure.in; then	continue  fi  if test -f $i/Makefile.am; then :; else	continue  fi  if test -s inst-apps; then    if grep "\"^$topleveldir\"" inst-apps > /dev/null 2>&1; then	continue    fi  fi  if test "$i" = "."; then     echo "AC_CONFIG_FILES([ Makefile ])" >> configure.in.new  else     echo "AC_CONFIG_FILES([ $i/Makefile ])" >> configure.in.new  fi  if test -n "$UNSERMAKE"; then      if test "$i" = "."; then        echo "AC_CONFIG_FILES([ Makefile.rules ])" >> configure.in.new      else        echo "AC_CONFIG_FILES([ $i/Makefile.rules ])" >> configure.in.new      fi  fidonefiles=`cat configure.files`list=`egrep '^dnl AC_OUTPUT\(.*\)' $files | sed -e "s#^.*dnl AC_OUTPUT(\(.*\))#\1#"`for file in $list; do     echo "AC_CONFIG_FILES([ $file ])" >>  configure.in.newdoneif test -n "$UNSERMAKE"; then  echo "AC_CONFIG_FILES([ MakeVars ])" >> configure.in.newfimidfiles=`cat configure.files | fgrep "configure.in.mid"`test -n "$midfiles" && cat $midfiles >> configure.in.newecho "AC_OUTPUT" >> configure.in.newmodulename=if test -f configure.in.in; then   if head -2 configure.in.in | egrep "^#MIN_CONFIG\(.*\)$" > /dev/null; then      kde_use_qt_param=`cat configure.in.in | sed -n -e "s/#MIN_CONFIG(\(.*\))/\1/p"`   fi   if head -2 configure.in.in | egrep "^#MIN_CONFIG" > /dev/null; then      line=`grep "^AM_INIT_AUTOMAKE(" configure.in.in`      if test -n "$line"; then	  modulename=`echo $line | sed -e "s#AM_INIT_AUTOMAKE(\([^,]*\),.*#\1#"`	  VERSION=`echo $line | sed -e "s#AM_INIT_AUTOMAKE([^,]*, *\([^)]*\)).*#\1#"`      fi      sed -e "s#AM_INIT_AUTOMAKE([^@].*#dnl PACKAGE set before#" \          configure.in.new > configure.in && mv configure.in configure.in.new   fifiif test -z "$VERSION" || test "$VERSION" = "@VERSION@"; then     VERSION="\"3.1.0\""fiif test -z "$modulename" || test "$modulename" = "@MODULENAME@"; then   modulename=`pwd`;    modulename=`basename $modulename`   esc_VERSION=`echo $VERSION | sed -e "s#[^.0-9a-zA-Z]##g"`   modulename=`echo $modulename | sed -e "s#-$esc_VERSION##"`   fiif test -n "$kde_use_qt_param"; then      sed -e "s#^dnl KDE_USE_QT#KDE_USE_QT($kde_use_qt_param)#" \      	configure.in.new > configure.in && mv configure.in configure.in.newfised -e "s#@MODULENAME@#$modulename#" configure.in.new |	sed -e "s#@VERSION@#$VERSION#" > configure.inbotfiles=`cat configure.files | egrep "configure.in.bot"`test -n "$botfiles" && cat $botfiles >> configure.incat $admindir/configure.in.bot.end >> configure.inrm -f configure.in.new}configure_files(){admindir=NOfor i in . .. ../.. ../../..; do  if test -x $i/admin; then admindir=$i/admin; break; fidonerm -f configure.filestouch configure.filesif test -f configure.in.in && head -2 configure.in.in | grep "^#MIN_CONFIG" > /dev/null; then	echo $admindir/configure.in.min >> configure.filesfitest -f configure.in.in && echo configure.in.in >> configure.fileslist=`find . -name "configure.in.in" -o -name "configure.in.bot" -o -name "configure.in.mid" | sort`for i in $list; do if test -f $i && test `dirname $i` != "." ; then  echo $i >> configure.filesfi; donetest -f configure.in.mid && echo configure.in.mid >> configure.filestest -f configure.in.bot && echo configure.in.bot >> configure.files}subdirs(){dirs=compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' $makefile_am | head -1`compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' $makefile_am | head -1`for i in `ls -1`; do    if test -f $i/Makefile.am; then       case " $compilefirst $compilelast " in         *" $i "*) ;;         *) dirs="$dirs $i"       esac    fidone: > ./_SUBDIRSfor d in $compilefirst; do   echo $d >> ./_SUBDIRSdone(for d in $dirs; do    list=`sed -ne "s#^COMPILE_BEFORE_$d""[ ]*=[ ]*##p" $makefile_am | head -1`   for s in $list; do      echo $s $d   done   list=`sed -ne "s#^COMPILE_AFTER_$d""[ ]*=[ ]*##p" $makefile_am | head -1`   for s in $list; do      echo $d $s   done   echo $d $ddone ) | tsort >> ./_SUBDIRSfor d in $compilelast; do   echo $d >> ./_SUBDIRSdoneif test -f Makefile.am.in; then  cp Makefile.am.in Makefile.am  if test -n "$UNSERMAKE"; then    topsubdirs=    for i in $compilefirst $dirs $compilelast; do       vari=`echo $i | sed -e "s,[-+],_,g"`       echo "if $vari""_SUBDIR_included" >> Makefile.am       echo "$vari""_SUBDIR=$i" >> Makefile.am       echo "endif" >> Makefile.am       topsubdirs="$topsubdirs \$($vari""_SUBDIR)"    done    echo "SUBDIRS=$topsubdirs" >> Makefile.am  else    echo "SUBDIRS="'$(TOPSUBDIRS)' >> Makefile.am  fifiif test -r subdirs && diff subdirs _SUBDIRS > /dev/null; then  rm -f _SUBDIRSfitest -r _SUBDIRS && mv _SUBDIRS subdirs || true}cvs_clean(){if test -d CVS; then :; else  echo "You don't have a toplevel CVS directory."  echo "You most certainly didn't use cvs to get these sources."  echo "But this function depends on cvs's information."  exit 1fiperl $admindir/cvs-clean.pl}package_merge(){catalogs=$POFILESfor cat in $catalogs; do  msgmerge -o $cat.new $cat $PACKAGE.pot  if test -s $cat.new; then    grep -v "\"POT-Creation" $cat.new > $cat.new.2    grep -v "\"POT-Creation" $cat >> $cat.new.1    if diff $cat.new.1 $cat.new.2; then	rm $cat.new    else	mv $cat.new $cat    fi    rm -f $cat.new.1 $cat.new.2  fidone}package_messages(){rm -rf po.backupmkdir po.backupfor i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do  egrep -v '^#([^:]|$)' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > po.backup/$i  cp po/$i po.backup/backup_$i  touch -r po/$i po.backup/backup_$i  rm po/$idonepodir=${podir:-$PWD/po}files=`find . -name Makefile.am | xargs egrep -l '^messages:' `dirs=`for i in $files; do echo \`dirname $i\`; done`tmpname="$PWD/messages.log"if test -z "$EXTRACTRC"; then EXTRACTRC=extractrc ; fiif test -z "$PREPARETIPS"; then PREPARETIPS=preparetips ; fiexport EXTRACTRC PREPARETIPSfor subdir in $dirs; do  test -z "$VERBOSE" || echo "Making messages in $subdir"  (cd $subdir   if test -n "`grep -e '^messages:.*rc.cpp' Makefile.am`"; then	$EXTRACTRC *.rc *.ui > rc.cpp   else	candidates=`ls -1 *.rc *.ui 2>/dev/null`	if test -n "$candidates"; then	    echo "$subdir has *.rc or *.ui files, but not correct messages line"	fi   fi   if test -n "`grep -r KAboutData *.c* *.C* 2>/dev/null`"; then	echo -e 'i18n("_: NAME OF TRANSLATORS\\n"\n"Your names")\ni18n("_: EMAIL OF TRANSLATORS\\n"\n"Your emails")' > _translatorinfo.cpp   else echo " " > _translatorinfo.cpp   fi   perl -e '$mes=0; while (<STDIN>) { next if (/^(if|else|endif)\s/); if (/^messages:/) { $mes=1; print $_; next; } if ($mes) { if (/$\\(XGETTEXT\)/ && / -o/) { s/ -o \$\(podir\)/ _translatorinfo.cpp -o \$\(podir\)/ } print $_; } else { print $_; } }' < Makefile.am | egrep -v '^include ' > _transMakefile   $MAKE -s -f _transMakefile podir=$podir EXTRACTRC="$EXTRACTRC" PREPARETIPS="$PREPARETIPS" \	XGETTEXT="${XGETTEXT:-xgettext} -C -ki18n -ktr2i18n -kI18N_NOOP -ktranslate -kaliasLocale -x ${includedir:-$KDEDIR/include}/kde.pot" \	messages    ) 2>&1 | grep -v '^make\[1\]' > $tmpname   test -s $tmpname && { echo $subdir ; cat "$tmpname"; }   test -f $subdir/rc.cpp && rm -f $subdir/rc.cpp   rm -f $subdir/_translatorinfo.cpp   rm -f $subdir/_transMakefiledonerm -f $tmpnamefor i in `ls -1 po.backup/*.pot 2>/dev/null | sed -e "s#po.backup/##" | egrep -v '^backup_'`; do  test -f po/$i || echo "disappeared: $i"donefor i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do   msgmerge -q -o po/$i po/$i po/$i   egrep -v '^#([^:]|$)' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > temp.pot  if test -f po.backup/$i && test -n "`diff temp.pot po.backup/$i`"; then	echo "will update $i"	msgmerge -q po.backup/backup_$i po/$i > temp.pot	mv temp.pot po/$i  else    if test -f po.backup/backup_$i; then      test -z "$VERBOSE" || echo "I'm restoring $i"      mv po.backup/backup_$i po/$i      rm po.backup/$i    else      echo "will add $i"    fi  fidonerm -f temp.potrm -rf po.backup}admindir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'`test "x$admindir" = "x$0" && admindir=.test "x$MAKE" = x && MAKE=makemakefile_am=Makefile.ammakefile_wo=Makefile.amif test -f Makefile.am.in; then  makefile_am=Makefile.am.in  makefile_wo=Makefile.am.in.wofi# Suck in the AUTOCONF detection code. $admindir/detect-autoconf.sh###### Main###arg=`echo $1 | tr '\-.' __`case $arg in  cvs | dist | subdir_dist | configure_in | configure_files | subdirs | \  cvs_clean | package_merge | package_messages ) $arg ;;  * ) echo "Usage: cvs.sh <target>"      echo "Target can be one of:"      echo "    cvs cvs-clean dist"      echo "    configure.in configure.files"      echo "    package-merge package-messages"      echo ""      echo "Usage: anything but $1"      exit 1 ;;esacif test -f Makefile.am.in.wo; then  rm Makefile.am.in.wofiexit 0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -