Howdy again, Mailman folks. The last patch I provided to make it possible to build Python using --with-python=/usr/bin/python2 (or a python named anything) was pretty big and unwieldy, I agree. This is a much smaller, better solution. With the old patch, we renamed (for example) bin/newlist to bin/newlist.in, and changed #! /usr/bin/env python to #! /usr/bin/env @PYTHON@ . Then, we added bin/newlist to the AC_OUTPUT macro in configure.in, which made a ./configure do the proper expansion. But it made the patch huge, and would not only ruin the CVS logs for those files, but would force programmers to guess whether they should edit bin/foo.in or bin/foo. This new patch makes a temporary build/ top-level subdirectory when ./configure is run, and uses a bit of autoconf magic to macro-expand bin/newlist to build/bin/newlist. This works beautifully; the Makefile.in files in various directories just had to be modified to use ../build/bin (etc.) as a prefix to the filename to be installed on a make install. I also added a little macro in the configure.in to convert a long string like: bin/update \ bin/newlist \ bin/check_perms to: build/bin/update:bin/update \ build/bin/newlist:bin/newlist \ build/bin/check_perms:bin/check_perms This way, we just keep a variable called MM_SCRIPTS in the first format in configure.in, which lists everything that's considered a script and should be macro-expanded. I hope this patch will be more acceptable. It's very small (700 lines) but fixes the problem. It's really critical that this be accepted before Mailman 2.1 comes out, or it'll be unusable on systems that have python 2.0 installed as /usr/bin/python2 or /usr/local/bin/python2. Ben Patch follows. diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/Makefile.in mailman/Makefile.in --- mailman.cvs.orig/Makefile.in Thu Jul 19 06:49:19 2001 +++ mailman/Makefile.in Wed Sep 5 11:38:42 2001 @@ -137,3 +137,5 @@ (cd $$d; $(MAKE) distclean); \ done -rm -f config.cache config.log config.status Makefile + -rm -rf build + diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/Makefile.in mailman/bin/Makefile.in --- mailman.cvs.orig/bin/Makefile.in Tue Aug 21 05:08:41 2001 +++ mailman/bin/Makefile.in Wed Sep 5 11:14:49 2001 @@ -47,6 +47,8 @@ version config_list list_lists dumpdb fix_url.py \ list_admins genaliases change_pw mailmanctl qrunner +BUILDDIR= ../build/bin + # Modes for directories and executables created by the install # process. Default to group-writable directories but # user-only-writable for executables. @@ -63,7 +65,7 @@ install: for f in $(SCRIPTS); \ do \ - $(INSTALL) -m $(EXEMODE) $$f $(SCRIPTSDIR); \ + $(INSTALL) -m $(EXEMODE) $(BUILDDIR)/$$f $(SCRIPTSDIR); \ done finish: diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/add_members mailman/bin/add_members --- mailman.cvs.orig/bin/add_members Sat Aug 4 11:05:41 2001 +++ mailman/bin/add_members Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/arch mailman/bin/arch --- mailman.cvs.orig/bin/arch Thu Jul 26 14:30:28 2001 +++ mailman/bin/arch Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/change_pw mailman/bin/change_pw --- mailman.cvs.orig/bin/change_pw Sat Aug 4 11:05:41 2001 +++ mailman/bin/change_pw Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/check_db mailman/bin/check_db --- mailman.cvs.orig/bin/check_db Fri Dec 8 04:33:52 2000 +++ mailman/bin/check_db Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/check_perms mailman/bin/check_perms --- mailman.cvs.orig/bin/check_perms Mon Jul 2 22:55:23 2001 +++ mailman/bin/check_perms Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/clone_member mailman/bin/clone_member --- mailman.cvs.orig/bin/clone_member Mon Jul 30 06:26:49 2001 +++ mailman/bin/clone_member Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/config_list mailman/bin/config_list --- mailman.cvs.orig/bin/config_list Sat May 26 00:18:34 2001 +++ mailman/bin/config_list Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/digest_arch mailman/bin/digest_arch --- mailman.cvs.orig/bin/digest_arch Mon Mar 26 09:03:46 2001 +++ mailman/bin/digest_arch Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/dumpdb mailman/bin/dumpdb --- mailman.cvs.orig/bin/dumpdb Thu Jul 12 05:11:24 2001 +++ mailman/bin/dumpdb Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/find_member mailman/bin/find_member --- mailman.cvs.orig/bin/find_member Thu Jul 19 12:28:20 2001 +++ mailman/bin/find_member Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/genaliases mailman/bin/genaliases --- mailman.cvs.orig/bin/genaliases Wed Sep 5 12:04:45 2001 +++ mailman/bin/genaliases Wed Sep 5 11:36:49 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/list_admins mailman/bin/list_admins --- mailman.cvs.orig/bin/list_admins Thu Mar 22 12:42:00 2001 +++ mailman/bin/list_admins Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/list_lists mailman/bin/list_lists --- mailman.cvs.orig/bin/list_lists Fri Dec 8 04:33:52 2000 +++ mailman/bin/list_lists Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/list_members mailman/bin/list_members --- mailman.cvs.orig/bin/list_members Thu Jul 19 12:28:20 2001 +++ mailman/bin/list_members Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/mailmanctl mailman/bin/mailmanctl --- mailman.cvs.orig/bin/mailmanctl Thu Aug 16 04:38:00 2001 +++ mailman/bin/mailmanctl Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # Copyright (C) 2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/mmsitepass mailman/bin/mmsitepass --- mailman.cvs.orig/bin/mmsitepass Fri Jun 1 01:15:05 2001 +++ mailman/bin/mmsitepass Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/newlist mailman/bin/newlist --- mailman.cvs.orig/bin/newlist Tue Aug 21 00:15:56 2001 +++ mailman/bin/newlist Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/pygettext.py mailman/bin/pygettext.py --- mailman.cvs.orig/bin/pygettext.py Sat Jul 28 02:22:55 2001 +++ mailman/bin/pygettext.py Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # Originally written by Barry Warsaw <barry@zope.com> # # Minimally patched to make it even more xgettext compatible diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/qrunner mailman/bin/qrunner --- mailman.cvs.orig/bin/qrunner Fri Jul 6 06:58:21 2001 +++ mailman/bin/qrunner Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # Copyright (C) 2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/remove_members mailman/bin/remove_members --- mailman.cvs.orig/bin/remove_members Fri Jul 20 05:01:48 2001 +++ mailman/bin/remove_members Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/rmlist mailman/bin/rmlist --- mailman.cvs.orig/bin/rmlist Thu May 10 00:04:15 2001 +++ mailman/bin/rmlist Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/sync_members mailman/bin/sync_members --- mailman.cvs.orig/bin/sync_members Thu Jul 19 12:28:20 2001 +++ mailman/bin/sync_members Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/update mailman/bin/update --- mailman.cvs.orig/bin/update Thu Aug 16 06:30:26 2001 +++ mailman/bin/update Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/version mailman/bin/version --- mailman.cvs.orig/bin/version Fri Dec 8 04:33:52 2000 +++ mailman/bin/version Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/bin/withlist mailman/bin/withlist --- mailman.cvs.orig/bin/withlist Wed Aug 1 15:30:33 2001 +++ mailman/bin/withlist Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/configure mailman/configure --- mailman.cvs.orig/configure Sat Aug 18 08:20:12 2001 +++ mailman/configure Wed Sep 5 11:30:56 2001 @@ -1,6 +1,6 @@ #! /bin/sh -# From configure.in Revision: 2.11 +# From configure.in Revision: 2.12 # Guess values for system-dependent variables and create Makefiles. # Generated automatically using autoconf version 2.13 @@ -1980,6 +1980,59 @@ done + + + + + +SCRIPTS="build/contrib/rotatelogs.py:contrib/rotatelogs.py \ +build/contrib/qmail-to-mailman.py:contrib/qmail-to-mailman.py \ +build/contrib/securelinux_fix.py:contrib/securelinux_fix.py \ +build/filters/bowa-strip:filters/bowa-strip \ +build/cron/senddigests:cron/senddigests \ +build/cron/bumpdigests:cron/bumpdigests \ +build/cron/nightly_gzip:cron/nightly_gzip \ +build/cron/mailpasswds:cron/mailpasswds \ +build/cron/gate_news:cron/gate_news \ +build/cron/checkdbs:cron/checkdbs \ +build/bin/update:bin/update \ +build/bin/newlist:bin/newlist \ +build/bin/check_perms:bin/check_perms \ +build/bin/find_member:bin/find_member \ +build/bin/withlist:bin/withlist \ +build/bin/mailmanctl:bin/mailmanctl \ +build/bin/change_pw:bin/change_pw \ +build/bin/list_admins:bin/list_admins \ +build/bin/check_db:bin/check_db \ +build/bin/list_lists:bin/list_lists \ +build/bin/pygettext.py:bin/pygettext.py \ +build/bin/qrunner:bin/qrunner \ +build/bin/clone_member:bin/clone_member \ +build/bin/genaliases:bin/genaliases \ +build/bin/digest_arch:bin/digest_arch \ +build/bin/arch:bin/arch \ +build/bin/rmlist:bin/rmlist \ +build/bin/mmsitepass:bin/mmsitepass \ +build/bin/version:bin/version \ +build/bin/remove_members:bin/remove_members \ +build/bin/config_list:bin/config_list \ +build/bin/list_members:bin/list_members \ +build/bin/sync_members:bin/sync_members \ +build/bin/add_members:bin/add_members \ +build/bin/dumpdb:bin/dumpdb \ +build/scripts/mailowner:scripts/mailowner \ +build/scripts/mailcmd:scripts/mailcmd \ +build/scripts/post:scripts/post \ +build/scripts/leave:scripts/leave \ +build/scripts/join:scripts/join \ +build/scripts/auto:scripts/auto " + + + +# These directories are temporary directories to store macro-expanded +# scripts. They're removed on a make distclean, so we make them here. +mkdir -p build/bin build/scripts build/contrib build/filters build/cron + trap '' 1 2 15 cat > confcache <<\EOF # This file is a shell script that caches the results of configure @@ -2101,7 +2154,8 @@ Mailman/Queue/Makefile Mailman/MTA/Makefile Mailman/Gui/Makefile templates/Makefile cron/Makefile filters/Makefile scripts/Makefile messages/Makefile - cron/crontab.in misc/mailman Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 + cron/crontab.in misc/mailman Makefile + $SCRIPTS" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <<EOF @@ -2151,6 +2205,7 @@ s%@FQDN@%$FQDN%g s%@URL@%$URL%g s%@CPP@%$CPP%g +s%@SCRIPTS@%$SCRIPTS%g CEOF EOF @@ -2200,7 +2255,8 @@ Mailman/Queue/Makefile Mailman/MTA/Makefile Mailman/Gui/Makefile templates/Makefile cron/Makefile filters/Makefile scripts/Makefile messages/Makefile - cron/crontab.in misc/mailman Makefile"} + cron/crontab.in misc/mailman Makefile + $SCRIPTS"} EOF cat >> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then @@ -2271,3 +2327,6 @@ rm -fr confdefs* $ac_clean_files test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 + +# Make sure all the build scripts are executable. +chmod -R +x build diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/configure.in mailman/configure.in --- mailman.cvs.orig/configure.in Sat Aug 18 08:20:12 2001 +++ mailman/configure.in Wed Sep 5 11:30:51 2001 @@ -470,6 +470,70 @@ # Checks for library functions. AC_CHECK_FUNCS(vsnprintf) +dnl Expand PYTHON path in the scripts, output into build/scriptname + +AC_DEFUN(MM_SCRIPTS, [dnl +contrib/rotatelogs.py \ +contrib/qmail-to-mailman.py \ +contrib/securelinux_fix.py \ +filters/bowa-strip \ +cron/senddigests \ +cron/bumpdigests \ +cron/nightly_gzip \ +cron/mailpasswds \ +cron/gate_news \ +cron/checkdbs \ +bin/update \ +bin/newlist \ +bin/check_perms \ +bin/find_member \ +bin/withlist \ +bin/mailmanctl \ +bin/change_pw \ +bin/list_admins \ +bin/check_db \ +bin/list_lists \ +bin/pygettext.py \ +bin/qrunner \ +bin/clone_member \ +bin/genaliases \ +bin/digest_arch \ +bin/arch \ +bin/rmlist \ +bin/mmsitepass \ +bin/version \ +bin/remove_members \ +bin/config_list \ +bin/list_members \ +bin/sync_members \ +bin/add_members \ +bin/dumpdb \ +scripts/mailowner \ +scripts/mailcmd \ +scripts/post \ +scripts/leave \ +scripts/join \ +scripts/auto ]) + +dnl Please make sure to leave a space at the end of the last entry. +dnl (This is so we don't have to use [a-z/] style character classes +dnl in the regexp below and mess with m4 quoting, which is not fun.) + +dnl This regexp munges each line in MM_SCRIPTS, replacing: +dnl path/script \ +dnl with: +dnl build/path/script:path/script \ +dnl so that we can macro-expand variables in scripts without using +dnl script.in filenames, outputting the new files in build/ . + +SCRIPTS="patsubst(MM_SCRIPTS, \(.+\) \(\\?\), build/\1:\1 \2)" + +AC_SUBST(SCRIPTS) + +# These directories are temporary directories to store macro-expanded +# scripts. They're removed on a make distclean, so we make them here. +mkdir -p build/bin build/scripts build/contrib build/filters build/cron + dnl Output everything AC_OUTPUT([misc/paths.py Mailman/Defaults.py Mailman/mm_cfg.py.dist src/Makefile misc/Makefile bin/Makefile @@ -479,4 +543,8 @@ Mailman/Queue/Makefile Mailman/MTA/Makefile Mailman/Gui/Makefile templates/Makefile cron/Makefile filters/Makefile scripts/Makefile messages/Makefile - cron/crontab.in misc/mailman Makefile]) + cron/crontab.in misc/mailman Makefile + $SCRIPTS]) + +# Make sure all the build scripts are executable. +chmod -R +x build diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/contrib/qmail-to-mailman.py mailman/contrib/qmail-to-mailman.py --- mailman.cvs.orig/contrib/qmail-to-mailman.py Fri Dec 8 01:53:21 2000 +++ mailman/contrib/qmail-to-mailman.py Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # Configuration variables - Change these for your site if necessary. MailmanHome = "/home/mailman"; # Mailman home directory. diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/contrib/rotatelogs.py mailman/contrib/rotatelogs.py --- mailman.cvs.orig/contrib/rotatelogs.py Sat Aug 4 11:06:06 2001 +++ mailman/contrib/rotatelogs.py Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 2000 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/contrib/securelinux_fix.py mailman/contrib/securelinux_fix.py --- mailman.cvs.orig/contrib/securelinux_fix.py Mon Mar 19 01:52:48 2001 +++ mailman/contrib/securelinux_fix.py Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/cron/Makefile.in mailman/cron/Makefile.in --- mailman.cvs.orig/cron/Makefile.in Sat Aug 4 11:06:50 2001 +++ mailman/cron/Makefile.in Wed Sep 5 11:14:38 2001 @@ -44,6 +44,8 @@ nightly_gzip bumpdigests FILES= crontab.in +BUILDDIR= ../build/cron + # Modes for directories and executables created by the install # process. Default to group-writable directories but # user-only-writable for executables. @@ -62,7 +64,7 @@ done for f in $(PROGRAMS); \ do \ - $(INSTALL) -m $(EXEMODE) $$f $(CRONDIR); \ + $(INSTALL) -m $(EXEMODE) $(BUILDDIR)/$$f $(CRONDIR); \ done finish: diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/cron/bumpdigests mailman/cron/bumpdigests --- mailman.cvs.orig/cron/bumpdigests Sat Jul 28 01:35:45 2001 +++ mailman/cron/bumpdigests Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/cron/checkdbs mailman/cron/checkdbs --- mailman.cvs.orig/cron/checkdbs Sat Jul 28 01:35:45 2001 +++ mailman/cron/checkdbs Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/cron/gate_news mailman/cron/gate_news --- mailman.cvs.orig/cron/gate_news Sat Jul 28 01:35:45 2001 +++ mailman/cron/gate_news Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/cron/mailpasswds mailman/cron/mailpasswds --- mailman.cvs.orig/cron/mailpasswds Sat Aug 4 14:23:56 2001 +++ mailman/cron/mailpasswds Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/cron/nightly_gzip mailman/cron/nightly_gzip --- mailman.cvs.orig/cron/nightly_gzip Sat Jul 28 01:35:45 2001 +++ mailman/cron/nightly_gzip Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/cron/senddigests mailman/cron/senddigests --- mailman.cvs.orig/cron/senddigests Sat Jul 28 01:35:45 2001 +++ mailman/cron/senddigests Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/filters/Makefile.in mailman/filters/Makefile.in --- mailman.cvs.orig/filters/Makefile.in Fri Dec 8 01:53:22 2000 +++ mailman/filters/Makefile.in Wed Sep 5 11:15:23 2001 @@ -43,6 +43,8 @@ FILTERS= bowa-strip +BUILDDIR= ../build/filters + # Modes for directories and executables created by the install # process. Default to group-writable directories but # user-only-writable for executables. @@ -59,7 +61,7 @@ install: for f in $(FILTERS); \ do \ - $(INSTALL) -m $(FILEMODE) $$f $(FILTERSDIR); \ + $(INSTALL) -m $(FILEMODE) $(BUILDDIR)/$$f $(FILTERSDIR); \ done finish: diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/filters/bowa-strip mailman/filters/bowa-strip --- mailman.cvs.orig/filters/bowa-strip Fri Dec 8 01:53:22 2000 +++ mailman/filters/bowa-strip Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/messages/Makefile.in mailman/messages/Makefile.in --- mailman.cvs.orig/messages/Makefile.in Sat Aug 18 06:24:01 2001 +++ mailman/messages/Makefile.in Wed Sep 5 11:43:50 2001 @@ -62,7 +62,7 @@ EXEMODE= 755 FILEMODE= 644 INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) -PROG= bin/pygettext.py +PROG= build/bin/pygettext.py .SUFFIXES: .po .mo .po.mo: @@ -117,7 +117,7 @@ docstring.files: @echo "Calculating script input files for pygettext" - (cd ..; grep -d skip -l '^#! /usr/bin/env python' `find bin cron scripts -name ".#*" -prune -o -print` >| messages/$@) + (cd ..; grep -d skip -l '^#! /usr/bin/env @PYTHON@' `find bin cron scripts -name ".#*" -prune -o -print` >| messages/$@) mailman.pot: marked.files docstring.files @echo "Running pygettext on $@; this make take a while." diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/misc/Cookie.py mailman/misc/Cookie.py --- mailman.cvs.orig/misc/Cookie.py Sun Aug 19 03:22:11 2001 +++ mailman/misc/Cookie.py Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#! /usr/bin/env @PYTHON@ """ #### diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/misc/Makefile.in mailman/misc/Makefile.in --- mailman.cvs.orig/misc/Makefile.in Wed Sep 5 12:04:47 2001 +++ mailman/misc/Makefile.in Wed Sep 5 11:16:23 2001 @@ -56,12 +56,14 @@ PATHSDIRS= bin cron scripts ICONS= *.jpg *.png +BUILDDIR= ../build/misc + # Rules all: install: - $(INSTALL) -m $(FILEMODE) Cookie.py $(PACKAGEDIR) + $(INSTALL) -m $(FILEMODE) $(BUILDDIR)/Cookie.py $(PACKAGEDIR) $(INSTALL) -m $(FILEMODE) $(ICONS) $(ICONDIR) for d in $(PATHSDIRS); \ do \ diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/scripts/Makefile.in mailman/scripts/Makefile.in --- mailman.cvs.orig/scripts/Makefile.in Sat Aug 4 11:26:54 2001 +++ mailman/scripts/Makefile.in Wed Sep 5 11:29:46 2001 @@ -42,6 +42,8 @@ SCRIPTS= mailcmd mailowner post driver join leave +BUILDDIR= ../build/scripts + # Modes for directories and executables created by the install # process. Default to group-writable directories but # user-only-writable for executables. @@ -58,7 +60,7 @@ install: for f in $(SCRIPTS); \ do \ - $(INSTALL) -m $(FILEMODE) $$f $(SCRIPTSDIR); \ + $(INSTALL) -m $(FILEMODE) $(BUILDDIR)/$$f $(SCRIPTSDIR); \ done finish: diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/scripts/auto mailman/scripts/auto --- mailman.cvs.orig/scripts/auto Thu Jun 28 08:00:47 2001 +++ mailman/scripts/auto Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/scripts/join mailman/scripts/join --- mailman.cvs.orig/scripts/join Thu Jun 28 08:01:22 2001 +++ mailman/scripts/join Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/scripts/leave mailman/scripts/leave --- mailman.cvs.orig/scripts/leave Thu Jun 28 08:01:42 2001 +++ mailman/scripts/leave Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/scripts/mailcmd mailman/scripts/mailcmd --- mailman.cvs.orig/scripts/mailcmd Thu Jun 28 08:02:03 2001 +++ mailman/scripts/mailcmd Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/scripts/mailowner mailman/scripts/mailowner --- mailman.cvs.orig/scripts/mailowner Thu Jun 28 08:02:29 2001 +++ mailman/scripts/mailowner Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. # diff -x *.pot -x *.po -x *.mo -x CVS -ruN mailman.cvs.orig/scripts/post mailman/scripts/post --- mailman.cvs.orig/scripts/post Thu Jun 28 08:02:46 2001 +++ mailman/scripts/post Mon Sep 3 13:57:23 2001 @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env @PYTHON@ # # Copyright (C) 1998,1999,2000,2001 by the Free Software Foundation, Inc. #