- merge branches/py-lib, revisions 265-325 to trunk
git-svn-id: https://svn.ibp.de/svn/capisuite/trunk/capisuite@328 4ebea2bb-67d4-0310-8558-a5799e421b66master
parent
b75a6e0f54
commit
a22481c4fc
1
AUTHORS
1
AUTHORS
|
@ -1 +1,2 @@
|
|||
Gernot Hillier <gernot@hillier.de>
|
||||
Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
|
|
119
ChangeLog
119
ChangeLog
|
@ -1,9 +1,32 @@
|
|||
2004-10-25 Gernot Hillier <gernot@hillier.de>
|
||||
* src/capisuite-py/config.py.in: minor documentation changes
|
||||
* src/capisuite-py/__init__.py: Likewise.
|
||||
* src/capisuite-py/config.py.in (class NoGlobalSectionError): moved
|
||||
to exceptions.py
|
||||
* src/capisuite-py/exceptions.py: Likewise.
|
||||
|
||||
2004-09-04 Gernot Hillier <gernot@hillier.de>
|
||||
* scripts/cs_helpers.pyin (__sendmail, __call, sff2tif, cff2ps,
|
||||
la2wav, sendMIMEMail): fix several bugs, answering machine now seems
|
||||
to work basically
|
||||
* scripts/answering_machine.confin: update description of parameter
|
||||
voice_email to new behaviour (empty string not allowed any more)
|
||||
* NEWS: Likewise.
|
||||
|
||||
2004-07-15 Gernot Hillier <gernot@hillier.de>
|
||||
* configure.in: support new parameter in ALERT_REQ of newer capi4linux
|
||||
versions, thx to Steffen Barszus for reporting and the fix
|
||||
* src/backend/capi.cpp (Capi::alert_req): Likewise.
|
||||
* acinclude.m4 (CS_TEST_CAPI4LINUX): Likewise.
|
||||
|
||||
2004-06-12 Gernot Hillier <gernot@hillier.de>
|
||||
* scripts/incoming.py (voiceIncoming): create file in received queue
|
||||
only if necessary (i.e. as late as possible)
|
||||
* src/capisuite-py/fileutils.py (_releaseLock): ignore insignificant
|
||||
error resulting from race condition
|
||||
* src/capisuite-py/voice.py (createReceivedJob): fix argument passing
|
||||
* scripts/cs_helpers.pyin (sendMIMEMail): stringify exception instance
|
||||
|
||||
2004-06-10 Gernot Hillier <gernot@hillier.de>
|
||||
* src/backend/connection.cpp (info_ind_called_party_nr): prevent
|
||||
CapiSuite from crashing when a too high DDIBaseLength was configured,
|
||||
|
@ -17,9 +40,33 @@
|
|||
to avoid using phony targets in man page creation
|
||||
* docs/manual.docbook.in: see above.
|
||||
|
||||
2004-05-10 Gernot Hillier <gernot@hillier.de>
|
||||
* src/capisuite-py/core.py (Call.log,Call.__init__,Call.reject,
|
||||
Call.disconnect): fix minor bugs in function calls, import some
|
||||
additional symbols from _capisuite to our namespace, rename call_from
|
||||
and call_to attributes of class Call to from_nr and to_nr, don't set
|
||||
_handle to None after disconnect/reject
|
||||
* scripts/incoming.py (callIncoming,faxIncoming,voiceIncoming): rename
|
||||
call_from and call_to attributes of class Call to from_nr and to_nr;
|
||||
use them everywhere instead of old global variables
|
||||
* src/application/capisuitemodule.cpp (convertConnRef,convertCapiRef):
|
||||
improve misleading error message
|
||||
|
||||
2004-04-18 Gernot Hillier <gernot@hillier.de>
|
||||
* scripts/capisuitefax.in: allow * and # in destination numbers
|
||||
|
||||
2004-04-09 Gernot Hillier <gernot@hillier.de>
|
||||
* src/capisuite-py/core.py (Capi.call_voice,Capi.call_faxG3): fix
|
||||
some namespace problems and typos
|
||||
|
||||
2004-04-04 Gernot Hillier <gernot@hillier.de>
|
||||
* configure.in: add support to install new capisuite Python module
|
||||
* src/Makefile.am: Likewise
|
||||
* src/capisuite-py/Makefile.am: Likewise (new file)
|
||||
* src/capisuite-py/core.py (class Call): new method Call.log
|
||||
* scripts/incoming.py (callIncoming,faxIncoming,voiceIncoming): use
|
||||
Call.log instead of core.log where appropriate
|
||||
|
||||
2004-03-24 Gernot Hillier <gernot@hillier.de>
|
||||
* docs/Makefile.am: change pathes to Docbook stylesheets to reflect
|
||||
changes in SUSE 9.1
|
||||
|
@ -31,16 +78,72 @@
|
|||
2004-03-23 Gernot Hillier <gernot@hillier.de>
|
||||
* docs/manual-de.docbook (capicodes_protocol): fix small typo
|
||||
|
||||
2004-03-21 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
* scripts/fax.confin: Removed spaces from section names "Mail ...".
|
||||
* scripts/answering_machine.confin: Likewise.
|
||||
* scripts/incoming.py: Likewise.
|
||||
* scripts/idle.py: Likewise.
|
||||
* rc.capisuite.in: Likewise within a comment.
|
||||
* scripts/incoming.py: Removed some outdated comments.
|
||||
|
||||
2004-03-20 Gernot Hillier <gernot@hillier.de>
|
||||
* src/application/pythonscript.h: extend prefix() so that it can create
|
||||
a short prefix, too; use short prefix for Python traceback (fixes bug
|
||||
* src/application/pythonscript.h (prefix): add support for short
|
||||
logging prefixes; use them for Python tracebacks (fixes bug
|
||||
#63, reported anonymously)
|
||||
* src/application/pythonscript.cpp: Likewise.
|
||||
* src/application/pythonscript.cpp (prefix,run): Likewise.
|
||||
* scripts/incoming.py: Fix typo.
|
||||
|
||||
2004-03-19 Gernot Hillier <gernot@hillier.de>
|
||||
* scripts/idle.py: Remove old CVS history
|
||||
* scripts/incoming.py: Likewise.
|
||||
* scripts/incoming.py: changed some comments, moved connection
|
||||
accept code to voiceIncoming
|
||||
|
||||
2004-03-14 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
* scripts/incoming.py: Use capisuite.core instead of _capisuite.
|
||||
* src/capisuite-py/fax.py: Removed faxInfo2dict.
|
||||
* src/capisuite-py/core.py: Added OO layer for _capisuite
|
||||
functions and classes Capi and Call.
|
||||
* src/capisuite-py/core.py: New class FaxInfo.
|
||||
|
||||
2004-03-09 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
* src/application/idlescript.cpp: Reduced delay until
|
||||
* SConstruct: new file for building with SCons build-system.
|
||||
* SConscript: Likewise.
|
||||
* SConscript-Config: Likewise.
|
||||
* SConscript-Options: Likewise.
|
||||
* docs/SConscript: Likewise.
|
||||
* scripts/SConscript: Likewise.
|
||||
* scripts/waves/SConscript: Likewise.
|
||||
* src/SConscript: Likewise.
|
||||
* src/application/SConscript: Likewise.
|
||||
* src/backend/SConscript: Likewise.
|
||||
* src/modules/SConscript: Likewise.
|
||||
* src/application/capisuitemodule.cpp (capisuitemodule_init): Renamed
|
||||
built-in module to '_capisuite'
|
||||
* src/application/idlescript.cpp (run): Reduced delay until
|
||||
idlescript.py is called the first time after startup.
|
||||
* src/capisuite-py: Added python library modules.
|
||||
* src/capisuite-py/SConscript: Likewise.
|
||||
* src/capisuite-py/__init__.py: Likewise.
|
||||
* src/capisuite-py/config.py.in: Likewise.
|
||||
* src/capisuite-py/consts.py: Likewise.
|
||||
* src/capisuite-py/core.py: Likewise.
|
||||
* src/capisuite-py/exceptions.py: Likewise.
|
||||
* src/capisuite-py/fax.py: Likewise.
|
||||
* src/capisuite-py/fileutils.py: Likewise.
|
||||
* src/capisuite-py/pychecker.rc: Likewise.
|
||||
* src/capisuite-py/voice.py: Likewise.
|
||||
* scripts/fax.confin: Added sections 'Mail Fax|Voice ...'.
|
||||
* scripts/answering_machine.confin: Likewise.
|
||||
* rc.capisuite.in: Added 'todo' note.
|
||||
* scripts/capisuite-checkconfig: new file (thx to
|
||||
carsten@capimin.cbclass.net for the idea and a first version).
|
||||
* scripts/cs_helper.pyin: Changed to use new python library.
|
||||
* scripts/capisuitefax.in: Reworked to use new python library.
|
||||
* scripts/idle.py: Likewise.
|
||||
* scripts/incoming.py: Likewise.
|
||||
* scripts/remote-connect.py: Likewise.
|
||||
* ChangeLog, TODO, AUTHORS: updated.
|
||||
|
||||
2004-03-07 Gernot Hillier <gernot@hillier.de>
|
||||
* docs/manual.docbook: update links to new web site structure
|
||||
|
@ -69,7 +172,7 @@
|
|||
confused the config file parser when not deleted by the user
|
||||
* scripts/fax.confin: Likewise.
|
||||
|
||||
2004-02-20 Hartmut Goebel <h.goeben@goebel-consult.de>
|
||||
2004-02-20 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
* docs/Doxyfile.in: modified variable replacement for possible
|
||||
change of build system
|
||||
* docs/Makefile.am: Likewise.
|
||||
|
@ -216,13 +319,13 @@
|
|||
2003-10-19 Gernot Hillier <gernot@hillier.de>
|
||||
|
||||
* docs/manual.docbook (creating_alaw): add note how to convert vbox
|
||||
to inversed A-Law files (thx to Thomas Niesel)
|
||||
to inversed A-Law files (thx to Thomas Niesel)
|
||||
* docs/manual-de.docbook (creating_alaw): see above
|
||||
* docs/manual.docbook (require_soft): updated link to jpeg2ps (thx to
|
||||
Achim Bohnet)
|
||||
Achim Bohnet)
|
||||
* docs/manual-de.docbook (require_soft): see above
|
||||
* scripts/cs_helpers.pyin (sendMIMEMail): better wording for some error
|
||||
messages
|
||||
messages
|
||||
|
||||
2003-10-05 Gernot Hillier <gernot@hillier.de>
|
||||
|
||||
|
|
58
Makefile.in
58
Makefile.in
|
@ -1,4 +1,4 @@
|
|||
# Makefile.in generated by automake 1.8.3 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.9.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
|
@ -38,7 +38,7 @@ subdir = .
|
|||
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
|
||||
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
|
||||
$(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
|
||||
TODO depcomp install-sh missing mkinstalldirs
|
||||
TODO depcomp install-sh missing mkinstalldirs py-compile
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||
$(top_srcdir)/configure.in
|
||||
|
@ -57,6 +57,12 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
|||
install-recursive installcheck-recursive installdirs-recursive \
|
||||
pdf-recursive ps-recursive uninstall-info-recursive \
|
||||
uninstall-recursive
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(docdir)"
|
||||
docDATA_INSTALL = $(INSTALL_DATA)
|
||||
DATA = $(doc_DATA)
|
||||
|
@ -136,6 +142,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
|||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build_alias = @build_alias@
|
||||
datadir = @datadir@
|
||||
|
@ -235,7 +243,7 @@ install-docDATA: $(doc_DATA)
|
|||
test -z "$(docdir)" || $(mkdir_p) "$(DESTDIR)$(docdir)"
|
||||
@list='$(doc_DATA)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(docDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(docdir)/$$f'"; \
|
||||
$(docDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(docdir)/$$f"; \
|
||||
done
|
||||
|
@ -243,7 +251,7 @@ install-docDATA: $(doc_DATA)
|
|||
uninstall-docDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(doc_DATA)'; for p in $$list; do \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(docdir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(docdir)/$$f"; \
|
||||
done
|
||||
|
@ -321,14 +329,16 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
|||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
if (etags --etags-include --version) >/dev/null 2>&1; then \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
include_option=--etags-include; \
|
||||
empty_fix=.; \
|
||||
else \
|
||||
include_option=--include; \
|
||||
empty_fix=; \
|
||||
fi; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -f $$subdir/TAGS && \
|
||||
test ! -f $$subdir/TAGS || \
|
||||
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
|
@ -338,9 +348,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
|||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|
||||
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
|
@ -393,15 +405,17 @@ distdir: $(DISTFILES)
|
|||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -d "$(distdir)/$$subdir" \
|
||||
|| mkdir "$(distdir)/$$subdir" \
|
||||
|| $(mkdir_p) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
distdir=`$(am__cd) $(distdir) && pwd`; \
|
||||
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
|
||||
(cd $$subdir && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="../$(top_distdir)" \
|
||||
distdir="../$(distdir)/$$subdir" \
|
||||
top_distdir="$$top_distdir" \
|
||||
distdir="$$distdir/$$subdir" \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
|
@ -412,15 +426,15 @@ distdir: $(DISTFILES)
|
|||
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
|
||||
|| chmod -R a+r $(distdir)
|
||||
dist-gzip: distdir
|
||||
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-bzip2: distdir
|
||||
$(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-tarZ: distdir
|
||||
$(AMTAR) chof - $(distdir) | compress -c >$(distdir).tar.Z
|
||||
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-shar: distdir
|
||||
|
@ -433,7 +447,7 @@ dist-zip: distdir
|
|||
$(am__remove_distdir)
|
||||
|
||||
dist dist-all: distdir
|
||||
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
# This target untars the dist file and tries a VPATH configuration. Then
|
||||
|
@ -442,13 +456,13 @@ dist dist-all: distdir
|
|||
distcheck: dist
|
||||
case '$(DIST_ARCHIVES)' in \
|
||||
*.tar.gz*) \
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - ;;\
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
|
||||
*.tar.bz2*) \
|
||||
bunzip2 -c $(distdir).tar.bz2 | $(AMTAR) xf - ;;\
|
||||
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
|
||||
*.tar.Z*) \
|
||||
uncompress -c $(distdir).tar.Z | $(AMTAR) xf - ;;\
|
||||
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
|
||||
*.shar.gz*) \
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | unshar ;;\
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
|
||||
*.zip*) \
|
||||
unzip $(distdir).zip ;;\
|
||||
esac
|
||||
|
@ -530,7 +544,7 @@ mostlyclean-generic:
|
|||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
|
|
25
NEWS
25
NEWS
|
@ -1,6 +1,11 @@
|
|||
0.5 (CVS nn):
|
||||
=============
|
||||
|
||||
* scripts: removed the special support for giving an empty voice_email/
|
||||
fax_email parameter. This is NOT allowed any more and will result in
|
||||
an error when sending the mail. Simply don't set these parameters
|
||||
any more if you don't need them!
|
||||
|
||||
* core: use shorter, more readable format for Python traceback logging
|
||||
|
||||
* documentation: 5 man pages are now also created: capisuite(8),
|
||||
|
@ -13,6 +18,22 @@
|
|||
* scripts: capisuitefax now also accepts PDF files (thx to Jochen Meyer
|
||||
and Eckhard Rüggeberg for reporting)
|
||||
|
||||
* scripts: capisuitefax now submits a single job if several
|
||||
files are given (implemented by Hartmut Goebel, fixes bug #38)
|
||||
|
||||
* scripts: New script capisuite-checkconfig for checking the
|
||||
configuration (thx to carsten@capimin.cbclass.net for the
|
||||
idea and a first version, improved by Hartmut Goebel).
|
||||
|
||||
* core: major refactoring of the Python based interface has
|
||||
been done. Now a complete new Python module library
|
||||
implements a lot of useful functions and offers handy
|
||||
abstractions. (planned and implemented by Hartmut Goebel)
|
||||
|
||||
* scripts: the mails sent can now be configured in the special sections
|
||||
MailFaxReceived, MailFaxSent, MailFaxFailed and MailVoiceReceived in
|
||||
answering_machine.conf and fax.conf (implemented by Hartmut Goebel)
|
||||
|
||||
* core: fixed a bug which could lead to a crash when some unexpected
|
||||
CAPI messages arrived (thx to Karsten Keil for analyzing)
|
||||
|
||||
|
@ -42,8 +63,8 @@
|
|||
should only contain important changes from a user's point of view, while
|
||||
ChangeLog records all changes in detail.
|
||||
|
||||
0.4.4 (CVS tag NN):
|
||||
===================
|
||||
0.4.4
|
||||
=====
|
||||
|
||||
* Makefiles: fixed "make" to not trying to create directories any more -
|
||||
this prevented normal users to call "make" sometimes (thx to Steffen
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
# -*- python -*-
|
||||
|
||||
# build top level files
|
||||
# this is a SConscript, too, to support really build-dirs
|
||||
|
||||
Import('env')
|
||||
|
||||
cronfile = env.FileSubst('capisuite.cron', 'capisuite.cronin')
|
||||
rcfile = env.FileSubst('rc.capisuite', 'rc.capisuite.in')
|
||||
env.AddPostAction([cronfile, rcfile], 'chmod gu+x $TARGET')
|
||||
|
||||
Alias('install',
|
||||
env.Install('$docdir', Split('COPYING NEWS README')),
|
||||
env.Install('$sysconfdir/init.d/capisuite', rcfile),
|
||||
env.InstallAs('$sysconfdir/cron.daily/capisuite', cronfile),
|
||||
env.InstallAs('$pkgsysconfdir/cronjob.conf','cronjob.conf'),
|
||||
)
|
|
@ -0,0 +1,192 @@
|
|||
# -*- python -*-
|
||||
"""
|
||||
Check the build environment for CapiSuite
|
||||
|
||||
(c) Copyright 2004 by Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
"""
|
||||
|
||||
Import(['env'])
|
||||
|
||||
headerfilename = 'config.h'
|
||||
havedict = {}
|
||||
|
||||
open(headerfilename, 'w') # clear file contents
|
||||
|
||||
###--- hack SCons.SConftest ---###
|
||||
|
||||
import SCons.Conftest, string
|
||||
from types import IntType
|
||||
def _Have(context, key, have):
|
||||
"""
|
||||
Slightly modified version of SCons.Conftest._Have which uses
|
||||
global havedict and headerfilename instead of context.*. This is
|
||||
necessary until SCons support a way to actually use this feature.
|
||||
In addition this writes '#define ... 1'.
|
||||
"""
|
||||
key_up = string.upper(key)
|
||||
key_up = string.replace(key_up, ':', '_')
|
||||
key_up = string.replace(key_up, '.', '_')
|
||||
key_up = string.replace(key_up, '/', '_')
|
||||
key_up = string.replace(key_up, ' ', '_')
|
||||
havedict[key_up] = have
|
||||
if headerfilename:
|
||||
f = open(headerfilename, "a")
|
||||
if have == 1:
|
||||
f.write("#define %s 1\n" % key_up)
|
||||
elif have == 0:
|
||||
f.write("/* #undef %s */\n" % key_up)
|
||||
elif type(have) == IntType:
|
||||
f.write("#define %s %d\n" % (key_up, have))
|
||||
else:
|
||||
f.write('#define %s "%s"\n' % (key_up, str(have)))
|
||||
f.close()
|
||||
|
||||
# need to monkey-patch it into SCons.Conftest :-(
|
||||
SCons.Conftest._Have = _Have
|
||||
|
||||
_Have(None, 'PACKAGE', env['PACKAGE'])
|
||||
_Have(None, 'VERSION', env['VERSION'])
|
||||
|
||||
## these were defined by auto-rools but are unused:
|
||||
## #define PACKAGE_BUGREPORT ""
|
||||
## #define PACKAGE_NAME ""
|
||||
## #define PACKAGE_STRING ""
|
||||
## #define PACKAGE_TARNAME ""
|
||||
## #define PACKAGE_VERSION ""
|
||||
|
||||
###--- autoconf-like checks ---###
|
||||
### these tests are build like the corresponding autoconf tests
|
||||
|
||||
def CheckHeadersStdC(context):
|
||||
context.Message("Checking for ANSI C header files ... ")
|
||||
text = """
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <string.h>
|
||||
#include <float.h>
|
||||
\n"""
|
||||
# Some tests for SunOS 4.x, ISC 2.0.2 and Irix-4.0.5 skipped here,
|
||||
# since CapiSuite requires Linux anway.
|
||||
ret = context.CompileProg(text, '.cpp')
|
||||
SCons.Conftest._YesNoResult(context, ret, "STDC_HEADERS", text)
|
||||
context.did_show_result = 1
|
||||
return ret
|
||||
|
||||
def CheckHeaderTime(context):
|
||||
context.Display("Checking whether time.h and sys/time.h may both be "
|
||||
"included ... ")
|
||||
text = """
|
||||
#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <time.h>
|
||||
|
||||
int main() {
|
||||
if ((struct tm *) 0) return 0;
|
||||
return 0;
|
||||
}
|
||||
\n"""
|
||||
ret = context.CompileProg(text, '.cpp')
|
||||
SCons.Conftest._YesNoResult(context, ret, "TIME_WITH_SYS_TIME", text)
|
||||
context.did_show_result = 1
|
||||
return ret
|
||||
|
||||
###--- custom checks for CapiSuite ---###
|
||||
|
||||
def CheckStringClear(context):
|
||||
context.Display('Checking for string::clear method ... ')
|
||||
text = """
|
||||
#include <string>
|
||||
int main() {
|
||||
std::string a; a.clear();
|
||||
}
|
||||
\n"""
|
||||
ret = context.CompileProg(text, '.cpp')
|
||||
SCons.Conftest._YesNoResult(context, ret, "HAVE_STRING_CLEAR", text)
|
||||
context.did_show_result = 1
|
||||
return ret
|
||||
|
||||
|
||||
conf = Configure(env,
|
||||
custom_tests = {'CheckHeadersStdC': CheckHeadersStdC,
|
||||
'CheckHeaderTime': CheckHeaderTime,
|
||||
'CheckStringClear': CheckStringClear,
|
||||
},
|
||||
conf_dir = '.sconf_temp', # no '#' to build in build-dir
|
||||
log_file = 'config.log' # no '#' to build in build-dir
|
||||
)
|
||||
|
||||
conf.CheckHeadersStdC()
|
||||
|
||||
missing = 0
|
||||
for h in Split("sys/types.h sys/stat.h stdlib.h string.h "
|
||||
"memory.h strings.h inttypes.h stdint.h unistd.h"):
|
||||
missing += not conf.CheckHeader(h, language='C++')
|
||||
if missing:
|
||||
print 'Required headers missing - aborting.'
|
||||
Exit(5)
|
||||
|
||||
conf.CheckFunc('gettimeofday', language='C++')
|
||||
conf.CheckHeader('sys/time.h', language='C++')
|
||||
conf.CheckHeaderTime()
|
||||
|
||||
###--- CapiSuite specials ---###
|
||||
|
||||
# new gcc3 feature: we can #include<ostream> instead of ostream.h
|
||||
conf.CheckHeader('ostream', language='C++')
|
||||
conf.CheckStringClear() # checking for string::clear method
|
||||
|
||||
|
||||
###--- libs required by CapiSuite ---###
|
||||
|
||||
# checking for capi20_register in -lcapi20... yes
|
||||
if not conf.CheckLib('capi20', 'capi20_register', language='C++'):
|
||||
print 'libcapi not found - aborting'
|
||||
Exit(5)
|
||||
|
||||
# checking for pthread_create in -lpthread... yes
|
||||
if not conf.CheckLib('pthread', 'pthread_create', language='C++'):
|
||||
print 'lipthread not found - aborting'
|
||||
Exit(5)
|
||||
|
||||
# todo
|
||||
# Which(doxygen)
|
||||
# Which(pychecker)
|
||||
|
||||
conf.Finish()
|
||||
|
||||
|
||||
"""
|
||||
These are the checks 'configure' does
|
||||
|
||||
Legende:
|
||||
- not neccessary
|
||||
+ Scons build-in
|
||||
? unsure
|
||||
~ implemented in SConscript/SConstruct
|
||||
|
||||
-checking for a BSD-compatible install... /usr//bin/install -c
|
||||
-checking whether build environment is sane... yes
|
||||
-checking for gawk... gawk
|
||||
-checking whether make sets $(MAKE)... yes
|
||||
+checking for gcc... gcc
|
||||
+checking for C compiler default output... a.out
|
||||
+checking whether the C compiler works... yes
|
||||
?checking whether we are cross compiling... no
|
||||
+checking for suffix of executables...
|
||||
+checking for suffix of object files... o
|
||||
?checking whether we are using the GNU C compiler... yes
|
||||
?checking whether gcc accepts -g... yes
|
||||
?checking for gcc option to accept ANSI C... none needed
|
||||
-checking for style of include used by make... GNU
|
||||
-checking dependency style of gcc... gcc3
|
||||
|
||||
+checking for g++... g++
|
||||
checking whether we are using the GNU C++ compiler... yes
|
||||
checking whether g++ accepts -g... yes
|
||||
-checking dependency style of g++... gcc3
|
||||
-checking for a BSD-compatible install... /usr//bin/install -c
|
||||
+checking for ranlib... ranlib
|
||||
-checking whether make sets $(MAKE)... (cached) yes
|
||||
+checking how to run the C++ preprocessor... g++ -E
|
||||
-checking for egrep... grep -E
|
||||
"""
|
|
@ -0,0 +1,43 @@
|
|||
# -*- python -*-
|
||||
"""
|
||||
Options for building CapiSuite
|
||||
|
||||
(c) Copyright 2004 by Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
"""
|
||||
|
||||
# default prefix
|
||||
prefix = '/usr/local'
|
||||
oldincludedir = '/usr/include'
|
||||
|
||||
opts = Options('options.cache', ARGUMENTS)
|
||||
opts.AddOptions(
|
||||
# Installation directories:
|
||||
('prefix', 'install architecture-independent files in prefix', prefix),
|
||||
('execprefix','install architecture-dependent files in execprefix','$prefix'),
|
||||
|
||||
# Fine tuning of the installation directories:
|
||||
('bindir', 'user executables', '$execprefix/bin'),
|
||||
('sbindir', 'system admin executables', '$execprefix/sbin'),
|
||||
('libexecdir', 'program executables', '$execprefix/libexec'),
|
||||
('datadir', 'read-only architecture-independent data','$prefix/share'),
|
||||
('sysconfdir', 'read-only single-machine data', '$prefix/etc',),
|
||||
('sharedstatedir','modifiable architecture-independent data','$prefix/com',),
|
||||
('localstatedir', 'modifiable single-machine data', '$prefix/var'),
|
||||
('libdir', 'object code libraries', '$execprefix/lib'),
|
||||
('includedir', 'C header files', '$prefix/include'),
|
||||
('oldincludedir', 'C header files for non-gcc', oldincludedir),
|
||||
('infodir', 'info documentation', '$prefix/info'),
|
||||
('mandir', 'man documentation', '$prefix/man'),
|
||||
|
||||
# install into another filesystem base
|
||||
('INSTALL_BASE', 'base dir for installation (userfull for RPMs)',
|
||||
'#/dist'),
|
||||
|
||||
# this is a capisuite-special
|
||||
('docdir', 'other documentation', '$datadir/doc/capisuite'),
|
||||
)
|
||||
|
||||
Import(['env', '__targets__'])
|
||||
opts.Update(env)
|
||||
Help(opts.GenerateHelpText(env) + __targets__)
|
||||
opts.Save('options.cache', env)
|
|
@ -0,0 +1,246 @@
|
|||
# -*- python -*-
|
||||
"""
|
||||
Main SCons build script for CapiSuite
|
||||
|
||||
(c) Copyright 2004 by Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
|
||||
CapiSuite is (c) Copyright by Gernot Hiller <gernot@hiller.de>
|
||||
|
||||
Use 'scons --help' for a list of available options.
|
||||
|
||||
Options have only to be given once, since they are cached in a file
|
||||
'options.cache'. To change an option, simply pass it again with a
|
||||
different value.
|
||||
|
||||
Example:
|
||||
|
||||
scons prefix=/ # build for prefix=/
|
||||
scons # prefix=/ is taken from 'options.cache'
|
||||
scons prefix=/usr/local # build for prefix=/usr/local
|
||||
# since this is the default, the entry in options.cache
|
||||
# will be renmoved
|
||||
scons # default prefix is used
|
||||
"""
|
||||
|
||||
__targets__ = """
|
||||
Additional targets:
|
||||
configure : build the 'configure' script
|
||||
(this is automatically done if 'config.h' is missing)
|
||||
pycheck : check Python sources with PyChecker (not yet implemented)
|
||||
|
||||
install : install all files
|
||||
install-pylib : install only the python library
|
||||
install-scripts : install only the python scripts
|
||||
install-exec : install only the executables
|
||||
|
||||
For all install-targets base may be set with INSTALL_BASE=...
|
||||
"""
|
||||
|
||||
|
||||
# File-Content Substitution will (hopefully ) be part of SCons 0.95
|
||||
def _file_subst(target, source, env):
|
||||
import os, re
|
||||
import SCons.Util
|
||||
|
||||
def _substitute(matchobj, env=env):
|
||||
sym = matchobj.group(1)
|
||||
try:
|
||||
return env.subst(str(env[sym]))
|
||||
except: # TypeError: # sym not a string
|
||||
print 'Not substituting', sym
|
||||
return matchobj.group(0) # matched
|
||||
|
||||
delim = re.escape(env.get('SUBST_DELIM', '@'))
|
||||
subst_pattern = re.compile('%s(.*?)%s' % (delim, delim))
|
||||
for t, s in zip(target, source):
|
||||
t = str(t)
|
||||
s = s.rstr()
|
||||
text = open(s, 'rb').read()
|
||||
text = subst_pattern.sub(_substitute, text)
|
||||
open(t, 'wb').write(text)
|
||||
os.chmod(t, os.stat(s)[0])
|
||||
return None
|
||||
|
||||
def _fs_strfunc(target, source, env):
|
||||
return "generating '%s' from '%s'" % (target[0], source[0])
|
||||
|
||||
_fs_builder = Builder(action = Action(_file_subst, strfunction = _fs_strfunc))
|
||||
|
||||
import sys, os, os.path
|
||||
import SCons.Util
|
||||
import SCons.Node.FS
|
||||
|
||||
EnsurePythonVersion(2,2) # capisuite requires this
|
||||
#EnsureSConsVersion(0,94)
|
||||
|
||||
build_dir = Dir('#/build')
|
||||
|
||||
class InstallableEnv(Environment):
|
||||
def Install(self, dir, source):
|
||||
"""Install specified files in the given directory."""
|
||||
if self.has_key('INSTALL_BASE'):
|
||||
def _Dir(name):
|
||||
return SCons.Node.FS.Dir(name, parent, self.fs)
|
||||
parent = self['INSTALL_BASE']
|
||||
dir = self.arg2nodes(dir, _Dir)
|
||||
return Environment.Install(self, dir, source)
|
||||
|
||||
def InstallAs(self, target, source):
|
||||
"""Install sources as targets."""
|
||||
def _File(name):
|
||||
return SCons.Node.FS.File(name, dir, self.fs)
|
||||
|
||||
if self.has_key('INSTALL_BASE'):
|
||||
dir = self['INSTALL_BASE']
|
||||
targets = self.arg2nodes(target, _File)
|
||||
return Environment.InstallAs(self, target, source)
|
||||
|
||||
env = InstallableEnv()
|
||||
env.Append(
|
||||
BUILDERS={'FileSubst' : _fs_builder},
|
||||
PACKAGE = 'capisuite',
|
||||
VERSION = '0.5.cvs',
|
||||
srcdir = build_dir,
|
||||
|
||||
pkgdatadir = '${datadir}/${PACKAGE}',
|
||||
pkglibdir = '${libdir}/${PACKAGE}',
|
||||
pkgincludedir = '${includedir}/${PACKAGE}',
|
||||
|
||||
pkgbindir = '${bindir}',
|
||||
pkgsbindir = '${sbindir}',
|
||||
pkgsysconfdir = '${sysconfdir}/${PACKAGE}',
|
||||
#pkglibdir = '${prefix}/lib',
|
||||
spooldir = '${localstatedir}/spool/${PACKAGE}',
|
||||
docdir = '${pkgdatadir}/doc/${PACKAGE}',
|
||||
)
|
||||
env.SConscript('SConscript-Options', exports=['env', '__targets__'])
|
||||
|
||||
if env.has_key('INSTALL_BASE'):
|
||||
env.Replace(INSTALL_BASE=env.Dir('$INSTALL_BASE'))
|
||||
Export('env')
|
||||
|
||||
env.BuildDir(build_dir=build_dir, src_dir='.')
|
||||
|
||||
|
||||
###---####---###---####---###---####---###---####---###---####---###---###
|
||||
# call configure if required
|
||||
|
||||
# if config.h does not exist, build it using Scons' conftest
|
||||
if not os.path.exists(str(File('config.h', build_dir))) \
|
||||
or 'configure' in COMMAND_LINE_TARGETS:
|
||||
env.SConscript('SConscript-Config', build_dir=build_dir)
|
||||
|
||||
###---####---###---####---###---####---###---####---###---####---###---###
|
||||
|
||||
def GetPythonModuleSetup(env):
|
||||
"""
|
||||
Get configuration for linking with the Python library.
|
||||
"""
|
||||
import distutils.sysconfig
|
||||
from distutils.sysconfig import get_python_lib, get_config_vars, \
|
||||
get_config_var
|
||||
env.Append(
|
||||
python_version = distutils.sysconfig.get_python_version(),
|
||||
python_prefix = distutils.sysconfig.PREFIX,
|
||||
python_execprefix = distutils.sysconfig.EXEC_PREFIX,
|
||||
python_libdir = get_python_lib(plat_specific=1, standard_lib=1),
|
||||
python_moduledir = get_python_lib(plat_specific=0, standard_lib=0),
|
||||
python_moduleexecdir = get_python_lib(plat_specific=1, standard_lib=0),
|
||||
python_includespec = get_config_vars('INCLUDEPY', 'CONFINCLUDEPY'),
|
||||
python_linkforshared = get_config_var('LINKFORSHARED'),
|
||||
|
||||
pkgpython_moduledir = '${python_moduledir}/${PACKAGE}',
|
||||
pkgpython_moduleexecdir = '${python_moduleexecdir}/${PACKAGE}',
|
||||
|
||||
LINKFLAGS = ['${python_linkforshared}'],
|
||||
LIBS = ['python${python_version}'],
|
||||
)
|
||||
env.Append(
|
||||
CPPPATH = env['python_includespec'],
|
||||
PYTHON = sys.executable,
|
||||
)
|
||||
|
||||
def GetPythonEmbeddedSetup(env):
|
||||
"""
|
||||
Get configuration for linking an embedded Python application.
|
||||
"""
|
||||
# Base idea on which variable to check are from the INN 2.3.1 package
|
||||
import distutils.sysconfig
|
||||
print 'Checking how to link an embedded Python application:',
|
||||
libvars = Split("LIBS LIBC LIBM LOCALMODLIBS BASEMODLIBS")
|
||||
python_libspec = []
|
||||
for libvar in distutils.sysconfig.get_config_vars(*libvars):
|
||||
libvar = libvar.split()
|
||||
for lib in libvar:
|
||||
# sanity check
|
||||
if not lib.startswith('-l'):
|
||||
print "Error in Python Makefile: shared lib spec does ", \
|
||||
"not start with '-l':", lib
|
||||
python_libspec.append(lib[2:])
|
||||
env.Append(python_libspec = python_libspec,
|
||||
python_configdir = distutils.sysconfig.get_config_var('LIBPL'),
|
||||
# preferable these should be '$python..', but SCons
|
||||
# doe not yet support this (SCons 0.94)
|
||||
LIBS = python_libspec,
|
||||
LIBPATH = ['${python_configdir}'],
|
||||
)
|
||||
print ' '.join(python_libspec)
|
||||
#print '>>>', env['LIBS']
|
||||
|
||||
GetPythonModuleSetup(env)
|
||||
GetPythonEmbeddedSetup(env)
|
||||
|
||||
env.Append(
|
||||
CCFLAGS = Split('-g -O2'),
|
||||
LIBS = Split('pthread capi20'),
|
||||
CPPDEFINES={'LOCALSTATEDIR': r'\"${localstatedir}\"',
|
||||
'PKGDATADIR' : r'\"${pkgdatadir}\"',
|
||||
'PKGSYSCONFDIR': r'\"${pkgsysconfdir}\"',
|
||||
'PKGLIBDIR' : r'\"${pkglibdir}\"',
|
||||
},
|
||||
)
|
||||
|
||||
## # build debug?
|
||||
## if ARGUMENTS.get('debug', 0):
|
||||
## env.Append(CXXFLAGS = ['-g', '-DDEBUG'])
|
||||
## else:
|
||||
## env.Append(CXXFLAGS = ['-O2'])
|
||||
##
|
||||
## if env['CXX'] in ('g++', 'c++'):
|
||||
## env.Append(CXXFLAGS = ['-Wall', '-Wno-non-virtual-dtor'])
|
||||
|
||||
|
||||
###---####---###---####---###---####---###---####---###---####---###---###
|
||||
|
||||
# snippet for unittest
|
||||
#mytest = env.program(...)
|
||||
#Alias( 'unittest', mytest )
|
||||
#Alias( 'all', 'unittest' )
|
||||
#unittetsInstall = env.Install(...)
|
||||
#Alias('unittest', unitteststInstall)
|
||||
|
||||
# now build the subdirectories' stuff
|
||||
env.SConscript(dirs=[Dir('.', build_dir),
|
||||
Dir('src', build_dir),
|
||||
Dir('scripts', build_dir),
|
||||
Dir('scripts/waves', build_dir),
|
||||
Dir('docs', build_dir),
|
||||
])
|
||||
|
||||
#env.SourceCode('.',
|
||||
# env.CVS('pserver:anonymous@cvs.capisuite.berlios.de:/cvsroot/capisuite',
|
||||
# 'capisuite'))
|
||||
|
||||
"""
|
||||
make DESTDIR=$RPM_BUILD_ROOT install
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/sbin
|
||||
|
||||
ln -sf ../../etc/init.d/capisuite $RPM_BUILD_ROOT/usr/sbin/rccapisuite
|
||||
"""
|
||||
#EXTRA_DIST = rc.capisuite.in capisuite.cronin cronjob.conf
|
||||
#install-data-local:
|
||||
# mkdir -p $(DESTDIR)$(localstatedir)/log
|
||||
# $(mkinstalldirs) $(DESTDIR)$(spooldir)/sendq
|
||||
# $(mkinstalldirs) $(DESTDIR)$(spooldir)/done
|
||||
# $(mkinstalldirs) $(DESTDIR)$(spooldir)/failed
|
||||
# $(mkinstalldirs) $(DESTDIR)$(spooldir)/users
|
15
TODO
15
TODO
|
@ -1,4 +1,18 @@
|
|||
Important for 0.5.0/capisuite-py:
|
||||
* Check and fix all 'todo:'s in the python library and scripts.
|
||||
* Update documentation to include
|
||||
- capisuite-checkconfig
|
||||
- the python library modules.
|
||||
- 'Mail Fax|Voice ...' sections in config files
|
||||
* Add update instructions for 0.5.0/capisuite-py
|
||||
- 'Mail Fax|Voice ...' sections in config files
|
||||
- new modulename '_capisuite' (but use capisuite.core instead)
|
||||
* Add option '--is-configured' to capisuite-checkconfig to be used
|
||||
by rc-file.
|
||||
* Add 'scons-local' to distribution.
|
||||
|
||||
NICE:
|
||||
- more checks/options for capisuite-checkconfig
|
||||
- ?valgrind-clean the used libs and Python?
|
||||
- support more than one send_controller
|
||||
- don't use 34xx codes, define constants instead and print meaningful messages
|
||||
|
@ -7,4 +21,3 @@ FUTURE PLANS:
|
|||
- setuid away from root (problem: chown of recorded file to user)
|
||||
- test-implement the whole application part in Python
|
||||
- rewrite capisuitefax and idle.py to use named socket communication
|
||||
|
||||
|
|
|
@ -309,7 +309,7 @@ ac_includes_default="\
|
|||
# include <unistd.h>
|
||||
#endif"
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE RANLIB ac_ct_RANLIB doxygen CXXCPP EGREP docdir PYTHON PYTHON_VERSION PYTHON_PREFIX PYTHON_EXEC_PREFIX PYTHON_PLATFORM pythondir pkgpythondir pyexecdir pkgpyexecdir python_version python_prefix python_execprefix python_configdir python_moduledir python_moduleexecdir python_includespec python_linkforshared LIBOBJS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE RANLIB ac_ct_RANLIB doxygen CXXCPP EGREP docdir PYTHON PYTHON_VERSION PYTHON_PREFIX PYTHON_EXEC_PREFIX PYTHON_PLATFORM pythondir pkgpythondir pyexecdir pkgpyexecdir python_version python_prefix python_execprefix python_configdir python_moduledir python_moduleexecdir python_includespec python_linkforshared LIBOBJS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
|
@ -1311,7 +1311,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
|||
|
||||
|
||||
|
||||
am__api_version="1.8"
|
||||
am__api_version="1.9"
|
||||
ac_aux_dir=
|
||||
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
|
||||
if test -f $ac_dir/install-sh; then
|
||||
|
@ -1488,13 +1488,21 @@ echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
|
|||
fi
|
||||
|
||||
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
|
||||
# Keeping the `.' argument allows $(mkdir_p) to be used without
|
||||
# argument. Indeed, we sometimes output rules like
|
||||
# We used to keeping the `.' as first argument, in order to
|
||||
# allow $(mkdir_p) to be used without argument. As in
|
||||
# $(mkdir_p) $(somedir)
|
||||
# where $(somedir) is conditionally defined.
|
||||
# (`test -n '$(somedir)' && $(mkdir_p) $(somedir)' is a more
|
||||
# expensive solution, as it forces Make to start a sub-shell.)
|
||||
mkdir_p='mkdir -p -- .'
|
||||
# where $(somedir) is conditionally defined. However this is wrong
|
||||
# for two reasons:
|
||||
# 1. if the package is installed by a user who cannot write `.'
|
||||
# make install will fail,
|
||||
# 2. the above comment should most certainly read
|
||||
# $(mkdir_p) $(DESTDIR)$(somedir)
|
||||
# so it does not work when $(somedir) is undefined and
|
||||
# $(DESTDIR) is not.
|
||||
# To support the latter case, we have to write
|
||||
# test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
|
||||
# so the `.' trick is pointless.
|
||||
mkdir_p='mkdir -p --'
|
||||
else
|
||||
# On NextStep and OpenStep, the `mkdir' command does not
|
||||
# recognize any option. It will interpret all options as
|
||||
|
@ -1638,9 +1646,6 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
|
|||
|
||||
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
|
||||
|
||||
|
||||
AMTAR=${AMTAR-"${am_missing_run}tar"}
|
||||
|
||||
install_sh=${install_sh-"$am_aux_dir/install-sh"}
|
||||
|
||||
# Installed binaries are usually stripped using `strip' when the user
|
||||
|
@ -1733,6 +1738,13 @@ INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
|
|||
|
||||
# We need awk for the "check" target. The system "awk" is bad on
|
||||
# some platforms.
|
||||
# Always define AMTAR for backward compatibility.
|
||||
|
||||
AMTAR=${AMTAR-"${am_missing_run}tar"}
|
||||
|
||||
am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -2811,9 +2823,14 @@ else
|
|||
grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
|
||||
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
|
||||
# icc doesn't choke on unknown options, it will just issue warnings
|
||||
# (even with -Werror). So we grep stderr for any message
|
||||
# that says an option was ignored.
|
||||
if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
|
||||
# or remarks (even with -Werror). So we grep stderr for any message
|
||||
# that says an option was ignored or not supported.
|
||||
# When given -MP, icc 7.0 and 7.1 complain thusly:
|
||||
# icc: Command line warning: ignoring option '-M'; no argument required
|
||||
# The diagnosis changed in icc 8.0:
|
||||
# icc: Command line remark: option '-MP' not supported
|
||||
if (grep 'ignoring option' conftest.err ||
|
||||
grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
|
||||
am_cv_CC_dependencies_compiler_type=$depmode
|
||||
break
|
||||
fi
|
||||
|
@ -3270,9 +3287,14 @@ else
|
|||
grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
|
||||
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
|
||||
# icc doesn't choke on unknown options, it will just issue warnings
|
||||
# (even with -Werror). So we grep stderr for any message
|
||||
# that says an option was ignored.
|
||||
if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
|
||||
# or remarks (even with -Werror). So we grep stderr for any message
|
||||
# that says an option was ignored or not supported.
|
||||
# When given -MP, icc 7.0 and 7.1 complain thusly:
|
||||
# icc: Command line warning: ignoring option '-M'; no argument required
|
||||
# The diagnosis changed in icc 8.0:
|
||||
# icc: Command line remark: option '-MP' not supported
|
||||
if (grep 'ignoring option' conftest.err ||
|
||||
grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
|
||||
am_cv_CXX_dependencies_compiler_type=$depmode
|
||||
break
|
||||
fi
|
||||
|
@ -4692,6 +4714,7 @@ echo "$as_me: error: too old" >&2;}
|
|||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
|
||||
am_display_PYTHON=$PYTHON
|
||||
else
|
||||
# Otherwise, try each interpreter until we find one that satisfies
|
||||
# VERSION.
|
||||
|
@ -4902,7 +4925,7 @@ echo "${ECHO_T}${python_libspec}" >&6
|
|||
|
||||
CPPFLAGS='-DLOCALSTATEDIR=\"$(localstatedir)\" -DPKGDATADIR=\"$(pkgdatadir)\" -DPKGSYSCONFDIR=\"$(sysconfdir)/capisuite\" -DPKGLIBDIR=\"$(pkglibdir)\" $(python_includespec)'
|
||||
|
||||
ac_config_files="$ac_config_files Makefile src/Makefile src/backend/Makefile src/modules/Makefile src/application/Makefile scripts/Makefile scripts/waves/Makefile docs/Makefile"
|
||||
ac_config_files="$ac_config_files Makefile src/Makefile src/backend/Makefile src/modules/Makefile src/application/Makefile src/capisuite-py/Makefile scripts/Makefile scripts/waves/Makefile docs/Makefile"
|
||||
cat >confcache <<\_ACEOF
|
||||
# This file is a shell script that caches the results of configure
|
||||
# tests run on this system so they can be shared between configure
|
||||
|
@ -5464,6 +5487,7 @@ do
|
|||
"src/backend/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/backend/Makefile" ;;
|
||||
"src/modules/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/modules/Makefile" ;;
|
||||
"src/application/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/application/Makefile" ;;
|
||||
"src/capisuite-py/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/capisuite-py/Makefile" ;;
|
||||
"scripts/Makefile" ) CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;;
|
||||
"scripts/waves/Makefile" ) CONFIG_FILES="$CONFIG_FILES scripts/waves/Makefile" ;;
|
||||
"docs/Makefile" ) CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;;
|
||||
|
@ -5565,7 +5589,6 @@ s,@AUTOCONF@,$AUTOCONF,;t t
|
|||
s,@AUTOMAKE@,$AUTOMAKE,;t t
|
||||
s,@AUTOHEADER@,$AUTOHEADER,;t t
|
||||
s,@MAKEINFO@,$MAKEINFO,;t t
|
||||
s,@AMTAR@,$AMTAR,;t t
|
||||
s,@install_sh@,$install_sh,;t t
|
||||
s,@STRIP@,$STRIP,;t t
|
||||
s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
|
||||
|
@ -5574,6 +5597,9 @@ s,@mkdir_p@,$mkdir_p,;t t
|
|||
s,@AWK@,$AWK,;t t
|
||||
s,@SET_MAKE@,$SET_MAKE,;t t
|
||||
s,@am__leading_dot@,$am__leading_dot,;t t
|
||||
s,@AMTAR@,$AMTAR,;t t
|
||||
s,@am__tar@,$am__tar,;t t
|
||||
s,@am__untar@,$am__untar,;t t
|
||||
s,@CC@,$CC,;t t
|
||||
s,@CFLAGS@,$CFLAGS,;t t
|
||||
s,@LDFLAGS@,$LDFLAGS,;t t
|
||||
|
@ -6243,27 +6269,21 @@ echo X"$mf" |
|
|||
else
|
||||
continue
|
||||
fi
|
||||
grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue
|
||||
# Extract the definition of DEP_FILES from the Makefile without
|
||||
# running `make'.
|
||||
# Extract the definition of DEPDIR, am__include, and am__quote
|
||||
# from the Makefile without running `make'.
|
||||
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
|
||||
test -z "$DEPDIR" && continue
|
||||
am__include=`sed -n 's/^am__include = //p' < "$mf"`
|
||||
test -z "am__include" && continue
|
||||
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
|
||||
# When using ansi2knr, U may be empty or an underscore; expand it
|
||||
U=`sed -n 's/^U = //p' < "$mf"`
|
||||
test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
|
||||
# We invoke sed twice because it is the simplest approach to
|
||||
# changing $(DEPDIR) to its actual value in the expansion.
|
||||
for file in `sed -n '
|
||||
/^DEP_FILES = .*\\\\$/ {
|
||||
s/^DEP_FILES = //
|
||||
:loop
|
||||
s/\\\\$//
|
||||
p
|
||||
n
|
||||
/\\\\$/ b loop
|
||||
p
|
||||
}
|
||||
/^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
|
||||
# Find all dependency output files, they are included files with
|
||||
# $(DEPDIR) in their names. We invoke sed twice because it is the
|
||||
# simplest approach to changing $(DEPDIR) to its actual value in the
|
||||
# expansion.
|
||||
for file in `sed -n "
|
||||
s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
|
||||
sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
|
||||
# Make sure the directory exists.
|
||||
test -f "$dirpart/$file" && continue
|
||||
|
|
|
@ -26,4 +26,4 @@ AM_PATH_PYTHON(2.2)
|
|||
PGAC_CHECK_PYTHON_EMBED_SETUP
|
||||
CPPFLAGS='-DLOCALSTATEDIR=\"$(localstatedir)\" -DPKGDATADIR=\"$(pkgdatadir)\" -DPKGSYSCONFDIR=\"$(sysconfdir)/capisuite\" -DPKGLIBDIR=\"$(pkglibdir)\" $(python_includespec)'
|
||||
|
||||
AC_OUTPUT(Makefile src/Makefile src/backend/Makefile src/modules/Makefile src/application/Makefile scripts/Makefile scripts/waves/Makefile docs/Makefile)
|
||||
AC_OUTPUT(Makefile src/Makefile src/backend/Makefile src/modules/Makefile src/application/Makefile src/capisuite-py/Makefile scripts/Makefile scripts/waves/Makefile docs/Makefile)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Makefile.in generated by automake 1.8.3 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.9.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
|
@ -46,7 +46,8 @@ CONFIG_CLEAN_FILES =
|
|||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
man1dir = $(mandir)/man1
|
||||
am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)"
|
||||
am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" \
|
||||
"$(DESTDIR)$(man8dir)"
|
||||
man5dir = $(mandir)/man5
|
||||
man8dir = $(mandir)/man8
|
||||
NROFF = nroff
|
||||
|
@ -114,6 +115,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
|||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build_alias = @build_alias@
|
||||
datadir = @datadir@
|
||||
|
@ -381,7 +384,7 @@ mostlyclean-generic:
|
|||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
|
@ -435,9 +438,9 @@ uninstall-am: uninstall-info-am uninstall-local uninstall-man
|
|||
|
||||
uninstall-man: uninstall-man1 uninstall-man5 uninstall-man8
|
||||
|
||||
.PHONY: all all-am check check-am clean clean-generic distclean \
|
||||
distclean-generic distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am \
|
||||
.PHONY: all all-am check check-am clean clean-generic dist-hook \
|
||||
distclean distclean-generic distdir dvi dvi-am html html-am \
|
||||
info info-am install install-am install-data install-data-am \
|
||||
install-data-local install-exec install-exec-am install-info \
|
||||
install-info-am install-man install-man1 install-man5 \
|
||||
install-man8 install-strip installcheck installcheck-am \
|
||||
|
|
|
@ -0,0 +1,66 @@
|
|||
# -*- python -*-
|
||||
|
||||
Import('env')
|
||||
#EXTRA_DIST = Doxyfile.in mainpage.doxy manual.docbook manual.README
|
||||
|
||||
|
||||
## dist-hook: manual-html manual-pdf reference-html
|
||||
## mkdir $(distdir)/manual
|
||||
## cp -r $(srcdir)/manual/* $(distdir)/manual/
|
||||
## mkdir $(distdir)/reference
|
||||
## cp $(srcdir)/reference/* $(distdir)/reference/
|
||||
## cp manual.pdf $(distdir)/
|
||||
|
||||
import re
|
||||
|
||||
def patch_version(target, source, env):
|
||||
"""
|
||||
Change version contained in the <title> tag.
|
||||
This is done in-place to avoid yet another .in file.
|
||||
"""
|
||||
text = source[0].get_contents()
|
||||
text = re.sub(r'<title>CapiSuite [\w.]*</title>',
|
||||
r'<title>CapiSuite %s</title>' % env['VERSION'],
|
||||
text)
|
||||
open(source[0].abspath, 'w').write(text)
|
||||
|
||||
|
||||
env.Append(docbuilddir=Dir('.'))
|
||||
|
||||
manualdir = Dir('manual')
|
||||
stylesheetdir = Dir('/usr/share/sgml/docbook/xsl-stylesheets')
|
||||
|
||||
#images = Install(Dir('images', manualdir), images)
|
||||
|
||||
# create HTML manual
|
||||
manual_html = env.Command(File('index.html', manualdir),
|
||||
'manual.docbook', [
|
||||
patch_version,
|
||||
['xmllint', '--noout', '--valid', '$SOURCE'],
|
||||
['xsltproc', '-o', '${TARGET.dir}/',
|
||||
File('xhtml/chunk.xsl', stylesheetdir), '$SOURCE']
|
||||
])
|
||||
#env.Depends(manual_html, images)
|
||||
|
||||
# copy missing images
|
||||
env.AddPostAction(manual_html, [ \
|
||||
['rm', '-fr', Dir('images', manualdir)],
|
||||
['cp', '-r', Dir('images', stylesheetdir), Dir(manualdir)]
|
||||
])
|
||||
|
||||
# create PDF manual
|
||||
manual_pdf = env.Command('manual.pdf', 'manual.docbook',
|
||||
'db2pdf -o ${TARGET.dir} $SOURCE'
|
||||
)
|
||||
|
||||
# substitute version, capisuite_sources, srcdir
|
||||
doxyfile = env.FileSubst('Doxyfile', 'Doxyfile.in')
|
||||
ref_html = env.Command('reference/index.html', doxyfile, [ \
|
||||
['doxygen', doxyfile]
|
||||
])
|
||||
|
||||
Alias('install',
|
||||
env.Install('$docdir', manual_pdf),
|
||||
#env.Install('$docdir', 'manual'),
|
||||
#env.Install('$docdir', 'reference'),
|
||||
)
|
|
@ -82,6 +82,8 @@ case "$1" in
|
|||
# answering machine. Otherwise exit.
|
||||
# IMPORTANT: Change this or comment it out if you want to use
|
||||
# your own CapiSuite scripts.
|
||||
# todo: change these tests since they are not longer valid due to
|
||||
# [Mail...] sections. Consider using capisuite-checkconfig!
|
||||
while read -r sec rest ; do
|
||||
if [ "${sec:0:1}" = "[" -a "$sec" != "[GLOBAL]" ]; then
|
||||
configured_fax=yes
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Makefile.in generated by automake 1.8.3 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.9.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
|
@ -46,7 +46,8 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
|||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pkglibdir)" "$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(python_moduledir)"
|
||||
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pkglibdir)" \
|
||||
"$(DESTDIR)$(pkgsysconfdir)" "$(DESTDIR)$(python_moduledir)"
|
||||
binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
|
||||
SCRIPTS = $(bin_SCRIPTS)
|
||||
SOURCES =
|
||||
|
@ -57,6 +58,12 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
|||
install-recursive installcheck-recursive installdirs-recursive \
|
||||
pdf-recursive ps-recursive uninstall-info-recursive \
|
||||
uninstall-recursive
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
dist_pkglibDATA_INSTALL = $(INSTALL_DATA)
|
||||
pkgsysconfDATA_INSTALL = $(INSTALL_DATA)
|
||||
python_moduleDATA_INSTALL = $(INSTALL_DATA)
|
||||
|
@ -127,6 +134,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
|||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build_alias = @build_alias@
|
||||
datadir = @datadir@
|
||||
|
@ -227,7 +236,7 @@ install-dist_pkglibDATA: $(dist_pkglib_DATA)
|
|||
test -z "$(pkglibdir)" || $(mkdir_p) "$(DESTDIR)$(pkglibdir)"
|
||||
@list='$(dist_pkglib_DATA)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(dist_pkglibDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkglibdir)/$$f'"; \
|
||||
$(dist_pkglibDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkglibdir)/$$f"; \
|
||||
done
|
||||
|
@ -235,7 +244,7 @@ install-dist_pkglibDATA: $(dist_pkglib_DATA)
|
|||
uninstall-dist_pkglibDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_pkglib_DATA)'; for p in $$list; do \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(pkglibdir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(pkglibdir)/$$f"; \
|
||||
done
|
||||
|
@ -244,7 +253,7 @@ install-pkgsysconfDATA: $(pkgsysconf_DATA)
|
|||
test -z "$(pkgsysconfdir)" || $(mkdir_p) "$(DESTDIR)$(pkgsysconfdir)"
|
||||
@list='$(pkgsysconf_DATA)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(pkgsysconfDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgsysconfdir)/$$f'"; \
|
||||
$(pkgsysconfDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgsysconfdir)/$$f"; \
|
||||
done
|
||||
|
@ -252,7 +261,7 @@ install-pkgsysconfDATA: $(pkgsysconf_DATA)
|
|||
uninstall-pkgsysconfDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(pkgsysconf_DATA)'; for p in $$list; do \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(pkgsysconfdir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(pkgsysconfdir)/$$f"; \
|
||||
done
|
||||
|
@ -261,7 +270,7 @@ install-python_moduleDATA: $(python_module_DATA)
|
|||
test -z "$(python_moduledir)" || $(mkdir_p) "$(DESTDIR)$(python_moduledir)"
|
||||
@list='$(python_module_DATA)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(python_moduleDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(python_moduledir)/$$f'"; \
|
||||
$(python_moduleDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(python_moduledir)/$$f"; \
|
||||
done
|
||||
|
@ -269,7 +278,7 @@ install-python_moduleDATA: $(python_module_DATA)
|
|||
uninstall-python_moduleDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(python_module_DATA)'; for p in $$list; do \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(python_moduledir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(python_moduledir)/$$f"; \
|
||||
done
|
||||
|
@ -347,14 +356,16 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
if (etags --etags-include --version) >/dev/null 2>&1; then \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
include_option=--etags-include; \
|
||||
empty_fix=.; \
|
||||
else \
|
||||
include_option=--include; \
|
||||
empty_fix=; \
|
||||
fi; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -f $$subdir/TAGS && \
|
||||
test ! -f $$subdir/TAGS || \
|
||||
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
|
@ -364,9 +375,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
|||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|
||||
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
|
@ -417,15 +430,17 @@ distdir: $(DISTFILES)
|
|||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -d "$(distdir)/$$subdir" \
|
||||
|| mkdir "$(distdir)/$$subdir" \
|
||||
|| $(mkdir_p) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
distdir=`$(am__cd) $(distdir) && pwd`; \
|
||||
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
|
||||
(cd $$subdir && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="../$(top_distdir)" \
|
||||
distdir="../$(distdir)/$$subdir" \
|
||||
top_distdir="$$top_distdir" \
|
||||
distdir="$$distdir/$$subdir" \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
|
@ -457,7 +472,7 @@ mostlyclean-generic:
|
|||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
|
@ -522,15 +537,16 @@ uninstall-info: uninstall-info-recursive
|
|||
distclean-recursive distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-binSCRIPTS \
|
||||
install-data install-data-am install-dist_pkglibDATA \
|
||||
install-exec install-exec-am install-info install-info-am \
|
||||
install-man install-pkgsysconfDATA install-python_moduleDATA \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
installdirs-am maintainer-clean maintainer-clean-generic \
|
||||
maintainer-clean-recursive mostlyclean mostlyclean-generic \
|
||||
mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
|
||||
uninstall uninstall-am uninstall-binSCRIPTS \
|
||||
uninstall-dist_pkglibDATA uninstall-info-am \
|
||||
uninstall-pkgsysconfDATA uninstall-python_moduleDATA
|
||||
install-exec install-exec-am install-exec-hook install-info \
|
||||
install-info-am install-man install-pkgsysconfDATA \
|
||||
install-python_moduleDATA install-strip installcheck \
|
||||
installcheck-am installdirs installdirs-am maintainer-clean \
|
||||
maintainer-clean-generic maintainer-clean-recursive \
|
||||
mostlyclean mostlyclean-generic mostlyclean-recursive pdf \
|
||||
pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
|
||||
uninstall-binSCRIPTS uninstall-dist_pkglibDATA uninstall-hook \
|
||||
uninstall-info-am uninstall-pkgsysconfDATA \
|
||||
uninstall-python_moduleDATA
|
||||
|
||||
|
||||