From http://www.jwz.org/xscreensaver/xscreensaver-5.24.tar.gz
[xscreensaver] / Makefile.in
index 10235b17e97896ecd373fb8ed8e4f019fcc7c877..aa233b8a504991dcbdd4d49d4b55a21647b3df2a 100644 (file)
@@ -1,4 +1,4 @@
-# Makefile.in --- xscreensaver, Copyright (c) 1999 Jamie Zawinski.
+# Makefile.in --- xscreensaver, Copyright (c) 1999-2010 Jamie Zawinski.
 # the `../configure' script generates `Makefile' from this file.
 
 @SET_MAKE@
@@ -6,66 +6,73 @@ srcdir                = @srcdir@
 VPATH          = @srcdir@
 
 SHELL          = /bin/sh
-SUBDIRS                = utils driver hacks hacks/glx
-TARFILES       = README README.VMS README.debugging INSTALL xscreensaver.lsm \
+SUBDIRS        = utils driver hacks hacks/glx po
+#SUBDIRS       = utils driver hacks hacks/glx
+SUBDIRS2       = $(SUBDIRS) OSX
+TARFILES       = README README.hacking README.VMS INSTALL \
                  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
+                 config.h-vms install-sh setup.com config.guess aclocal.m4 \
+                 config.sub makevms.com \
+                 intltool-merge.in intltool-extract.in intltool-update.in \
+                 xscreensaver.spec \
+                 xscreensaver.xcodeproj/project.pbxproj
+
 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
+MAKE_SUBDIR  = for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit 5; done
+MAKE_SUBDIR2 = for dir in $(SUBDIRS2); do $(MAKE) -C $$dir $@ || exit 5; done
 
+default::
+       @$(MAKE_SUBDIR)
 all::
        @$(MAKE_SUBDIR)
-install:
+install::
        @$(MAKE_SUBDIR)
-install-program:
+install-program::
        @$(MAKE_SUBDIR)
-install-man:
+install-man::
        @$(MAKE_SUBDIR)
-install-strip:
+install-strip::
        @$(MAKE_SUBDIR)
-uninstall:
+uninstall::
        @$(MAKE_SUBDIR)
-uninstall-program:
+uninstall-program::
        @$(MAKE_SUBDIR)
-uninstall-man:
+uninstall-man::
        @$(MAKE_SUBDIR)
-depend:
+depend::
        @$(MAKE_SUBDIR)
-distdepend:
+distdepend::
        @$(MAKE) update_spec_version
+       @$(MAKE_SUBDIR2)
+       @$(MAKE) -C po update-po
+
+TAGS:: tags
+tags::
        @$(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
+clean::
+       @$(MAKE_SUBDIR2)
+
+distclean:: clean
+       -rm -f config.h Makefile config.status config.cache config.log TAGS *~ "#"* intltool-extract intltool-merge intltool-update
+       @$(MAKE_SUBDIR2)
+
+dist:: tar
 
 # This really makes me sick...
-tar:
+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` ;  \
+  $(MAKE) version-date distdepend ;                                        \
+  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^. ]*\).*/\1/p' utils/version.h` ;  \
+  NAME="xscreensaver-$$VERS" ;                                             \
   rm -rf $$NAME ; ln -s . $$NAME ;                                         \
   FILES= ;                                                                 \
-  for subdir in $(SUBDIRS) ; do                                                    \
+  ADIR=archive/ ;                                                          \
+  for subdir in $(SUBDIRS2) ; do                                           \
     d=`pwd` ;                                                              \
     cd $$subdir ;                                                          \
     FILES="$$FILES `$(MAKE) echo_tarfiles                                  \
@@ -73,10 +80,10 @@ tar:
       | 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) ;                          \
+  echo creating tar file $$ADIR$$NAME.tar.gz... ;                          \
+  export COPYFILE_DISABLE=true ;                                           \
+  GZIP="-9v" $(TAR) -vczf $$ADIR$$NAME.tar.gz                              \
+    `echo $(TARFILES) $$FILES | sed "s|^|$$NAME/|g; s| | $$NAME/|g" ` ;            \
   rm $$NAME
 
 
@@ -89,6 +96,7 @@ tar:
 #
 configure::
        autoconf
+       autoheader
        @TMP=configure.$$$$ ;                                                \
        echo "munging configure's --help message..." ;                       \
        ( perl -e '                                                          \
@@ -99,8 +107,6 @@ configure::
                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;                                 \
@@ -115,6 +121,10 @@ configure::
  --x-includes=DIR        X include files are in DIR\n \
  --x-libraries=DIR       X library files are in DIR/m; \
                                                                             \
+               s@mandir=.\$${prefix}/man.@mandir=\\\$${datadir}/man@;       \
+                                                                            \
+               s@rm -f conftest@rm -rf conftest@g;                          \
+                                                                            \
                print;'                                                      \
        < configure                                                          \
        > $$TMP &&                                                           \
@@ -124,19 +134,20 @@ configure::
 bump-version::
        @                                                                   \
   SRC=utils/version.h ;                                                            \
-  VERS=`sed -n 's/[^0-9]*\([0-9]\)\.\([0-9][0-9]*\).*/\1 \2/p' $$SRC` ;            \
+  VERS=`sed -n 's/[^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.";    \
+  D=`date '+%d-%b-%Y'`;                                                            \
+  ADIR=archive/ ;                                                          \
+  if [ ! -f $${ADIR}xscreensaver-$$MAJOR.$$MINOR.tar.gz ]; then                    \
+   echo "WARNING: $${ADIR}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.";     \
+  if [ -f $${ADIR}xscreensaver-$$MAJOR.$$NEW.tar.gz ]; then                \
+    echo "WARNING: $${ADIR}xscreensaver-$$MAJOR.$$NEW.tar.gz already exists.";\
   fi ;                                                                     \
-  echo -n "Bumping $$MAJOR.$$MINOR to $$MAJOR.$$NEW ($$D), ok? ";          \
+  /bin/echo -n "Bumping $$MAJOR.$$MINOR to $$MAJOR.$$NEW ($$D), ok? ";     \
   read line;                                                               \
   if [ "x$$line" != "xyes" -a  "x$$line" != "xy" ]; then                   \
     exit 1 ;                                                               \
@@ -145,7 +156,7 @@ bump-version::
   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 ";                                     \
+  /bin/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 ;                                                      \
@@ -153,13 +164,33 @@ bump-version::
   echo "overwrote $$SRC";                                                  \
   ls -lFd $$SRC
 
+bump_version:: bump-version
+tick-version:: bump-version
+tick_version:: bump-version
+
+version-date::
+       @                                                                   \
+  SRC=utils/version.h ;                                                            \
+  D=`date '+%d-%b-%Y'`;                                                            \
+  TMP=/tmp/bv.$$ ;                                                         \
+  sed -e "s/([0-9][^()]*)/($$D)/" < $$SRC > $$TMP ;                        \
+  /bin/echo -n "Updating date in $$SRC to \"$$D\"... " ;                   \
+  if cmp -s $$SRC $$TMP ; then                                             \
+    echo "unchanged." ;                                                            \
+  else                                                                     \
+    cat $$TMP > $$SRC ;                                                            \
+    echo "done." ;                                                         \
+  fi ;                                                                     \
+  rm -f $$TMP
+
+
 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\"... " ;           \
+       VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^. ]*\).*/\1/p' < $$U` ;      \
+       /bin/echo -n "Updating $$S to \"$$VERS\"... " ;                     \
        T=/tmp/xs.$$$$ ;                                                    \
-       sed "s/^\(Version:[^0-9]*\)\(.*\)/\1$$V/"                           \
+       sed "s/^\(%define.version[^0-9]*\)\(.*\)/\1$$VERS/"                 \
          < $$S > $$T ;                                                     \
        if cmp -s $$S $$T ; then                                            \
          echo "unchanged." ;                                               \
@@ -170,16 +201,41 @@ update_spec_version::
        rm $$T
 
 rpm::
-       @                                                                   \
-  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][0-9]*\).*/\1/p' utils/version.h` ;  \
-  cp -p xscreensaver-$$VERS.tar.gz /usr/src/redhat/SOURCES/ ;              \
-  rpm -ba xscreensaver.spec
+       @                                                                  \
+  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^. ]*\).*/\1/p' utils/version.h` ; \
+  DIR=`pwd`/rpm_build ;                                                           \
+  ARCH=`rpm --showrc | sed -n 's/^build arch *: //p'` ;                           \
+  ADIR=archive/ ;                                                         \
+  TGZ=xscreensaver-$$VERS.tar.gz ;                                        \
+  if [ ! -f $${ADIR}$$TGZ ]; then                                         \
+    echo "$${ADIR}$$TGZ does not exist!  Did you forget to \`make tar'?" ; \
+    exit 1 ;                                                              \
+  fi ;                                                                    \
+  rm -rf /var/tmp/xscreensaver-$$VERS-root ;                              \
+  rm -rf $$DIR ;                                                          \
+  mkdir $$DIR ;                                                                   \
+  ( cd $$DIR; mkdir BUILD RPMS RPMS/$$ARCH SOURCES SPECS SRPMS ) ;        \
+  cp -p $${ADIR}$$TGZ $$DIR/SOURCES/ ;                                    \
+  rpmbuild --define "_topdir $$DIR"                                       \
+           --define "USE_GL yes"                                          \
+           -v -ba xscreensaver.spec ;                                     \
+  echo '' ;                                                               \
+  echo 'RPM build complete' ;                                             \
+  echo '' ;                                                               \
+  rm -f $$DIR/$$TGZ ;                                                     \
+  rm -rf $$DIR/BUILD/xscreensaver-$$VERS ;                                \
+  mv $$DIR/SRPMS/xscreensaver*-$$VERS-*.rpm . ;                                   \
+  mv $$DIR/RPMS/$$ARCH/xscreensaver*-$$VERS-*.rpm . ;                     \
+  rm -rf $$DIR ;                                                          \
+  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` ;  \
+  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^. ]*\).*/\1/p' utils/version.h` ;  \
   D=xscreensaver-$$VERS ;                                                  \
-  NAME="$$D.tar.gz" ;                                                      \
+  ADIR=archive/ ;                                                          \
+  NAME="$${ADIR}$$D.tar.gz" ;                                              \
   if [ ! -f $$NAME ]; then                                                 \
     echo "$$NAME does not exist!  Did you forget to \`make tar'?" ;        \
     exit 1 ;                                                               \
@@ -192,97 +248,123 @@ test-tar::
    chmod -R u+w $$D ;                                                      \
   fi ;                                                                     \
   rm -rf $$D ;                                                             \
-  zcat $$D.tar.gz | tar -xf - ;                                                    \
+  zcat $${ADIR}$$D.tar.gz | tar -xf - ;                                            \
   cd $$D ;                                                                 \
   chmod -R a-w . ;                                                         \
   chmod u+w . ;                                                                    \
   mkdir BIN ;                                                              \
-  mkdir BIN/athena ;                                                       \
   mkdir BIN/motif ;                                                        \
   mkdir BIN/lesstif ;                                                      \
   chmod a-w . ;                                                                    \
                                                                            \
-  ( cd BIN/athena ;                                                        \
-    CC=cc ;                                                                \
-    export CC ;                                                                    \
-    ../../configure --with-athena ;                                        \
-    echo --------------------------------------------------------------- ;  \
-    gmake ;                                                                \
-    echo --------------------------------------------------------------- ); \
-                                                                           \
   ( cd BIN/motif ;                                                         \
     CC=cc ;                                                                \
     export CC ;                                                                    \
     ../../configure --without-xpm --without-xdbe --without-xshm            \
                    --with-motif=/usr/local/motif ;                         \
     echo --------------------------------------------------------------- ;  \
-    gmake ;                                                                \
-    ( cd driver; gmake xscreensaver-demo-Xaw ) ;                           \
+    gmake all ;                                                                    \
+    ( cd driver; gmake tests ) ;                                           \
     echo --------------------------------------------------------------- ); \
                                                                            \
   ( cd BIN/lesstif ;                                                       \
     CC=cc ;                                                                \
     export CC ;                                                                    \
-    ../../configure --with-motif=/usr/local/lesstif ;                      \
+    ../../configure --with-motif=/usr/local/lesstif --without-gnome ;      \
     echo --------------------------------------------------------------- ;  \
-    ( cd utils; gmake ) ;                                                  \
-    ( cd driver; gmake ) ;                                                 \
-    ( cd driver; gmake xscreensaver-demo-Xaw ) ;                           \
+    ( cd utils; gmake all ) ;                                              \
+    ( cd driver; gmake all ) ;                                             \
     echo --------------------------------------------------------------- ); \
                                                                            \
   chmod -R u+w .
 
+dmg::
+       $(MAKE) -C OSX release dmg
 
 www::
        @                                                                   \
   DEST=$$HOME/www/xscreensaver ;                                           \
-  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][0-9]*\).*/\1/p' utils/version.h` ;  \
+  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^. ]*\).*/\1/p' utils/version.h` ;  \
   HEAD="xscreensaver-$$VERS" ;                                             \
-  NAME="$$HEAD.tar.gz" ;                                                   \
+  ADIR=archive/ ;                                                          \
+  BNAME="$$HEAD.tar.gz" ;                                                  \
+  NAME="$$ADIR$$BNAME" ;                                                   \
+  DNAME="$$DEST/$$HEAD.tar.gz" ;                                           \
+  BNAME2="$$HEAD.dmg" ;                                                            \
+  NAME2="$$ADIR$$BNAME2" ;                                                 \
+  DNAME2="$$DEST/$$HEAD.dmg" ;                                             \
                                                                            \
   if [ ! -f $$NAME ]; then                                                 \
     echo "$$NAME does not exist!  Did you forget to \`make tar'?" ;        \
     exit 1 ;                                                               \
   fi ;                                                                     \
-  if [ -f $$DEST/$$NAME ]; then                                                    \
-    echo -n "WARNING: $$DEST/$$NAME already exists!  Overwrite? ";         \
+  if [ ! -f $$NAME2 ]; then                                                \
+    echo "$$NAME2 does not exist!  Did you forget to \`make dmg'?" ;       \
+    exit 1 ;                                                               \
+  fi ;                                                                     \
+  chmod a-w $$NAME ;                                                       \
+  if [ -f $$DNAME ]; then                                                  \
+    /bin/echo -n "WARNING: $$DNAME 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 ;                                                \
+  if [ -f $$DNAME2 ]; then                                                 \
+    /bin/echo -n "WARNING: $$DNAME2 already exists!  Overwrite? ";         \
+    read line;                                                             \
+    if [ "x$$line" != "xyes" -a "x$$line" != "xy" ]; then                  \
+      exit 1 ;                                                                     \
+    fi ;                                                                   \
+  fi ;                                                                     \
+  cp -p $$NAME $$DNAME ;                                                   \
+  cp -p $$NAME2 $$DNAME2 ;                                                 \
+  chmod u+w $$DNAME $$DNAME2 ;                                             \
   cd $$DEST ;                                                              \
                                                                            \
   TMP=/tmp/xd.$$$$ ;                                                       \
-  sed "s/xscreensaver-[0-9]\.[0-9][0-9]*/$$HEAD/g" download.html > $$TMP ;  \
+  sed "s/xscreensaver-5\.[0-9][0-9ab]*/$$HEAD/g" download.html > $$TMP ;    \
   echo '' ;                                                                \
-  diff -u0 download.html $$TMP ;                                           \
+  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 ;                                                     \
+  for EXT in tar.gz dmg ; do                                               \
+    OLDEST=`ls xscreensaver*.$$EXT |                                       \
+      fgrep -v 5.14 |                                                      \
+      head -n 1` ;                                                         \
+    /bin/echo -n "Delete $$DEST/$$OLDEST? ";                               \
+    read line;                                                             \
+    if [ "x$$line" = "xyes" -o "x$$line" = "xy" ]; then                            \
+      set -x ;                                                             \
+      rm $$OLDEST ;                                                        \
+      cvs remove $$OLDEST ;                                                \
+      set +x ;                                                             \
+    fi ;                                                                   \
+  done ;                                                                   \
+  set -x ;                                                                 \
+  cvs add -kb $$BNAME $$BNAME2 ;                                           \
   cat $$TMP > download.html ;                                              \
   rm -f $$TMP ;                                                                    \
                                                                            \
-  (cd ..; $(MAKE) xscreensaver/changelog.html );                           \
-  cvs diff -u0 changelog.html ;                                                    \
+  $(MAKE) -C ../ xscreensaver/changelog.html xscreensaver/screenshots/index.html; \
+  cvs diff -U0 changelog.html ;                                                    \
   set +x ;                                                                 \
                                                                            \
-  echo -n "Ok? ";                                                          \
+  /bin/echo -n "Ok? ";                                                     \
   read line;                                                               \
   if [ "x$$line" != "xyes" -a "x$$line" != "xy" ]; then                            \
     exit 1 ;                                                               \
   fi ;                                                                     \
                                                                            \
   cvs commit -m "$$VERS"
+
+
+count::
+       @ \
+  /bin/echo -n "Current hack count: " ; \
+  ( ( cd hacks;     make -s INSTALL=true install-program install-scripts ) ; \
+    ( cd hacks/glx; make -s INSTALL=true install-program ) ) | \
+    grep true | \
+    grep -v helper | \
+    grep -v ljlatest | \
+    wc -l