# Copyright (C) 1998-2003 by the Free Software Foundation, Inc. # # 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # NOTE: Makefile.in is converted into Makefile by the configure script # in the parent directory. Once configure has run, you can recreate # the Makefile by running just config.status. # Variables set by configure SHELL= /bin/sh VPATH= @srcdir@ srcdir= @srcdir@ bindir= @bindir@ prefix= @prefix@ exec_prefix= @exec_prefix@ var_prefix= @VAR_PREFIX@ DESTDIR= CC= @CC@ INSTALL= @INSTALL@ PYTHON= @PYTHON@ DEFS= @DEFS@ # Customizable but not set by configure OPT= @OPT@ CFLAGS= @CFLAGS@ $(OPT) $(DEFS) VAR_DIRS= \ logs archives lists locks data spam qfiles \ archives/private archives/public ARCH_INDEP_DIRS= \ bin templates scripts cron pythonlib \ Mailman Mailman/Cgi Mailman/Logging Mailman/Archiver \ Mailman/Handlers Mailman/Queue Mailman/Bouncers \ Mailman/MTA Mailman/Gui Mailman/Commands messages icons \ tests tests/bounces tests/msgs ARCH_DEP_DIRS= cgi-bin mail # Directories make should decend into SUBDIRS= bin cron misc Mailman scripts src templates messages tests # Modes for directories and executables created by the install # process. Default to group-writable directories but # user-only-writable for executables. DIRMODE= 775 EXEMODE= 755 FILEMODE= 644 INSTALL_PROGRAM=$(INSTALL) -m $(EXEMODE) DIRSETGID= chmod g+s DATE = $(shell python -c 'import time; print time.strftime("%d-%b-%Y"),') LANGPACK = README-I18N.en templates messages EXCLUDES = --exclude=CVS --exclude=.cvsignore --exclude=Makefile* --exclude=*.files --exclude=*.old # Rules all: subdirs subdirs: $(SUBDIRS) for d in $(SUBDIRS); \ do \ (cd $$d; $(MAKE)); \ done install: doinstall update doinstall: $(SUBDIRS) @echo "Creating architecture independent directories..." @for d in $(VAR_DIRS); \ do \ dir=$(DESTDIR)$(var_prefix)/$$d; \ if test ! -d $$dir; then \ echo "Creating directory hierarchy $$dir"; \ $(srcdir)/mkinstalldirs $$dir; \ chmod $(DIRMODE) $$dir; \ $(DIRSETGID) $$dir; \ else true; \ fi; \ done chmod o-r $(DESTDIR)$(var_prefix)/archives/private @for d in $(ARCH_INDEP_DIRS); \ do \ dir=$(DESTDIR)$(prefix)/$$d; \ if test ! -d $$dir; then \ echo "Creating directory hierarchy $$dir"; \ $(srcdir)/mkinstalldirs $$dir; \ chmod $(DIRMODE) $$dir; \ $(DIRSETGID) $$dir; \ else true; \ fi; \ done @echo "Creating architecture dependent directories..." @for d in $(ARCH_DEP_DIRS); \ do \ dir=$(DESTDIR)$(exec_prefix)/$$d; \ if test ! -d $$dir; then \ echo "Creating directory hierarchy $$dir"; \ $(srcdir)/mkinstalldirs $$dir; \ chmod $(DIRMODE) $$dir; \ $(DIRSETGID) $$dir; \ else true; \ fi; \ done @for d in $(SUBDIRS); \ do \ (cd $$d; $(MAKE) DESTDIR=$(DESTDIR) install); \ done $(PYTHON) -c 'from compileall import *; compile_dir("$(DESTDIR)$(prefix)/Mailman", ddir="$(prefix)/Mailman")' # Only run bin/update if we aren't installing in DESTDIR, as this # means there are probably no lists to deal with, and it wouldn't # work anyway (because of import paths.) update: @(cd $(DESTDIR)$(prefix) ; test -n "$(DESTDIR)" || bin/update) clean: $(SUBDIRS) @for d in $(SUBDIRS); \ do \ (cd $$d; $(MAKE) clean); \ done -rm -f update.log distclean: $(SUBDIRS) @for d in $(SUBDIRS); \ do \ (cd $$d; $(MAKE) distclean); \ done -rm -f config.cache config.log config.status Makefile -rm -rf build langpack: tar zcvf langpack-$(DATE).tgz $(EXCLUDES) $(LANGPACK)