# Generated automatically from Makefile.in by configure.
# Makefile.in --- xscreensaver, Copyright (c) 1999 Jamie Zawinski.
# the `../configure' script generates `Makefile' from this file.


srcdir		= .

SHELL		= /bin/sh
SUBDIRS		= utils driver hacks hacks/glx
TARFILES	= README README.VMS README.debugging INSTALL xscreensaver.lsm \
		  configure configure.in Makefile.in config.h.in \
		  config.h-vms install-sh setup.com config.guess \
		  config.sub makevms.com screenblank.txt \
		  xscreensaver.lsm.sh xscreensaver.spec
TAR		= tar
COMPRESS	= gzip --verbose --best
COMPRESS_EXT	= gz
# COMPRESS	= compress
# COMPRESS_EXT	= Z

MAKE_SUBDIR = for dir in $(SUBDIRS); do (cd $$dir; $(MAKE) $@) || exit 5; done

default::
	@$(MAKE_SUBDIR)
all::
	@$(MAKE_SUBDIR)
install:
	@$(MAKE_SUBDIR)
install-program:
	@$(MAKE_SUBDIR)
install-man:
	@$(MAKE_SUBDIR)
install-strip:
	@$(MAKE_SUBDIR)
uninstall:
	@$(MAKE_SUBDIR)
uninstall-program:
	@$(MAKE_SUBDIR)
uninstall-man:
	@$(MAKE_SUBDIR)
depend:
	@$(MAKE_SUBDIR)
distdepend:
	@$(MAKE) update_spec_version
	@$(MAKE_SUBDIR)
TAGS: tags
tags:
	@$(MAKE_SUBDIR)
clean:
	@$(MAKE_SUBDIR)
distclean: clean
	-rm -f config.h Makefile config.status config.cache config.log TAGS *~ "#"*
	@$(MAKE_SUBDIR)

dist: tar

# This really makes me sick...
tar:
	@								    \
  sh config.status ;							    \
  rm -f configure ;							    \
  $(MAKE) configure ;							    \
  $(MAKE) distdepend ;							    \
  sh xscreensaver.lsm.sh > xscreensaver.lsm.$$$$ ;			    \
  mv xscreensaver.lsm.$$$$ xscreensaver.lsm ;				    \
  NAME=`sed -n								    \
  's/[^0-9]*\([0-9]\.[0-9][0-9]*\).*/xscreensaver-\1/p' utils/version.h` ;  \
  rm -rf $$NAME ; ln -s . $$NAME ;					    \
  FILES= ;								    \
  for subdir in $(SUBDIRS) ; do						    \
    d=`pwd` ;								    \
    cd $$subdir ;							    \
    FILES="$$FILES `$(MAKE) echo_tarfiles				    \
      | grep -v '^.*make\['						    \
      | sed \"s|^|$$subdir/|g;s| | $$subdir/|g\"			    \
      ` ";								    \
    cd $$d ; done ;							    \
  echo creating tar file $${NAME}.tar.$(COMPRESS_EXT)... ;		    \
  $(TAR) -vchf -							    \
    `echo $(TARFILES) $$FILES | sed "s|^|$$NAME/|g; s| | $$NAME/|g" `	    \
   | $(COMPRESS) > $${NAME}.tar.$(COMPRESS_EXT) ;			    \
  rm $$NAME


# This also makes me sick...
# autoconf generates a configure script that begins with a very hard to read,
# nearly impossible to customize --help blurb.  This horrid set of regexps
# go through and clean up the help text, by inserting whitespace and ripping
# out options we don't use.  Odds are good that this will fail with any version
# of autoconf other than the ones I've tried (2.12 and 2.13.)
#
configure::
	autoconf
	@TMP=configure.$$$$ ;						     \
	echo "munging configure's --help message..." ;			     \
	( perl -e '							     \
		my $$file="";						     \
		while (<>) { $$file .= $$_; }				     \
		$$_ = $$file;						     \
									     \
		s/^(Configuration:)$$/\n$$1\n/m;			     \
		s/^(Directory and file names:)$$/\n$$1\n/m;		     \
		s/^  --sbindir=.*\n//m;					     \
		s/^  --libexecdir.*\n//m;				     \
		s/^  --datadir.*\n.*\n//m;				     \
		s/^  --sysconfdir.*\n//m;				     \
		s/^  --sharedstatedir.*\n.*\n//m;			     \
		s/^  --localstatedir.*\n//m;				     \
		s/^  --infodir.*\n//m;					     \
		s/^(Host type:)$$/\n$$1\n/m;				     \
		s/\nFeatures and packages:\n.*library files are in DIR\n/\n/s;\
		s/--enable and --with options recognized://m;		     \
		s/\n  --with-x .*?(["\n])/$$1/s;			     \
		s/\n(Installation options:\n)/$$1/s;			     \
									     \
		s/^  --oldincludedir=.*$$/ \
 --x-includes=DIR        X include files are in DIR\n \
 --x-libraries=DIR       X library files are in DIR/m; \
									     \
		print;'							     \
	< configure							     \
	> $$TMP &&							     \
	cat $$TMP > configure ) ;					     \
	rm -f $$TMP

bump-version::
	@								    \
  SRC=utils/version.h ;							    \
  VERS=`sed -n 's/[^0-9]*\([0-9]\)\.\([0-9][0-9]*\).*/\1 \2/p' $$SRC` ;	    \
  set - $$VERS ;							    \
  MAJOR="$$1"; MINOR="$$2";						    \
  NEW=`echo $$MINOR + 1 | bc` ;						    \
  NEW=`echo $$NEW | sed 's/^\([0-9]\)$$/0\1/'` ;			    \
  D=`date '+%d-%b-%Y'`;							    \
  if [ ! -f xscreensaver-$$MAJOR.$$MINOR.tar.gz ]; then			    \
    echo "WARNING: xscreensaver-$$MAJOR.$$MINOR.tar.gz does not exist.";    \
  fi ;									    \
  if [ -f xscreensaver-$$MAJOR.$$NEW.tar.gz ]; then			    \
    echo "WARNING: xscreensaver-$$MAJOR.$$NEW.tar.gz already exists.";	    \
  fi ;									    \
  echo -n "Bumping $$MAJOR.$$MINOR to $$MAJOR.$$NEW ($$D), ok? ";	    \
  read line;								    \
  if [ "x$$line" != "xyes" -a  "x$$line" != "xy" ]; then		    \
    exit 1 ; 								    \
  fi ;									    \
  TMP=/tmp/bv.$$ ;							    \
  sed -e "s/\([0-9]\.[0-9][0-9]*\)/$$MAJOR.$$NEW/"			    \
      -e "s/\(([0-9][0-9]*-[A-Za-z][a-z][a-z]-[0-9][0-9][0-9]*\))/($$D)/"   \
        $$SRC > $$TMP ;							    \
  echo -n "New version and date are ";					    \
  sed -n "s/[^0-9]*\([0-9]\.[0-9][0-9]*\) (\([-A-Za-z0-9]*\)).*/\1, \2./p"  \
     $$TMP;								    \
  cat $$TMP > $$SRC ;							    \
  rm -f $$TMP;								    \
  echo "overwrote $$SRC"; 						    \
  ls -lFd $$SRC

update_spec_version::
	@S=$(srcdir)/xscreensaver.spec ;				    \
	U=$(srcdir)/utils/version.h ;					    \
	V=`sed -n 's/.*\([0-9][0-9]*\.[0-9]*\).*/\1/p' < $$U` ;		    \
	echo -n "Updating version number in $$S to \"$$V\"... " ;	    \
	T=/tmp/xs.$$$$ ;						    \
	sed "s/^\(%define.version[^0-9]*\)\(.*\)/\1$$V/"		    \
	  < $$S > $$T ;							    \
	if cmp -s $$S $$T ; then					    \
	  echo "unchanged." ;						    \
	else								    \
	  cat $$T > $$S ;						    \
	  echo "done." ;						    \
	fi ;								    \
	rm $$T

rpm::
	@								   \
  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][0-9]*\).*/\1/p' utils/version.h` ; \
  DIR=/usr/src/redhat ;							   \
  cp -p xscreensaver-$$VERS.tar.gz $$DIR/SOURCES/ ;			   \
  rpm --define "USE_GL yes" -ba xscreensaver.spec ;			   \
  rm -f $$DIR/xscreensaver-$$VERS.tar.gz ;				   \
  rm -rf $$DIR/BUILD/xscreensaver-$$VERS ;				   \
  mv $$DIR/SRPMS/xscreensaver*-$$VERS-*.rpm . ;				   \
  mv $$DIR/RPMS/i386/xscreensaver*-$$VERS-*.rpm . ;			   \
  echo '' ;								   \
  ls -lFG xscreensaver*-$$VERS-*.rpm

test-tar::
	@								    \
  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][0-9]*\).*/\1/p' utils/version.h` ;  \
  D=xscreensaver-$$VERS ;						    \
  NAME="$$D.tar.gz" ;							    \
  if [ ! -f $$NAME ]; then						    \
    echo "$$NAME does not exist!  Did you forget to \`make tar'?" ;	    \
    exit 1 ; 								    \
  fi ;									    \
									    \
  set -e ;								    \
  set -x ;								    \
									    \
  if [ -d $$D ]; then							    \
   chmod -R u+w $$D ;							    \
  fi ;									    \
  rm -rf $$D ;								    \
  zcat $$D.tar.gz | tar -xf - ;						    \
  cd $$D ;								    \
  chmod -R a-w . ;							    \
  chmod u+w . ;								    \
  mkdir BIN ;								    \
  mkdir BIN/motif ;							    \
  mkdir BIN/lesstif ;							    \
  chmod a-w . ;								    \
									    \
  ( cd BIN/motif ;							    \
    CC=cc ;								    \
    export CC ;								    \
    ../../configure --without-xpm --without-xdbe --without-xshm 	    \
		    --with-motif=/usr/local/motif ;			    \
    echo --------------------------------------------------------------- ;  \
    gmake all ;								    \
    ( cd driver; gmake tests ) ;					    \
    echo --------------------------------------------------------------- ); \
									    \
  ( cd BIN/lesstif ;							    \
    CC=cc ;								    \
    export CC ;								    \
    ../../configure --with-motif=/usr/local/lesstif --without-gnome ;	    \
    echo --------------------------------------------------------------- ;  \
    ( cd utils; gmake all ) ;						    \
    ( cd driver; gmake all ) ;						    \
    echo --------------------------------------------------------------- ); \
									    \
  chmod -R u+w .


www::
	@								    \
  DEST=$$HOME/www/xscreensaver ;					    \
  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][0-9]*\).*/\1/p' utils/version.h` ;  \
  HEAD="xscreensaver-$$VERS" ;						    \
  NAME="$$HEAD.tar.gz" ;						    \
									    \
  if [ ! -f $$NAME ]; then						    \
    echo "$$NAME does not exist!  Did you forget to \`make tar'?" ;	    \
    exit 1 ; 								    \
  fi ;									    \
  chmod a-w $$NAME ;							    \
  if [ -f $$DEST/$$NAME ]; then						    \
    echo -n "WARNING: $$DEST/$$NAME already exists!  Overwrite? ";	    \
    read line;								    \
    if [ "x$$line" != "xyes" -a "x$$line" != "xy" ]; then		    \
      exit 1 ; 								    \
    fi ;								    \
  fi ;									    \
  cp -p $$NAME $$DEST/$$NAME ;						    \
  chmod u+w $$DEST/$$NAME ;						    \
  cd $$DEST ;								    \
									    \
  TMP=/tmp/xd.$$$$ ;							    \
  sed "s/xscreensaver-[0-9]\.[0-9][0-9]*/$$HEAD/g" download.html > $$TMP ;  \
  echo '' ;								    \
  diff -u0 download.html $$TMP ;					    \
  echo '' ;								    \
									    \
  OLDEST=`ls xscreensaver*.tar.gz | head -1` ;				    \
  echo -n "Delete $$DEST/$$OLDEST? ";					    \
  read line;								    \
  if [ "x$$line" = "xyes" -o "x$$line" = "xy" ]; then			    \
    set -x ;								    \
    rm $$OLDEST ;							    \
    cvs remove $$OLDEST ;						    \
  else									    \
    set -x ;								    \
  fi ;									    \
  cvs add -kb $$NAME ;							    \
  cat $$TMP > download.html ;						    \
  rm -f $$TMP ;								    \
									    \
  (cd ..; $(MAKE) xscreensaver/changelog.html );			    \
  cvs diff -u0 changelog.html ;						    \
  set +x ;								    \
									    \
  echo -n "Ok? ";							    \
  read line;								    \
  if [ "x$$line" != "xyes" -a "x$$line" != "xy" ]; then			    \
    exit 1 ;								    \
  fi ;									    \
									    \
  cvs commit -m "$$VERS"
