Merge pull request #10 from brc0x1/master

Open Source Tripwire 2.4.3.2
This commit is contained in:
Brian Cox 2017-01-31 21:35:07 -08:00 committed by GitHub
commit 2f41ee1e5f
157 changed files with 10251 additions and 6455 deletions

19
.gitignore vendored
View File

@ -7,20 +7,19 @@ compile
autom4te.cache/ autom4te.cache/
bin/ bin/
lib/ lib/
src/siggen/siggen
src/tripwire/tripwire
src/twadmin/twadmin
src/twprint/twprint
src/twtest/twtest
**/Makefile **/Makefile
**/*.o **/*.o
**/*.dylib **/*.dylib
**/*.a **/*.a
**/*.so **/*.so
**/*.dll **/*.dll
**/siggen **/*.exe
**/tripwire **/*~
**/twadmin **/*.bak
**/twprint **/.DS_Store
**/twtest
**/siggen.exe
**/tripwire.exe
**/twadmin.exe
**/twprint.exe
**/twtest.exe
releases/ releases/

View File

@ -1,6 +1,10 @@
If you desire enterprise capable software with commercial support, check out Tripwire, Inc also offers several commercial, supported security and compliance solutions:
Tripwire, Inc. at http://www.tripwire.com.
* Tripwire for Servers is most similar to Open Source Tripwire (OST was forked from it in 2000), with additional features such as native Windows support, audit event correlation, and Tripwire Manager, a central management console. http://www.tripwire.com/it-security-software/scm/tripwire-for-servers/
* Tripwire Enterprise is an enterprise-grade product with features such as real-time file and registry change detection; change monitoring for databases, directory servers, and network devices; and policy compliance monitoring for standards including PCI, HIPAA, and NERC. http://www.tripwire.com/it-security-software/scm/tripwire-enterprise/
* Tripwire Configuration Compliance Manager is an agentless solution with some features similar to Tripwire Enterprise, as well as advanced asset discovery capabilities. http://www.tripwire.com/it-security-software/scm/ccm/
For a more detailed comparison of the Open Source Tripwire software and
commercial Tripwire(R) product(s) please visit http://www.tripwire.org.

View File

@ -1,3 +1,21 @@
2017-01-15 Brian Cox <bcox@tripwire.com>
* Bump version to 2.4.3.2
* DOS/DJGPP platform support.
* Use posix_fadvise() to reduce disk cache impact (where available).
* Use O_NOATIME where available, so scans don't update file access times.
* Optional HASH_DIRECT_IO (Linux only) to access files via direct i/o when hashing, per user request.
* Optional support for iconv character conversion, for db/report file portability.
* Improved display of multibyte characters in reports.
* On OSX, use builtin CommonCrypto hashes instead of impls provided with OST.
* Update build system to automake 1.15
* Cross compiling can use OpenSSL now.
* 'make dist' now creates a buildable source bundle.
* Can use build dir outside of source tree
* Include 'what'-style version strings.
* AROS: Correctly hide passphrases & delete temp files.
* Remove dead code & unused files.
* Optional RESOLVE_IDS_TO_NAMES option to disable uid/gid to name resolution, if needed.
* New --key-size option to twadmin --generate-keys, to generate 1024 (default) or 2048 bit El Gamal keys.
2016-04-20 Brian Cox <bcox@tripwire.com> 2016-04-20 Brian Cox <bcox@tripwire.com>
* Bump version to 2.4.3.1 * Bump version to 2.4.3.1
* Revive old 'twtest' unit test suite (such as it is); move _t.cpp files into twtest dir. * Revive old 'twtest' unit test suite (such as it is); move _t.cpp files into twtest dir.
@ -26,7 +44,7 @@
* Add MAILFROMADDRESS config param (see twconfig man page) * Add MAILFROMADDRESS config param (see twconfig man page)
* Use O_NONBLOCK, to avoid blocking on fifos & mandatory-locked files * Use O_NONBLOCK, to avoid blocking on fifos & mandatory-locked files
* Report Solaris door & event port file types correctly * Report Solaris door & event port file types correctly
2014-01-01 Barry Allard <barry.allard@gmail.com> 2014-01-01 Barry Allard <barry.allard@gmail.com>
* Bumping version to 2.4.2.3 * Bumping version to 2.4.2.3
@ -59,24 +77,21 @@
* Fixed bug in install script when sendmail isn't installed * Fixed bug in install script when sendmail isn't installed
target system. target system.
* Removed some non-existent files from installer * Removed some non-existent files from installer
2005-08-18 Ron Forrester <rjf@theforrest.org> 2005-08-18 Ron Forrester <rjf@theforrest.org>
* Wow, has it been 4+ years? :) * Wow, has it been 4+ years? :)
* Starting fresh with Paul's autoconf'ed code base * Starting fresh with Paul's autoconf'ed code base
* Bumped version number, misc cleanup, etc. * Bumped version number, misc cleanup, etc.
2001-02-25 Ron Forrester <rjf@theforrest.org> 2001-02-25 Ron Forrester <rjf@theforrest.org>
* Bumped version to 2.3.1. * Bumped version to 2.3.1.
* BSD support, thanks to Paul Herman <pherman@frenchfries.net>. * BSD support, thanks to Paul Herman <pherman@frenchfries.net>.
The support was added for FreeBSD 4.2, your mileage may vary on The support was added for FreeBSD 4.2, your mileage may vary on
other BSD's. other BSD's.
* Fixed long standing bug with recurse=3 * Fixed long standing bug with recurse=3
* If TEMPDIRECTORY was missing trailing /, bad things could * If TEMPDIRECTORY was missing trailing /, bad things could
@ -88,8 +103,7 @@
file. Additionally, reports were being sliced to global file. Additionally, reports were being sliced to global
recipients, despite the fact that global recipients should get recipients, despite the fact that global recipients should get
the full report. the full report.
2001-02-03 Ron Forrester <rjf@theforrest.org> 2001-02-03 Ron Forrester <rjf@theforrest.org>
* Fixed possible security problem with the handling of temp * Fixed possible security problem with the handling of temp

View File

@ -1,8 +1,8 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
SUBDIRS = man src SUBDIRS = man src
EXTRA_DIST = COMMERCIAL MAINTAINERS TRADEMARK touchconfig.sh contrib policy EXTRA_DIST = COMMERCIAL MAINTAINERS TRADEMARK LICENSE Packaging README-2.4.3 README.md autogen.sh autogen.sh.README touchconfig.sh contrib policy installer
install-data-hook: install-data-hook:
prefix="$(prefix)" sysconfdir="$(sysconfdir)" \ prefix="$(prefix)" sysconfdir="$(sysconfdir)" \
path_to_vi="$(path_to_vi)" path_to_sendmail="$(path_to_sendmail)" \ path_to_vi="$(path_to_vi)" path_to_sendmail="$(path_to_sendmail)" \
./install/install.sh ./installer/install.sh

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -13,15 +13,67 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
@SET_MAKE@ @SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = . pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -33,50 +85,131 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \ target_triplet = @target@
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(top_srcdir)/configure COPYING ChangeLog config.guess \
config.sub install-sh missing mkinstalldirs
subdir = . subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
$(am__configure_deps) $(am__DIST_COMMON)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno configure.status.lineno configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
SOURCES = SOURCES =
DIST_SOURCES = DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
html-recursive info-recursive install-data-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \
install-exec-recursive install-info-recursive \ install-data-recursive install-dvi-recursive \
install-recursive installcheck-recursive installdirs-recursive \ install-exec-recursive install-html-recursive \
pdf-recursive ps-recursive uninstall-info-recursive \ install-info-recursive install-pdf-recursive \
uninstall-recursive install-ps-recursive install-recursive installcheck-recursive \
installdirs-recursive pdf-recursive ps-recursive \
tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
am__recursive_targets = \
$(RECURSIVE_TARGETS) \
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
cscope distdir dist dist-all distcheck
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
$(LISP)config.h.in
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in COPYING \
ChangeLog compile config.guess config.sub install-sh missing \
mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION) distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir) top_distdir = $(distdir)
am__remove_distdir = \ am__remove_distdir = \
{ test ! -d $(distdir) \ if test -d "$(distdir)"; then \
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr $(distdir); }; } && rm -rf "$(distdir)" \
|| { sleep 5 && rm -rf "$(distdir)"; }; \
else :; fi
am__post_remove_distdir = $(am__remove_distdir)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best GZIP_ENV = --best
DIST_TARGETS = dist-gzip
distuninstallcheck_listfiles = find . -type f -print distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -100,6 +233,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -111,6 +245,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -127,21 +262,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -171,35 +309,38 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
SUBDIRS = man src SUBDIRS = man src
EXTRA_DIST = COMMERCIAL MAINTAINERS TRADEMARK touchconfig.sh contrib policy EXTRA_DIST = COMMERCIAL MAINTAINERS TRADEMARK LICENSE Packaging README-2.4.3 README.md autogen.sh autogen.sh.README touchconfig.sh contrib policy installer
all: config.h all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive $(MAKE) $(AM_MAKEFLAGS) all-recursive
.SUFFIXES: .SUFFIXES:
am--refresh: am--refresh: Makefile
@: @:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
cd $(srcdir) && $(AUTOMAKE) --foreign \ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
&& exit 0; \ && exit 0; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign Makefile $(AUTOMAKE) --foreign Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -214,39 +355,46 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENC
$(SHELL) ./config.status --recheck $(SHELL) ./config.status --recheck
$(top_srcdir)/configure: $(am__configure_deps) $(top_srcdir)/configure: $(am__configure_deps)
cd $(srcdir) && $(AUTOCONF) $(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
config.h: stamp-h1 config.h: stamp-h1
@if test ! -f $@; then \ @test -f $@ || rm -f stamp-h1
rm -f stamp-h1; \ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
$(MAKE) stamp-h1; \
else :; fi
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
@rm -f stamp-h1 @rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status config.h cd $(top_builddir) && $(SHELL) ./config.status config.h
$(srcdir)/config.h.in: $(am__configure_deps) $(srcdir)/config.h.in: $(am__configure_deps)
cd $(top_srcdir) && $(AUTOHEADER) ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1 rm -f stamp-h1
touch $@ touch $@
distclean-hdr: distclean-hdr:
-rm -f config.h stamp-h1 -rm -f config.h stamp-h1
uninstall-info-am:
# This directory's subdirectories are mostly independent; you can cd # This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile. # into them and run 'make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles, # To change the values of 'make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status' # (1) if the variable is set in 'config.status', edit 'config.status'
# (which will cause the Makefiles to be regenerated when you run `make'); # (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the `make' command line. # (2) otherwise, pass the desired values on the 'make' command line.
$(RECURSIVE_TARGETS): $(am__recursive_targets):
@set fnord $$MAKEFLAGS; amf=$$2; \ @fail=; \
if $(am__make_keepgoing); then \
failcom='fail=yes'; \
else \
failcom='exit 1'; \
fi; \
dot_seen=no; \ dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \ target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \ case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
for subdir in $$list; do \
echo "Making $$target in $$subdir"; \ echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \ if test "$$subdir" = "."; then \
dot_seen=yes; \ dot_seen=yes; \
@ -254,60 +402,20 @@ $(RECURSIVE_TARGETS):
else \ else \
local_target="$$target"; \ local_target="$$target"; \
fi; \ fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ || eval $$failcom; \
done; \ done; \
if test "$$dot_seen" = "no"; then \ if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail" fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \ ID: $(am__tagged_files)
maintainer-clean-recursive: $(am__define_uniq_tagged_files); mkid -fID $$unique
@set fnord $$MAKEFLAGS; amf=$$2; \ tags: tags-recursive
dot_seen=no; \ TAGS: tags
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ set x; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \ 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; \ include_option=--etags-include; \
@ -319,114 +427,162 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \ list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \ if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \ test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \ fi; \
done; \ done; \
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-recursive
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscope: cscope.files
test ! -s cscope.files \
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
clean-cscope:
-rm -f cscope.files
cscope.files: clean-cscope cscopelist
cscopelist: cscopelist-recursive
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(DISTFILES) distdir: $(DISTFILES)
$(am__remove_distdir) $(am__remove_distdir)
mkdir $(distdir) test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
list='$(SUBDIRS)'; for subdir in $$list; do \ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \ if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \ $(am__make_dryrun) \
|| mkdir "$(distdir)/$$subdir" \ || test -d "$(distdir)/$$subdir" \
|| exit 1; \ || $(MKDIR_P) "$(distdir)/$$subdir" \
(cd $$subdir && \ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \ $(MAKE) $(AM_MAKEFLAGS) \
top_distdir="../$(top_distdir)" \ top_distdir="$$new_top_distdir" \
distdir="../$(distdir)/$$subdir" \ distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \ distdir) \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ -test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir) || chmod -R a+r "$(distdir)"
dist-gzip: 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) $(am__post_remove_distdir)
dist-bzip2: distdir dist-bzip2: distdir
$(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2 tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
$(am__remove_distdir) $(am__post_remove_distdir)
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
dist-tarZ: distdir dist-tarZ: distdir
$(AMTAR) chof - $(distdir) | compress -c >$(distdir).tar.Z @echo WARNING: "Support for distribution archives compressed with" \
$(am__remove_distdir) "legacy program 'compress' is deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
dist-shar: distdir dist-shar: distdir
@echo WARNING: "Support for shar distribution archives is" \
"deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__remove_distdir) $(am__post_remove_distdir)
dist-zip: distdir dist-zip: distdir
-rm -f $(distdir).zip -rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir) zip -rq $(distdir).zip $(distdir)
$(am__remove_distdir) $(am__post_remove_distdir)
dist dist-all: distdir dist dist-all:
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
$(am__remove_distdir) $(am__post_remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then # This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another # it guarantees that the distribution is self-contained by making another
@ -434,25 +590,33 @@ dist dist-all: distdir
distcheck: dist distcheck: dist
case '$(DIST_ARCHIVES)' in \ case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \ *.tar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - ;;\ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \ *.tar.bz2*) \
bunzip2 -c $(distdir).tar.bz2 | $(AMTAR) xf - ;;\ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \ *.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(AMTAR) xf - ;;\ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \ *.shar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \ *.zip*) \
unzip $(distdir).zip ;;\ unzip $(distdir).zip ;;\
esac esac
chmod -R a-w $(distdir); chmod a+w $(distdir) chmod -R a-w $(distdir)
mkdir $(distdir)/_build chmod u+w $(distdir)
mkdir $(distdir)/_inst mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
chmod a-w $(distdir) chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& cd $(distdir)/_build \ && am__cwd=`pwd` \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \ && $(am__cd) $(distdir)/_build/sub \
&& ../../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \
--srcdir=../.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) check \
@ -472,14 +636,24 @@ distcheck: dist
&& rm -rf "$$dc_destdir" \ && rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \ && $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \ && rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
$(am__remove_distdir) && cd "$$am__cwd" \
|| exit 1
$(am__post_remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \ @(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck: distuninstallcheck:
@cd $(distuninstallcheck_dir) \ @test -n '$(distuninstallcheck_dir)' || { \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ echo 'ERROR: trying to run $@ with an empty' \
'$$(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
$(am__cd) '$(distuninstallcheck_dir)' || { \
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left after uninstall:" ; \ || { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \ if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \ echo " (check DESTDIR support)"; \
@ -510,16 +684,22 @@ install-am: all-am
installcheck: installcheck-recursive installcheck: installcheck-recursive
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -539,6 +719,8 @@ dvi-am:
html: html-recursive html: html-recursive
html-am:
info: info-recursive info: info-recursive
info-am: info-am:
@ -546,13 +728,30 @@ info-am:
install-data-am: install-data-am:
@$(NORMAL_INSTALL) @$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) install-data-hook $(MAKE) $(AM_MAKEFLAGS) install-data-hook
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive install-info: install-info-recursive
install-info-am:
install-man: install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-recursive maintainer-clean: maintainer-clean-recursive
@ -573,30 +772,35 @@ ps: ps-recursive
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am:
uninstall-info: uninstall-info-recursive .MAKE: $(am__recursive_targets) all install-am install-data-am \
install-strip
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
check-am clean clean-generic clean-recursive ctags \ am--refresh check check-am clean clean-cscope clean-generic \
ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
dist-tarZ dist-zip distcheck distclean distclean-generic \ dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
distclean-hdr distclean-recursive distclean-tags \ distcheck distclean distclean-generic distclean-hdr \
distcleancheck distdir distuninstallcheck dvi dvi-am html \ distclean-tags distcleancheck distdir distuninstallcheck dvi \
html-am info info-am install install-am install-data \ dvi-am html html-am info info-am install install-am \
install-data-am install-exec install-exec-am install-info \ install-data install-data-am install-data-hook install-dvi \
install-info-am install-man install-strip installcheck \ install-dvi-am install-exec install-exec-am install-html \
installcheck-am installdirs installdirs-am maintainer-clean \ install-html-am install-info install-info-am install-man \
maintainer-clean-generic maintainer-clean-recursive \ install-pdf install-pdf-am install-ps install-ps-am \
mostlyclean mostlyclean-generic mostlyclean-recursive pdf \ install-strip installcheck installcheck-am installdirs \
pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ installdirs-am maintainer-clean maintainer-clean-generic \
uninstall-info-am mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
tags-am uninstall uninstall-am
.PRECIOUS: Makefile
install-data-hook: install-data-hook:
prefix="$(prefix)" sysconfdir="$(sysconfdir)" \ prefix="$(prefix)" sysconfdir="$(sysconfdir)" \
path_to_vi="$(path_to_vi)" path_to_sendmail="$(path_to_sendmail)" \ path_to_vi="$(path_to_vi)" path_to_sendmail="$(path_to_sendmail)" \
./install/install.sh ./installer/install.sh
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -1,4 +1,38 @@
What's new in Open Source Tripwire 2.4.3: What's new in Open Source Tripwire 2.4.3.2:
* OST now includes optional iconv support when configured with --enable-iconv.
When enabled, binary database & report files store paths as UTF-16, making these files more
portable across machines with different character encodings. This is disabled by default
for the sake of compatibility with existing db & report files.
* Use posix_fadvise (or equivalent) to avoid filling system disk cache with files we've already
read and aren't about to read again. Also use O_NOATIME where available, to avoid updating
file access times when we read a file. Add an optional new config param "HASH_DIRECT_IO" to use
direct i/o when hashing files. This doesn't seem to be any faster than normal i/o, but
including it anyway due to user request.
* Add a new config file option RESOLVE_IDS_TO_NAMES to control whether we try to
resolve uid/gid values to user & group names. Static binaries are known to segfault when
doing this given certain nsswitch.conf setups (particularly LDAP/AD), so setting this
to false bypasses name resolution and just displays the numeric uid/gid.
* Add a new optional --key-size argument to twadmin --generate-keys mode, with available
sizes of 1024 or 2048 bits. Previously twadmin always created 1024-bit El Gamal keys,
and this remains the default if --key-size is not specified, at least for the time being.
* Fix a compilation issue with C++11 and -Werror=terminate.
* Move build files to automake 1.15, and make a few build system fixes: "make dist" now
works properly, cross-compiled binaries can now compile with OpenSSL if available, and
specifying a build directory outside the source dir now works as expected.
* Assorted platform tweaks: Add DOS/FreeDOS + DJGPP as a new platform; support Cygwin
//host/share/path syntax for UNC paths; passphrase & tempfile fixes for AROS.
======================================
What was new in earlier 2.4.3 versions:
* This update fixes compilation errors on modern compilers (GCC 4.7+ and LLVM/clang), * This update fixes compilation errors on modern compilers (GCC 4.7+ and LLVM/clang),
as well as some additional errors encountered on various platforms. This is intended as well as some additional errors encountered on various platforms. This is intended
@ -28,6 +62,7 @@ defined incorrectly otherwise.
* Added the long-requested MAILFROMADDRESS config param for email reporting. * Added the long-requested MAILFROMADDRESS config param for email reporting.
The update has been tested on a variety of platforms: The update has been tested on a variety of platforms:
Linuxes Linuxes
@ -69,26 +104,25 @@ Other
- Sortix 1.0 + gcc 5.3.0 - Sortix 1.0 + gcc 5.3.0
- Icaros 2.1 (AROS) + gcc 4.6.4 - Icaros 2.1 (AROS) + gcc 4.6.4
- MiNT 1.17 (Atari ST/TT) + gcc 4.6.4 - MiNT 1.17 (Atari ST/TT) + gcc 4.6.4
- FreeDOS 1.1 + gcc 6.1.0 (DJGPP)
Building Notes: Building Notes:
* If cross compiling, a '--disable-openssl' argument must be passed to ./configure,
since its OpenSSL existence check currently uses an AC_TRY_RUN macro. Additionally,
generated Makefiles don't automagically find the cross-compiler's 'ar' and try to
use the local one, which fails. Until this is resolved, this can be fixed with a symlink
named 'ar' pointing at the cross-compiler copy, with a path such that make finds it
instead of the local 'ar'.
* The '--enable-static' configure argument is not guaranteed to work on all * The '--enable-static' configure argument is not guaranteed to work on all
platforms, and your mileage may vary. And when it works, it may not be doing platforms (it's known not to work on MacOS, for instance) and your mileage may vary.
what you expect. For example, even if a program is statically linked with And when it works, it may not be doing what you expect. For example, even if
glibc, the static glibc code may still load shared libraries behind the a program is statically linked with glibc, the static glibc code may still load
scenes, for things like iconv character conversion and nsswitch name lookups. shared libraries behind the scenes, for things like iconv character conversion
and nsswitch name lookups.
* To create PIE (Position-Independent Executable) binaries, add “-fPIE" to CFLAGS * The build system currently doesn't autodetect clang at configure time
and "-fPIE -pie" to LDFLAGS. This is required by recent Android versions, and (though it detects llvm-gcc). To use clang, you'll need to set CC and CXX to
may be desirable elsewhere. It's simplest to add these to configure.in and run point at clang and clang++ before configuring & building.
autoreconf -i instead of hand-editing each Makefile individually.
* The default compile flags don't include hardening options such as creating
PIE (Position-Independent Executable) binaries. To set these, you'll want to
set CFLAGS/CXXFLAGS/LDFLAGS by hand before running 'configure', or use a tool
such as dpkg-buildflags to set them to recommended values.
* Older versions of Open Source Tripwire reportedly do not build on Tru64 UNIX. * Older versions of Open Source Tripwire reportedly do not build on Tru64 UNIX.
This is likely to be true with 2.4.3 as well, due to the lack of appropriate This is likely to be true with 2.4.3 as well, due to the lack of appropriate

1247
aclocal.m4 vendored

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
needed

View File

@ -1,4 +1,4 @@
/* config.h.in. Generated from configure.in by autoheader. */ /* config.h.in. Generated from configure.ac by autoheader. */
/* Define if building universal (internal helper macro) */ /* Define if building universal (internal helper macro) */
#undef AC_APPLE_UNIVERSAL_BUILD #undef AC_APPLE_UNIVERSAL_BUILD
@ -12,6 +12,12 @@
/* Define to 1 if you have the <bits/signum.h> header file. */ /* Define to 1 if you have the <bits/signum.h> header file. */
#undef HAVE_BITS_SIGNUM_H #undef HAVE_BITS_SIGNUM_H
/* Define to 1 if you have the <CommonCrypto/CommonDigest.h> header file. */
#undef HAVE_COMMONCRYPTO_COMMONDIGEST_H
/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Uses the GNU gcc compiler */ /* Uses the GNU gcc compiler */
#undef HAVE_GCC #undef HAVE_GCC
@ -48,6 +54,9 @@
/* Define to 1 if you have the <openssl/sha.h> header file. */ /* Define to 1 if you have the <openssl/sha.h> header file. */
#undef HAVE_OPENSSL_SHA_H #undef HAVE_OPENSSL_SHA_H
/* Define to 1 if you have the `posix_fadvise' function. */
#undef HAVE_POSIX_FADVISE
/* Define to 1 if you have the <signum.h> header file. */ /* Define to 1 if you have the <signum.h> header file. */
#undef HAVE_SIGNUM_H #undef HAVE_SIGNUM_H
@ -72,12 +81,21 @@
/* Define to 1 if you have the <syslog.h> header file. */ /* Define to 1 if you have the <syslog.h> header file. */
#undef HAVE_SYSLOG_H #undef HAVE_SYSLOG_H
/* Define to 1 if you have the <sys/fs/vx_ioctl.h> header file. */
#undef HAVE_SYS_FS_VX_IOCTL_H
/* Define to 1 if you have the <sys/mount.h> header file. */ /* Define to 1 if you have the <sys/mount.h> header file. */
#undef HAVE_SYS_MOUNT_H #undef HAVE_SYS_MOUNT_H
/* Define to 1 if you have the <sys/param.h> header file. */ /* Define to 1 if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H #undef HAVE_SYS_PARAM_H
/* Define to 1 if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define to 1 if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define to 1 if you have the <sys/statfs.h> header file. */ /* Define to 1 if you have the <sys/statfs.h> header file. */
#undef HAVE_SYS_STATFS_H #undef HAVE_SYS_STATFS_H
@ -96,6 +114,9 @@
/* Define to 1 if you have the <sys/ustat.h> header file. */ /* Define to 1 if you have the <sys/ustat.h> header file. */
#undef HAVE_SYS_USTAT_H #undef HAVE_SYS_USTAT_H
/* Define to 1 if you have the <sys/utsname.h> header file. */
#undef HAVE_SYS_UTSNAME_H
/* Define to 1 if you have the <unistd.h> header file. */ /* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H #undef HAVE_UNISTD_H

1467
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -2,12 +2,15 @@ dnl Process this file with autoconf to produce a configure script.
dnl dnl
dnl dnl
AC_INIT AC_INIT([tripwire], [2.4.3.2], [https://github.com/Tripwire/tripwire-open-source/issues], [tripwire], [https://github.com/Tripwire/tripwire-open-source])
AC_CONFIG_SRCDIR([src/tw/tw.cpp]) AC_CONFIG_SRCDIR([src/tw/tw.cpp])
AC_CANONICAL_TARGET([]) AC_CANONICAL_TARGET([])
AM_INIT_AUTOMAKE(tripwire, 2.4.3.1) AM_INIT_AUTOMAKE
AM_CONFIG_HEADER(config.h) AM_CONFIG_HEADER(config.h)
AC_COPYRIGHT([The developer of the original code and/or files is Tripwire, Inc. Portions created by Tripwire, Inc. are copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights reserved.])
AC_REVISION([$Revision: 2.4.3.2 $])
dnl ################################# dnl #################################
dnl Cleanup Cruft Leftover From Patch dnl Cleanup Cruft Leftover From Patch
dnl ################################# dnl #################################
@ -38,12 +41,16 @@ fi
dnl ################### dnl ###################
dnl Checks for programs dnl Checks for programs
dnl ################### dnl ###################
AC_PROG_CC AC_PROG_CC([gcc clang suncc aCC xlC_r xlC cl.exe])
AC_PROG_CXX AC_PROG_CXX([g++ clang++ sunCC aCC xlC_r xlC cl.exe])
AC_PROG_RANLIB AC_PROG_RANLIB
AC_PROG_YACC AC_PROG_YACC
AC_PROG_LN_S AC_PROG_LN_S
AC_PROG_LN AC_PROG_LN
AN_MAKEVAR([AR], [AC_PROG_AR])
AN_PROGRAM([ar], [AC_PROG_AR])
AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
AC_PROG_AR
AC_PATH_PROG(path_to_vi, vi) AC_PATH_PROG(path_to_vi, vi)
AC_PATH_PROG(path_to_sendmail, sendmail, "", [$PATH:/usr/libexec]) AC_PATH_PROG(path_to_sendmail, sendmail, "", [$PATH:/usr/libexec])
@ -63,10 +70,12 @@ AC_CHECK_HEADERS(sys/mount.h,,,
#include <sys/param.h> #include <sys/param.h>
#endif #endif
]]) ]])
AC_CHECK_HEADERS(sys/ustat.h sys/sysmacros.h sys/syslog.h) AC_CHECK_HEADERS(sys/ustat.h sys/sysmacros.h sys/syslog.h sys/socket.h)
AC_CHECK_HEADERS(unistd.h syslog.h iconv.h langinfo.h sys/statfs.h) AC_CHECK_HEADERS(unistd.h syslog.h langinfo.h sys/statfs.h sys/select.h)
AC_CHECK_HEADERS(signum.h bits/signum.h, break ) AC_CHECK_HEADERS(signum.h bits/signum.h, break )
AC_CHECK_HEADERS(stdarg.h varargs.h, break ) AC_CHECK_HEADERS(stdarg.h varargs.h, break )
AC_CHECK_HEADERS(sys/utsname.h memory.h)
AC_CHECK_HEADERS(sys/fs/vx_ioctl.h)
dnl # Special case for malloc.h, because it's depreciated on most systems. dnl # Special case for malloc.h, because it's depreciated on most systems.
CPPFLAGS_SAVE="${CPPFLAGS}" CPPFLAGS_SAVE="${CPPFLAGS}"
@ -106,6 +115,18 @@ dnl #############################
AC_CHECK_FUNCS(strftime gethostname gethostid) AC_CHECK_FUNCS(strftime gethostname gethostid)
AC_CHECK_FUNCS(mkstemp mktemp, break) AC_CHECK_FUNCS(mkstemp mktemp, break)
dnl check for posix_fadvise
AC_CHECK_HEADERS(fcntl.h, [AC_CHECK_FUNCS(posix_fadvise)])
dnl check for OSX builtin hash algorithms
AC_ARG_ENABLE(commoncrypto,
[ --disable-commoncrypto Don't use CommonCrypto hash implementations (OSX only)])
if test "x${enable_commoncrypto}" != "xno"
then
AC_CHECK_HEADERS(CommonCrypto/CommonDigest.h)
fi
dnl ############################################## dnl ##############################################
dnl Checks for various platform specific libraries dnl Checks for various platform specific libraries
dnl ############################################## dnl ##############################################
@ -124,6 +145,22 @@ AC_CHECK_LIB(c, gethostbyname, [:], [
AC_CHECK_LIB(network, gethostbyname, [LIBS="-lnetwork $LIBS"] [:]) AC_CHECK_LIB(network, gethostbyname, [LIBS="-lnetwork $LIBS"] [:])
]) ]) ]) ])
AC_ARG_ENABLE(iconv,
[ --enable-iconv Use iconv for locale-independent report and db files])
if test "x${enable_iconv}" = xyes
then
dnl iconv? check the usual locations
AC_CHECK_LIB(c, iconv, [
AC_CHECK_HEADERS(iconv.h)
], [
AC_CHECK_LIB(iconv, iconv, [
LIBS="-liconv $LIBS"
AC_CHECK_HEADERS(iconv.h)
], [:]) ])
fi
dnl check for stl library dnl check for stl library
AC_LANG_SAVE AC_LANG_SAVE
AC_LANG_CPLUSPLUS AC_LANG_CPLUSPLUS
@ -282,7 +319,7 @@ if you are trying to compile a static binary.
dnl Check for OpenSSL, now that we have a working compiler dnl Check for OpenSSL, now that we have a working compiler
AC_ARG_ENABLE(openssl, AC_ARG_ENABLE(openssl,
[ --disable-openssl don't link against OpenSSL libraries]) [ --disable-openssl Don't link against OpenSSL libraries])
AC_ARG_WITH(ssl-dir, AC_ARG_WITH(ssl-dir,
[ --with-ssl-dir=PATH Specify path to OpenSSL installation ], [ --with-ssl-dir=PATH Specify path to OpenSSL installation ],
[ [
@ -339,6 +376,9 @@ then
# Basic test to check for compatible library and # Basic test to check for compatible library and
# correct linking # correct linking
if test "$cross_compiling" = yes; then
found_crypto=1
else
AC_TRY_RUN( AC_TRY_RUN(
[ [
#include <string.h> #include <string.h>
@ -356,6 +396,7 @@ int main(void)
break; break;
], [] ], []
) )
fi
if test ! -z "$found_crypto" ; then if test ! -z "$found_crypto" ; then
break; break;
@ -406,6 +447,9 @@ if (test ! -z "$ac_cv_openssldir" && test "x$ac_cv_openssldir" != "xnot found")
fi fi
fi fi
AC_CONFIG_COMMANDS([mk_lib], [test -d lib || mkdir lib])
AC_CONFIG_COMMANDS([mk_bin], [test -d bin || mkdir bin])
dnl ##################################### dnl #####################################
dnl Export the variables we use dnl Export the variables we use
dnl ##################################### dnl #####################################

View File

@ -5,7 +5,7 @@
set -e set -e
PRODUCT=tripwire PRODUCT=tripwire
VERSION=2.4.3.1 VERSION=2.4.3.2
platform() { platform() {
case `uname` in case `uname` in

56
contrib/twpolmake.pl Executable file
View File

@ -0,0 +1,56 @@
#!/usr/bin/perl
# Tripwire Policy File customize tool
# ----------------------------------------------------------------
# Copyright (C) 2003 Hiroaki Izumi
# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# ----------------------------------------------------------------
# Usage:
# perl twpolmake.pl {Pol file}
# ----------------------------------------------------------------
#
$POLFILE=$ARGV[0];
open(POL,"$POLFILE") or die "open error: $POLFILE" ;
my($myhost,$thost) ;
my($sharp,$tpath,$cond) ;
my($INRULE) = 0 ;
while (<POL>) {
chomp;
if (($thost) = /^HOSTNAME\s*=\s*(.*)\s*;/) {
$myhost = `hostname` ; chomp($myhost) ;
if ($thost ne $myhost) {
$_="HOSTNAME=\"$myhost\";" ;
}
}
elsif ( /^{/ ) {
$INRULE=1 ;
}
elsif ( /^}/ ) {
$INRULE=0 ;
}
elsif ($INRULE == 1 and ($sharp,$tpath,$cond) = /^(\s*\#?\s*)(\/\S+)\b(\s+->\s+.+)$/) {
$ret = ($sharp =~ s/\#//g) ;
if ($tpath eq '/sbin/e2fsadm' ) {
$cond =~ s/;\s+(tune2fs.*)$/; \#$1/ ;
}
if (! -s $tpath) {
$_ = "$sharp#$tpath$cond" if ($ret == 0) ;
}
else {
$_ = "$sharp$tpath$cond" ;
}
}
print "$_\n" ;
}
close(POL) ;

View File

@ -1,251 +1,501 @@
#!/bin/sh #!/bin/sh
#
# install - install a program, script, or datafile # install - install a program, script, or datafile
# This comes from X11R5 (mit/util/scripts/install.sh).
scriptversion=2013-12-25.23; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
# #
# Copyright 1991 by the Massachusetts Institute of Technology # Copyright (C) 1994 X Consortium
# #
# Permission to use, copy, modify, distribute, and sell this software and its # Permission is hereby granted, free of charge, to any person obtaining a copy
# documentation for any purpose is hereby granted without fee, provided that # of this software and associated documentation files (the "Software"), to
# the above copyright notice appear in all copies and that both that # deal in the Software without restriction, including without limitation the
# copyright notice and this permission notice appear in supporting # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# documentation, and that the name of M.I.T. not be used in advertising or # sell copies of the Software, and to permit persons to whom the Software is
# publicity pertaining to distribution of the software without specific, # furnished to do so, subject to the following conditions:
# written prior permission. M.I.T. makes no representations about the #
# suitability of this software for any purpose. It is provided "as is" # The above copyright notice and this permission notice shall be included in
# without express or implied warranty. # all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
# #
# Calling this script install-sh is preferred over install.sh, to prevent # Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it # 'make' implicit rules from creating a file called install from it
# when there is no Makefile. # when there is no Makefile.
# #
# This script is compatible with the BSD install script, but was written # This script is compatible with the BSD install script, but was written
# from scratch. It can only install one file at a time, a restriction # from scratch.
# shared with many OS's install programs.
tab=' '
# set DOITPROG to echo to test this script nl='
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}"
# put in absolute paths if you don't have them in your path; or use env. vars.
mvprog="${MVPROG-mv}"
cpprog="${CPPROG-cp}"
chmodprog="${CHMODPROG-chmod}"
chownprog="${CHOWNPROG-chown}"
chgrpprog="${CHGRPPROG-chgrp}"
stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}"
transformbasename=""
transform_arg=""
instcmd="$mvprog"
chmodcmd="$chmodprog 0755"
chowncmd=""
chgrpcmd=""
stripcmd=""
rmcmd="$rmprog -f"
mvcmd="$mvprog"
src=""
dst=""
dir_arg=""
while [ x"$1" != x ]; do
case $1 in
-c) instcmd="$cpprog"
shift
continue;;
-d) dir_arg=true
shift
continue;;
-m) chmodcmd="$chmodprog $2"
shift
shift
continue;;
-o) chowncmd="$chownprog $2"
shift
shift
continue;;
-g) chgrpcmd="$chgrpprog $2"
shift
shift
continue;;
-s) stripcmd="$stripprog"
shift
continue;;
-t=*) transformarg=`echo $1 | sed 's/-t=//'`
shift
continue;;
-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
shift
continue;;
*) if [ x"$src" = x ]
then
src=$1
else
# this colon is to work around a 386BSD /bin/sh bug
:
dst=$1
fi
shift
continue;;
esac
done
if [ x"$src" = x ]
then
echo "install: no input file specified"
exit 1
else
true
fi
if [ x"$dir_arg" != x ]; then
dst=$src
src=""
if [ -d $dst ]; then
instcmd=:
chmodcmd=""
else
instcmd=mkdir
fi
else
# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if [ -f $src -o -d $src ]
then
true
else
echo "install: $src does not exist"
exit 1
fi
if [ x"$dst" = x ]
then
echo "install: no destination specified"
exit 1
else
true
fi
# If destination is a directory, append the input filename; if your system
# does not like double slashes in filenames, you may need to add some logic
if [ -d $dst ]
then
dst="$dst"/`basename $src`
else
true
fi
fi
## this sed command emulates the dirname command
dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Make sure that the destination directory exists.
# this part is taken from Noah Friedman's mkinstalldirs script
# Skip lots of stat calls in the usual case.
if [ ! -d "$dstdir" ]; then
defaultIFS='
' '
IFS="${IFS-${defaultIFS}}" IFS=" $tab$nl"
oIFS="${IFS}" # Set DOITPROG to "echo" to test this script.
# Some sh's can't handle IFS=/ for some reason.
IFS='%'
set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
IFS="${oIFS}"
pathcomp='' doit=${DOITPROG-}
doit_exec=${doit:-exec}
while [ $# -ne 0 ] ; do # Put in absolute file names if you don't have them in your path;
pathcomp="${pathcomp}${1}" # or use environment vars.
shift
if [ ! -d "${pathcomp}" ] ; chgrpprog=${CHGRPPROG-chgrp}
then chmodprog=${CHMODPROG-chmod}
$mkdirprog "${pathcomp}" chownprog=${CHOWNPROG-chown}
else cmpprog=${CMPPROG-cmp}
true cpprog=${CPPROG-cp}
fi mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
pathcomp="${pathcomp}/" posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
stripcmd=
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
is_target_a_directory=possibly
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-c) ;;
-C) copy_on_change=true;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
case $mode in
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t)
is_target_a_directory=always
dst_arg=$2
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
shift;;
-T) is_target_a_directory=never;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done done
# We allow the use of options -d and -T together, by making -d
# take the precedence; this is for compatibility with GNU install.
if test -n "$dir_arg"; then
if test -n "$dst_arg"; then
echo "$0: target directory not allowed when installing a directory." >&2
exit 1
fi
fi fi
if [ x"$dir_arg" != x ] if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
then # When -d is used, all remaining arguments are directories to create.
$doit $instcmd $dst && # When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done
fi
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && if test $# -eq 0; then
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && if test -z "$dir_arg"; then
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && echo "$0: no input file specified." >&2
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi exit 1
else fi
# It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
# If we're going to rename the final executable, determine the name now. if test -z "$dir_arg"; then
if test $# -gt 1 || test "$is_target_a_directory" = always; then
if test ! -d "$dst_arg"; then
echo "$0: $dst_arg: Is not a directory." >&2
exit 1
fi
fi
fi
if [ x"$transformarg" = x ] if test -z "$dir_arg"; then
then do_exit='(exit $ret); exit $ret'
dstfile=`basename $dst` trap "ret=129; $do_exit" 1
else trap "ret=130; $do_exit" 2
dstfile=`basename $dst $transformbasename | trap "ret=141; $do_exit" 13
sed $transformarg`$transformbasename trap "ret=143; $do_exit" 15
fi
# don't allow the sed command to completely eliminate the filename # Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
if [ x"$dstfile" = x ] *[0-7])
then if test -z "$stripcmd"; then
dstfile=`basename $dst` u_plus_rw=
else else
true u_plus_rw='% 200'
fi fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
# Make a temp file name in the proper directory. for src
do
# Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
dsttmp=$dstdir/#inst.$$# if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Move or copy the file name to the temp name # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
$doit $instcmd $src $dsttmp && if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
trap "rm -f ${dsttmp}" 0 && # If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test "$is_target_a_directory" = never; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
dstdir=`dirname "$dst"`
test -d "$dstdir"
dstdir_status=$?
fi
fi
# and set any options; do chmod last to preserve setuid bits obsolete_mkdir_used=false
# If any of these fail, we abort the whole thing. If we want to if test $dstdir_status != 0; then
# ignore errors from any of these, just make sure not to ignore case $posix_mkdir in
# errors from the above "$doit $instcmd $src $dsttmp" command. '')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && *[0-7])
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && mkdir_umask=`expr $umask + 22 \
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && - $umask % 100 % 40 + $umask % 20 \
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && - $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# Now rename the file to the real destination. # With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
$doit $rmcmd -f $dstdir/$dstfile && posix_mkdir=false
$doit $mvcmd $dsttmp $dstdir/$dstfile case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
fi && if (umask $mkdir_umask &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/d" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
exit 0 # The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
[-=\(\)!]*) prefix='./';;
*) prefix='';;
esac
oIFS=$IFS
IFS=/
set -f
set fnord $dstdir
shift
set +f
IFS=$oIFS
prefixes=
for d
do
test X"$d" = X && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View File

@ -160,7 +160,7 @@ CLR_CONFIG_FILE="twcfg.txt"
CLR_POLICY_FILE="twpol.txt" CLR_POLICY_FILE="twpol.txt"
# Default installation script configuration file. # Default installation script configuration file.
INSTALL_CONFIG_FILE="./install/install.cfg" INSTALL_CONFIG_FILE="./installer/install.cfg"
# Relative path to dir that contains the pkg files. # Relative path to dir that contains the pkg files.
PKG_DIR="pkg" PKG_DIR="pkg"

View File

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -13,15 +13,67 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
@SET_MAKE@ @SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -33,35 +85,108 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = man subdir = man
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
SOURCES = SOURCES =
DIST_SOURCES = DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
html-recursive info-recursive install-data-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \
install-exec-recursive install-info-recursive \ install-data-recursive install-dvi-recursive \
install-recursive installcheck-recursive installdirs-recursive \ install-exec-recursive install-html-recursive \
pdf-recursive ps-recursive uninstall-info-recursive \ install-info-recursive install-pdf-recursive \
uninstall-recursive install-ps-recursive install-recursive installcheck-recursive \
installdirs-recursive pdf-recursive ps-recursive \
tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
am__recursive_targets = \
$(RECURSIVE_TARGETS) \
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
distdir
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -85,6 +210,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -96,6 +222,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -112,21 +239,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -156,12 +286,16 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
SUBDIRS = man4 man5 man8 SUBDIRS = man4 man5 man8
all: all-recursive all: all-recursive
@ -171,15 +305,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign man/Makefile $(AUTOMAKE) --foreign man/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -196,19 +329,28 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am: $(am__aclocal_m4_deps):
# This directory's subdirectories are mostly independent; you can cd # This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile. # into them and run 'make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles, # To change the values of 'make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status' # (1) if the variable is set in 'config.status', edit 'config.status'
# (which will cause the Makefiles to be regenerated when you run `make'); # (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the `make' command line. # (2) otherwise, pass the desired values on the 'make' command line.
$(RECURSIVE_TARGETS): $(am__recursive_targets):
@set fnord $$MAKEFLAGS; amf=$$2; \ @fail=; \
if $(am__make_keepgoing); then \
failcom='fail=yes'; \
else \
failcom='exit 1'; \
fi; \
dot_seen=no; \ dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \ target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \ case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
for subdir in $$list; do \
echo "Making $$target in $$subdir"; \ echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \ if test "$$subdir" = "."; then \
dot_seen=yes; \ dot_seen=yes; \
@ -216,60 +358,20 @@ $(RECURSIVE_TARGETS):
else \ else \
local_target="$$target"; \ local_target="$$target"; \
fi; \ fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ || eval $$failcom; \
done; \ done; \
if test "$$dot_seen" = "no"; then \ if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail" fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \ ID: $(am__tagged_files)
maintainer-clean-recursive: $(am__define_uniq_tagged_files); mkid -fID $$unique
@set fnord $$MAKEFLAGS; amf=$$2; \ tags: tags-recursive
dot_seen=no; \ TAGS: tags
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ set x; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \ 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; \ include_option=--etags-include; \
@ -281,79 +383,104 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \ list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \ if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \ test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \ fi; \
done; \ done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-recursive
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-recursive
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
list='$(SUBDIRS)'; for subdir in $$list; do \ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \ if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \ $(am__make_dryrun) \
|| mkdir "$(distdir)/$$subdir" \ || test -d "$(distdir)/$$subdir" \
|| exit 1; \ || $(MKDIR_P) "$(distdir)/$$subdir" \
(cd $$subdir && \ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \ $(MAKE) $(AM_MAKEFLAGS) \
top_distdir="../$(top_distdir)" \ top_distdir="$$new_top_distdir" \
distdir="../$(distdir)/$$subdir" \ distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \ distdir) \
|| exit 1; \ || exit 1; \
fi; \ fi; \
@ -373,16 +500,22 @@ install-am: all-am
installcheck: installcheck-recursive installcheck: installcheck-recursive
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -401,18 +534,38 @@ dvi-am:
html: html-recursive html: html-recursive
html-am:
info: info-recursive info: info-recursive
info-am: info-am:
install-data-am: install-data-am:
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive install-info: install-info-recursive
install-info-am:
install-man: install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-recursive maintainer-clean: maintainer-clean-recursive
@ -431,21 +584,23 @@ ps: ps-recursive
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am:
uninstall-info: uninstall-info-recursive .MAKE: $(am__recursive_targets) install-am install-strip
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
clean clean-generic clean-recursive ctags ctags-recursive \ check-am clean clean-generic cscopelist-am ctags ctags-am \
distclean distclean-generic distclean-recursive distclean-tags \ distclean distclean-generic distclean-tags distdir dvi dvi-am \
distdir dvi dvi-am html html-am info info-am install \ html html-am info info-am install install-am install-data \
install-am install-data install-data-am install-exec \ install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-info install-info-am install-man \ install-exec-am install-html install-html-am install-info \
install-strip installcheck installcheck-am installdirs \ install-info-am install-man install-pdf install-pdf-am \
installdirs-am maintainer-clean maintainer-clean-generic \ install-ps install-ps-am install-strip installcheck \
maintainer-clean-recursive mostlyclean mostlyclean-generic \ installcheck-am installdirs installdirs-am maintainer-clean \
mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
uninstall uninstall-am uninstall-info-am pdf-am ps ps-am tags tags-am uninstall uninstall-am
.PRECIOUS: Makefile
#man_MANS = \ #man_MANS = \
@ -457,6 +612,7 @@ uninstall-info: uninstall-info-recursive
# ./man8/twadmin.8 \ # ./man8/twadmin.8 \
# ./man8/twintro.8 \ # ./man8/twintro.8 \
# ./man8/twprint.8 # ./man8/twprint.8
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -13,15 +13,67 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
@SET_MAKE@ @SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -33,31 +85,80 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = man/man4 subdir = man/man4
DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
SOURCES = SOURCES =
DIST_SOURCES = DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
man4dir = $(mandir)/man4 man4dir = $(mandir)/man4
am__installdirs = "$(DESTDIR)$(man4dir)" am__installdirs = "$(DESTDIR)$(man4dir)"
NROFF = nroff NROFF = nroff
MANS = $(dist_man_MANS) $(man_MANS) MANS = $(dist_man_MANS) $(man_MANS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
am__DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.in \
$(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -81,6 +182,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -92,6 +194,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -108,21 +211,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -152,12 +258,16 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
man_MANS = twconfig.4 twpolicy.4 man_MANS = twconfig.4 twpolicy.4
dist_man_MANS = twconfig.4 twpolicy.4 dist_man_MANS = twconfig.4 twpolicy.4
@ -168,15 +278,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/man4/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/man4/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign man/man4/Makefile $(AUTOMAKE) --foreign man/man4/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -193,83 +302,84 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am: $(am__aclocal_m4_deps):
install-man4: $(man4_MANS) $(man_MANS) install-man4: $(dist_man_MANS) $(man_MANS)
@$(NORMAL_INSTALL) @$(NORMAL_INSTALL)
test -z "$(man4dir)" || $(mkdir_p) "$(DESTDIR)$(man4dir)" @list1=''; \
@list='$(man4_MANS) $(dist_man4_MANS) $(nodist_man4_MANS)'; \ list2='$(dist_man_MANS) $(man_MANS)'; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ test -n "$(man4dir)" \
for i in $$l2; do \ && test -n "`echo $$list1$$list2`" \
case "$$i" in \ || exit 0; \
*.4*) list="$$list $$i" ;; \ echo " $(MKDIR_P) '$(DESTDIR)$(man4dir)'"; \
esac; \ $(MKDIR_P) "$(DESTDIR)$(man4dir)" || exit 1; \
{ for i in $$list1; do echo "$$i"; done; \
if test -n "$$list2"; then \
for i in $$list2; do echo "$$i"; done \
| sed -n '/\.4[a-z]*$$/p'; \
fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^4][0-9a-z]*$$,4,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man4dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man4dir)/$$inst" || exit $$?; \
fi; \
done; \ done; \
for i in $$list; do \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ while read files; do \
else file=$$i; fi; \ test -z "$$files" || { \
ext=`echo $$i | sed -e 's/^.*\\.//'`; \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man4dir)'"; \
case "$$ext" in \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man4dir)" || exit $$?; }; \
4*) ;; \ done; }
*) ext='4' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man4dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man4dir)/$$inst"; \
done
uninstall-man4: uninstall-man4:
@$(NORMAL_UNINSTALL) @$(NORMAL_UNINSTALL)
@list='$(man4_MANS) $(dist_man4_MANS) $(nodist_man4_MANS)'; \ @list=''; test -n "$(man4dir)" || exit 0; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ files=`{ for i in $$list; do echo "$$i"; done; \
for i in $$l2; do \ l2='$(dist_man_MANS) $(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
case "$$i" in \ sed -n '/\.4[a-z]*$$/p'; \
*.4*) list="$$list $$i" ;; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^4][0-9a-z]*$$,4,;x' \
esac; \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
done; \ dir='$(DESTDIR)$(man4dir)'; $(am__uninstall_files_from_dir)
for i in $$list; do \ tags TAGS:
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
case "$$ext" in \
4*) ;; \
*) ext='4' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " rm -f '$(DESTDIR)$(man4dir)/$$inst'"; \
rm -f "$(DESTDIR)$(man4dir)/$$inst"; \
done
tags: TAGS
TAGS:
ctags: CTAGS ctags CTAGS:
CTAGS:
cscope cscopelist:
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
@ -278,7 +388,7 @@ check: check-am
all-am: Makefile $(MANS) all-am: Makefile $(MANS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(man4dir)"; do \ for dir in "$(DESTDIR)$(man4dir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
@ -290,16 +400,22 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -318,18 +434,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-man install-data-am: install-man
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man4 install-man: install-man4
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -348,18 +484,26 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-man uninstall-am: uninstall-man
uninstall-man: uninstall-man4 uninstall-man: uninstall-man4
.PHONY: all all-am check check-am clean clean-generic distclean \ .MAKE: install-am install-strip
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-exec \ .PHONY: all all-am check check-am clean clean-generic cscopelist-am \
install-exec-am install-info install-info-am install-man \ ctags-am distclean distclean-generic distdir dvi dvi-am html \
install-man4 install-strip installcheck installcheck-am \ html-am info info-am install install-am install-data \
installdirs maintainer-clean maintainer-clean-generic \ install-data-am install-dvi install-dvi-am install-exec \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ install-exec-am install-html install-html-am install-info \
uninstall-am uninstall-info-am uninstall-man uninstall-man4 install-info-am install-man install-man4 install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags-am uninstall uninstall-am uninstall-man \
uninstall-man4
.PRECIOUS: Makefile
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.

View File

@ -215,6 +215,17 @@ parameter; reports displayed by other modes and other commands
are not affected. are not affected.
.br .br
Initial value: \fI3\fP Initial value: \fI3\fP
.IP \f(CWHASH_DIRECT_IO\fP
Use direct i/o when hashing files. (Linux-only as of OST 2.4.3.2)
.br
Initial value: \fIfalse\fP
.IP \f(CWRESOLVE_IDS_TO_NAMES\fP
Specifies whether to resolve uid/gid values to user & group names. Static
binaries may segfault while calling getpwuid/getgrgid in certain
nsswitch.conf configurations, and setting this to false will bypass
the name resolution step and prevent the segfault.
.br
Initial value: \fItrue\fP
.SS Email Notification Variables .SS Email Notification Variables
.IP \f(CWMAILMETHOD .IP \f(CWMAILMETHOD
Specifies the protocol to be used by \fITripwire\fR for email Specifies the protocol to be used by \fITripwire\fR for email
@ -291,7 +302,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR twintro (8), .BR twintro (8),
.BR tripwire (8), .BR tripwire (8),

View File

@ -537,7 +537,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR twintro (8), .BR twintro (8),
.BR tripwire (8), .BR tripwire (8),

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -13,15 +13,67 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
@SET_MAKE@ @SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -33,31 +85,80 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = man/man5 subdir = man/man5
DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
SOURCES = SOURCES =
DIST_SOURCES = DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
man5dir = $(mandir)/man5 man5dir = $(mandir)/man5
am__installdirs = "$(DESTDIR)$(man5dir)" am__installdirs = "$(DESTDIR)$(man5dir)"
NROFF = nroff NROFF = nroff
MANS = $(dist_man_MANS) $(man_MANS) MANS = $(dist_man_MANS) $(man_MANS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
am__DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.in \
$(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -81,6 +182,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -92,6 +194,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -108,21 +211,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -152,12 +258,16 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
man_MANS = twfiles.5 man_MANS = twfiles.5
dist_man_MANS = twfiles.5 dist_man_MANS = twfiles.5
@ -168,15 +278,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/man5/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/man5/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign man/man5/Makefile $(AUTOMAKE) --foreign man/man5/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -193,83 +302,84 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am: $(am__aclocal_m4_deps):
install-man5: $(man5_MANS) $(man_MANS) install-man5: $(dist_man_MANS) $(man_MANS)
@$(NORMAL_INSTALL) @$(NORMAL_INSTALL)
test -z "$(man5dir)" || $(mkdir_p) "$(DESTDIR)$(man5dir)" @list1=''; \
@list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \ list2='$(dist_man_MANS) $(man_MANS)'; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ test -n "$(man5dir)" \
for i in $$l2; do \ && test -n "`echo $$list1$$list2`" \
case "$$i" in \ || exit 0; \
*.5*) list="$$list $$i" ;; \ echo " $(MKDIR_P) '$(DESTDIR)$(man5dir)'"; \
esac; \ $(MKDIR_P) "$(DESTDIR)$(man5dir)" || exit 1; \
{ for i in $$list1; do echo "$$i"; done; \
if test -n "$$list2"; then \
for i in $$list2; do echo "$$i"; done \
| sed -n '/\.5[a-z]*$$/p'; \
fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst" || exit $$?; \
fi; \
done; \ done; \
for i in $$list; do \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ while read files; do \
else file=$$i; fi; \ test -z "$$files" || { \
ext=`echo $$i | sed -e 's/^.*\\.//'`; \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man5dir)'"; \
case "$$ext" in \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man5dir)" || exit $$?; }; \
5*) ;; \ done; }
*) ext='5' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst"; \
done
uninstall-man5: uninstall-man5:
@$(NORMAL_UNINSTALL) @$(NORMAL_UNINSTALL)
@list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \ @list=''; test -n "$(man5dir)" || exit 0; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ files=`{ for i in $$list; do echo "$$i"; done; \
for i in $$l2; do \ l2='$(dist_man_MANS) $(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
case "$$i" in \ sed -n '/\.5[a-z]*$$/p'; \
*.5*) list="$$list $$i" ;; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
esac; \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
done; \ dir='$(DESTDIR)$(man5dir)'; $(am__uninstall_files_from_dir)
for i in $$list; do \ tags TAGS:
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
case "$$ext" in \
5*) ;; \
*) ext='5' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " rm -f '$(DESTDIR)$(man5dir)/$$inst'"; \
rm -f "$(DESTDIR)$(man5dir)/$$inst"; \
done
tags: TAGS
TAGS:
ctags: CTAGS ctags CTAGS:
CTAGS:
cscope cscopelist:
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
@ -278,7 +388,7 @@ check: check-am
all-am: Makefile $(MANS) all-am: Makefile $(MANS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(man5dir)"; do \ for dir in "$(DESTDIR)$(man5dir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
@ -290,16 +400,22 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -318,18 +434,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-man install-data-am: install-man
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man5 install-man: install-man5
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -348,18 +484,26 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-man uninstall-am: uninstall-man
uninstall-man: uninstall-man5 uninstall-man: uninstall-man5
.PHONY: all all-am check check-am clean clean-generic distclean \ .MAKE: install-am install-strip
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-exec \ .PHONY: all all-am check check-am clean clean-generic cscopelist-am \
install-exec-am install-info install-info-am install-man \ ctags-am distclean distclean-generic distdir dvi dvi-am html \
install-man5 install-strip installcheck installcheck-am \ html-am info info-am install install-am install-data \
installdirs maintainer-clean maintainer-clean-generic \ install-data-am install-dvi install-dvi-am install-exec \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ install-exec-am install-html install-html-am install-info \
uninstall-am uninstall-info-am uninstall-man uninstall-man5 install-info-am install-man install-man5 install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags-am uninstall uninstall-am uninstall-man \
uninstall-man5
.PRECIOUS: Makefile
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.

View File

@ -112,7 +112,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR twintro (8), .BR twintro (8),
.BR tripwire (8), .BR tripwire (8),

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -13,15 +13,67 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
@SET_MAKE@ @SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -33,31 +85,80 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = man/man8 subdir = man/man8
DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
SOURCES = SOURCES =
DIST_SOURCES = DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
man8dir = $(mandir)/man8 man8dir = $(mandir)/man8
am__installdirs = "$(DESTDIR)$(man8dir)" am__installdirs = "$(DESTDIR)$(man8dir)"
NROFF = nroff NROFF = nroff
MANS = $(dist_man_MANS) $(man_MANS) MANS = $(dist_man_MANS) $(man_MANS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
am__DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.in \
$(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -81,6 +182,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -92,6 +194,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -108,21 +211,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -152,12 +258,16 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
man_MANS = siggen.8 tripwire.8 twadmin.8 twintro.8 twprint.8 man_MANS = siggen.8 tripwire.8 twadmin.8 twintro.8 twprint.8
dist_man_MANS = siggen.8 tripwire.8 twadmin.8 twintro.8 twprint.8 dist_man_MANS = siggen.8 tripwire.8 twadmin.8 twintro.8 twprint.8
@ -168,15 +278,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/man8/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/man8/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign man/man8/Makefile $(AUTOMAKE) --foreign man/man8/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -193,83 +302,84 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am: $(am__aclocal_m4_deps):
install-man8: $(man8_MANS) $(man_MANS) install-man8: $(dist_man_MANS) $(man_MANS)
@$(NORMAL_INSTALL) @$(NORMAL_INSTALL)
test -z "$(man8dir)" || $(mkdir_p) "$(DESTDIR)$(man8dir)" @list1=''; \
@list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \ list2='$(dist_man_MANS) $(man_MANS)'; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ test -n "$(man8dir)" \
for i in $$l2; do \ && test -n "`echo $$list1$$list2`" \
case "$$i" in \ || exit 0; \
*.8*) list="$$list $$i" ;; \ echo " $(MKDIR_P) '$(DESTDIR)$(man8dir)'"; \
esac; \ $(MKDIR_P) "$(DESTDIR)$(man8dir)" || exit 1; \
{ for i in $$list1; do echo "$$i"; done; \
if test -n "$$list2"; then \
for i in $$list2; do echo "$$i"; done \
| sed -n '/\.8[a-z]*$$/p'; \
fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
done | \
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
sed 'N;N;s,\n, ,g' | { \
list=; while read file base inst; do \
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst" || exit $$?; \
fi; \
done; \ done; \
for i in $$list; do \ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ while read files; do \
else file=$$i; fi; \ test -z "$$files" || { \
ext=`echo $$i | sed -e 's/^.*\\.//'`; \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man8dir)'"; \
case "$$ext" in \ $(INSTALL_DATA) $$files "$(DESTDIR)$(man8dir)" || exit $$?; }; \
8*) ;; \ done; }
*) ext='8' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst"; \
done
uninstall-man8: uninstall-man8:
@$(NORMAL_UNINSTALL) @$(NORMAL_UNINSTALL)
@list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \ @list=''; test -n "$(man8dir)" || exit 0; \
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ files=`{ for i in $$list; do echo "$$i"; done; \
for i in $$l2; do \ l2='$(dist_man_MANS) $(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
case "$$i" in \ sed -n '/\.8[a-z]*$$/p'; \
*.8*) list="$$list $$i" ;; \ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \
esac; \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
done; \ dir='$(DESTDIR)$(man8dir)'; $(am__uninstall_files_from_dir)
for i in $$list; do \ tags TAGS:
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
case "$$ext" in \
8*) ;; \
*) ext='8' ;; \
esac; \
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
inst=`echo $$inst | sed -e 's/^.*\///'`; \
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
echo " rm -f '$(DESTDIR)$(man8dir)/$$inst'"; \
rm -f "$(DESTDIR)$(man8dir)/$$inst"; \
done
tags: TAGS
TAGS:
ctags: CTAGS ctags CTAGS:
CTAGS:
cscope cscopelist:
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
@ -278,7 +388,7 @@ check: check-am
all-am: Makefile $(MANS) all-am: Makefile $(MANS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(man8dir)"; do \ for dir in "$(DESTDIR)$(man8dir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
@ -290,16 +400,22 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -318,18 +434,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-man install-data-am: install-man
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man8 install-man: install-man8
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -348,18 +484,26 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-man uninstall-am: uninstall-man
uninstall-man: uninstall-man8 uninstall-man: uninstall-man8
.PHONY: all all-am check check-am clean clean-generic distclean \ .MAKE: install-am install-strip
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-exec \ .PHONY: all all-am check check-am clean clean-generic cscopelist-am \
install-exec-am install-info install-info-am install-man \ ctags-am distclean distclean-generic distdir dvi dvi-am html \
install-man8 install-strip installcheck installcheck-am \ html-am info info-am install install-am install-data \
installdirs maintainer-clean maintainer-clean-generic \ install-data-am install-dvi install-dvi-am install-exec \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ install-exec-am install-html install-html-am install-info \
uninstall-am uninstall-info-am uninstall-man uninstall-man8 install-info-am install-man install-man8 install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags-am uninstall uninstall-am uninstall-man \
uninstall-man8
.PRECIOUS: Makefile
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.

View File

@ -67,7 +67,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR twintro (8), .BR twintro (8),
.BR tripwire (8), .BR tripwire (8),

View File

@ -567,7 +567,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR twintro (8), .BR twintro (8),
.BR twadmin (8), .BR twadmin (8),

View File

@ -481,6 +481,10 @@ the local key.
.BI \(hyQ " passphrase\fR, " --site-passphrase " passphrase" .BI \(hyQ " passphrase\fR, " --site-passphrase " passphrase"
Specify site passphrase to be used when generating Specify site passphrase to be used when generating
the site key. the site key.
.TP
.BI \(hyK " size\fR, " --key-size " size"
Specify the key size (1024 or 2048 bits) when generating
keys. (Default is 1024.)
.\" ***************************************** .\" *****************************************
.Hr .Hr
.if \n(.t<700 .bp .if \n(.t<700 .bp
@ -547,7 +551,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR twintro (8), .BR twintro (8),
.BR tripwire (8), .BR tripwire (8),

View File

@ -99,7 +99,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR tripwire (8), .BR tripwire (8),
.BR twadmin (8), .BR twadmin (8),

View File

@ -145,7 +145,7 @@ Permission is granted to copy and distribute modified versions of this man page
.PP .PP
Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc. Permission is granted to copy and distribute translations of this man page into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by Tripwire, Inc.
.PP .PP
Copyright 2000 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved. Copyright 2000-2017 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. in the United States and other countries. All rights reserved.
.SH SEE ALSO .SH SEE ALSO
.BR twintro (8), .BR twintro (8),
.BR tripwire (8), .BR tripwire (8),

404
missing
View File

@ -1,7 +1,10 @@
#! /bin/sh #! /bin/sh
# Common stub for a few missing GNU programs while installing. # Common wrapper for a few potentially missing GNU programs.
# Copyright 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@ -14,9 +17,7 @@
# GNU General Public License for more details. # GNU General Public License for more details.
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software # along with this program. If not, see <http://www.gnu.org/licenses/>.
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
@ -24,260 +25,191 @@
# the same distribution terms that you use for the rest of that program. # the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then if test $# -eq 0; then
echo 1>&2 "Try \`$0 --help' for more information" echo 1>&2 "Try '$0 --help' for more information"
exit 1 exit 1
fi fi
run=: case $1 in
# In the cases where this matters, `missing' is being run in the --is-lightweight)
# srcdir already. # Used by our autoconf macros to check whether the available missing
if test -f configure.ac; then # script is modern enough.
configure_ac=configure.ac exit 0
else ;;
configure_ac=configure.in
fi
case "$1" in --run)
--run) # Back-compat with the calling convention used by older automake.
# Try to run requested program, and just exit if it succeeds. shift
run= ;;
shift
"$@" && exit 0
;;
esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
case "$1" in
-h|--h|--he|--hel|--help) -h|--h|--he|--hel|--help)
echo "\ echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]... $0 [OPTION]... PROGRAM [ARGUMENT]...
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
error status if there is no known handling for PROGRAM. to PROGRAM being missing or too old.
Options: Options:
-h, --help display this help and exit -h, --help display this help and exit
-v, --version output version information and exit -v, --version output version information and exit
--run try to run the given command, and emulate it if it fails
Supported PROGRAM values: Supported PROGRAM values:
aclocal touch file \`aclocal.m4' aclocal autoconf autoheader autom4te automake makeinfo
autoconf touch file \`configure' bison yacc flex lex help2man
autoheader touch file \`config.h.in'
automake touch all \`Makefile.in' files Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
bison create \`y.tab.[ch]', if possible, from existing .[ch] 'g' are ignored when checking the name.
flex create \`lex.yy.c', if possible, from existing .c
help2man touch the output file Send bug reports to <bug-automake@gnu.org>."
lex create \`lex.yy.c', if possible, from existing .c exit $?
makeinfo touch the output file
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
;; ;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version) -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing 0.3 - GNU automake" echo "missing $scriptversion (GNU Automake)"
exit $?
;; ;;
-*) -*)
echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "$0: unknown '$1' option"
echo 1>&2 "Try \`$0 --help' for more information" echo 1>&2 "Try '$0 --help' for more information"
exit 1 exit 1
;; ;;
aclocal)
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
to install the \`Automake' and \`Perl' packages. Grab them from
any GNU archive site."
touch aclocal.m4
;;
autoconf)
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`${configure_ac}'. You might want to install the
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
archive site."
touch configure
;;
autoheader)
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
to install the \`Autoconf' and \`GNU m4' packages. Grab them
from any GNU archive site."
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
test -z "$files" && files="config.h"
touch_files=
for f in $files; do
case "$f" in
*:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";;
esac
done
touch $touch_files
;;
automake)
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
You might want to install the \`Automake' and \`Perl' packages.
Grab them from any GNU archive site."
find . -type f -name Makefile.am -print |
sed 's/\.am$/.in/' |
while read f; do touch "$f"; done
;;
bison|yacc)
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site."
rm -f y.tab.c y.tab.h
if [ $# -ne 1 ]; then
eval LASTARG="\${$#}"
case "$LASTARG" in
*.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
if [ -f "$SRCFILE" ]; then
cp "$SRCFILE" y.tab.c
fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
if [ -f "$SRCFILE" ]; then
cp "$SRCFILE" y.tab.h
fi
;;
esac
fi
if [ ! -f y.tab.h ]; then
echo >y.tab.h
fi
if [ ! -f y.tab.c ]; then
echo 'main() { return 0; }' >y.tab.c
fi
;;
lex|flex)
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site."
rm -f lex.yy.c
if [ $# -ne 1 ]; then
eval LASTARG="\${$#}"
case "$LASTARG" in
*.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
if [ -f "$SRCFILE" ]; then
cp "$SRCFILE" lex.yy.c
fi
;;
esac
fi
if [ ! -f lex.yy.c ]; then
echo 'main() { return 0; }' >lex.yy.c
fi
;;
help2man)
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then
file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
fi
if [ -f "$file" ]; then
touch $file
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
exit 1
fi
;;
makeinfo)
if test -z "$run" && (makeinfo --version > /dev/null 2>&1); then
# We have makeinfo, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy \`make' (AIX,
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then
file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
fi
touch $file
;;
tar)
shift
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
fi
# We have already tried tar in the generic part.
# Look for gnutar/gtar before invocation to avoid ugly error
# messages.
if (gnutar --version > /dev/null 2>&1); then
gnutar ${1+"$@"} && exit 0
fi
if (gtar --version > /dev/null 2>&1); then
gtar ${1+"$@"} && exit 0
fi
firstarg="$1"
if shift; then
case "$firstarg" in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" ${1+"$@"} && exit 0
;;
esac
case "$firstarg" in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" ${1+"$@"} && exit 0
;;
esac
fi
echo 1>&2 "\
WARNING: I can't seem to be able to run \`tar' with the given arguments.
You may want to install GNU tar or Free paxutils, or check the
command line arguments."
exit 1
;;
*)
echo 1>&2 "\
WARNING: \`$1' is needed, and you do not seem to have it handy on your
system. You might have modified some files without having the
proper tools for further handling them. Check the \`README' file,
it often tells you about the needed prerequirements for installing
this package. You may also peek at any GNU archive site, in case
some other package would contain this missing \`$1' program."
exit 1
;;
esac esac
exit 0 # Run the given program, remember its exit status.
"$@"; st=$?
# If it succeeded, we are done.
test $st -eq 0 && exit 0
# Also exit now if we it failed (or wasn't found), and '--version' was
# passed; such an option is passed most likely to detect whether the
# program is present and works.
case $2 in --version|--help) exit $st;; esac
# Exit code 63 means version mismatch. This often happens when the user
# tries to use an ancient version of a tool on a file that requires a
# minimum version.
if test $st -eq 63; then
msg="probably too old"
elif test $st -eq 127; then
# Program was missing.
msg="missing on your system"
else
# Program was found and executed, but failed. Give up.
exit $st
fi
perl_URL=http://www.perl.org/
flex_URL=http://flex.sourceforge.net/
gnu_software_URL=http://www.gnu.org/software
program_details ()
{
case $1 in
aclocal|automake)
echo "The '$1' program is part of the GNU Automake package:"
echo "<$gnu_software_URL/automake>"
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/autoconf>"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
autoconf|autom4te|autoheader)
echo "The '$1' program is part of the GNU Autoconf package:"
echo "<$gnu_software_URL/autoconf/>"
echo "It also requires GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
esac
}
give_advice ()
{
# Normalize program name to check for.
normalized_program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
printf '%s\n' "'$1' is $msg."
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
case $normalized_program in
autoconf*)
echo "You should only need it if you modified 'configure.ac',"
echo "or m4 files included by it."
program_details 'autoconf'
;;
autoheader*)
echo "You should only need it if you modified 'acconfig.h' or"
echo "$configure_deps."
program_details 'autoheader'
;;
automake*)
echo "You should only need it if you modified 'Makefile.am' or"
echo "$configure_deps."
program_details 'automake'
;;
aclocal*)
echo "You should only need it if you modified 'acinclude.m4' or"
echo "$configure_deps."
program_details 'aclocal'
;;
autom4te*)
echo "You might have modified some maintainer files that require"
echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
echo "You should only need it if you modified a '.y' file."
echo "You may want to install the GNU Bison package:"
echo "<$gnu_software_URL/bison/>"
;;
lex*|flex*)
echo "You should only need it if you modified a '.l' file."
echo "You may want to install the Fast Lexical Analyzer package:"
echo "<$flex_URL>"
;;
help2man*)
echo "You should only need it if you modified a dependency" \
"of a man page."
echo "You may want to install the GNU Help2man package:"
echo "<$gnu_software_URL/help2man/>"
;;
makeinfo*)
echo "You should only need it if you modified a '.texi' file, or"
echo "any other file indirectly affecting the aspect of the manual."
echo "You might want to install the Texinfo package:"
echo "<$gnu_software_URL/texinfo/>"
echo "The spurious makeinfo call might also be the consequence of"
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
echo "want to install GNU make:"
echo "<$gnu_software_URL/make/>"
;;
*)
echo "You might have modified some files without having the proper"
echo "tools for further handling them. Check the 'README' file, it"
echo "often tells you about the needed prerequisites for installing"
echo "this package. You may also peek at any GNU archive site, in"
echo "case some other package contains this missing '$1' program."
;;
esac
}
give_advice "$1" | sed -e '1s/^/WARNING: /' \
-e '2,$s/^/ /' >&2
# Propagate the correct exit status (expected to be 127 for a program
# not found, 63 for a program that failed due to version mismatch).
exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View File

@ -1,40 +1,162 @@
#! /bin/sh #! /bin/sh
# mkinstalldirs --- make directory hierarchy # mkinstalldirs --- make directory hierarchy
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
scriptversion=2009-04-28.21; # UTC
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16 # Created: 1993-05-16
# Public domain # Public domain.
#
# $Id: mkinstalldirs,v 1.1 2001/02/18 15:08:31 pherman Exp $ # This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
IFS=" "" $nl"
errstatus=0 errstatus=0
dirmode=
usage="\
Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
Create each directory DIR (with mode MODE, if specified), including all
leading file name components.
Report bugs to <bug-automake@gnu.org>."
# process command line arguments
while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
echo "$usage"
exit $?
;;
-m) # -m PERM arg
shift
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
dirmode=$1
shift
;;
--version)
echo "$0 $scriptversion"
exit $?
;;
--) # stop option processing
shift
break
;;
-*) # unknown option
echo "$usage" 1>&2
exit 1
;;
*) # first non-opt arg
break
;;
esac
done
for file for file
do do
set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` if test -d "$file"; then
shift shift
else
break
fi
done
pathcomp= case $# in
for d 0) exit 0 ;;
do esac
pathcomp="$pathcomp$d"
case "$pathcomp" in
-* ) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then # Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
echo "mkdir $pathcomp" # mkdir -p a/c at the same time, both will detect that a is missing,
# one will create a, then the other will try to create a and die with
# a "File exists" error. This is a problem when calling mkinstalldirs
# from a parallel make. We use --version in the probe to restrict
# ourselves to GNU mkdir, which is thread-safe.
case $dirmode in
'')
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
else
# On NextStep and OpenStep, the 'mkdir' command does not
# recognize any option. It will interpret all options as
# directories to create, and then abort because '.' already
# exists.
test -d ./-p && rmdir ./-p
test -d ./--version && rmdir ./--version
fi
;;
*)
if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
test ! -d ./--version; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
else
# Clean up after NextStep and OpenStep mkdir.
for d in ./-m ./-p ./--version "./$dirmode";
do
test -d $d && rmdir $d
done
fi
;;
esac
mkdir "$pathcomp" || lasterr=$? for file
do
case $file in
/*) pathcomp=/ ;;
*) pathcomp= ;;
esac
oIFS=$IFS
IFS=/
set fnord $file
shift
IFS=$oIFS
if test ! -d "$pathcomp"; then for d
errstatus=$lasterr do
fi test "x$d" = x && continue
fi
pathcomp="$pathcomp/" pathcomp=$pathcomp$d
done case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp=$pathcomp/
done
done done
exit $errstatus exit $errstatus
# mkinstalldirs ends here # Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View File

@ -1,3 +1,4 @@
SUBDIRS = cryptlib core db fco fs tw twcrypto twparser util SUBDIRS = cryptlib core db fco fs tw twcrypto twparser util
SUBDIRS+= twprint twadmin siggen tripwire twtest SUBDIRS+= twprint twadmin siggen tripwire twtest
EXTRA_DIST = buildnum.h buildnum.txt buildnuminc.pl dep_addprefix.pl rmcr.pl check_st.pl prime.pl parser test-harness core/md5.cpp core/sha.cpp

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -13,15 +13,67 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
@SET_MAKE@ @SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -33,33 +85,106 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = src subdir = src
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES = SOURCES =
DIST_SOURCES = DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
html-recursive info-recursive install-data-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \
install-exec-recursive install-info-recursive \ install-data-recursive install-dvi-recursive \
install-recursive installcheck-recursive installdirs-recursive \ install-exec-recursive install-html-recursive \
pdf-recursive ps-recursive uninstall-info-recursive \ install-info-recursive install-pdf-recursive \
uninstall-recursive install-ps-recursive install-recursive installcheck-recursive \
installdirs-recursive pdf-recursive ps-recursive \
tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
am__recursive_targets = \
$(RECURSIVE_TARGETS) \
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
distdir
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -83,6 +208,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -94,6 +220,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -110,21 +237,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -154,13 +284,19 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
SUBDIRS = cryptlib core db fco fs tw twcrypto twparser util twprint twadmin siggen tripwire twtest top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = cryptlib core db fco fs tw twcrypto twparser util twprint \
twadmin siggen tripwire twtest
EXTRA_DIST = buildnum.h buildnum.txt buildnuminc.pl dep_addprefix.pl rmcr.pl check_st.pl prime.pl parser test-harness core/md5.cpp core/sha.cpp
all: all-recursive all: all-recursive
.SUFFIXES: .SUFFIXES:
@ -168,15 +304,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu src/Makefile $(AUTOMAKE) --gnu src/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -193,19 +328,28 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am: $(am__aclocal_m4_deps):
# This directory's subdirectories are mostly independent; you can cd # This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile. # into them and run 'make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles, # To change the values of 'make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status' # (1) if the variable is set in 'config.status', edit 'config.status'
# (which will cause the Makefiles to be regenerated when you run `make'); # (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the `make' command line. # (2) otherwise, pass the desired values on the 'make' command line.
$(RECURSIVE_TARGETS): $(am__recursive_targets):
@set fnord $$MAKEFLAGS; amf=$$2; \ @fail=; \
if $(am__make_keepgoing); then \
failcom='fail=yes'; \
else \
failcom='exit 1'; \
fi; \
dot_seen=no; \ dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \ target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \ case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
for subdir in $$list; do \
echo "Making $$target in $$subdir"; \ echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \ if test "$$subdir" = "."; then \
dot_seen=yes; \ dot_seen=yes; \
@ -213,60 +357,20 @@ $(RECURSIVE_TARGETS):
else \ else \
local_target="$$target"; \ local_target="$$target"; \
fi; \ fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ || eval $$failcom; \
done; \ done; \
if test "$$dot_seen" = "no"; then \ if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail" fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \ ID: $(am__tagged_files)
maintainer-clean-recursive: $(am__define_uniq_tagged_files); mkid -fID $$unique
@set fnord $$MAKEFLAGS; amf=$$2; \ tags: tags-recursive
dot_seen=no; \ TAGS: tags
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ set x; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \ 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; \ include_option=--etags-include; \
@ -278,79 +382,104 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \ list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \ if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \ test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \ fi; \
done; \ done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-recursive
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-recursive
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
list='$(SUBDIRS)'; for subdir in $$list; do \ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \ if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \ $(am__make_dryrun) \
|| mkdir "$(distdir)/$$subdir" \ || test -d "$(distdir)/$$subdir" \
|| exit 1; \ || $(MKDIR_P) "$(distdir)/$$subdir" \
(cd $$subdir && \ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \ $(MAKE) $(AM_MAKEFLAGS) \
top_distdir="../$(top_distdir)" \ top_distdir="$$new_top_distdir" \
distdir="../$(distdir)/$$subdir" \ distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \ distdir) \
|| exit 1; \ || exit 1; \
fi; \ fi; \
@ -370,16 +499,22 @@ install-am: all-am
installcheck: installcheck-recursive installcheck: installcheck-recursive
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -398,18 +533,38 @@ dvi-am:
html: html-recursive html: html-recursive
html-am:
info: info-recursive info: info-recursive
info-am: info-am:
install-data-am: install-data-am:
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive install-info: install-info-recursive
install-info-am:
install-man: install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-recursive maintainer-clean: maintainer-clean-recursive
@ -428,21 +583,24 @@ ps: ps-recursive
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am:
uninstall-info: uninstall-info-recursive .MAKE: $(am__recursive_targets) install-am install-strip
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
check-am clean clean-generic cscopelist-am ctags ctags-am \
distclean distclean-generic distclean-tags distdir dvi dvi-am \
html html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags tags-am uninstall uninstall-am
.PRECIOUS: Makefile
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
clean clean-generic clean-recursive ctags ctags-recursive \
distclean distclean-generic distclean-recursive distclean-tags \
distdir dvi dvi-am html html-am info info-am install \
install-am install-data install-data-am install-exec \
install-exec-am install-info install-info-am install-man \
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-info-am
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.

View File

@ -1 +1 @@
1 0

View File

@ -1,8 +1,9 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libcore.a noinst_LIBRARIES = libcore.a
libcore_adir=.
libcore_a_SOURCES = \ libcore_a_SOURCES = \
file_unix.cpp unixfsservices.cpp \ file_unix.cpp unixfsservices.cpp \
archive.cpp charutil.cpp \ archive.cpp charutil.cpp \
@ -12,16 +13,28 @@ libcore_a_SOURCES = \
errorutil.cpp fileerror.cpp fileheader.cpp fsservices.cpp \ errorutil.cpp fileerror.cpp fileheader.cpp fsservices.cpp \
growheap.cpp hashtable.cpp haval.cpp msystem.cpp ntmbs.cpp \ growheap.cpp hashtable.cpp haval.cpp msystem.cpp ntmbs.cpp \
objectpool.cpp refcountobj.cpp serializable.cpp serializer.cpp \ objectpool.cpp refcountobj.cpp serializable.cpp serializer.cpp \
serializerimpl.cpp serializerutil.cpp serstring.cpp \ serializerimpl.cpp serializerutil.cpp serstring.cpp \
srefcountobj.cpp srefcounttbl.cpp stdcore.cpp stringutil.cpp \ srefcountobj.cpp srefcounttbl.cpp stdcore.cpp stringutil.cpp \
timebomb.cpp timeconvert.cpp tw_signal.cpp twlimits.cpp twlocale.cpp \ timebomb.cpp timeconvert.cpp tw_signal.cpp twlimits.cpp twlocale.cpp \
unixexcept.cpp usernotify.cpp usernotifystdout.cpp utf8.cpp \ unixexcept.cpp usernotify.cpp usernotifystdout.cpp utf8.cpp \
wchar16.cpp wchar16.cpp
libcore_a_HEADERS = archive.h charutil.h cmdlineparser.h codeconvert.h \
core.h coreerrors.h corestrings.h crc32.h debug.h displayencoder.h \
displayutil.h error.h errorbucket.h errorbucketimpl.h errorgeneral.h \
errortable.h errorutil.h file.h fileerror.h fileheader.h fixedfilebuf.h \
fsservices.h growheap.h hashtable.h haval.h md5.h msystem.h ntdbs.h \
ntmbs.h objectpool.h package.h platform.h refcountobj.h resources.h \
serializable.h serializer.h serializerimpl.h serializerutil.h serstring.h \
sha.h srefcountobj.h srefcounttbl.h stdcore.h stringutil.h tasktimer.h \
tchar.h timebomb.h timeconvert.h tw_signal.h twlimits.h twlocale.h \
twstringslang.h typed.h types.h unixexcept.h unixfsservices.h upperbound.h \
usernotify.h usernotifystdout.h utf8.h wchar16.h
libcore_a_LIBADD = @CORE_CRYPT_O@ libcore_a_LIBADD = @CORE_CRYPT_O@
libcore_a_DEPENDENCIES = @CORE_CRYPT_O@ libcore_a_DEPENDENCIES = @CORE_CRYPT_O@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libcore_a_OBJECTS) $(libcore_a_LIBADD) $(AR) ru ../../lib/libtripwire.a $(libcore_a_OBJECTS) $(libcore_a_LIBADD)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,17 +14,68 @@
@SET_MAKE@ @SET_MAKE@
SOURCES = $(libcore_a_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -36,20 +87,27 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = src/core subdir = src/core
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(libcore_a_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LIBRARIES = $(noinst_LIBRARIES) LIBRARIES = $(noinst_LIBRARIES)
AR = ar
ARFLAGS = cru ARFLAGS = cru
AM_V_AR = $(am__v_AR_@AM_V@)
am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
am__v_AR_0 = @echo " AR " $@;
am__v_AR_1 =
libcore_a_AR = $(AR) $(ARFLAGS) libcore_a_AR = $(AR) $(ARFLAGS)
am_libcore_a_OBJECTS = file_unix.$(OBJEXT) unixfsservices.$(OBJEXT) \ am_libcore_a_OBJECTS = file_unix.$(OBJEXT) unixfsservices.$(OBJEXT) \
archive.$(OBJEXT) charutil.$(OBJEXT) cmdlineparser.$(OBJEXT) \ archive.$(OBJEXT) charutil.$(OBJEXT) cmdlineparser.$(OBJEXT) \
@ -70,23 +128,95 @@ am_libcore_a_OBJECTS = file_unix.$(OBJEXT) unixfsservices.$(OBJEXT) \
usernotify.$(OBJEXT) usernotifystdout.$(OBJEXT) utf8.$(OBJEXT) \ usernotify.$(OBJEXT) usernotifystdout.$(OBJEXT) utf8.$(OBJEXT) \
wchar16.$(OBJEXT) wchar16.$(OBJEXT)
libcore_a_OBJECTS = $(am_libcore_a_OBJECTS) libcore_a_OBJECTS = $(am_libcore_a_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
CXXLD = $(CXX) CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
-o $@ -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
SOURCES = $(libcore_a_SOURCES) SOURCES = $(libcore_a_SOURCES)
DIST_SOURCES = $(libcore_a_SOURCES) DIST_SOURCES = $(libcore_a_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(libcore_adir)"
HEADERS = $(libcore_a_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -102,7 +232,7 @@ CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
@ -110,6 +240,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -121,6 +252,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -137,21 +269,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -181,15 +316,20 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libcore.a noinst_LIBRARIES = libcore.a
libcore_adir = .
libcore_a_SOURCES = \ libcore_a_SOURCES = \
file_unix.cpp unixfsservices.cpp \ file_unix.cpp unixfsservices.cpp \
archive.cpp charutil.cpp \ archive.cpp charutil.cpp \
@ -199,12 +339,24 @@ libcore_a_SOURCES = \
errorutil.cpp fileerror.cpp fileheader.cpp fsservices.cpp \ errorutil.cpp fileerror.cpp fileheader.cpp fsservices.cpp \
growheap.cpp hashtable.cpp haval.cpp msystem.cpp ntmbs.cpp \ growheap.cpp hashtable.cpp haval.cpp msystem.cpp ntmbs.cpp \
objectpool.cpp refcountobj.cpp serializable.cpp serializer.cpp \ objectpool.cpp refcountobj.cpp serializable.cpp serializer.cpp \
serializerimpl.cpp serializerutil.cpp serstring.cpp \ serializerimpl.cpp serializerutil.cpp serstring.cpp \
srefcountobj.cpp srefcounttbl.cpp stdcore.cpp stringutil.cpp \ srefcountobj.cpp srefcounttbl.cpp stdcore.cpp stringutil.cpp \
timebomb.cpp timeconvert.cpp tw_signal.cpp twlimits.cpp twlocale.cpp \ timebomb.cpp timeconvert.cpp tw_signal.cpp twlimits.cpp twlocale.cpp \
unixexcept.cpp usernotify.cpp usernotifystdout.cpp utf8.cpp \ unixexcept.cpp usernotify.cpp usernotifystdout.cpp utf8.cpp \
wchar16.cpp wchar16.cpp
libcore_a_HEADERS = archive.h charutil.h cmdlineparser.h codeconvert.h \
core.h coreerrors.h corestrings.h crc32.h debug.h displayencoder.h \
displayutil.h error.h errorbucket.h errorbucketimpl.h errorgeneral.h \
errortable.h errorutil.h file.h fileerror.h fileheader.h fixedfilebuf.h \
fsservices.h growheap.h hashtable.h haval.h md5.h msystem.h ntdbs.h \
ntmbs.h objectpool.h package.h platform.h refcountobj.h resources.h \
serializable.h serializer.h serializerimpl.h serializerutil.h serstring.h \
sha.h srefcountobj.h srefcounttbl.h stdcore.h stringutil.h tasktimer.h \
tchar.h timebomb.h timeconvert.h tw_signal.h twlimits.h twlocale.h \
twstringslang.h typed.h types.h unixexcept.h unixfsservices.h upperbound.h \
usernotify.h usernotifystdout.h utf8.h wchar16.h
libcore_a_LIBADD = @CORE_CRYPT_O@ libcore_a_LIBADD = @CORE_CRYPT_O@
libcore_a_DEPENDENCIES = @CORE_CRYPT_O@ libcore_a_DEPENDENCIES = @CORE_CRYPT_O@
all: all-am all: all-am
@ -215,15 +367,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/core/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/core/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/core/Makefile $(AUTOMAKE) --foreign src/core/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -240,13 +391,15 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-noinstLIBRARIES: clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
libcore.a: $(libcore_a_OBJECTS) $(libcore_a_DEPENDENCIES)
-rm -f libcore.a libcore.a: $(libcore_a_OBJECTS) $(libcore_a_DEPENDENCIES) $(EXTRA_libcore_a_DEPENDENCIES)
$(libcore_a_AR) libcore.a $(libcore_a_OBJECTS) $(libcore_a_LIBADD) $(AM_V_at)-rm -f libcore.a
$(RANLIB) libcore.a $(AM_V_AR)$(libcore_a_AR) libcore.a $(libcore_a_OBJECTS) $(libcore_a_LIBADD)
$(AM_V_at)$(RANLIB) libcore.a
mostlyclean-compile: mostlyclean-compile:
-rm -f *.$(OBJEXT) -rm -f *.$(OBJEXT)
@ -255,91 +408,121 @@ distclean-compile:
-rm -f *.tab.c -rm -f *.tab.c
.cpp.o: .cpp.o:
$(CXXCOMPILE) -c -o $@ $< $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ $<
.cpp.obj: .cpp.obj:
$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
uninstall-info-am: install-libcore_aHEADERS: $(libcore_a_HEADERS)
@$(NORMAL_INSTALL)
@list='$(libcore_a_HEADERS)'; test -n "$(libcore_adir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(libcore_adir)'"; \
$(MKDIR_P) "$(DESTDIR)$(libcore_adir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libcore_adir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(libcore_adir)" || exit $$?; \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) uninstall-libcore_aHEADERS:
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @$(NORMAL_UNINSTALL)
unique=`for i in $$list; do \ @list='$(libcore_a_HEADERS)'; test -n "$(libcore_adir)" || list=; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
done | \ dir='$(DESTDIR)$(libcore_adir)'; $(am__uninstall_files_from_dir)
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ID: $(am__tagged_files)
$(TAGS_FILES) $(LISP) $(am__define_uniq_tagged_files); mkid -fID $$unique
tags=; \ tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \ here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-am
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile $(LIBRARIES) all-am: Makefile $(LIBRARIES) $(HEADERS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(libcore_adir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
install-data: install-data-am install-data: install-data-am
@ -350,16 +533,22 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -379,18 +568,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am: install-libcore_aHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -409,22 +618,30 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am: uninstall-libcore_aHEADERS
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ .MAKE: install-am install-strip
clean-noinstLIBRARIES ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \ .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
html-am info info-am install install-am install-data \ clean-noinstLIBRARIES cscopelist-am ctags ctags-am distclean \
install-data-am install-exec install-exec-am install-info \ distclean-compile distclean-generic distclean-tags distdir dvi \
install-info-am install-man install-strip installcheck \ dvi-am html html-am info info-am install install-am \
installcheck-am installdirs maintainer-clean \ install-data install-data-am install-dvi install-dvi-am \
maintainer-clean-generic mostlyclean mostlyclean-compile \ install-exec install-exec-am install-html install-html-am \
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ install-info install-info-am install-libcore_aHEADERS \
uninstall-am uninstall-info-am install-man install-pdf install-pdf-am install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am \
uninstall-libcore_aHEADERS
.PRECIOUS: Makefile
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libcore_a_OBJECTS) $(libcore_a_LIBADD) $(AR) ru ../../lib/libtripwire.a $(libcore_a_OBJECTS) $(libcore_a_LIBADD)
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -51,15 +51,6 @@
#include "corestrings.h" // for: STR_ERR2_ARCH_CRYPTO_ERR #include "corestrings.h" // for: STR_ERR2_ARCH_CRYPTO_ERR
#if FSEEK_TAKES_INT32
#define FSEEK(x, y, z) fseek((x), (int32)(y), (z))
#else
#define FSEEK(x, y, z) fseek((x), (y), (z))
#endif
//============================================================================= //=============================================================================
// Utility Functions // Utility Functions
//============================================================================= //=============================================================================
@ -678,8 +669,10 @@ void cFileArchive::OpenRead(const TCHAR* filename, uint32 openFlags)
uint32 flags = cFile::OPEN_READ; uint32 flags = cFile::OPEN_READ;
flags |= ( ( openFlags & FA_OPEN_TRUNCATE ) ? cFile::OPEN_TRUNCATE : 0 ); flags |= ( ( openFlags & FA_OPEN_TRUNCATE ) ? cFile::OPEN_TRUNCATE : 0 );
flags |= ( ( openFlags & FA_OPEN_TEXT ) ? cFile::OPEN_TEXT : 0 ); flags |= ( ( openFlags & FA_OPEN_TEXT ) ? cFile::OPEN_TEXT : 0 );
flags |= ( ( openFlags & FA_NONBLOCKING ) ? cFile::OPEN_NONBLOCKING :0 ); flags |= ( ( openFlags & FA_SCANNING ) ? cFile::OPEN_SCANNING : 0 );
flags |= ( ( openFlags & FA_DIRECT ) ? cFile::OPEN_DIRECT : 0 );
mOpenFlags = openFlags;
mCurrentFilename = filename; mCurrentFilename = filename;
mCurrentFile.Open( filename, flags ); mCurrentFile.Open( filename, flags );
isWritable = false; isWritable = false;
@ -704,8 +697,10 @@ void cFileArchive::OpenReadWrite(const TCHAR* filename, uint32 openFlags)
uint32 flags = cFile::OPEN_WRITE; uint32 flags = cFile::OPEN_WRITE;
flags |= ( ( openFlags & FA_OPEN_TRUNCATE ) ? cFile::OPEN_TRUNCATE : 0 ); flags |= ( ( openFlags & FA_OPEN_TRUNCATE ) ? cFile::OPEN_TRUNCATE : 0 );
flags |= ( ( openFlags & FA_OPEN_TEXT ) ? cFile::OPEN_TEXT : 0 ); flags |= ( ( openFlags & FA_OPEN_TEXT ) ? cFile::OPEN_TEXT : 0 );
flags |= ( ( openFlags & FA_NONBLOCKING ) ? cFile::OPEN_NONBLOCKING :0 ); flags |= ( ( openFlags & FA_SCANNING ) ? cFile::OPEN_SCANNING : 0 );
flags |= ( ( openFlags & FA_DIRECT ) ? cFile::OPEN_DIRECT : 0 );
mOpenFlags = openFlags;
mCurrentFilename = filename; mCurrentFilename = filename;
mCurrentFile.Open( filename, flags ); mCurrentFile.Open( filename, flags );
isWritable = true; isWritable = true;
@ -753,9 +748,10 @@ void cFileArchive::Close()
///////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////
int cFileArchive::Read(void* pDest, int count) int cFileArchive::Read(void* pDest, int count)
{ {
try try
{ {
if ( mReadHead + count > mFileSize ) if ( mReadHead + count > mFileSize && !(mOpenFlags & FA_DIRECT))
count = static_cast<int>( mFileSize - mReadHead ); count = static_cast<int>( mFileSize - mReadHead );
if ( pDest != NULL ) if ( pDest != NULL )

View File

@ -260,7 +260,8 @@ public:
{ {
FA_OPEN_TEXT = 0x1, FA_OPEN_TEXT = 0x1,
FA_OPEN_TRUNCATE = 0x2, FA_OPEN_TRUNCATE = 0x2,
FA_NONBLOCKING = 0x4 FA_SCANNING = 0x4,
FA_DIRECT = 0x8
}; };
// TODO: Open should throw // TODO: Open should throw
@ -292,6 +293,7 @@ protected:
bool isWritable; bool isWritable;
cFile mCurrentFile; cFile mCurrentFile;
TSTRING mCurrentFilename; //current file TSTRING mCurrentFilename; //current file
uint32 mOpenFlags;
}; };
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////

View File

@ -41,27 +41,12 @@
#include "charutil.h" #include "charutil.h"
#include "ntmbs.h" #include "ntmbs.h"
/* NOW WE USE tss::strinc #if IS_ANDROID
// like mblen but also for wchar_t int mblen(const char *s, size_t n)
int util_tlen( const TCHAR* cur, size_t count ) {
{ return mbtowc(0, s, n);
int nch = -2; // 'unused' value
ASSERT( count >= 0 );
#ifdef _UNICODE
if( count > 0 )
nch = 1; // next char is always one TCHAR long
else
nch = 0; // no more chars
#else
nch = ::mblen( cur, count ); // here sizeof(TCHAR) == 1
#endif
ASSERT( nch != -2 ); // make sure nch was set
return nch;
} }
*/ #endif
// //
// finds the next whole character in string identified by ['cur'-'end') // finds the next whole character in string identified by ['cur'-'end')
@ -105,51 +90,29 @@ bool cCharUtil::PeekNextChar( const TSTRING::const_iterator& cur,
} }
first = cur; first = cur;
// last = tss::strinc( cur );
last = *cur ? cur + 1 : cur; if (!(*cur))
{
last = cur;
}
else
{
#if !IS_AROS
mblen (NULL, 0);
int len = mblen(&*cur, MB_CUR_MAX);
if (len < 0) //invalid multibyte sequence, but let's not blow up.
len = 1;
last = cur + len;
#else // AROS mblen() seems broken (as of 6/2016) so don't use it.
last = cur + 1;
#endif
}
return true; return true;
} }
/* OLD way of doing this...
NOW WE USE tss::strinc
int cCharUtil::PeekNextChar( const TSTRING::const_iterator& cur,
const TSTRING::const_iterator& end,
TSTRING::const_iterator& first,
TSTRING::const_iterator& last,
bool fThrowOnError )
{
//
// do we have a valid string here?
//
if( cur > end )
return -1;
//
// determine length of character in TCHARs
//
int charSizeInTCHARs = util_tlen( cur, (size_t)end - (size_t)cur );
if( charSizeInTCHARs == -1 ) // TODO:BAM -- what if size is zero? does that make sense?
{
if( fThrowOnError )
throw eCharUtilUnrecognizedChar();
else
return -1;
}
//
// denote beginning and end of character
//
first = cur; // first char always starts at 'cur'
last = first + charSizeInTCHARs;
//
// there exist more characters
//
return charSizeInTCHARs;
}
*/
//============================================================================= //=============================================================================
// //
// /* static */ // /* static */

76
src/core/codeconvert.cpp Normal file → Executable file
View File

@ -1,4 +1,4 @@
//
// The developer of the original code and/or files is Tripwire, Inc. // The developer of the original code and/or files is Tripwire, Inc.
// Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire, // Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire,
// Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights // Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights
@ -57,20 +57,15 @@
// DEFINES // DEFINES
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
/*
* ICONV conversion seems to be broken under Linux, so until
* this is fixed, we'll wing it ourselves - 20010310 PH
*/
#if 0
#define TSS_USE_ICONV_CCONV16 HAVE_ICONV_H #define TSS_USE_ICONV_CCONV16 HAVE_ICONV_H
#define TSS_USE_UCS2_CCONV16 (!(HAVE_ICONV_H) && WCHAR_REP_IS_UCS2 && WCHAR_IS_16_BITS) #define TSS_USE_UCS2_CCONV16 (!(HAVE_ICONV_H) && WCHAR_REP_IS_UCS2 && WCHAR_IS_16_BITS)
#define TSS_USE_UCS2_CCONV32 (!(HAVE_ICONV_H) && WCHAR_REP_IS_UCS2 && WCHAR_IS_32_BITS) #define TSS_USE_UCS2_CCONV32 (!(HAVE_ICONV_H) && WCHAR_REP_IS_UCS2 && WCHAR_IS_32_BITS)
#else
#define TSS_USE_UCS2_CCONV16 (WCHAR_REP_IS_UCS2 && WCHAR_IS_16_BITS)
#define TSS_USE_UCS2_CCONV32 (WCHAR_REP_IS_UCS2 && WCHAR_IS_32_BITS)
#endif
#define ICONV_SOURCE_TYPE const char #if ICONV_CONST_SOURCE
# define ICONV_SOURCE_TYPE const char
#else
# define ICONV_SOURCE_TYPE char
#endif
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// Static Data // Static Data
@ -245,7 +240,6 @@ namespace /*Unique*/
eConverterUnknownCodepage( eConverterUnknownCodepage(
TSS_GetString( cCore, core::STR_UNKNOWN ) ); TSS_GetString( cCore, core::STR_UNKNOWN ) );
break; break;
default: default:
throw throw
eConverterFatal( eConverterFatal(
@ -677,31 +671,44 @@ namespace /*Unique*/
BufferT* pBuf = pBuffer; BufferT* pBuf = pBuffer;
const SourceT* pSrc = pSource; const SourceT* pSrc = pSource;
//--Start Iterative Conversion
while ( nSourceLeft > 0 ) while ( nSourceLeft > 0 )
{ {
// Convert as much of the sequence as we can. // Convert as much of the sequence as we can.
SourceT* pIconvSrc = (SourceT*)pSrc;
BufferT* pIconvDest = (BufferT*)pBuf;
size_t nbIconvSrc = (size_t)nSourceLeft;
size_t nbIconvDest = (size_t)nBufferLeft;
// NOTE: On solaris sparc, iconv will attempt to NULL terminate the output, size_t nConv = iconv( convForward, (ICONV_SOURCE_TYPE**)&pIconvSrc, &nbIconvSrc, (char**)&pIconvDest, &nbIconvDest );
// so make sure that the buffer has space for a terminating NULL
size_t nConv = // NOTE: if( nConv == -1 )
{
// NOTE: On solaris sparc, iconv will attempt to NULL terminate the output,
// so make sure that the buffer has space for a terminating NULL
size_t nConv = // NOTE:
#if SUPPORTS_EXPLICIT_TEMPLATE_FUNC_INST #if SUPPORTS_EXPLICIT_TEMPLATE_FUNC_INST
tss_ConvertOneCharacter<BufferT, SourceT>( tss_ConvertOneCharacter<BufferT, SourceT>(
#else #else
tss_ConvertOneCharacter( tss_ConvertOneCharacter(
#endif #endif
convForward, convForward,
convReverse, // On return, these addresses convReverse, // On return, these addresses
(const char**)&pSrc, // are set for one past the last (const char**)&pSrc, // are set for one past the last
&nSourceLeft, // "item" converted successfully &nSourceLeft, // "item" converted successfully
(char**)&pBuf, (char**)&pBuf,
&nBufferLeft &nBufferLeft
#if ( ! SUPPORTS_EXPLICIT_TEMPLATE_FUNC_INST ) #if ( ! SUPPORTS_EXPLICIT_TEMPLATE_FUNC_INST )
, BufferT(), SourceT() , BufferT(), SourceT()
#endif #endif
); );
}
else
{
pSrc = pIconvSrc;
pBuf = pIconvDest;
nSourceLeft = nbIconvSrc;
nBufferLeft = nbIconvDest;
}
if ( nConv == (size_t)-1 ) // Indidates Conversion Error! if ( nConv == (size_t)-1 ) // Indidates Conversion Error!
{ {
@ -1131,7 +1138,7 @@ const char* cIconvUtil::GetCodePageID()
const char* pCurCodePage; const char* pCurCodePage;
if( ! GetCodePageID( &pCurCodePage ) ) if( ! GetCodePageID( &pCurCodePage ) )
throw eConverterUnknownCodepage(); return NULL;
return pCurCodePage; return pCurCodePage;
} }
@ -1139,9 +1146,11 @@ const char* cIconvUtil::GetCodePageID()
/* static */ /* static */
const char* cIconvUtil::GetIconvDbIdentifier() const char* cIconvUtil::GetIconvDbIdentifier()
{ {
ASSERT( false ); #ifdef WORDS_BIGENDIAN
throw eConverterUnknownCodepage(); return "UTF-16BE";
return NULL; #else
return "UTF-16LE";
#endif
} }
/* static */ /* static */
@ -1177,6 +1186,9 @@ void cIconvUtil::CloseHandle( iconv_t ic )
/* static */ /* static */
bool cIconvUtil::TestConverter( const char* pTo, const char* pFrom ) bool cIconvUtil::TestConverter( const char* pTo, const char* pFrom )
{ {
if (!pTo || !pFrom)
return false;
cDebug d( "cIconvUtil::TestConverter()" ); cDebug d( "cIconvUtil::TestConverter()" );
iconv_t i = iconv_open( pTo, pFrom ); iconv_t i = iconv_open( pTo, pFrom );

View File

@ -89,17 +89,6 @@ void cDebug::Trace(int levelNum, const char* format, ...)
} }
void cDebug::Trace(int levelNum, const wchar_t* format, ...)
{
if (levelNum > mDebugLevel)
return;
// create the output buffer
va_list args;
va_start(args, format);
DoTrace(format, args);
va_end(args);
}
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// DoTrace() // DoTrace()
@ -146,56 +135,6 @@ void cDebug::DoTrace(const char *format, va_list &args)
logfile.flush(); logfile.flush();
} }
} }
void cDebug::DoTrace(const wchar_t *format, va_list &args)
{
#if IS_UNIX
// we don't support vswprintf on UNIX
ASSERT(false);
THROW_INTERNAL("debug.cpp");
#else
size_t guard1 = 0xBABABABA;
wchar_t out[2048];
size_t guard2 = 0xBABABABA;
vswprintf(out, format, args);
ASSERT(guard1 == 0xBABABABA && guard2 == 0xBABABABA); // string was too long
char nout[1024];
if (wcstombs(nout, out, 1024) == -1)
strcpy(nout, "XXX Unconvertable wide char detected in cDebug::DoTrace()\n");
std::ostringstream ostr;
ostr.setf(std::ios::left);
ostr.width(40);
ostr << mLabel;
ostr.width(0);
ostr << nout;
if ((mOutMask & OUT_STDOUT) != 0)
{
std::cout << ostr.str().c_str();
std::cout.flush();
}
//
//make it output to log file!
//
if ((mOutMask & OUT_FILE) != 0)
{
// the logfile is narrow chars only...
logfile.setf(std::ios::left);
logfile.width(40);
logfile << mLabel;
logfile.width(0);
logfile << out;
logfile.flush();
}
#endif // IS_UNIX
}
#ifdef DEBUG #ifdef DEBUG
// //
@ -275,90 +214,11 @@ void cDebug::TraceNever(const char *format, ...)
va_end(args); va_end(args);
} }
void cDebug::TraceAlways(const wchar_t *format, ...)
{
if (D_ALWAYS > mDebugLevel)
return;
// fill up arglist, and pass to printing routine
va_list args;
va_start(args, format);
DoTrace(format, args);
va_end(args);
}
void cDebug::TraceError(const wchar_t *format, ...)
{
if (D_ERROR > mDebugLevel)
return;
// fill up arglist, and pass to printing routine
va_list args;
va_start(args, format);
DoTrace(format, args);
va_end(args);
}
void cDebug::TraceWarning(const wchar_t *format, ...)
{
if (D_WARNING > mDebugLevel)
return;
// fill up arglist, and pass to printing routine
va_list args;
va_start(args, format);
DoTrace(format, args);
va_end(args);
}
void cDebug::TraceDebug(const wchar_t *format, ...)
{
if (D_DEBUG > mDebugLevel)
return;
// fill up arglist, and pass to printing routine
va_list args;
va_start(args, format);
DoTrace(format, args);
va_end(args);
}
void cDebug::TraceDetail(const wchar_t *format, ...)
{
if (D_DETAIL > mDebugLevel)
return;
// fill up arglist, and pass to printing routine
va_list args;
va_start(args, format);
DoTrace(format, args);
va_end(args);
}
void cDebug::TraceNever(const wchar_t *format, ...)
{
if (D_NEVER > mDebugLevel)
return;
// fill up arglist, and pass to printing routine
va_list args;
va_start(args, format);
DoTrace(format, args);
va_end(args);
}
void cDebug::TraceVaArgs( int iDebugLevel, const char *format, va_list &args ) void cDebug::TraceVaArgs( int iDebugLevel, const char *format, va_list &args )
{ {
if ( iDebugLevel <= mDebugLevel ) if ( iDebugLevel <= mDebugLevel )
DoTrace( format, args); DoTrace( format, args);
} }
void cDebug::TraceVaArgs( int iDebugLevel, const wchar_t *format, va_list &args )
{
if ( iDebugLevel <= mDebugLevel )
DoTrace( format, args );
}
#endif // DEBUG #endif // DEBUG
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
@ -447,79 +307,12 @@ void cDebug::DebugOut( const char* lpOutputString, ... )
vsprintf(buf, lpOutputString, args); vsprintf(buf, lpOutputString, args);
va_end(args); va_end(args);
#ifdef _UNICODE #ifdef _DEBUG
wchar_t wbuf[2048]; TCERR << buf;
if (mbstowcs(wbuf, buf, strlen(buf)+1) == -1) #endif //_DEBUG
wcscpy(wbuf, _T("XXX Unconvertable mb character detected in cDebug::DebugOut()\n") );
#if !USE_OUTPUT_DEBUG_STRING
#ifdef _DEBUG
TCERR << wbuf;
#endif //_DEBUG
#else // USE_OUTPUT_DEBUG_STRING
::OutputDebugString(wbuf);
#endif // USE_OUTPUT_DEBUG_STRING
#else // _UNICODE
#if !USE_OUTPUT_DEBUG_STRING
#ifdef _DEBUG
TCERR << buf;
#endif //_DEBUG
#else // USE_OUTPUT_DEBUG_STRING
::OutputDebugString(buf);
#endif // USE_OUTPUT_DEBUG_STRING
#endif // _UNICODE
TCOUT.flush(); TCOUT.flush();
} }
void cDebug::DebugOut( const wchar_t* lpOutputString, ... )
{
va_list args;
va_start(args, lpOutputString);
#if IS_UNIX
char mbformatbuf[1024];
char buf[1024];
// if (wcstombs(mbformatbuf, lpOutputString, wcslen(lpOutputString)) == -1)
// strcpy(mbformatbuf, "XXX Unconvertable wide char detected in cDebug::DebugOut()\n");
vsprintf(buf, mbformatbuf, args);
#else
wchar_t buf[1024];
vswprintf(buf, lpOutputString, args);
#endif
va_end(args);
#ifdef _UNICODE
#if !USE_OUTPUT_DEBUG_STRING
#ifdef _DEBUG
TCERR << buf;
#endif //_DEBUG
#else // USE_OUTPUT_DEBUG_STRING
::OutputDebugString(buf);
#endif // USE_OUTPUT_DEBUG_STRING
#else
char nbuf[1024];
#if IS_UNIX
strcpy(nbuf, buf);
#else
if (wcstombs(nbuf, buf, wcslen(buf)+1) == -1)
strcpy(nbuf, "XXX Unconvertable wide char detected in cDebug::DebugOut()\n");
#endif
#if !USE_OUTPUT_DEBUG_STRING
#ifdef _DEBUG
TCERR << nbuf;
#endif //_DEBUG
#else // USE_OUTPUT_DEBUG_STRING
::OutputDebugString(nbuf);
#endif // USE_OUTPUT_DEBUG_STRING
#endif
TCOUT.flush();
}
#endif // DEBUG #endif // DEBUG
////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////

View File

@ -113,22 +113,15 @@ public:
void TraceDebug (const char *format, ...); void TraceDebug (const char *format, ...);
void TraceDetail (const char *format, ...); void TraceDetail (const char *format, ...);
void TraceNever (const char *format, ...); void TraceNever (const char *format, ...);
void TraceAlways (const wchar_t *format, ...);
void TraceError (const wchar_t *format, ...);
void TraceWarning (const wchar_t *format, ...);
void TraceDebug (const wchar_t *format, ...);
void TraceDetail (const wchar_t *format, ...);
void TraceNever (const wchar_t *format, ...);
// these are of use if you are inside a function with a "..." as an argument // these are of use if you are inside a function with a "..." as an argument
// and you want to trace those args // and you want to trace those args
void TraceVaArgs (int iDebugLevel, const char *format, va_list &args); void TraceVaArgs (int iDebugLevel, const char *format, va_list &args);
void TraceVaArgs (int iDebugLevel, const wchar_t *format, va_list &args);
// ...but you can still choose to use this interface... // ...but you can still choose to use this interface...
void Trace(int levelNum, const char* format, ...); void Trace(int levelNum, const char* format, ...);
void Trace(int levelNum, const wchar_t* format, ...);
// Outputs based on levelnum. If levelnum <= global debug, print. // Outputs based on levelnum. If levelnum <= global debug, print.
public: public:
@ -146,7 +139,6 @@ public:
// level will be output. // level will be output.
static void DebugOut ( const char* lpOutputString, ... ); static void DebugOut ( const char* lpOutputString, ... );
static void DebugOut ( const wchar_t* lpOutputString, ... );
// Works just like TRACE // Works just like TRACE
// note: there is an internal buffer size of 1024; traces larger // note: there is an internal buffer size of 1024; traces larger
// than that will have unpredictable and probably bad results // than that will have unpredictable and probably bad results
@ -161,7 +153,6 @@ private:
// helper functions // helper functions
void DoTrace(const char *format, va_list &args); void DoTrace(const char *format, va_list &args);
void DoTrace(const wchar_t *format, va_list &args);
#endif #endif
}; };
@ -199,16 +190,8 @@ inline void cDebug::TraceWarning (const char *, ...) {}
inline void cDebug::TraceDebug (const char *, ...) {} inline void cDebug::TraceDebug (const char *, ...) {}
inline void cDebug::TraceDetail (const char *, ...) {} inline void cDebug::TraceDetail (const char *, ...) {}
inline void cDebug::TraceNever (const char *, ...) {} inline void cDebug::TraceNever (const char *, ...) {}
inline void cDebug::TraceAlways (const wchar_t *, ...) {}
inline void cDebug::TraceError (const wchar_t *, ...) {}
inline void cDebug::TraceWarning (const wchar_t *, ...) {}
inline void cDebug::TraceDebug (const wchar_t *, ...) {}
inline void cDebug::TraceDetail (const wchar_t *, ...) {}
inline void cDebug::TraceNever (const wchar_t *, ...) {}
inline void cDebug::TraceVaArgs (int, const char *, va_list &) {} inline void cDebug::TraceVaArgs (int, const char *, va_list &) {}
inline void cDebug::TraceVaArgs (int, const wchar_t *, va_list &) {}
inline void cDebug::Trace (int, const char*, ...) {} inline void cDebug::Trace (int, const char*, ...) {}
inline void cDebug::Trace (int, const wchar_t*, ...) {}
inline bool cDebug::AddOutTarget (OutTarget) { return false; } inline bool cDebug::AddOutTarget (OutTarget) { return false; }
inline bool cDebug::RemoveOutTarget (OutTarget) { return false; } inline bool cDebug::RemoveOutTarget (OutTarget) { return false; }
inline bool cDebug::HasOutTarget (OutTarget) { return false; } inline bool cDebug::HasOutTarget (OutTarget) { return false; }
@ -216,7 +199,6 @@ inline bool cDebug::SetOutputFile (const char*) { return false; }
inline void cDebug::SetDebugLevel (int) {} inline void cDebug::SetDebugLevel (int) {}
inline int cDebug::GetDebugLevel (void) { return 0; } inline int cDebug::GetDebugLevel (void) { return 0; }
inline void cDebug::DebugOut ( const char*, ... ) {} inline void cDebug::DebugOut ( const char*, ... ) {}
inline void cDebug::DebugOut ( const wchar_t*, ... ) {}
#endif // DEBUG #endif // DEBUG

View File

@ -235,32 +235,7 @@ bool cNonNarrowableCharEncoder::NeedsEncoding(
TSTRING::const_iterator first, TSTRING::const_iterator first,
TSTRING::const_iterator last ) const TSTRING::const_iterator last ) const
{ {
#ifdef _UNICODE
ASSERT( IsSingleTCHAR( first, last ) );
char amb[ MB_LEN_MAX ];
TCHAR awch[] = { *first, 0 };
// TODO:BAM -- this is not really correct! Convert will not honor nSource!!
// it looks for the first null char!
try
{
int ret = iCodeConverter::GetInstance()->Convert( amb, sizeof( amb ), awch, 1 );
return( -1 == ret );
}
catch( eError& )
{
return true;
}
#else
return false; // all chars are narrow return false; // all chars are narrow
#endif
} }

View File

@ -47,7 +47,7 @@
#include "fileerror.h" #include "fileerror.h"
#endif #endif
#ifdef __MINT__ // for off_t #if IS_MINT // for off_t
#include <sys/types.h> #include <sys/types.h>
#endif #endif
@ -98,7 +98,8 @@ public:
OPEN_CREATE = 0x00000010, // create the file if it doesn't exist; this is implicit if OF_TRUNCATE is set OPEN_CREATE = 0x00000010, // create the file if it doesn't exist; this is implicit if OF_TRUNCATE is set
OPEN_TEXT = 0x00000020, OPEN_TEXT = 0x00000020,
OPEN_EXCLUSIVE = 0x00000040, // Use O_CREAT | O_EXCL OPEN_EXCLUSIVE = 0x00000040, // Use O_CREAT | O_EXCL
OPEN_NONBLOCKING = 0x00000080, // Use non-blocking i/o [Unix] OPEN_SCANNING = 0x00000080, // Open for scanning; set nonblocking & caching accordingly, where available
OPEN_DIRECT = 0x00000100 // Use O_DIRECT or platform equivalent
}; };
//Ctor, Dtor, CpyCtor, Operator=: //Ctor, Dtor, CpyCtor, Operator=:
@ -142,8 +143,8 @@ public:
}; };
#ifdef __AROS__ #if USES_DEVICE_PATH
class cArosPath class cDevicePath
{ {
public: public:
static TSTRING AsPosix(const TSTRING& in); static TSTRING AsPosix(const TSTRING& in);

View File

@ -1,4 +1,4 @@
//
// The developer of the original code and/or files is Tripwire, Inc. // The developer of the original code and/or files is Tripwire, Inc.
// Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire, // Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire,
// Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights // Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights
@ -31,6 +31,13 @@
// //
// file_unix.cpp : Specific implementation of file operations for Unix. // file_unix.cpp : Specific implementation of file operations for Unix.
/* On GNU/Hurd, need to define _GNU_SOURCE in order to use O_NOATIME
which technically is still a nonstandard extension to open() */
#if IS_HURD
# define _GNU_SOURCE
#endif
#include "core/stdcore.h" #include "core/stdcore.h"
#if !IS_UNIX #if !IS_UNIX
@ -46,27 +53,15 @@
#include <fcntl.h> #include <fcntl.h>
#include <errno.h> #include <errno.h>
#if HAVE_SYS_FS_VX_IOCTL_H
# include <sys/fs/vx_ioctl.h>
#endif
#include "core/debug.h" #include "core/debug.h"
#include "core/corestrings.h" #include "core/corestrings.h"
#include "core/fsservices.h" #include "core/fsservices.h"
#include "core/errorutil.h" #include "core/errorutil.h"
///////////////////////////////////////////////////////////////////////////////
// util_GetErrnoString -- return the result of strerror(errno) as a tstring
///////////////////////////////////////////////////////////////////////////////
/*static TSTRING util_GetErrnoString()
{
TSTRING ret;
char* pErrorStr = strerror(errno);
#ifdef _UNICODE
#error We dont currently support unicode on unix
#else
ret = pErrorStr;
#endif
return ret;
}*/
///////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// cFile_i : Insulated implementation for cFile objects. // cFile_i : Insulated implementation for cFile objects.
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
@ -76,8 +71,10 @@ struct cFile_i
cFile_i(); cFile_i();
~cFile_i(); ~cFile_i();
int m_fd; //underlying file descriptor
FILE* mpCurrStream; //currently defined file stream FILE* mpCurrStream; //currently defined file stream
TSTRING mFileName; //the name of the file we are currently referencing. TSTRING mFileName; //the name of the file we are currently referencing.
uint32 mFlags; //Flags used to open the file
}; };
//Ctor //Ctor
@ -92,6 +89,17 @@ cFile_i::~cFile_i()
fclose( mpCurrStream ); fclose( mpCurrStream );
mpCurrStream = NULL; mpCurrStream = NULL;
#if IS_AROS
if( mFlags & cFile::OPEN_LOCKED_TEMP )
{
// unlink this file
if( 0 != unlink(mFileName.c_str()))
{
throw( eFileOpen( mFileName, iFSServices::GetInstance()->GetErrString() ) );
}
}
#endif
mFileName.empty(); mFileName.empty();
} }
@ -120,31 +128,33 @@ cFile::~cFile()
// Open // Open
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
#ifndef __AROS #if !USES_DEVICE_PATH
void cFile::Open( const TSTRING& sFileName, uint32 flags ) void cFile::Open( const TSTRING& sFileName, uint32 flags )
{ {
#else #else
void cFile::Open( const TSTRING& sFileNameC, uint32 flags ) void cFile::Open( const TSTRING& sFileNameC, uint32 flags )
{ {
TSTRING sFileName = cArosPath::AsNative(sFileNameC); TSTRING sFileName = cDevicePath::AsNative(sFileNameC);
#endif #endif
mode_t openmode = 0664; mode_t openmode = 0664;
if ( mpData->mpCurrStream != NULL ) if (mpData->mpCurrStream != NULL)
Close(); Close();
mpData->mFlags = flags;
// //
// set up the sopen permissions // set up the open permissions
// //
int perm = 0; int perm = 0;
TSTRING mode; TSTRING mode;
if( flags & OPEN_WRITE ) if (flags & OPEN_WRITE)
{ {
perm |= O_RDWR; perm |= O_RDWR;
isWritable = true; isWritable = true;
mode = _T("rb"); mode = _T("rb");
if( flags & OPEN_TRUNCATE ) if (flags & OPEN_TRUNCATE)
{ {
perm |= O_TRUNC; perm |= O_TRUNC;
perm |= O_CREAT; perm |= O_CREAT;
@ -160,18 +170,31 @@ void cFile::Open( const TSTRING& sFileNameC, uint32 flags )
mode = _T("rb"); mode = _T("rb");
} }
if ( flags & OPEN_EXCLUSIVE ) { if (flags & OPEN_EXCLUSIVE) {
perm |= O_CREAT | O_EXCL; perm |= O_CREAT | O_EXCL;
openmode = (mode_t) 0600; // Make sure only root can read the file openmode = (mode_t) 0600; // Make sure only root can read the file
} }
if ( flags & OPEN_CREATE ) if (flags & OPEN_CREATE)
perm |= O_CREAT; perm |= O_CREAT;
#ifdef O_NONBLOCK #ifdef O_NONBLOCK
if( flags & OPEN_NONBLOCKING ) if (flags & OPEN_SCANNING)
perm |= O_NONBLOCK; perm |= O_NONBLOCK;
#endif #endif
#ifdef O_NOATIME
if (flags & OPEN_SCANNING)
perm |= O_NOATIME;
#endif
#ifdef O_DIRECT
//Only use O_DIRECT for scanning, since cfg/policy/report reads
// don't happen w/ a nice round block size.
if ((flags & OPEN_DIRECT) && (flags & OPEN_SCANNING))
perm |= O_DIRECT;
#endif
// //
// actually open the file // actually open the file
// //
@ -180,8 +203,9 @@ void cFile::Open( const TSTRING& sFileNameC, uint32 flags )
{ {
throw( eFileOpen( sFileName, iFSServices::GetInstance()->GetErrString() ) ); throw( eFileOpen( sFileName, iFSServices::GetInstance()->GetErrString() ) );
} }
mpData->m_fd = fh;
#ifndef __AROS__ #if !IS_AROS
if( flags & OPEN_LOCKED_TEMP ) if( flags & OPEN_LOCKED_TEMP )
{ {
// unlink this file // unlink this file
@ -202,6 +226,34 @@ void cFile::Open( const TSTRING& sFileNameC, uint32 flags )
mpData->mFileName = sFileName; //Set mFileName to the newly opened file. mpData->mFileName = sFileName; //Set mFileName to the newly opened file.
cFile::Rewind(); cFile::Rewind();
#ifdef F_NOCACHE //OSX
if ((flags & OPEN_DIRECT) && (flags & OPEN_SCANNING))
fcntl(fh, F_NOCACHE, 1);
#endif
#if IS_SOLARIS
if ((flags & OPEN_DIRECT) && (flags & OPEN_SCANNING))
directio(fh, DIRECTIO_ON);
#endif
#if HAVE_POSIX_FADVISE
if (flags & OPEN_SCANNING && !(flags & OPEN_DIRECT))
{
posix_fadvise(fh,0,0, POSIX_FADV_SEQUENTIAL);
posix_fadvise(fh,0,0, POSIX_FADV_NOREUSE);
}
#elif HAVE_SYS_FS_VX_IOCTL_H
if (flags & OPEN_SCANNING)
{
if (flags & OPEN_DIRECT)
ioctl(fh, VX_SETCACHE, VX_DIRECT);
else
ioctl(fh, VX_SETCACHE, VX_SEQ | VX_NOREUSE);
}
#endif
} }
@ -212,9 +264,15 @@ void cFile::Close() //throw(eFile)
{ {
if(mpData->mpCurrStream != NULL) if(mpData->mpCurrStream != NULL)
{ {
#ifdef HAVE_POSIX_FADVISE
posix_fadvise(fileno(mpData->mpCurrStream),0,0, POSIX_FADV_DONTNEED);
#endif
fclose( mpData->mpCurrStream ); fclose( mpData->mpCurrStream );
mpData->mpCurrStream = NULL; mpData->mpCurrStream = NULL;
} }
mpData->mFileName.empty(); mpData->mFileName.empty();
} }
@ -289,12 +347,19 @@ cFile::File_t cFile::Read( void* buffer, File_t nBytes ) const //throw(eFile)
if( nBytes == 0 ) if( nBytes == 0 )
return 0; return 0;
iBytesRead = fread( buffer, sizeof(byte), nBytes, mpData->mpCurrStream ); if (mpData->mFlags & OPEN_DIRECT) {
iBytesRead = read(mpData->m_fd, buffer, nBytes);
if( ferror( mpData->mpCurrStream ) != 0 ) if (iBytesRead<0) {
throw eFileRead( mpData->mFileName, iFSServices::GetInstance()->GetErrString() ) ; throw eFileRead(mpData->mFileName, iFSServices::GetInstance()->GetErrString());
else }
return iBytesRead; } else {
iBytesRead = fread( buffer, sizeof(byte), nBytes, mpData->mpCurrStream );
if( ferror( mpData->mpCurrStream ) != 0 ) {
throw eFileRead( mpData->mFileName, iFSServices::GetInstance()->GetErrString() ) ;
}
}
return iBytesRead;
} }
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
@ -384,30 +449,51 @@ void cFile::Truncate( File_t offset ) // throw(eFile)
} }
#ifdef __AROS__ #if USES_DEVICE_PATH
TSTRING cArosPath::AsPosix( const TSTRING& in ) // For paths of type DH0:/dir/file
TSTRING cDevicePath::AsPosix( const TSTRING& in )
{ {
if (in[0] == '/') if (in[0] == '/')
return in; return in;
#if IS_DOS_DJGPP
TSTRING out = "/dev/" + in;
std::replace(out.begin(), out.end(), '\\', '/');
#else
TSTRING out = '/' + in; TSTRING out = '/' + in;
#endif
std::replace(out.begin(), out.end(), ':', '/'); std::replace(out.begin(), out.end(), ':', '/');
return out; return out;
} }
TSTRING cArosPath::AsNative( const TSTRING& in ) TSTRING cDevicePath::AsNative( const TSTRING& in )
{ {
if (in[0] != '/') if (in[0] != '/')
return in; return in;
int x; #if IS_DOS_DJGPP
for (x=1; in[x] == '/' && x<in.length(); x++); if (in.find("/dev") != 0 || in.length() < 6)
return in;
TSTRING out = "?:/";
out[0] = in[5];
if (in.length() >= 8)
out.append(in.substr(7));
return out;
#elif IS_AROS
int x = 1;
for ( x; in[x] == '/' && x<in.length(); x++);
TSTRING out = in.substr(x); TSTRING out = in.substr(x);
TSTRING::size_type t = out.find_first_of('/'); TSTRING::size_type t = out.find_first_of('/');
out[t] = ':'; out[t] = ':';
return out; return out;
#endif
} }
#endif #endif

View File

@ -61,30 +61,6 @@ void cFileHeaderID::operator=( const TCHAR* pszId )
// mIDLen = 0; // mIDLen = 0;
// return; // return;
//} //}
#ifdef _UNICODE
size_t N = (::wcslen( pszId ) * MB_CUR_MAX); // Try the easy way!
if ( !(N < cFileHeaderID::MAXBYTES) )
{
N = ::wcstombs( 0, pszId, (size_t)-1 ); // Try again!
if ( N == (size_t)-1 )
{
throw
eCharacterEncoding(
TSS_GetString( cCore, core::STR_ERR_BADCHAR ) );
}
else if ( !(N < cFileHeaderID::MAXBYTES) )
{
throw
eCharacter(
TSS_GetString( cCore, core::STR_ERR_OVERFLOW ) );
}
}
mIDLen = (int16)(::wcstombs( mID, pszId, N )); // Do it
#else
size_t N = ::strlen( pszId ); size_t N = ::strlen( pszId );
if ( !(N < cFileHeaderID::MAXBYTES) ) if ( !(N < cFileHeaderID::MAXBYTES) )
@ -92,8 +68,6 @@ void cFileHeaderID::operator=( const TCHAR* pszId )
mIDLen = static_cast<int16>( N ); // know len is less than MAXBYTES mIDLen = static_cast<int16>( N ); // know len is less than MAXBYTES
::memcpy( mID, pszId, N * sizeof(char) ); ::memcpy( mID, pszId, N * sizeof(char) );
#endif
} }
void cFileHeaderID::operator=( const cFileHeaderID& rhs ) void cFileHeaderID::operator=( const cFileHeaderID& rhs )

View File

@ -112,10 +112,10 @@ typedef int64 cFSType;
// filesystem access control lists // filesystem access control lists
// it is the union of MAX(elem) for all the file systems that we support // it is the union of MAX(elem) for all the file systems that we support
class cACLElem { /*class cACLElem {
// TODO this is just a place holder // TODO this is just a place holder
// uint32 mUid; // uint32 mUid;
}; };*/
// this class is used only to pass arguments to iFSServices // this class is used only to pass arguments to iFSServices
// it is the union of MAX(elem) for all the file systems that we support // it is the union of MAX(elem) for all the file systems that we support
@ -155,8 +155,8 @@ struct cFSStatArgs {
FileType mFileType; // redundant with other information in this struct, but FileType mFileType; // redundant with other information in this struct, but
// broken out for convenience // broken out for convenience
// access control list should go here, too //TODO: access control list should go here, too
std::list <cACLElem> mACL; // indep //std::list <cACLElem> mACL; // indep
}; };
@ -252,16 +252,6 @@ class iFSServices
// TSTRING must have the form ("baseXXXXXX"), where the X's are replaced with // TSTRING must have the form ("baseXXXXXX"), where the X's are replaced with
// characters to make it a unique file. There must be at least 6 Xs. // characters to make it a unique file. There must be at least 6 Xs.
// TODO: remove this function
// Matt theorized that this is no longer used - dmb Aug 23 1999
// virtual int CreateLockedTemporaryFile( const TCHAR* szFilename, int perm ) const = 0;
// creates a temporary file to which only the current process has read or write access.
// returns an open C file descriptor on success and -1 on error. Returns error if filename already exists on the filesystem.
// the file will automatically be deleted when the file descriptor is closed.
// perm should be zero or more of:
// O_WRONLY: create with read write only permission
// O_RDWR: create with read and write permission
//////////////////////////////////////// ////////////////////////////////////////
// minor filesystem functions // minor filesystem functions
@ -286,29 +276,29 @@ class iFSServices
// short names. // short names.
virtual void GetCurrentDir( TSTRING& strCurDir ) const throw( eFSServices ) = 0; virtual void GetCurrentDir( TSTRING& strCurDir ) const throw( eFSServices ) = 0;
// returns the current working directory // returns the current working directory
virtual void ChangeDir( const TSTRING& strName ) const throw( eFSServices ) = 0;
// sets the current working directory
virtual void Mkdir( const TSTRING& strName ) const throw( eFSServices ) = 0;
virtual bool Rmdir( const TSTRING& strName ) const = 0;
//////////////////////////////////////// ////////////////////////////////////////
// file specific functions // file specific functions
//////////////////////////////////////// ////////////////////////////////////////
virtual bool FileDelete( const TSTRING& name ) const = 0; virtual bool FileDelete( const TSTRING& name ) const = 0;
//////////////////////////////////////// ////////////////////////////////////////
// directory and file functions // directory and file functions
//////////////////////////////////////// ////////////////////////////////////////
virtual bool Rename( const TSTRING& strOldName, const TSTRING& strNewName, bool fOverWrite = true ) const = 0; virtual bool Rename( const TSTRING& strOldName, const TSTRING& strNewName, bool fOverWrite = true ) const = 0;
// rename a file // rename a file
virtual bool GetOwnerForFile( const TSTRING& tstrFilename, TSTRING& tstrUser ) const = 0; virtual bool GetOwnerForFile( const TSTRING& tstrFilename, TSTRING& tstrUser ) const = 0;
virtual bool GetGroupForFile( const TSTRING& tstrFilename, TSTRING& tstrGroup ) const = 0; virtual bool GetGroupForFile( const TSTRING& tstrFilename, TSTRING& tstrGroup ) const = 0;
virtual bool GetUserName( uid_t user_id, TSTRING& tstrUser ) const = 0;
virtual bool GetGroupName( gid_t group_id, TSTRING& tstrGroup ) const = 0;
//Set whether we try to resolve uid/gid to a name, since Linux static binaries can
//have trouble (read: segfaulting) with name resolution given the right nsswitch.conf setup.
//This defaults to true if not specified.
virtual void SetResolveNames(bool resolve)=0;
//////////////////////////////////////// ////////////////////////////////////////
// miscellaneous utility functions // miscellaneous utility functions
//////////////////////////////////////// ////////////////////////////////////////
@ -347,44 +337,6 @@ class iFSServices
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
private: private:
static iFSServices* mpInstance; static iFSServices* mpInstance;
//virtual cFSStatArgs::FileType GetFileType(const cFCOName &filename) throw(eFSServices) = 0;
// returns the type of the file specified by filename. Separated from Stat() for convenience
// and potential efficiency (if a file system doesn't need to do a stat to get the file type)
//virtual char*& MakeTempFile( char*& name) throw(eFSServices) = 0;
//virtual wchar_t*& MakeTempFile( wchar_t*& name) throw(eFSServices) = 0;
//
// file ops
//
// these are commented out for timeliness reasons; we should uncomment and implement as needed...
// -- mdb
/*
virtual int Create(cFSName &name, Mode mode = MODE_DEFAULT) = 0;
virtual bool Mkdir(cFSName &name, Mode mode = MODE_DEFAULT) = 0;
virtual bool Delete(cFSName &name) = 0;
virtual bool Link(cFSName &src, cFSName &dest) = 0;
virtual bool Chmod(cFSName &name, Mode mode) = 0;
virtual Mode Umask(Mode mode) = 0;
// file system types (e.g., "FAT", "NTFS", "UFS", "NFS")
virtual bool FSTypeAsString(cFSName &name, TSTRING &str) = 0;
// file type (e.g., "file", "symbolic link", "block device")
// TODO -- this should either be static or in another utility class, since it does not rely on the
// instance of the class (there is a global enumeration of file types; this fn should take a
// cFSStatArgs::FileType instead of a name.
virtual bool FileTypeAsString(cFSName &filename, TSTRING &str) = 0;
// TODO -- does this beling here? Is it always true that st_dev defines the file system? If not, then the
// Stat() call should add some extra piece of data that identifies the file system.
virtual bool IsSameFileSystem(cFSStatArgs &file1, cFSStatArgs &file2) = 0;
// to determine whether to recurse - musn't traverse mount points
// capabilities
virtual bool IsUnicodeFilename(cFSName &name) = 0;
virtual bool IsACLCapable(cFSName &name) = 0;
virtual bool Is8bitFilename(cFSName &name) = 0;
*/
}; };

View File

@ -74,7 +74,7 @@
#include "config.h" #include "config.h"
#include <stdio.h> #include <stdio.h>
#include <sys/types.h> #include <sys/types.h>
#ifndef _SORTIX_SOURCE #if !IS_SORTIX
# include <sys/file.h> # include <sys/file.h>
#endif #endif
#include <sys/stat.h> #include <sys/stat.h>
@ -871,7 +871,7 @@ FILE *fp[];
return(mfpclose(indx, fp)); return(mfpclose(indx, fp));
} }
#ifdef __AROS__ #if IS_AROS
#define fork() vfork() #define fork() vfork()
#endif #endif

View File

@ -54,6 +54,9 @@
/* /*
* forward declarations * forward declarations
*/ */
#include "platform.h"
#ifdef __STDC__ #ifdef __STDC__
void le_clobber(void); void le_clobber(void);
int le_set(const char*); int le_set(const char*);
@ -114,7 +117,7 @@ int echild();
# define GID_RESET -2 /* reset EGID to RGID */ # define GID_RESET -2 /* reset EGID to RGID */
#endif #endif
#ifndef DEF_PATH #ifndef DEF_PATH
# ifdef __FreeBSD_cc_version # if IS_FREEBSD
# define DEF_PATH "PATH=/sbin:/usr/sbin:/bin:/usr/bin" /* default search path */ # define DEF_PATH "PATH=/sbin:/usr/sbin:/bin:/usr/bin" /* default search path */
# else # else
# define DEF_PATH "PATH=/bin:/usr/bin:/usr/ucb" /* default search path */ # define DEF_PATH "PATH=/bin:/usr/bin:/usr/ucb" /* default search path */

View File

@ -1,32 +0,0 @@
//
// The developer of the original code and/or files is Tripwire, Inc.
// Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire,
// Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights
// reserved.
//
// This program is free software. The contents of this file are subject
// to 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. You may redistribute it and/or modify it
// only in compliance with the GNU General Public License.
//
// This program is distributed in the hope that it will be useful.
// However, this program is distributed AS-IS WITHOUT ANY
// WARRANTY; INCLUDING THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS
// FOR A PARTICULAR PURPOSE. Please 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
//
// Nothing in the GNU General Public License or any other license to use
// the code or files shall permit you to use Tripwire's trademarks,
// service marks, or other intellectual property without Tripwire's
// prior written consent.
//
// If you have any questions, please contact Tripwire, Inc. at either
// info@tripwire.org or www.tripwire.org.
//

View File

@ -40,6 +40,9 @@
#ifndef __PLATFORM_H #ifndef __PLATFORM_H
#define __PLATFORM_H #define __PLATFORM_H
//NOTE: Autoconf is strongly preferred as the Right Way to detect platform-specific features/behaviors.
// These macros should really only be used when autoconf can't get the job done.
//============================================================================= //=============================================================================
// Enumerations // Enumerations
// //
@ -47,13 +50,41 @@
// variation. We group similar items together, such as OS_REDHAT and OS_SLACKWARE // variation. We group similar items together, such as OS_REDHAT and OS_SLACKWARE
#define OS_UNKNOWN 0 #define OS_UNKNOWN 0
#define OS_WIN32 0x0101 #define OS_WIN32 0x0101
#define OS_CYGWIN 0x0102
#define OS_DOS_DJGPP 0x0103
#define OS_LINUX 0x0201
#define OS_ANDROID 0x0202
#define OS_FREEBSD 0x0301
#define OS_NETBSD 0x0302
#define OS_OPENBSD 0x0303
#define OS_DARWIN 0x0304
#define OS_DRAGONFLYBSD 0x0305
#define OS_MIDNIGHTBSD 0x0306
#define OS_SOLARIS 0x0400
#define OS_AIX 0x0401 #define OS_AIX 0x0401
#define OS_HPUX 0x0501 #define OS_HPUX 0x0402
#define OS_IRIX 0x0601 #define OS_IRIX 0x0403
#define OS_OSF1 0x0701 #define OS_OSF1 0x0404
#define OS_MINIX 0x0501
#define OS_HURD 0x0502
#define OS_HAIKU 0x0503
#define OS_SYLLABLE 0x0504
#define OS_SKYOS 0x0505
#define OS_SORTIX 0x0506
#define OS_MINT 0x0507
#define OS_AROS 0x0508
#define OS_RTEMS 0x0509
#define COMP_UNKNOWN 0 #define COMP_UNKNOWN 0
#define COMP_GCC 0x0001
#define COMP_CLANG 0x0002
#define COMP_MSVC 0x0101 #define COMP_MSVC 0x0101
#define COMP_KAI_GCC 0x0201 #define COMP_KAI_GCC 0x0201
#define COMP_KAI_SUNPRO 0x0202 #define COMP_KAI_SUNPRO 0x0202
@ -81,34 +112,115 @@
#if defined(_WIN32) #if defined(_WIN32)
#define OS OS_WIN32 #define OS OS_WIN32
#define IS_WIN32 1
#elif defined(__CYGWIN__)
#define OS OS_CYGWIN
#define IS_CYGWIN 1
#if defined(_MSC_VER) #elif defined(__DJGPP__)
#define COMP COMP_MSVC #define OS OS_DOS_DJGPP
#else #define IS_DOS_DJGPP 1
#error _MSC_VER not defined. MSVC is currently the only supported compiler
#endif
#elif defined(__ANDROID__)
#define OS OS_ANDROID
#define IS_ANDROID 1
#elif defined(__linux__)
#define OS OS_LINUX
#define IS_LINUX 1
#elif defined(__FreeBSD__)
#define OS OS_FREEBSD
#define IS_FREEBSD 1
#elif defined(_IRIX) #elif defined(__NetBSD__)
#define OS OS_IRIX #define OS OS_NETBSD
#define COMP COMP_KAI_IRIX #define IS_NETBSD 1
#elif defined(_ALPHA) #elif defined(__OpenBSD__)
#define OS OS_OSF1 #define OS OS_OPENBSD
#define COMP COMP_KAI_OSF1ALPHA #define IS_OPENBSD 1
#elif defined(_OSX)
#define OS OS_DARWIN
#define IS_DARWIN 1
#elif defined(__DragonFly__)
#define OS OS_DRAGONFLYBSD
#define IS_DRAGONFLYBSD 1
#elif defined(__MidnightBSD__)
#define OS OS_MIDNIGHTBSD
#define IS_MIDNIGHTBSD 1
#elif defined(_SOLARIS) || defined(__sun)
#define OS OS_SOLARIS
#define IS_SOLARIS 1
#elif defined(_AIX)
#define OS OS_AIX
#define IS_AIX 1
#elif defined (_HPUX) #elif defined (_HPUX)
#define OS OS_HPUX #define OS OS_HPUX
#define COMP COMP_KAI_HPANSIC #define IS_HPUX 1
#elif defined(_IRIX)
#define OS OS_IRIX
#define IS_IRIX 1
#elif defined(TRU64) || defined(__OSF1__)
#define OS OS_OSF1
#define IS_OSF1 1
#elif defined(__minix__)
#define OS OS_MINIX
#define IS_MINIX 1
#elif defined(__gnu_hurd__)
#define OS OS_HURD
#define IS_HURD 1
#elif defined(__HAIKU__)
#define OS OS_HAIKU
#define IS_HAIKU 1
#elif defined(__SYLLABLE__)
#define OS OS_SYLLABLE
#define IS_SYLLABLE 1
#elif defined(SKYOS)
#define OS OS_SKYOS
#define IS_SKYOS 1
#elif defined(_SORTIX_SOURCE)
#define OS OS_SORTIX
#define IS_SORTIX 1
#elif defined(__MINT__)
#define OS OS_MINT
#define IS_MINT 1
#elif defined(__AROS__)
#define OS OS_AROS
#define IS_AROS 1
#elif defined(__rtems__)
#define OS OS_RTEMS
#define IS_RTEMS 1
#else #else
// OK for OS not to resolve, it's being phased out. // OK for OS not to resolve, it's being phased out.
// #error Unknown OS // #error Unknown OS
#endif #endif
#if !defined(OS)
// OK for OS not to resolve, it's being phased out.
// #error OS definition did not resolve. Check "platform.h".
#endif
/* XXX: COMP may now not resolve, because autoconf may /* XXX: COMP may now not resolve, because autoconf may
* detect GCC. This is done in the hopes that all * detect GCC. This is done in the hopes that all
* COMP detections, and indeed both OS & COMP detechtions * COMP detections, and indeed both OS & COMP detechtions
@ -150,13 +262,6 @@
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// OS detection
// Note: Avoid using these if possible (see above)
#define IS_WIN32 (OS == OS_WIN32)
#define IS_AIX (OS == OS_AIX)
#define IS_HPUX (OS == OS_HPUX)
#define IS_IRIX (OS == OS_IRIX)
#define IS_OSF1 (OS == OS_OSF1)
// complier detection // complier detection
#define IS_KAI (COMP == COMP_KAI_GCC || COMP == COMP_KAI_SUNPRO || COMP == COMP_KAI_GLIBC || COMP == COMP_KAI_VISUALAGE || COMP == COMP_KAI_HPANSIC || COMP == COMP_KAI_IRIX || COMP == COMP_KAI_OSF1ALPHA) #define IS_KAI (COMP == COMP_KAI_GCC || COMP == COMP_KAI_SUNPRO || COMP == COMP_KAI_GLIBC || COMP == COMP_KAI_VISUALAGE || COMP == COMP_KAI_HPANSIC || COMP == COMP_KAI_IRIX || COMP == COMP_KAI_OSF1ALPHA)
@ -183,20 +288,36 @@
#define SUPPORTS_POSIX_THREADS (!SUPPORTS_WIN32_THREADS) #define SUPPORTS_POSIX_THREADS (!SUPPORTS_WIN32_THREADS)
// Miscellaneous // Miscellaneous
#define FSEEK_TAKES_INT32 IS_UNIX // True if fseek takes 32-bit offsets
#define USE_OUTPUT_DEBUG_STRING IS_WIN32 // Use the Win32 OutputDebugString() for debug messages.
#define SUPPORTS_MAPI IS_WIN32
#define WCHAR_IS_16_BITS IS_WIN32 #define WCHAR_IS_16_BITS IS_WIN32
#define WCHAR_IS_32_BITS IS_UNIX #define WCHAR_IS_32_BITS IS_UNIX
#define WCHAR_REP_IS_UCS2 IS_WIN32 #define WCHAR_REP_IS_UCS2 IS_WIN32
#define USES_MPOPEN IS_UNIX #define USES_MPOPEN IS_UNIX
#define USES_WINSOCK IS_WIN32
#define SUPPORTS_WCHART IS_WIN32 // TODO: Remove after getting new ver of KAI #define SUPPORTS_WCHART IS_WIN32 // TODO: Remove after getting new ver of KAI
#define USES_GLIBC ((COMP == COMP_KAI_GLIBC) || HAVE_GCC) #define USES_GLIBC ((COMP == COMP_KAI_GLIBC) || HAVE_GCC)
#define SUPPORTS_EVENTLOG IS_WIN32
#define SUPPORTS_MEMBER_TEMPLATES ( ! IS_SUNPRO ) #define SUPPORTS_MEMBER_TEMPLATES ( ! IS_SUNPRO )
#define SUPPORTS_EXPLICIT_TEMPLATE_FUNC_INST ( ! IS_SUNPRO ) #define SUPPORTS_EXPLICIT_TEMPLATE_FUNC_INST ( ! IS_SUNPRO )
#define SUPPORTS_ST_BLOCKS (!IS_DOS_DJGPP)
#define SUPPORTS_POSIX_SIGNALS (!IS_DOS_DJGPP)
#define SUPPORTS_NETWORKING (!IS_SORTIX && !IS_DOS_DJGPP)
#define SUPPORTS_SYSLOG (HAVE_SYSLOG_H && !IS_SKYOS)
#define NEEDS_SWAB_IMPL (IS_SYLLABLE || IS_ANDROID || IS_SORTIX)
#define USES_MBLEN (!IS_ANDROID && !IS_AROS)
#define USES_DEVICE_PATH (IS_AROS || IS_DOS_DJGPP)
#define ICONV_CONST_SOURCE (IS_MINIX)
#define SUPPORTS_DIRECT_IO (IS_LINUX)
// Linux is the only platform where direct i/o hashing has been tested & works properly so far.
#define SUPPORTS_TERMIOS (!IS_RTEMS)
// RTEMS errors are probably just a buildsys issue & this will change or go away.
#define SUPPORTS_DOUBLE_SLASH_PATH (IS_CYGWIN)
// POSIX standard says paths beginning with 2 slashes are "implementation defined"
// (see http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_04_11 )
// The only platform OST works on (afaik) that actually defines a double-slash behavior is Cygwin
// which uses this syntax for UNC paths. So we'll allow leading double slashes there, but
// continue removing them on all other platforms
//============================================================================= //=============================================================================
// Miscellaneous // Miscellaneous
// //

View File

@ -41,24 +41,6 @@
cSerializerImpl::SerMap cSerializerImpl::mSerCreateMap ; cSerializerImpl::SerMap cSerializerImpl::mSerCreateMap ;
cSerializerImpl::SerRefCountMap cSerializerImpl::mSerRefCountCreateMap ; cSerializerImpl::SerRefCountMap cSerializerImpl::mSerRefCountCreateMap ;
// RAD:09/01/99 -- No longer needed!
///////////////////////////////////////////////////////////////////////////////
// util_TstrToStr -- converts the passed in tstring into a narrow string. maxSize
// indicates the size of the narrow buffer
///////////////////////////////////////////////////////////////////////////////
// static inline void util_TstrToStr(char* pStr, const TCHAR* pTstr, int maxSize)
// {
// #ifdef _UNICODE
// ASSERT( maxSize >= wcstombs( 0, pTstr
// wcstombs(pStr, pTstr, maxSize);
// #else
// strncpy( pStr, pTstr, maxSize );
// #endif
// }
//
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// util_GetCrc -- calculates the crc for the narrow version of the type's AsString() // util_GetCrc -- calculates the crc for the narrow version of the type's AsString()
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
@ -74,30 +56,12 @@ static uint32 util_GetCRC( const cType& type )
// - Increased performance by removing superflous conversion // - Increased performance by removing superflous conversion
// when type.AsString() is already narrow. // when type.AsString() is already narrow.
// //
#ifdef _UNICODE
char sz[256];
const uint8* pszType = (const uint8*)(&sz[0]);
const wchar_t* wsz = type.AsString();
ASSERT( countof(sz) >= ::wcstombs( 0, wsz, size_t(-1) ) );
int nBytes = (int)::wcstombs( (char*)pszType, wsz, countof(sz) );
if ( nBytes == -1 ) // Bad character conversion!
{
throw eCharacterEncoding(
TSS_GetString( cCore, core::STR_ERR_BADCHAR ) );
}
#else//!_UNICODE
// We only need to count the characters // We only need to count the characters
// RAD: Yeesh! This is already done for us in cType::mString!!! // RAD: Yeesh! This is already done for us in cType::mString!!!
const uint8* pszType = (const uint8*)( type.AsString() ); const uint8* pszType = (const uint8*)( type.AsString() );
int nBytes = ::strlen( (const char*)pszType ); int nBytes = ::strlen( (const char*)pszType );
#endif//_UNICODE
ASSERT( sizeof(uint8) == sizeof(byte) ); ASSERT( sizeof(uint8) == sizeof(byte) );
ASSERT( pszType && *pszType ); ASSERT( pszType && *pszType );

View File

@ -78,11 +78,7 @@ public:
DECLARE_TYPEDSERIALIZABLE() DECLARE_TYPEDSERIALIZABLE()
}; };
#ifdef _UNICODE
typedef cSerializableWString cSerializableTSTRING;
#else
typedef cSerializableNString cSerializableTSTRING; typedef cSerializableNString cSerializableTSTRING;
#endif
#endif #endif

View File

@ -64,7 +64,10 @@
#include "stdcore.h" #include "stdcore.h"
#include <stdio.h> #include <stdio.h>
#include <sys/types.h> #include <sys/types.h>
#include <memory.h>
#if HAVE_MEMORY_H
# include <memory.h>
#endif
#include "sha.h" #include "sha.h"

View File

@ -128,19 +128,6 @@ inline bool tss_find_in_hash( const wc16_string& lhs, TSTRING& rhs )
return( tss_GetHashTable().Lookup( lhs, rhs ) ); return( tss_GetHashTable().Lookup( lhs, rhs ) );
} }
#ifdef _UNICODE
inline bool tss_find_in_hash( const wc16_string& lhs, std::string& rhs )
{
return false; // don't have a hash table for this!
}
inline void tss_insert_in_hash( const wc16_string& lhs, const std::string& rhs )
{
return; // don't have a hash table for this!
}
#endif
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// Type Dispatched Conversions // Type Dispatched Conversions
@ -150,7 +137,7 @@ inline void tss_insert_in_hash( const wc16_string& lhs, const std::string& rhs )
std::string::const_iterator std::string::const_iterator
cStringUtil::Convert( std::string& nbs, const wc16_string& dbs ) cStringUtil::Convert( std::string& nbs, const wc16_string& dbs )
{ {
#ifdef __AROS__ #if IS_AROS
nbs.resize(dbs.length()); nbs.resize(dbs.length());
for (int x=0; x<dbs.length(); ++x) for (int x=0; x<dbs.length(); ++x)
nbs[x] = (unsigned char)dbs[x]; nbs[x] = (unsigned char)dbs[x];
@ -205,7 +192,7 @@ cStringUtil::Convert( std::string& nbs, const wc16_string& dbs )
wc16_string::const_iterator wc16_string::const_iterator
cStringUtil::Convert( wc16_string& dbs, const std::string& nbs ) cStringUtil::Convert( wc16_string& dbs, const std::string& nbs )
{ {
#ifdef __AROS__ #if IS_AROS
dbs.resize(nbs.length()); dbs.resize(nbs.length());
for (int x=0; x<nbs.length(); x++) for (int x=0; x<nbs.length(); x++)
dbs[x] = (unsigned short)nbs[x]; dbs[x] = (unsigned short)nbs[x];

View File

@ -54,7 +54,7 @@
#define TIME_MAX 2147483647L // largest signed 32 bit number #define TIME_MAX 2147483647L // largest signed 32 bit number
#ifdef __AROS__ #if IS_AROS
#define tzset() #define tzset()
#endif #endif

View File

@ -78,8 +78,14 @@ void util_SignalHandler( int sig )
#if IS_UNIX #if IS_UNIX
/* For the morbidly curious, here's a thread where a POSIX standards committee
wrings its hands about how to define NSIG: http://austingroupbugs.net/view.php?id=741#c1834 */
#ifndef NSIG #ifndef NSIG
#define NSIG 32 # ifdef SIGMAX
# define NSIG (SIGMAX+1)
# else
# define NSIG 32
# endif
#endif #endif
void tw_psignal(int sig, const TCHAR *str) void tw_psignal(int sig, const TCHAR *str)

View File

@ -68,7 +68,7 @@ static TSTRING& util_FormatTimeCPlusPlus( struct tm* ptm, TSTRING& strBuf );
// PUBLIC METHOD CODE // PUBLIC METHOD CODE
//========================================================================= //=========================================================================
#ifdef __AROS__ #if IS_AROS
#define tzset() #define tzset()
#endif #endif

View File

@ -70,11 +70,19 @@
#ifdef HAVE_SYS_SYSMACROS_H #ifdef HAVE_SYS_SYSMACROS_H
# include <sys/sysmacros.h> # include <sys/sysmacros.h>
#endif #endif
#include <sys/utsname.h>
#if HAVE_SYS_UTSNAME_H
# include <sys/utsname.h>
#endif
#include <pwd.h> #include <pwd.h>
#include <sys/socket.h>
#include <netdb.h> #if HAVE_SYS_SOCKET_H
#include <netinet/in.h> # include <sys/socket.h>
# include <netdb.h>
# include <netinet/in.h>
#endif
#include <grp.h> #include <grp.h>
#include <fcntl.h> #include <fcntl.h>
#include <errno.h> #include <errno.h>
@ -130,7 +138,7 @@ template< typename T > static inline void util_ZeroMemory( T& obj );
// PUBLIC METHOD CODE // PUBLIC METHOD CODE
//========================================================================= //=========================================================================
cUnixFSServices::cUnixFSServices() cUnixFSServices::cUnixFSServices() : mResolveNames(true)
{} {}
cUnixFSServices::~cUnixFSServices() cUnixFSServices::~cUnixFSServices()
@ -147,13 +155,7 @@ TSTRING cUnixFSServices::GetErrString() const
{ {
TSTRING ret; TSTRING ret;
char* pErrorStr = strerror(errno); char* pErrorStr = strerror(errno);
#ifdef _UNICODE
wchar_t pBuf[1024];
mbstowcs(pBuf, pErrorStr, 1024);
ret = pBuf;
#else
ret = pErrorStr; ret = pErrorStr;
#endif
return ret; return ret;
} }
@ -180,18 +182,26 @@ TCHAR cUnixFSServices::GetPathSeparator() const
return '/'; return '/';
} }
#ifndef __AROS__ #if !USES_DEVICE_PATH
void cUnixFSServices::ReadDir(const TSTRING& strFilename, std::vector<TSTRING> &v, bool bFullPaths) const throw(eFSServices) void cUnixFSServices::ReadDir(const TSTRING& strFilename, std::vector<TSTRING> &v, bool bFullPaths) const throw(eFSServices)
{ {
#else #else
void cUnixFSServices::ReadDir(const TSTRING& strFilenameC, std::vector<TSTRING>& v, bool bFullPaths) const throw(eFSServices) void cUnixFSServices::ReadDir(const TSTRING& strFilenameC, std::vector<TSTRING>& v, bool bFullPaths) const throw(eFSServices)
{ {
TSTRING strFilename = cArosPath::AsNative(strFilenameC); TSTRING strFilename = cDevicePath::AsNative(strFilenameC);
#endif #endif
//Get all the filenames //Get all the filenames
DIR* dp; DIR* dp=0;
#if defined(O_DIRECTORY) && defined(O_NOATIME)
//dfd will be autoclosed by closedir(), should not be explicitly closed.
int dfd=open(strFilename.c_str(), O_RDONLY|O_DIRECTORY|O_NOATIME);
if (dfd>0)
dp = fdopendir(dfd);
#else
dp = opendir( strFilename.c_str() ); dp = opendir( strFilename.c_str() );
#endif
if (dp == NULL) if (dp == NULL)
{ {
@ -247,12 +257,6 @@ void cUnixFSServices::GetCurrentDir( TSTRING& strCurDir ) const throw(eFSService
strCurDir = pathname; strCurDir = pathname;
} }
void cUnixFSServices::ChangeDir( const TSTRING& strDir ) const throw(eFSServices)
{
if( chdir( strDir.c_str() ) < 0 )
throw eFSServicesGeneric( strDir, iFSServices::GetInstance()->GetErrString() );
}
TSTRING& cUnixFSServices::MakeTempFilename( TSTRING& strName ) const throw(eFSServices) TSTRING& cUnixFSServices::MakeTempFilename( TSTRING& strName ) const throw(eFSServices)
{ {
@ -260,14 +264,7 @@ TSTRING& cUnixFSServices::MakeTempFilename( TSTRING& strName ) const throw(eFSSe
char szTemplate[iFSServices::TW_MAX_PATH]; char szTemplate[iFSServices::TW_MAX_PATH];
int fd; int fd;
#ifdef _UNICODE
// convert template from wide character to multi-byte string
char mbBuf[iFSServices::TW_MAX_PATH];
wcstombs( mbBuf, strName.c_str(), strName.length() + 1 );
strcpy( szTemplate, mbBuf );
#else
strcpy( szTemplate, strName.c_str() ); strcpy( szTemplate, strName.c_str() );
#endif
#ifdef HAVE_MKSTEMP #ifdef HAVE_MKSTEMP
// create temp filename and check to see if mkstemp failed // create temp filename and check to see if mkstemp failed
@ -289,41 +286,15 @@ TSTRING& cUnixFSServices::MakeTempFilename( TSTRING& strName ) const throw(eFSSe
#endif #endif
// change name so that it has the XXXXXX part filled in // change name so that it has the XXXXXX part filled in
#ifdef _UNICODE
// convert name from multi-byte to wide character string
wchar_t wcsbuf[1024];
mbstowcs( wcsbuf, pchTempFileName, strlen( pchTempFileName ) + 1 ));
strName = wcsbuf;
#else
strName = pchTempFileName; strName = pchTempFileName;
#endif
// Linux creates the file!! Doh! // Linux creates the file!! Doh!
// So I'll always attempt to delete it -bam // So I'll always attempt to delete it -bam
FileDelete( strName ); FileDelete( strName.c_str() );
return( strName ); return( strName );
} }
void cUnixFSServices::Mkdir( const TSTRING& strName ) const throw ( eFSServices )
{
if( 0 != _tmkdir( strName.c_str(), 0777 ) )
{
// if mkdir failed because the dir existed, that's OK
if( errno != EEXIST )
throw eFSServicesGeneric( strName, iFSServices::GetInstance()->GetErrString() );
}
}
bool cUnixFSServices::Rmdir( const TSTRING& strName ) const
{
if( 0 == rmdir( strName.c_str() ) )
return true;
return false;
}
void cUnixFSServices::GetTempDirName( TSTRING& strName ) const throw(eFSServices) void cUnixFSServices::GetTempDirName( TSTRING& strName ) const throw(eFSServices)
{ {
strName = mTempPath; strName = mTempPath;
@ -335,13 +306,13 @@ void cUnixFSServices::SetTempDirName(TSTRING& tmpPath) {
} }
#ifndef __AROS__ #if !USES_DEVICE_PATH
void cUnixFSServices::Stat( const TSTRING& strName, cFSStatArgs &stat ) const throw(eFSServices) void cUnixFSServices::Stat( const TSTRING& strName, cFSStatArgs &stat ) const throw(eFSServices)
{ {
#else #else
void cUnixFSServices::Stat( const TSTRING& strNameC, cFSStatArgs& stat) const throw(eFSServices) void cUnixFSServices::Stat( const TSTRING& strNameC, cFSStatArgs& stat) const throw(eFSServices)
{ {
TSTRING strName = cArosPath::AsNative(strNameC); TSTRING strName = cDevicePath::AsNative(strNameC);
#endif #endif
//local variable for obtaining info on file. //local variable for obtaining info on file.
struct stat statbuf; struct stat statbuf;
@ -378,7 +349,11 @@ void cUnixFSServices::Stat( const TSTRING& strNameC, cFSStatArgs& stat) const th
stat.size = statbuf.st_size; stat.size = statbuf.st_size;
stat.uid = statbuf.st_uid; stat.uid = statbuf.st_uid;
stat.blksize = statbuf.st_blksize; stat.blksize = statbuf.st_blksize;
#if SUPPORTS_ST_BLOCKS
stat.blocks = statbuf.st_blocks; stat.blocks = statbuf.st_blocks;
#else
stat.blocks = 0;
#endif
// set the file type // set the file type
if(S_ISREG(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_FILE; if(S_ISREG(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_FILE;
@ -387,7 +362,9 @@ void cUnixFSServices::Stat( const TSTRING& strNameC, cFSStatArgs& stat) const th
else if(S_ISBLK(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_BLOCKDEV; else if(S_ISBLK(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_BLOCKDEV;
else if(S_ISCHR(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_CHARDEV; else if(S_ISCHR(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_CHARDEV;
else if(S_ISFIFO(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_FIFO; else if(S_ISFIFO(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_FIFO;
#ifdef S_ISSOCK
else if(S_ISSOCK(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_SOCK; else if(S_ISSOCK(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_SOCK;
#endif
#ifdef S_IFDOOR #ifdef S_IFDOOR
else if(S_ISDOOR(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_DOOR; else if(S_ISDOOR(statbuf.st_mode)) stat.mFileType = cFSStatArgs::TY_DOOR;
#endif #endif
@ -400,19 +377,24 @@ void cUnixFSServices::Stat( const TSTRING& strNameC, cFSStatArgs& stat) const th
void cUnixFSServices::GetMachineName( TSTRING& strName ) const throw( eFSServices ) void cUnixFSServices::GetMachineName( TSTRING& strName ) const throw( eFSServices )
{ {
#if HAVE_SYS_UTSNAME_H
struct utsname namebuf; struct utsname namebuf;
if( uname( &namebuf ) == -1 ) if( uname( &namebuf ) == -1 )
throw eFSServicesGeneric( strName ); throw eFSServicesGeneric( strName );
else else
strName = namebuf.nodename; strName = namebuf.nodename;
#else
strName = "localhost";
#endif
} }
void cUnixFSServices::GetMachineNameFullyQualified( TSTRING& strName ) const void cUnixFSServices::GetMachineNameFullyQualified( TSTRING& strName ) const
{ {
#if HAVE_SYS_UTSNAME_H
char buf[256]; char buf[256];
if (gethostname(buf, 256) != 0) if (gethostname(buf, 256) != 0)
{ {
#if defined(SOLARIS_NO_GETHOSTBYNAME) || defined(_SORTIX_SOURCE) #if defined(SOLARIS_NO_GETHOSTBYNAME) || !SUPPORTS_NETWORKING
strName = buf; strName = buf;
return; return;
#else #else
@ -426,7 +408,7 @@ void cUnixFSServices::GetMachineNameFullyQualified( TSTRING& strName ) const
} }
#endif #endif
} }
#endif
try try
{ {
cUnixFSServices::GetMachineName(strName); cUnixFSServices::GetMachineName(strName);
@ -467,7 +449,7 @@ bool cUnixFSServices::GetIPAddress( uint32& uiIPAddress )
bool fGotAddress = false; bool fGotAddress = false;
cDebug d( _T("cUnixFSServices::GetIPAddress") ); cDebug d( _T("cUnixFSServices::GetIPAddress") );
#ifndef _SORTIX_SOURCE #if SUPPORTS_NETWORKING && HAVE_SYS_UTSNAME_H
struct utsname utsnameBuf; struct utsname utsnameBuf;
if( EFAULT != uname( &utsnameBuf) ) if( EFAULT != uname( &utsnameBuf) )
{ {
@ -510,35 +492,27 @@ bool cUnixFSServices::IsCaseSensitive() const
} }
void cUnixFSServices::SetResolveNames(bool resolve)
{
mResolveNames=resolve;
}
bool cUnixFSServices::GetOwnerForFile( const TSTRING& tstrFilename, TSTRING& tstrUser ) const bool cUnixFSServices::GetOwnerForFile( const TSTRING& tstrFilename, TSTRING& tstrUser ) const
{ {
bool fSuccess = true; bool fSuccess = true;
struct stat statbuf; struct stat statbuf;
int ret = lstat(tstrFilename.c_str(), &statbuf); int ret = lstat(tstrFilename.c_str(), &statbuf);
if(ret < 0) if(ret < 0)
{ {
fSuccess = false; fSuccess = false;
} }
else
if( fSuccess )
{ {
struct passwd* pp = getpwuid( statbuf.st_uid ); fSuccess = GetUserName(statbuf.st_uid, tstrUser);
//ASSERT( pp );
// We shouldn't assert this, because it might be the case that a file
// is associated with some old user that no longer exists... we should
// not fail this case. Instead, the method will just return false per
// the test below.
if( pp == NULL )
{
fSuccess = false;
}
else
tstrUser = pp->pw_name;
} }
return( fSuccess ); return( fSuccess );
} }
@ -552,12 +526,48 @@ bool cUnixFSServices::GetGroupForFile( const TSTRING& tstrFilename, TSTRING& tst
{ {
fSuccess = false; fSuccess = false;
} }
else
if( fSuccess )
{ {
struct group* pg = getgrgid( statbuf.st_gid ); fSuccess = GetGroupName(statbuf.st_gid, tstrGroup);
//ASSERT( pg ); this assert stops everything in debug mode if we can't lookup a groupid }
return( fSuccess );
}
bool cUnixFSServices::GetUserName( uid_t user_id, TSTRING& tstrUser ) const
{
bool fSuccess = true;
if( mResolveNames )
{
struct passwd* pp = getpwuid( user_id );
if( pp == NULL )
{
fSuccess = false;
tstrUser = TSS_GetString(cCore, core::STR_UNKNOWN);
}
else
tstrUser = pp->pw_name;
}
else
{
std::stringstream sstr;
sstr << user_id;
tstrUser = sstr.str();
}
return( fSuccess );
}
bool cUnixFSServices::GetGroupName( gid_t group_id, TSTRING& tstrGroup ) const
{
bool fSuccess = true;
if( mResolveNames )
{
struct group* pg = getgrgid( group_id );
if( pg == NULL ) if( pg == NULL )
{ {
fSuccess = false; fSuccess = false;
@ -565,10 +575,22 @@ bool cUnixFSServices::GetGroupForFile( const TSTRING& tstrFilename, TSTRING& tst
} }
else else
tstrGroup = pg->gr_name; tstrGroup = pg->gr_name;
} }
else
{
std::stringstream sstr;
sstr << group_id;
tstrGroup = sstr.str();
}
return( fSuccess ); return( fSuccess );
} }
#ifndef S_ISVTX // DOS/DJGPP doesn't have this
# define S_ISVTX 0
#endif
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
// Function name : cUnixFSServices::ConvertModeToString // Function name : cUnixFSServices::ConvertModeToString
@ -740,7 +762,7 @@ bool cUnixFSServices::GetExecutableFilename( TSTRING& strFullPath, const TSTRING
// a bool? I think it is ... mdb // a bool? I think it is ... mdb
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
bool cUnixFSServices::FullPath( TSTRING& strFullPath, const TSTRING& strRelPathC, const TSTRING& pathRelFromC ) const bool cUnixFSServices::FullPath( TSTRING& strFullPath, const TSTRING& strRelPathC, const TSTRING& pathRelFromC ) const
{ {
// don't do anything with an empty path // don't do anything with an empty path
if( strRelPathC.empty() ) if( strRelPathC.empty() )
return false; return false;
@ -833,39 +855,6 @@ const TCHAR* cUnixFSServices::GetStandardBackupExtension() const
} }
// TODO: remove this function
// Matt theorized that this is no longer used - dmb Aug 23 1999
/*
int cUnixFSServices::CreateLockedTemporaryFile( const TCHAR* szFilename, int perm ) const
{
// make sure perm is AT LEAST one of: O_RDWR, O_WRONLY
ASSERT( 0 != ( perm & ( O_RDWR | O_WRONLY ) ) );
// make sure perm is ONLY composed of: O_RDWR, O_WRONLY
ASSERT( 0 == ( perm & ~( O_RDWR | O_WRONLY ) ) );
// get rid of any unsupported bits caller may have supplied
perm &= ( O_RDWR | O_WRONLY );
// set flags
int oflags = perm |
O_CREAT | O_EXCL; // only create a new file -- error if it exists already
// create file
int fh = _topen( szFilename, oflags, 0666 );
if( fh >= 0 )
{
// file was created. Now unlink it
if( 0 != unlink( szFilename ) )
{
// we weren't able to unlink file, so close handle and fail
close( fh );
fh = -1;
}
}
return( fh );
}
*/
void cUnixFSServices::Sleep( int nSeconds ) const void cUnixFSServices::Sleep( int nSeconds ) const
{ {
sleep( nSeconds ); sleep( nSeconds );

View File

@ -54,38 +54,8 @@
// DECLARATION OF CLASSES // DECLARATION OF CLASSES
//========================================================================= //=========================================================================
//Set up in constructor. Stores pertinent information about the filesystem
//serviced by each instantiation.
struct UnixSysInfo
{
uint32 maxcomplen;
//max name length of a file on filesystem
uint32 fsflags;
//bitmask of flags
TSTRING fsname;
//The filesystem basename
uint32 fsid;
//unique indentifier for the filesystem
};
class cUnixFSServices : public iFSServices class cUnixFSServices : public iFSServices
{ {
///////////////////////////////////////////////////////////////
// ENUMS
///////////////////////////////////////////////////////////////
////////////////////////////////////////
// file system types
////////////////////////////////////////
enum FSType
{
FS_UFS = 0,
FS_NFS,
FS_HSFS,
FS_PCFS
};
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
// MEMBER FUNCTIONS // MEMBER FUNCTIONS
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
@ -127,10 +97,6 @@ class cUnixFSServices : public iFSServices
// strName must have the form ("baseXXXXXX"), where the X's are replaced with // strName must have the form ("baseXXXXXX"), where the X's are replaced with
// characters to make it a unique file. There must be at least 6 Xs. // characters to make it a unique file. There must be at least 6 Xs.
// TODO: remove this function
// Matt theorized that this is no longer used - dmb Aug 23 1999
//virtual int CreateLockedTemporaryFile( const TCHAR* szFilename, int perm ) const;
//////////////////////////////////////// ////////////////////////////////////////
// minor filesystem functions // minor filesystem functions
@ -153,29 +119,29 @@ class cUnixFSServices : public iFSServices
// puts the contents of the specified directory, except for . and .., into the supplied vector. // puts the contents of the specified directory, except for . and .., into the supplied vector.
virtual void GetCurrentDir( TSTRING& strCurDir ) const throw( eFSServices ); virtual void GetCurrentDir( TSTRING& strCurDir ) const throw( eFSServices );
// returns the current working directory // returns the current working directory
virtual void ChangeDir( const TSTRING& strName ) const throw( eFSServices );
// sets the current working directory
virtual void Mkdir( const TSTRING& strName ) const throw( eFSServices );
virtual bool Rmdir( const TSTRING& strName ) const;
//////////////////////////////////////// ////////////////////////////////////////
// file specific functions // file specific functions
//////////////////////////////////////// ////////////////////////////////////////
virtual bool FileDelete( const TSTRING& name ) const; virtual bool FileDelete( const TSTRING& name ) const;
//////////////////////////////////////// ////////////////////////////////////////
// directory and file functions // directory and file functions
//////////////////////////////////////// ////////////////////////////////////////
virtual bool Rename( const TSTRING& strOldName, const TSTRING& strNewName, bool fOverWrite = true ) const; virtual bool Rename( const TSTRING& strOldName, const TSTRING& strNewName, bool fOverWrite = true ) const;
// rename a file // rename a file
virtual bool GetOwnerForFile( const TSTRING& tstrFilename, TSTRING& tstrUser ) const; virtual bool GetOwnerForFile( const TSTRING& tstrFilename, TSTRING& tstrUser ) const;
virtual bool GetGroupForFile( const TSTRING& tstrFilename, TSTRING& tstrGroup ) const; virtual bool GetGroupForFile( const TSTRING& tstrFilename, TSTRING& tstrGroup ) const;
virtual bool GetUserName( uid_t user_id, TSTRING& tstrUser ) const;
virtual bool GetGroupName( gid_t group_id, TSTRING& tstrGroup ) const;
//Set whether we try to resolve uid/gid to a name, since Linux static binaries can
//have trouble (read: segfaulting) with name resolution given the right nsswitch.conf setup.
//This defaults to true if not specified.
virtual void SetResolveNames(bool resolve);
//////////////////////////////////////// ////////////////////////////////////////
// miscellaneous utility functions // miscellaneous utility functions
//////////////////////////////////////// ////////////////////////////////////////
@ -195,11 +161,9 @@ class cUnixFSServices : public iFSServices
virtual TSTRING GetErrString() const; virtual TSTRING GetErrString() const;
private: private:
UnixSysInfo info;
//struct stores pertinent system info. to be used by member functions
TSTRING mTempPath; TSTRING mTempPath;
bool mResolveNames;
}; };
#endif //__UNIXFSSERVICES_H #endif //__UNIXFSSERVICES_H

View File

@ -1,134 +0,0 @@
//
// The developer of the original code and/or files is Tripwire, Inc.
// Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire,
// Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights
// reserved.
//
// This program is free software. The contents of this file are subject
// to 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. You may redistribute it and/or modify it
// only in compliance with the GNU General Public License.
//
// This program is distributed in the hope that it will be useful.
// However, this program is distributed AS-IS WITHOUT ANY
// WARRANTY; INCLUDING THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS
// FOR A PARTICULAR PURPOSE. Please 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
//
// Nothing in the GNU General Public License or any other license to use
// the code or files shall permit you to use Tripwire's trademarks,
// service marks, or other intellectual property without Tripwire's
// prior written consent.
//
// If you have any questions, please contact Tripwire, Inc. at either
// info@tripwire.org or www.tripwire.org.
//
///////////////////////////////////////////////////////////////////////////////
// UserString.h -- A single point of access for all strings that will be
// displayed to the end user. This implementation is intended to ease
// any future localization efforts.
///////////////////////////////////////////////////////////////////////////////
#ifndef __USERSTRING_H
#define __USERSTRING_H
#ifndef __DEBUG_H
#include "core/debug.h"
#endif
#ifndef _MAP_
#include <map>
#endif
///////////////////////////////////////////////////////////////////////////////
// class iUserString -- Abstract interface for retrieving User Strings
///////////////////////////////////////////////////////////////////////////////
class iUserString
{
public:
virtual ~iUserString() {}
struct tStringPair
{
int id;
TCHAR* string;
};
// Select between the different localized string sets
// for this product. Returns false if string not defined.
virtual bool SelectStringSet(int setID) = 0;
// Get the string from the localized string set
virtual const TCHAR* GetString(int stringID) const = 0;
// Clear all strings in specified string set
virtual void ClearStringSet(int id) = 0;
// Add an array of string pairs to a string set. The pair array passed in
// should terminate with an id of -1. If this string set contains string IDs
// that already exist in the string set, they will "overwrite" the
// the previous strings.
// Note: We store only pointers to the string pairs so they must remain
// around for as long as this class uses them. A static array defined at
// compile time is perfect for this.
virtual void AddStringSet(int setID, const tStringPair* pPairArray) = 0;
// Add a single string. The above rules apply.
virtual void AddString(int setID, int stringID, TCHAR* string) = 0;
// singleton manipulation
static iUserString* GetInstance();
static void SetInstance(iUserString* pInst);
private:
static iUserString* mpInstance;
};
///////////////////////////////////////////////////////////////////////////////
// Macros useful for building UserString tables.
///////////////////////////////////////////////////////////////////////////////
/*
Example Use:
static struct iUserString::tStringPair englishStrings[] =
{
USERSTRING(STR_HELLO_WORLD, "Hello World\n")
USERSTRING(STR_OUT_OF_MEM, "Fatal Error: Out of memory.\n")
USERSTRING_END()
};
pUSMB->AddStringSet(LANG_USENGLISH, englishStrings);
*/
#define USERSTRING(id, str) { (id), _T(str) },
#define USERSTRING_END() { -1, _T("") }
///////////////////////////////////////////////////////////////////////////////////////////////////
// inline implementation
///////////////////////////////////////////////////////////////////////////////////////////////////
inline iUserString* iUserString::GetInstance()
{
ASSERT(mpInstance);
return mpInstance;
}
inline void iUserString::SetInstance(iUserString* pInst)
{
mpInstance = pInst;
}
#ifdef _MSC_VER
//#pragma warning(default:4786)
#endif /* _MSC_VER */
#endif // __USERSTRING_H

View File

@ -1,17 +1,25 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. -I../.. AM_CPPFLAGS = -I.. -I../..
LN=@LN@ LN=@LN@
DEFAULT_INCLUDES = $(D_INCLUDES) DEFAULT_INCLUDES = $(D_INCLUDES)
EXTRA_DIST=license.txt readme.txt rmcr.pl
noinst_LIBRARIES = libcryptlib.a noinst_LIBRARIES = libcryptlib.a
libcryptlib_adir=.
libcryptlib_a_SOURCES = \ libcryptlib_a_SOURCES = \
algebra.cpp asn.cpp cryptlib.cpp des.cpp dessp.cpp elgamal.cpp \ algebra.cpp asn.cpp cryptlib.cpp des.cpp dessp.cpp elgamal.cpp \
eprecomp.cpp filters.cpp forkjoin.cpp integer.cpp iterhash.cpp misc.cpp \ eprecomp.cpp filters.cpp forkjoin.cpp integer.cpp iterhash.cpp misc.cpp \
nbtheory.cpp pch.cpp queue.cpp rng.cpp sha.cpp zbits.cpp zdeflate.cpp \ nbtheory.cpp pch.cpp queue.cpp rng.cpp sha.cpp zbits.cpp zdeflate.cpp \
zinflate.cpp ztrees.cpp zinflate.cpp ztrees.cpp
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit libcryptlib_a_HEADERS = \
algebra.h asn.h config.h cryptlib.h des.h elgamal.h eprecomp.h filters.h \
forkjoin.h integer.h iterhash.h misc.h modarith.h nbtheory.h pch.h \
queue.h rng.h sha.h smartptr.h words.h zbits.h zdeflate.h zinflate.h \
ztrees.h
DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
CLEANFILES = ../../lib/libcryptlib.a CLEANFILES = ../../lib/libcryptlib.a
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,17 +14,68 @@
@SET_MAKE@ @SET_MAKE@
SOURCES = $(libcryptlib_a_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -36,20 +87,27 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = src/cryptlib subdir = src/cryptlib
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(libcryptlib_a_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LIBRARIES = $(noinst_LIBRARIES) LIBRARIES = $(noinst_LIBRARIES)
AR = ar
ARFLAGS = cru ARFLAGS = cru
AM_V_AR = $(am__v_AR_@AM_V@)
am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
am__v_AR_0 = @echo " AR " $@;
am__v_AR_1 =
libcryptlib_a_AR = $(AR) $(ARFLAGS) libcryptlib_a_AR = $(AR) $(ARFLAGS)
libcryptlib_a_LIBADD = libcryptlib_a_LIBADD =
am_libcryptlib_a_OBJECTS = algebra.$(OBJEXT) asn.$(OBJEXT) \ am_libcryptlib_a_OBJECTS = algebra.$(OBJEXT) asn.$(OBJEXT) \
@ -60,22 +118,94 @@ am_libcryptlib_a_OBJECTS = algebra.$(OBJEXT) asn.$(OBJEXT) \
queue.$(OBJEXT) rng.$(OBJEXT) sha.$(OBJEXT) zbits.$(OBJEXT) \ queue.$(OBJEXT) rng.$(OBJEXT) sha.$(OBJEXT) zbits.$(OBJEXT) \
zdeflate.$(OBJEXT) zinflate.$(OBJEXT) ztrees.$(OBJEXT) zdeflate.$(OBJEXT) zinflate.$(OBJEXT) ztrees.$(OBJEXT)
libcryptlib_a_OBJECTS = $(am_libcryptlib_a_OBJECTS) libcryptlib_a_OBJECTS = $(am_libcryptlib_a_OBJECTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
CXXLD = $(CXX) CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
-o $@ -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
SOURCES = $(libcryptlib_a_SOURCES) SOURCES = $(libcryptlib_a_SOURCES)
DIST_SOURCES = $(libcryptlib_a_SOURCES) DIST_SOURCES = $(libcryptlib_a_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(libcryptlib_adir)"
HEADERS = $(libcryptlib_a_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -91,7 +221,7 @@ CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
@ -99,6 +229,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -110,6 +241,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -126,21 +258,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -170,22 +305,34 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. -I../.. AM_CPPFLAGS = -I.. -I../..
DEFAULT_INCLUDES = $(D_INCLUDES) DEFAULT_INCLUDES = $(D_INCLUDES)
EXTRA_DIST = license.txt readme.txt rmcr.pl
noinst_LIBRARIES = libcryptlib.a noinst_LIBRARIES = libcryptlib.a
libcryptlib_adir = .
libcryptlib_a_SOURCES = \ libcryptlib_a_SOURCES = \
algebra.cpp asn.cpp cryptlib.cpp des.cpp dessp.cpp elgamal.cpp \ algebra.cpp asn.cpp cryptlib.cpp des.cpp dessp.cpp elgamal.cpp \
eprecomp.cpp filters.cpp forkjoin.cpp integer.cpp iterhash.cpp misc.cpp \ eprecomp.cpp filters.cpp forkjoin.cpp integer.cpp iterhash.cpp misc.cpp \
nbtheory.cpp pch.cpp queue.cpp rng.cpp sha.cpp zbits.cpp zdeflate.cpp \ nbtheory.cpp pch.cpp queue.cpp rng.cpp sha.cpp zbits.cpp zdeflate.cpp \
zinflate.cpp ztrees.cpp zinflate.cpp ztrees.cpp
libcryptlib_a_HEADERS = \
algebra.h asn.h config.h cryptlib.h des.h elgamal.h eprecomp.h filters.h \
forkjoin.h integer.h iterhash.h misc.h modarith.h nbtheory.h pch.h \
queue.h rng.h sha.h smartptr.h words.h zbits.h zdeflate.h zinflate.h \
ztrees.h
CLEANFILES = ../../lib/libcryptlib.a CLEANFILES = ../../lib/libcryptlib.a
all: all-am all: all-am
@ -195,15 +342,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/cryptlib/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/cryptlib/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/cryptlib/Makefile $(AUTOMAKE) --foreign src/cryptlib/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -220,13 +366,15 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-noinstLIBRARIES: clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
libcryptlib.a: $(libcryptlib_a_OBJECTS) $(libcryptlib_a_DEPENDENCIES)
-rm -f libcryptlib.a libcryptlib.a: $(libcryptlib_a_OBJECTS) $(libcryptlib_a_DEPENDENCIES) $(EXTRA_libcryptlib_a_DEPENDENCIES)
$(libcryptlib_a_AR) libcryptlib.a $(libcryptlib_a_OBJECTS) $(libcryptlib_a_LIBADD) $(AM_V_at)-rm -f libcryptlib.a
$(RANLIB) libcryptlib.a $(AM_V_AR)$(libcryptlib_a_AR) libcryptlib.a $(libcryptlib_a_OBJECTS) $(libcryptlib_a_LIBADD)
$(AM_V_at)$(RANLIB) libcryptlib.a
mostlyclean-compile: mostlyclean-compile:
-rm -f *.$(OBJEXT) -rm -f *.$(OBJEXT)
@ -235,91 +383,121 @@ distclean-compile:
-rm -f *.tab.c -rm -f *.tab.c
.cpp.o: .cpp.o:
$(CXXCOMPILE) -c -o $@ $< $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ $<
.cpp.obj: .cpp.obj:
$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
uninstall-info-am: install-libcryptlib_aHEADERS: $(libcryptlib_a_HEADERS)
@$(NORMAL_INSTALL)
@list='$(libcryptlib_a_HEADERS)'; test -n "$(libcryptlib_adir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(libcryptlib_adir)'"; \
$(MKDIR_P) "$(DESTDIR)$(libcryptlib_adir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libcryptlib_adir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(libcryptlib_adir)" || exit $$?; \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) uninstall-libcryptlib_aHEADERS:
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @$(NORMAL_UNINSTALL)
unique=`for i in $$list; do \ @list='$(libcryptlib_a_HEADERS)'; test -n "$(libcryptlib_adir)" || list=; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
done | \ dir='$(DESTDIR)$(libcryptlib_adir)'; $(am__uninstall_files_from_dir)
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ID: $(am__tagged_files)
$(TAGS_FILES) $(LISP) $(am__define_uniq_tagged_files); mkid -fID $$unique
tags=; \ tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \ here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-am
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile $(LIBRARIES) all-am: Makefile $(LIBRARIES) $(HEADERS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(libcryptlib_adir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
install-data: install-data-am install-data: install-data-am
@ -330,17 +508,23 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -360,18 +544,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am: install-libcryptlib_aHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -390,22 +594,30 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am: uninstall-libcryptlib_aHEADERS
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ .MAKE: install-am install-strip
clean-noinstLIBRARIES ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \ .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
html-am info info-am install install-am install-data \ clean-noinstLIBRARIES cscopelist-am ctags ctags-am distclean \
install-data-am install-exec install-exec-am install-info \ distclean-compile distclean-generic distclean-tags distdir dvi \
install-info-am install-man install-strip installcheck \ dvi-am html html-am info info-am install install-am \
installcheck-am installdirs maintainer-clean \ install-data install-data-am install-dvi install-dvi-am \
maintainer-clean-generic mostlyclean mostlyclean-compile \ install-exec install-exec-am install-html install-html-am \
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ install-info install-info-am install-libcryptlib_aHEADERS \
uninstall-am uninstall-info-am install-man install-pdf install-pdf-am install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am \
uninstall-libcryptlib_aHEADERS
.PRECIOUS: Makefile
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(LN) -f $(noinst_LIBRARIES) ../../lib/libcryptlib.a $(LN) -f $(noinst_LIBRARIES) ../../lib/libcryptlib.a
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -3,6 +3,8 @@
#include "pch.h" #include "pch.h"
#include "asn.h" #include "asn.h"
#include "misc.h" #include "misc.h"
#include <stdlib.h>
#include <stdio.h>
unsigned int DERLengthEncode(unsigned int length, byte *output) unsigned int DERLengthEncode(unsigned int length, byte *output)
{ {
@ -87,7 +89,11 @@ BERSequenceDecoder::~BERSequenceDecoder()
{ // remove end-of-content octects { // remove end-of-content octects
word16 i; word16 i;
if (!inQueue.GetShort(i) || (i!=0)) if (!inQueue.GetShort(i) || (i!=0))
BERDecodeError(); {
fputs("### Internal Error.\n### Invalid or corrupt key.\n### Exiting...\n\
", stderr);
exit(1);
}
} }
} }

View File

@ -9,7 +9,8 @@
#include <string.h> #include <string.h>
#endif #endif
#ifdef __MINT__ // has memory.h, but memset defined in string.h anyway. #if defined(__MINT__) || defined(__DJGPP__)
// OS has memory.h, but memset defined in string.h anyway.
#include <string.h> #include <string.h>
#endif #endif

View File

@ -1,13 +1,18 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libdb.a noinst_LIBRARIES = libdb.a
libdb_adir=.
libdb_a_SOURCES = \ libdb_a_SOURCES = \
blockfile.cpp blockrecordarray.cpp blockrecordfile.cpp \ blockfile.cpp blockrecordarray.cpp blockrecordfile.cpp \
db.cpp hierdatabase.cpp hierdbpath.cpp stddb.cpp db.cpp dberrors.cpp hierdatabase.cpp hierdbpath.cpp stddb.cpp
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit libdb_a_HEADERS = \
block.h blockfile.h blockrecordarray.h blockrecordfile.h \
db.h dberrors.h hierdatabase.h hierdbnode.h hierdbpath.h stddb.h
DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libdb_a_OBJECTS) $(AR) ru ../../lib/libtripwire.a $(libdb_a_OBJECTS)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,17 +14,68 @@
@SET_MAKE@ @SET_MAKE@
SOURCES = $(libdb_a_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -36,43 +87,122 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = src/db subdir = src/db
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(libdb_a_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LIBRARIES = $(noinst_LIBRARIES) LIBRARIES = $(noinst_LIBRARIES)
AR = ar
ARFLAGS = cru ARFLAGS = cru
AM_V_AR = $(am__v_AR_@AM_V@)
am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
am__v_AR_0 = @echo " AR " $@;
am__v_AR_1 =
libdb_a_AR = $(AR) $(ARFLAGS) libdb_a_AR = $(AR) $(ARFLAGS)
libdb_a_LIBADD = libdb_a_LIBADD =
am_libdb_a_OBJECTS = blockfile.$(OBJEXT) blockrecordarray.$(OBJEXT) \ am_libdb_a_OBJECTS = blockfile.$(OBJEXT) blockrecordarray.$(OBJEXT) \
blockrecordfile.$(OBJEXT) db.$(OBJEXT) hierdatabase.$(OBJEXT) \ blockrecordfile.$(OBJEXT) db.$(OBJEXT) dberrors.$(OBJEXT) \
hierdbpath.$(OBJEXT) stddb.$(OBJEXT) hierdatabase.$(OBJEXT) hierdbpath.$(OBJEXT) stddb.$(OBJEXT)
libdb_a_OBJECTS = $(am_libdb_a_OBJECTS) libdb_a_OBJECTS = $(am_libdb_a_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
CXXLD = $(CXX) CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
-o $@ -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
SOURCES = $(libdb_a_SOURCES) SOURCES = $(libdb_a_SOURCES)
DIST_SOURCES = $(libdb_a_SOURCES) DIST_SOURCES = $(libdb_a_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(libdb_adir)"
HEADERS = $(libdb_a_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -88,7 +218,7 @@ CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
@ -96,6 +226,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -107,6 +238,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -123,21 +255,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -167,18 +302,27 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libdb.a noinst_LIBRARIES = libdb.a
libdb_adir = .
libdb_a_SOURCES = \ libdb_a_SOURCES = \
blockfile.cpp blockrecordarray.cpp blockrecordfile.cpp \ blockfile.cpp blockrecordarray.cpp blockrecordfile.cpp \
db.cpp hierdatabase.cpp hierdbpath.cpp stddb.cpp db.cpp dberrors.cpp hierdatabase.cpp hierdbpath.cpp stddb.cpp
libdb_a_HEADERS = \
block.h blockfile.h blockrecordarray.h blockrecordfile.h \
db.h dberrors.h hierdatabase.h hierdbnode.h hierdbpath.h stddb.h
all: all-am all: all-am
@ -188,15 +332,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/db/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/db/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/db/Makefile $(AUTOMAKE) --foreign src/db/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -213,13 +356,15 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-noinstLIBRARIES: clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
libdb.a: $(libdb_a_OBJECTS) $(libdb_a_DEPENDENCIES)
-rm -f libdb.a libdb.a: $(libdb_a_OBJECTS) $(libdb_a_DEPENDENCIES) $(EXTRA_libdb_a_DEPENDENCIES)
$(libdb_a_AR) libdb.a $(libdb_a_OBJECTS) $(libdb_a_LIBADD) $(AM_V_at)-rm -f libdb.a
$(RANLIB) libdb.a $(AM_V_AR)$(libdb_a_AR) libdb.a $(libdb_a_OBJECTS) $(libdb_a_LIBADD)
$(AM_V_at)$(RANLIB) libdb.a
mostlyclean-compile: mostlyclean-compile:
-rm -f *.$(OBJEXT) -rm -f *.$(OBJEXT)
@ -228,91 +373,121 @@ distclean-compile:
-rm -f *.tab.c -rm -f *.tab.c
.cpp.o: .cpp.o:
$(CXXCOMPILE) -c -o $@ $< $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ $<
.cpp.obj: .cpp.obj:
$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
uninstall-info-am: install-libdb_aHEADERS: $(libdb_a_HEADERS)
@$(NORMAL_INSTALL)
@list='$(libdb_a_HEADERS)'; test -n "$(libdb_adir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(libdb_adir)'"; \
$(MKDIR_P) "$(DESTDIR)$(libdb_adir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libdb_adir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(libdb_adir)" || exit $$?; \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) uninstall-libdb_aHEADERS:
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @$(NORMAL_UNINSTALL)
unique=`for i in $$list; do \ @list='$(libdb_a_HEADERS)'; test -n "$(libdb_adir)" || list=; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
done | \ dir='$(DESTDIR)$(libdb_adir)'; $(am__uninstall_files_from_dir)
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ID: $(am__tagged_files)
$(TAGS_FILES) $(LISP) $(am__define_uniq_tagged_files); mkid -fID $$unique
tags=; \ tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \ here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-am
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile $(LIBRARIES) all-am: Makefile $(LIBRARIES) $(HEADERS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(libdb_adir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
install-data: install-data-am install-data: install-data-am
@ -323,16 +498,22 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -352,18 +533,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am: install-libdb_aHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -382,22 +583,30 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am: uninstall-libdb_aHEADERS
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ .MAKE: install-am install-strip
clean-noinstLIBRARIES ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \ .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
html-am info info-am install install-am install-data \ clean-noinstLIBRARIES cscopelist-am ctags ctags-am distclean \
install-data-am install-exec install-exec-am install-info \ distclean-compile distclean-generic distclean-tags distdir dvi \
install-info-am install-man install-strip installcheck \ dvi-am html html-am info info-am install install-am \
installcheck-am installdirs maintainer-clean \ install-data install-data-am install-dvi install-dvi-am \
maintainer-clean-generic mostlyclean mostlyclean-compile \ install-exec install-exec-am install-html install-html-am \
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ install-info install-info-am install-libdb_aHEADERS \
uninstall-am uninstall-info-am install-man install-pdf install-pdf-am install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am \
uninstall-libdb_aHEADERS
.PRECIOUS: Makefile
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libdb_a_OBJECTS) $(AR) ru ../../lib/libtripwire.a $(libdb_a_OBJECTS)
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -36,8 +36,7 @@
// //
#include "stddb.h" #include "stddb.h"
#include "core/errortable.h" #include "dberrors.h"
#include "hierdatabase.h" #include "hierdatabase.h"
TSS_BEGIN_ERROR_REGISTRATION( db ) TSS_BEGIN_ERROR_REGISTRATION( db )

View File

@ -29,9 +29,20 @@
// If you have any questions, please contact Tripwire, Inc. at either // If you have any questions, please contact Tripwire, Inc. at either
// info@tripwire.org or www.tripwire.org. // info@tripwire.org or www.tripwire.org.
// //
// userstring.cpp //
#include "stdcore.h" // Name....: dberrors.h
#include "userstring.h" // Date....: 5/17/99
// Creator.: Matthew Brinkley (brinkley)
//
//
iUserString* iUserString::mpInstance; #ifndef __DBERRORS_H
#define __DBERRORS_H
#include "core/errortable.h"
TSS_DECLARE_ERROR_REGISTRATION( db )
#endif//__DBERRORS_H

15
src/db/hierdatabase.cpp Normal file → Executable file
View File

@ -39,6 +39,7 @@
#include "core/archive.h" #include "core/archive.h"
#include "core/upperbound.h" #include "core/upperbound.h"
#include "core/errorbucket.h" #include "core/errorbucket.h"
#include "core/errorbucketimpl.h"
// TODO -- all of these util_ functions should throw an eArchive if an attempt is made to // TODO -- all of these util_ functions should throw an eArchive if an attempt is made to
// write to a null address // write to a null address
@ -288,7 +289,19 @@ void cHierDatabaseIter::LoadArrayAt(const cHierAddr& addr) //throw (eArchive, eH
while( ! curAddr.IsNull() ) while( ! curAddr.IsNull() )
{ {
mEntries.push_back( cHierEntry() ); mEntries.push_back( cHierEntry() );
util_ReadObject( mpDb, &mEntries.back(), curAddr ); //Catch db errors, in case only part of db is broken
try
{
util_ReadObject( mpDb, &mEntries.back(), curAddr );
}
catch( eError& e )
{
e.SetFatality(false);
cErrorReporter::PrintErrorMsg(e);
mEntries.pop_back();
break;
}
curAddr = mEntries.back().mNext; curAddr = mEntries.back().mNext;
} }

View File

@ -49,6 +49,11 @@
#include "hierdbpath.h" #include "hierdbpath.h"
#endif #endif
#if HAVE_STRINGS_H // RTEMS needs this for strcasecmp
# include <strings.h>
#endif
class cHierDatabaseIter; class cHierDatabaseIter;
class cErrorBucket; class cErrorBucket;

View File

@ -1,8 +1,9 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libfco.a noinst_LIBRARIES = libfco.a
libfco_adir=.
libfco_a_SOURCES = \ libfco_a_SOURCES = \
fco.cpp fcocompare.cpp fcodatasourceiter.cpp \ fco.cpp fcocompare.cpp fcodatasourceiter.cpp \
fcodatasourceiterimpl.cpp fcoerrors.cpp fconame.cpp \ fcodatasourceiterimpl.cpp fcoerrors.cpp fconame.cpp \
@ -11,8 +12,21 @@ libfco_a_SOURCES = \
fcospecimpl.cpp fcospeclist.cpp fcospecutil.cpp fcostrings.cpp \ fcospecimpl.cpp fcospeclist.cpp fcospecutil.cpp fcostrings.cpp \
fcoundefprop.cpp genreinfo.cpp genrespeclist.cpp \ fcoundefprop.cpp genreinfo.cpp genrespeclist.cpp \
genreswitcher.cpp signature.cpp stdfco.cpp twfactory.cpp genreswitcher.cpp signature.cpp stdfco.cpp twfactory.cpp
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit libfco_a_HEADERS = \
fco.h fcocompare.h fcodatasource.h fcodatasourceiter.h \
fcodatasourceiterimpl.h fcoerrors.h fcogenre.h fconame.h \
fconameinfo.h fconametbl.h fconametranslator.h fcoprop.h \
fcopropcalc.h fcopropdisplayer.h fcopropimpl.h fcopropset.h \
fcopropvector.h fcosetimpl.h fcosetws.h \
fcospec.h fcospecattr.h fcospechelper.h fcospecimpl.h \
fcospeclist.h fcospecutil.h fcostrings.h fcoundefprop.h \
fcovisitor.h genreinfo.h genrespeclist.h genreswitcher.h \
iterproxy.h parsergenreutil.h propset.h signature.h \
stdfco.h twfactory.h
DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libfco_a_OBJECTS) $(AR) ru ../../lib/libtripwire.a $(libfco_a_OBJECTS)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,17 +14,68 @@
@SET_MAKE@ @SET_MAKE@
SOURCES = $(libfco_a_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -36,20 +87,27 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = src/fco subdir = src/fco
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(libfco_a_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LIBRARIES = $(noinst_LIBRARIES) LIBRARIES = $(noinst_LIBRARIES)
AR = ar
ARFLAGS = cru ARFLAGS = cru
AM_V_AR = $(am__v_AR_@AM_V@)
am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
am__v_AR_0 = @echo " AR " $@;
am__v_AR_1 =
libfco_a_AR = $(AR) $(ARFLAGS) libfco_a_AR = $(AR) $(ARFLAGS)
libfco_a_LIBADD = libfco_a_LIBADD =
am_libfco_a_OBJECTS = fco.$(OBJEXT) fcocompare.$(OBJEXT) \ am_libfco_a_OBJECTS = fco.$(OBJEXT) fcocompare.$(OBJEXT) \
@ -64,23 +122,95 @@ am_libfco_a_OBJECTS = fco.$(OBJEXT) fcocompare.$(OBJEXT) \
genreswitcher.$(OBJEXT) signature.$(OBJEXT) stdfco.$(OBJEXT) \ genreswitcher.$(OBJEXT) signature.$(OBJEXT) stdfco.$(OBJEXT) \
twfactory.$(OBJEXT) twfactory.$(OBJEXT)
libfco_a_OBJECTS = $(am_libfco_a_OBJECTS) libfco_a_OBJECTS = $(am_libfco_a_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
CXXLD = $(CXX) CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
-o $@ -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
SOURCES = $(libfco_a_SOURCES) SOURCES = $(libfco_a_SOURCES)
DIST_SOURCES = $(libfco_a_SOURCES) DIST_SOURCES = $(libfco_a_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(libfco_adir)"
HEADERS = $(libfco_a_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -96,7 +226,7 @@ CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
@ -104,6 +234,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -115,6 +246,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -131,21 +263,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -175,15 +310,20 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libfco.a noinst_LIBRARIES = libfco.a
libfco_adir = .
libfco_a_SOURCES = \ libfco_a_SOURCES = \
fco.cpp fcocompare.cpp fcodatasourceiter.cpp \ fco.cpp fcocompare.cpp fcodatasourceiter.cpp \
fcodatasourceiterimpl.cpp fcoerrors.cpp fconame.cpp \ fcodatasourceiterimpl.cpp fcoerrors.cpp fconame.cpp \
@ -193,6 +333,18 @@ libfco_a_SOURCES = \
fcoundefprop.cpp genreinfo.cpp genrespeclist.cpp \ fcoundefprop.cpp genreinfo.cpp genrespeclist.cpp \
genreswitcher.cpp signature.cpp stdfco.cpp twfactory.cpp genreswitcher.cpp signature.cpp stdfco.cpp twfactory.cpp
libfco_a_HEADERS = \
fco.h fcocompare.h fcodatasource.h fcodatasourceiter.h \
fcodatasourceiterimpl.h fcoerrors.h fcogenre.h fconame.h \
fconameinfo.h fconametbl.h fconametranslator.h fcoprop.h \
fcopropcalc.h fcopropdisplayer.h fcopropimpl.h fcopropset.h \
fcopropvector.h fcosetimpl.h fcosetws.h \
fcospec.h fcospecattr.h fcospechelper.h fcospecimpl.h \
fcospeclist.h fcospecutil.h fcostrings.h fcoundefprop.h \
fcovisitor.h genreinfo.h genrespeclist.h genreswitcher.h \
iterproxy.h parsergenreutil.h propset.h signature.h \
stdfco.h twfactory.h
all: all-am all: all-am
.SUFFIXES: .SUFFIXES:
@ -201,15 +353,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/fco/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/fco/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/fco/Makefile $(AUTOMAKE) --foreign src/fco/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -226,13 +377,15 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-noinstLIBRARIES: clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
libfco.a: $(libfco_a_OBJECTS) $(libfco_a_DEPENDENCIES)
-rm -f libfco.a libfco.a: $(libfco_a_OBJECTS) $(libfco_a_DEPENDENCIES) $(EXTRA_libfco_a_DEPENDENCIES)
$(libfco_a_AR) libfco.a $(libfco_a_OBJECTS) $(libfco_a_LIBADD) $(AM_V_at)-rm -f libfco.a
$(RANLIB) libfco.a $(AM_V_AR)$(libfco_a_AR) libfco.a $(libfco_a_OBJECTS) $(libfco_a_LIBADD)
$(AM_V_at)$(RANLIB) libfco.a
mostlyclean-compile: mostlyclean-compile:
-rm -f *.$(OBJEXT) -rm -f *.$(OBJEXT)
@ -241,91 +394,121 @@ distclean-compile:
-rm -f *.tab.c -rm -f *.tab.c
.cpp.o: .cpp.o:
$(CXXCOMPILE) -c -o $@ $< $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ $<
.cpp.obj: .cpp.obj:
$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
uninstall-info-am: install-libfco_aHEADERS: $(libfco_a_HEADERS)
@$(NORMAL_INSTALL)
@list='$(libfco_a_HEADERS)'; test -n "$(libfco_adir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(libfco_adir)'"; \
$(MKDIR_P) "$(DESTDIR)$(libfco_adir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libfco_adir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(libfco_adir)" || exit $$?; \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) uninstall-libfco_aHEADERS:
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @$(NORMAL_UNINSTALL)
unique=`for i in $$list; do \ @list='$(libfco_a_HEADERS)'; test -n "$(libfco_adir)" || list=; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
done | \ dir='$(DESTDIR)$(libfco_adir)'; $(am__uninstall_files_from_dir)
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ID: $(am__tagged_files)
$(TAGS_FILES) $(LISP) $(am__define_uniq_tagged_files); mkid -fID $$unique
tags=; \ tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \ here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-am
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile $(LIBRARIES) all-am: Makefile $(LIBRARIES) $(HEADERS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(libfco_adir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
install-data: install-data-am install-data: install-data-am
@ -336,16 +519,22 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -365,18 +554,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am: install-libfco_aHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -395,22 +604,30 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am: uninstall-libfco_aHEADERS
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ .MAKE: install-am install-strip
clean-noinstLIBRARIES ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \ .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
html-am info info-am install install-am install-data \ clean-noinstLIBRARIES cscopelist-am ctags ctags-am distclean \
install-data-am install-exec install-exec-am install-info \ distclean-compile distclean-generic distclean-tags distdir dvi \
install-info-am install-man install-strip installcheck \ dvi-am html html-am info info-am install install-am \
installcheck-am installdirs maintainer-clean \ install-data install-data-am install-dvi install-dvi-am \
maintainer-clean-generic mostlyclean mostlyclean-compile \ install-exec install-exec-am install-html install-html-am \
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ install-info install-info-am install-libfco_aHEADERS \
uninstall-am uninstall-info-am install-man install-pdf install-pdf-am install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am \
uninstall-libfco_aHEADERS
.PRECIOUS: Makefile
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libfco_a_OBJECTS) $(AR) ru ../../lib/libtripwire.a $(libfco_a_OBJECTS)
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -40,6 +40,10 @@
#include "stdfco.h" #include "stdfco.h"
#include "fcodatasourceiter.h" #include "fcodatasourceiter.h"
#if HAVE_STRINGS_H // for strcasecmp on RTEMS
# include <strings.h>
#endif
//========================================================================= //=========================================================================
// METHOD CODE // METHOD CODE
//========================================================================= //=========================================================================

View File

@ -234,7 +234,12 @@ void cFCOName::ParseString( const TCHAR* pszin )
TSTRING name(begin, at); TSTRING name(begin, at);
if (name.length() > 0 || components == 0) //NOTE: To be truly standards compliant we ought to turn >2 slashes into 1, not 2.
#if SUPPORTS_DOUBLE_SLASH_PATH
if (name.length() > 0 || components < 2)
#else
if (name.length() > 0 || components == 0)
#endif
{ {
cFCONameTblNode* pNode = cFCONameTblNode* pNode =
cFCOName_i::msNameTbl.CreateNode(name); cFCOName_i::msNameTbl.CreateNode(name);
@ -372,12 +377,8 @@ void cFCOName::Read(iSerializer* pSerializer, int32 version)
int16 dummy = 0; int16 dummy = 0;
// serialize the delimiter // serialize the delimiter
#ifdef _UNICODE
pSerializer->ReadInt16( (int16&)mDelimiter );
#else
pSerializer->ReadInt16( dummy ); // delimiter, but it's always '/' anyway in OST. pSerializer->ReadInt16( dummy ); // delimiter, but it's always '/' anyway in OST.
mDelimiter = '/'; mDelimiter = '/';
#endif
// read the case-sensitiveness // read the case-sensitiveness
pSerializer->ReadInt16(dummy); pSerializer->ReadInt16(dummy);
@ -402,13 +403,8 @@ void cFCOName::Write(iSerializer* pSerializer) const
pSerializer->WriteString(AsString()); pSerializer->WriteString(AsString());
// serialize the delimiter // serialize the delimiter
#ifdef _UNICODE unsigned short wc = (unsigned short)'/';
pSerializer->WriteInt16(mDelimiter);
#else
unsigned short wc = (unsigned short)'/';
pSerializer->WriteInt16(wc); pSerializer->WriteInt16(wc);
#endif
pSerializer->WriteInt16( mbCaseSensitive ? (int16)1 : (int16)0); pSerializer->WriteInt16( mbCaseSensitive ? (int16)1 : (int16)0);
} }

View File

@ -84,8 +84,10 @@ public:
enum CalcFlags enum CalcFlags
{ {
DO_NOT_MODIFY_PROPERTIES = 0x00000001 // reset any properties that may have been altered due to measurement DO_NOT_MODIFY_PROPERTIES = 0x00000001, // reset any properties that may have been altered due to measurement
DIRECT_IO = 0x00000002 // use direct i/o when scanning files
}; };
virtual int GetCalcFlags() const = 0; virtual int GetCalcFlags() const = 0;
virtual void SetCalcFlags(int i) = 0; virtual void SetCalcFlags(int i) = 0;
// any calculation flags needed for calculation. // any calculation flags needed for calculation.

View File

@ -1,212 +0,0 @@
//
// The developer of the original code and/or files is Tripwire, Inc.
// Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire,
// Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights
// reserved.
//
// This program is free software. The contents of this file are subject
// to 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. You may redistribute it and/or modify it
// only in compliance with the GNU General Public License.
//
// This program is distributed in the hope that it will be useful.
// However, this program is distributed AS-IS WITHOUT ANY
// WARRANTY; INCLUDING THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS
// FOR A PARTICULAR PURPOSE. Please 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
//
// Nothing in the GNU General Public License or any other license to use
// the code or files shall permit you to use Tripwire's trademarks,
// service marks, or other intellectual property without Tripwire's
// prior written consent.
//
// If you have any questions, please contact Tripwire, Inc. at either
// info@tripwire.org or www.tripwire.org.
//
///////////////////////////////////////////////////////////////////////////////
// propsetimpl.cpp
#include "stdfs.h"
#include "propsetimpl.h"
#include "core/debug.h"
#include "core/serializer.h"
#include "core/errorutil.h"
#include "fco/fcoundefprop.h"
///////////////////////////////////////////////////////////////////////////////
// TraceContents
///////////////////////////////////////////////////////////////////////////////
void cPropSetImpl::TraceContents(int dl) const
{
if(dl < 0)
dl = cDebug::D_DEBUG;
cDebug d("cPropSetImpl::TraceContents");
TOSTRINGSTREAM ostr;
ostr << _T("File Sysytem Prop Set: ");
for(int i=0; i<GetNumProps(); i++)
{
if(mValidProps.ContainsItem(i))
{
ostr << _T("[") << i << _T("]") << GetPropName(i) << _T(" = ") << GetPropAt(i)->AsString().c_str() << _T(", ");
}
}
d.Trace(dl, _T("%s\n"), ostr.str().c_str());
}
///////////////////////////////////////////////////////////////////////////////
// CopyProps
///////////////////////////////////////////////////////////////////////////////
void cPropSetImpl::CopyProps(const iFCOPropSet* pSrc, const cFCOPropVector& propsToCopy)
{
ASSERT(pSrc->GetType() == CLASS_TYPE(cPropSetImpl));
// first, modify my valid vector...
mValidProps |= propsToCopy;
for(int i=0; i < GetNumFSProps(); i++)
{
if(propsToCopy.ContainsItem(i))
{
ASSERT( pSrc->GetValidVector().ContainsItem( i ) );
const iFCOProp* pProp = pSrc->GetPropAt(i);
if (pProp->GetType() != cFCOUndefinedProp::GetInstance()->GetType())
{
GetPropAt(i)->Copy( pProp );
mUndefinedProps.RemoveItem(i);
}
else
mUndefinedProps.AddItem(i);
}
}
}
///////////////////////////////////////////////////////////////////////////////
// Invalidate
///////////////////////////////////////////////////////////////////////////////
void cPropSetImpl::InvalidateProp(int index)
{
ASSERT((index >= 0) && (index < GetNumProps()));
mValidProps.RemoveItem(index);
}
void cPropSetImpl::InvalidateAll()
{
mValidProps.Clear();
}
void cPropSetImpl::InvalidateProps(const cFCOPropVector& propsToInvalidate)
{
cFCOPropVector inBoth = mValidProps;
inBoth &= propsToInvalidate;
mValidProps ^= inBoth;
}
///////////////////////////////////////////////////////////////////////////////
// GetNumFSProps
///////////////////////////////////////////////////////////////////////////////
int cPropSetImpl::GetNumFSProps()
{
return PROP_NUMITEMS;
}
///////////////////////////////////////////////////////////////////////////////
// ctors. dtor, operator=
///////////////////////////////////////////////////////////////////////////////
cPropSetImpl::cPropSetImpl() :
mValidProps(cPropSetImpl::PROP_NUMITEMS),
mUndefinedProps(cPropSetImpl::PROP_NUMITEMS)
{
// TODO: do I want to zero out all the property values here?
}
cPropSetImpl::~cPropSetImpl()
{
}
cPropSetImpl::cPropSetImpl(const cPropSetImpl& rhs) :
mValidProps(cPropSetImpl::PROP_NUMITEMS)
{
*this = rhs;
}
const cPropSetImpl& cPropSetImpl::operator=(const cPropSetImpl& rhs)
{
mValidProps = rhs.GetValidVector();
mUndefinedProps = rhs.mUndefinedProps;
for(int i=0; i < PROP_NUMITEMS; i++)
if (mValidProps.ContainsItem(i) && !mUndefinedProps.ContainsItem(i))
GetPropAt(i)->Copy( ((cPropSetImpl&)rhs).GetPropAt(i) ); // call non-const GetPropAt for rhs
// don't want it to assert ContainsItem
return *this;
}
const cFCOPropVector& cPropSetImpl::GetValidVector() const
{
return mValidProps;
}
int cPropSetImpl::GetNumProps() const
{
return PROP_NUMITEMS;
}
/*
int cPropSetImpl::GetPropIndex(const TCHAR* name) const
{
for(int i=0; i<PROP_NUMITEMS; i++)
{
if( _tcscmp( name, TSS_GetString( cFS, cPropSetImpl_PropNames[i]).c_str() ) == 0 )
return i;
}
return iFCOPropSet::PROP_NOT_FOUND;
}
TSTRING cPropSetImpl::GetPropName(int index) const
{
ASSERT((index >= 0) && (index < GetNumProps()));
return TSS_GetString( cFS, cPropSetImpl_PropNames[index]);
}
*/
void cPropSetImpl::Read(iSerializer* pSerializer, int32 version)
{
if (version > Version())
ThrowAndAssert(eSerializerVersionMismatch(_T("Property Set Read")));
mValidProps.Read(pSerializer);
mUndefinedProps.Read(pSerializer);
for (int i=0; i < PROP_NUMITEMS; i++)
{
if (mValidProps.ContainsItem(i) && !mUndefinedProps.ContainsItem(i))
GetPropAt(i)->Read(pSerializer);
}
}
void cPropSetImpl::Write(iSerializer* pSerializer) const
{
mValidProps.Write(pSerializer);
mUndefinedProps.Write(pSerializer);
for (int i=0; i < PROP_NUMITEMS; i++)
{
if (mValidProps.ContainsItem(i) && !mUndefinedProps.ContainsItem(i))
GetPropAt(i)->Write(pSerializer);
}
}

View File

@ -1,78 +0,0 @@
//
// The developer of the original code and/or files is Tripwire, Inc.
// Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire,
// Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights
// reserved.
//
// This program is free software. The contents of this file are subject
// to 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. You may redistribute it and/or modify it
// only in compliance with the GNU General Public License.
//
// This program is distributed in the hope that it will be useful.
// However, this program is distributed AS-IS WITHOUT ANY
// WARRANTY; INCLUDING THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS
// FOR A PARTICULAR PURPOSE. Please 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
//
// Nothing in the GNU General Public License or any other license to use
// the code or files shall permit you to use Tripwire's trademarks,
// service marks, or other intellectual property without Tripwire's
// prior written consent.
//
// If you have any questions, please contact Tripwire, Inc. at either
// info@tripwire.org or www.tripwire.org.
//
///////////////////////////////////////////////////////////////////////////////
// fspropsetimpl.h -- file system objects' property set objects
//
// cPropSetImpl -- base class for all prop sets
// contains common implementation
#ifndef __FSPROPSETIMPL_H
#define __FSPROPSETIMPL_H
#ifndef __FCOPROPSET_H
#include "fco/fcopropset.h"
#endif
#ifndef __PROPSET_H
#include "fco/propset.h"
#endif
///////////////////////////////////////////////////////////////////////////////
// cPropSetImpl
///////////////////////////////////////////////////////////////////////////////
class cPropSetImpl : public iFCOPropSet
{
public:
cFSPropSet();
cFSPropSet(const cFSPropSet& rhs);
virtual ~cFSPropSet();
const cFSPropSet& operator=(const cFSPropSet& rhs);
virtual const cFCOPropVector& GetValidVector() const ;
virtual int GetNumProps () const ;
virtual int GetPropIndex(const TCHAR* name) const;
virtual TSTRING GetPropName (int index) const;
virtual const iFCOProp* GetPropAt(int index) const;
virtual iFCOProp* GetPropAt(int index) ;
virtual void InvalidateProp(int index);
virtual void InvalidateProps(const cFCOPropVector& propsToInvalidate) ;
virtual void InvalidateAll();
virtual void CopyProps(const iFCOPropSet* pSrc, const cFCOPropVector& propsToCopy);
private:
cFCOPropVector mValidProps; // all the properties that have been evaluated
cFCOPropVector mUndefinedProps; // properties that have been measured but have undefined values
};
#endif // #ifndef __FSPROPSETIMPL_H

View File

@ -43,6 +43,10 @@
#include "genreinfo.h" #include "genreinfo.h"
#include "core/errorutil.h" #include "core/errorutil.h"
#if HAVE_STRINGS_H // for strcasecmp on RTEMS
# include <strings.h>
#endif
//========================================================================= //=========================================================================
// STATIC MEMBERS // STATIC MEMBERS
//========================================================================= //=========================================================================

View File

@ -41,6 +41,7 @@
#include <iomanip> #include <iomanip>
#include "fcoundefprop.h" #include "fcoundefprop.h"
#include "core/archive.h" #include "core/archive.h"
#include "core/debug.h"
#ifndef HAVE_OPENSSL_MD5_H #ifndef HAVE_OPENSSL_MD5_H
# ifdef HAVE_STRINGS_H # ifdef HAVE_STRINGS_H
# include <strings.h> /* for bcopy(), this is only needed for Solaris */ # include <strings.h> /* for bcopy(), this is only needed for Solaris */
@ -97,7 +98,8 @@ iFCOProp::CmpResult iSignature::Compare(const iFCOProp* rhs, Op op) const
return (op == iFCOProp::OP_NE) ? iFCOProp::CMP_TRUE : iFCOProp::CMP_FALSE; return (op == iFCOProp::OP_NE) ? iFCOProp::CMP_TRUE : iFCOProp::CMP_FALSE;
} }
bool cArchiveSigGen::mHex = false; bool cArchiveSigGen::s_hex = false;
bool cArchiveSigGen::s_direct = false;
void cArchiveSigGen::AddSig( iSignature* pSig ) void cArchiveSigGen::AddSig( iSignature* pSig )
{ {
@ -106,11 +108,18 @@ void cArchiveSigGen::AddSig( iSignature* pSig )
void cArchiveSigGen::CalculateSignatures( cArchive& a ) void cArchiveSigGen::CalculateSignatures( cArchive& a )
{ {
byte abBuf[iSignature::SUGGESTED_BLOCK_SIZE]; byte abBuf[iSignature::SUGGESTED_BLOCK_SIZE * 2];
const int cbToRead = iSignature::SUGGESTED_BLOCK_SIZE;
int cbRead; int cbRead;
container_type::size_type i; container_type::size_type i;
byte* pBuf = abBuf;
if (s_direct)
{
unsigned long mod = (unsigned long)abBuf % iSignature::SUGGESTED_BLOCK_SIZE;
unsigned long offset = (iSignature::SUGGESTED_BLOCK_SIZE - mod);
pBuf = abBuf + offset;
}
// init hash // init hash
for( i = 0; i < mSigList.size(); i++ ) for( i = 0; i < mSigList.size(); i++ )
mSigList[i]->Init(); mSigList[i]->Init();
@ -118,12 +127,12 @@ void cArchiveSigGen::CalculateSignatures( cArchive& a )
// hash data // hash data
do do
{ {
cbRead = a.ReadBlob( abBuf, cbToRead ); cbRead = a.ReadBlob( pBuf, iSignature::SUGGESTED_BLOCK_SIZE );
for( i = 0; i < mSigList.size(); i++ ) for( i = 0; i < mSigList.size(); i++ )
mSigList[i]->Update( abBuf, cbRead ); mSigList[i]->Update( pBuf, cbRead );
} }
while( cbRead == cbToRead ); while( cbRead == iSignature::SUGGESTED_BLOCK_SIZE );
// finalize hash // finalize hash
for( i = 0; i < mSigList.size(); i++ ) for( i = 0; i < mSigList.size(); i++ )
@ -132,12 +141,12 @@ void cArchiveSigGen::CalculateSignatures( cArchive& a )
bool cArchiveSigGen::Hex() bool cArchiveSigGen::Hex()
{ {
return mHex; return s_hex;
} }
void cArchiveSigGen::SetHex(bool hex) void cArchiveSigGen::SetHex(bool hex)
{ {
mHex = hex; s_hex = hex;
} }
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
@ -326,12 +335,9 @@ TSTRING cChecksumSignature::AsString() const
ps_signature = pltob64(local, buf, 2); ps_signature = pltob64(local, buf, 2);
//ps_signature holds base64 representation of mCRC //ps_signature holds base64 representation of mCRC
#ifdef _UNICODE
ret.resize(strlen(ps_signature));
mbstowcs((TCHAR*)ret.data(), ps_signature, strlen(ps_signature));
#else
ret.append(ps_signature); ret.append(ps_signature);
#endif
return ret; return ret;
} }
@ -420,12 +426,7 @@ TSTRING cCRC32Signature::AsString() const
ps_signature = pltob64(&local, buf, 1); ps_signature = pltob64(&local, buf, 1);
//ps_signature holds base64 representation of mCRCInfo.crc //ps_signature holds base64 representation of mCRCInfo.crc
#ifdef _UNICODE
ret.resize(strlen(ps_signature));
mbstowcs((TCHAR*)ret.data(), ps_signature, strlen(ps_signature));
#else
ret.append(ps_signature); ret.append(ps_signature);
#endif
return ret; return ret;
} }
@ -479,7 +480,11 @@ IMPLEMENT_TYPEDSERIALIZABLE(cMD5Signature, _T("cMD5Signature"), 0, 1)
cMD5Signature::cMD5Signature() cMD5Signature::cMD5Signature()
{ {
memset( mMD5Info.digest, 0, sizeof( mMD5Info.digest ) ); #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
memset( mMD5Info.data, 0, sizeof( mMD5Info.data ) );
#else
memset( mMD5Info.digest, 0, sizeof( mMD5Info.digest ) );
#endif
memset( md5_digest, 0, MD5_DIGEST_LENGTH ); memset( md5_digest, 0, MD5_DIGEST_LENGTH );
} }
@ -489,7 +494,9 @@ cMD5Signature::~cMD5Signature()
void cMD5Signature::Init() void cMD5Signature::Init()
{ {
#ifdef HAVE_OPENSSL_MD5_H #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
CC_MD5_Init(&mMD5Info);
#elif HAVE_OPENSSL_MD5_H
MD5_Init( &mMD5Info ); MD5_Init( &mMD5Info );
#else #else
MD5Init( &mMD5Info ); MD5Init( &mMD5Info );
@ -498,7 +505,9 @@ void cMD5Signature::Init()
void cMD5Signature::Update( const byte* const pbData, int cbDataLen ) void cMD5Signature::Update( const byte* const pbData, int cbDataLen )
{ {
#ifdef HAVE_OPENSSL_MD5_H #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
CC_MD5_Update(&mMD5Info, (uint8*)pbData, cbDataLen);
#elif HAVE_OPENSSL_MD5_H
MD5_Update( &mMD5Info, (uint8*)pbData, cbDataLen ); MD5_Update( &mMD5Info, (uint8*)pbData, cbDataLen );
#else #else
MD5Update( &mMD5Info, (uint8*)pbData, cbDataLen ); MD5Update( &mMD5Info, (uint8*)pbData, cbDataLen );
@ -507,7 +516,9 @@ void cMD5Signature::Update( const byte* const pbData, int cbDataLen )
void cMD5Signature::Finit() void cMD5Signature::Finit()
{ {
#ifdef HAVE_OPENSSL_MD5_H #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
CC_MD5_Final(md5_digest, &mMD5Info);
#elif HAVE_OPENSSL_MD5_H
MD5_Final( md5_digest, &mMD5Info ); MD5_Final( md5_digest, &mMD5Info );
#else #else
MD5Final( &mMD5Info ); MD5Final( &mMD5Info );
@ -529,14 +540,7 @@ TSTRING cMD5Signature::AsString() const
btob64((byte*)md5_digest, buf, SIG_BYTE_SIZE*8); btob64((byte*)md5_digest, buf, SIG_BYTE_SIZE*8);
//converting to base64 representation. //converting to base64 representation.
#ifdef _UNICODE //making it TSTRING sensitive
int length;
length = strlen(buf);
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), buf, length);
#else
ret.append(buf); ret.append(buf);
#endif
return ret; return ret;
} }
@ -600,7 +604,10 @@ IMPLEMENT_TYPEDSERIALIZABLE(cSHASignature, _T("cSHASignature"), 0, 1)
cSHASignature::cSHASignature() cSHASignature::cSHASignature()
{ {
memset( &mSHAInfo, 0, sizeof( mSHAInfo ) ); memset( &mSHAInfo, 0, sizeof( mSHAInfo ) );
#ifdef HAVE_OPENSSL_SHA_H
#ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
memset( sha_digest, 0, CC_SHA1_DIGEST_LENGTH );
#elif HAVE_OPENSSL_SHA_H
memset( sha_digest, 0, SHA_DIGEST_LENGTH ); memset( sha_digest, 0, SHA_DIGEST_LENGTH );
#endif #endif
} }
@ -610,7 +617,9 @@ cSHASignature::~cSHASignature()
void cSHASignature::Init() void cSHASignature::Init()
{ {
#ifdef HAVE_OPENSSL_SHA_H #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
CC_SHA1_Init( &mSHAInfo );
#elif HAVE_OPENSSL_SHA_H
SHA1_Init( &mSHAInfo ); SHA1_Init( &mSHAInfo );
#else #else
shsInit( &mSHAInfo ); shsInit( &mSHAInfo );
@ -620,7 +629,9 @@ void cSHASignature::Init()
void cSHASignature::Update( const byte* const pbData, int cbDataLen ) void cSHASignature::Update( const byte* const pbData, int cbDataLen )
{ {
ASSERT( sizeof( byte ) == sizeof( uint8 ) ); ASSERT( sizeof( byte ) == sizeof( uint8 ) );
#ifdef HAVE_OPENSSL_SHA_H #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
CC_SHA1_Update( &mSHAInfo, (uint8*)pbData, cbDataLen );
#elif HAVE_OPENSSL_SHA_H
SHA1_Update( &mSHAInfo, (uint8*)pbData, cbDataLen ); SHA1_Update( &mSHAInfo, (uint8*)pbData, cbDataLen );
#else #else
shsUpdate( &mSHAInfo, (uint8*)pbData, cbDataLen ); shsUpdate( &mSHAInfo, (uint8*)pbData, cbDataLen );
@ -629,7 +640,9 @@ void cSHASignature::Update( const byte* const pbData, int cbDataLen )
void cSHASignature::Finit() void cSHASignature::Finit()
{ {
#ifdef HAVE_OPENSSL_SHA_H #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
CC_SHA1_Final( (unsigned char *)sha_digest, &mSHAInfo );
#elif HAVE_OPENSSL_SHA_H
SHA1_Final( (unsigned char *)sha_digest, &mSHAInfo ); SHA1_Final( (unsigned char *)sha_digest, &mSHAInfo );
#else #else
shsFinal( &mSHAInfo ); shsFinal( &mSHAInfo );
@ -638,7 +651,7 @@ void cSHASignature::Finit()
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// AsString -- Converts to Base64 representation and returns a TSTRING // AsString -- Converts to Base64 representation and returns a TSTRING
#ifdef HAVE_OPENSSL_SHA_H #if defined(HAVE_OPENSSL_SHA_H) || defined(HAVE_COMMONCRYPTO_COMMONDIGEST_H)
TSTRING cSHASignature::AsString(void) const TSTRING cSHASignature::AsString(void) const
{ {
if (cArchiveSigGen::Hex()) if (cArchiveSigGen::Hex())
@ -651,14 +664,7 @@ TSTRING cSHASignature::AsString(void) const
ps_signature = btob64((uint8*)sha_digest, buf, SIG_UINT32_SIZE*sizeof(uint32)*8); ps_signature = btob64((uint8*)sha_digest, buf, SIG_UINT32_SIZE*sizeof(uint32)*8);
//converting to base64 representation. //converting to base64 representation.
#ifdef _UNICODE //making it TSTRING sensitive
int length;
length = strlen(ps_signature);
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), ps_signature, length);
#else
ret.append(ps_signature); ret.append(ps_signature);
#endif
return ret; return ret;
} }
@ -733,13 +739,7 @@ TSTRING cSHASignature::AsString(void) const
ps_signature = pltob64((uint32*)mSHAInfo.digest, buf, SIG_UINT32_SIZE); ps_signature = pltob64((uint32*)mSHAInfo.digest, buf, SIG_UINT32_SIZE);
//converting to base64 representation. //converting to base64 representation.
#ifdef _UNICODE //making it TSTRING sensitive
int length = strlen(ps_signature);
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), ps_signature, length);
#else
ret.append(ps_signature); ret.append(ps_signature);
#endif
return ret; return ret;
//return ret; //return ret;
} }
@ -842,15 +842,7 @@ TSTRING cHAVALSignature::AsString() const
btob64((byte*)mSignature, buf, 128); btob64((byte*)mSignature, buf, 128);
//converting to base64 representation. //converting to base64 representation.
#ifdef _UNICODE //making it TSTRING sensitive
int length;
length = strlen(buf);
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), buf, length);
#else
ret.append(buf); ret.append(buf);
#endif
return ret; return ret;
} }

View File

@ -71,6 +71,12 @@
# endif # endif
#endif #endif
/*Use OSX CommonCrypto lib if available*/
#ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
# include <CommonCrypto/CommonDigest.h>
#endif
#include "core/haval.h" #include "core/haval.h"
// TODO: figure out a way to do this without including these headers. // TODO: figure out a way to do this without including these headers.
// pool of objects? // pool of objects?
@ -150,6 +156,9 @@ public:
static bool Hex(); static bool Hex();
static void SetHex(bool); static void SetHex(bool);
static bool UseDirectIO() { return s_direct; }
static void SetUseDirectIO( bool b ) { s_direct = b; }
private: private:
// don't let C++ create these functions // don't let C++ create these functions
cArchiveSigGen( const cArchiveSigGen& ); cArchiveSigGen( const cArchiveSigGen& );
@ -158,7 +167,8 @@ private:
typedef std::vector< iSignature* > container_type; typedef std::vector< iSignature* > container_type;
container_type mSigList; container_type mSigList;
static bool mHex; static bool s_direct;
static bool s_hex;
}; };
@ -272,8 +282,13 @@ protected:
enum { SIG_BYTE_SIZE = MD5_DIGEST_LENGTH }; enum { SIG_BYTE_SIZE = MD5_DIGEST_LENGTH };
virtual bool IsEqual(const iSignature& rhs) const; virtual bool IsEqual(const iSignature& rhs) const;
#ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
CC_MD5_CTX mMD5Info;
uint8 md5_digest[CC_MD5_DIGEST_LENGTH];
#else
MD5_CTX mMD5Info; MD5_CTX mMD5Info;
uint8 md5_digest[MD5_DIGEST_LENGTH]; uint8 md5_digest[MD5_DIGEST_LENGTH];
#endif
}; };
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
@ -301,10 +316,14 @@ protected:
virtual bool IsEqual(const iSignature& rhs) const; virtual bool IsEqual(const iSignature& rhs) const;
#ifdef HAVE_OPENSSL_SHA_H #ifdef HAVE_COMMONCRYPTO_COMMONDIGEST_H
enum { SIG_UINT32_SIZE = CC_SHA1_DIGEST_LENGTH/4 };
CC_SHA1_CTX mSHAInfo;
uint32 sha_digest[SIG_UINT32_SIZE];
#elif HAVE_OPENSSL_SHA_H
enum { SIG_UINT32_SIZE = SHA_DIGEST_LENGTH/4 }; enum { SIG_UINT32_SIZE = SHA_DIGEST_LENGTH/4 };
SHA_CTX mSHAInfo; SHA_CTX mSHAInfo;
uint32 sha_digest[SHA_DIGEST_LENGTH/4]; uint32 sha_digest[SIG_UINT32_SIZE];
#else #else
enum { SIG_UINT32_SIZE = 5 }; enum { SIG_UINT32_SIZE = 5 };
SHS_INFO mSHAInfo; SHS_INFO mSHAInfo;

View File

@ -1,15 +1,22 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libfs.a noinst_LIBRARIES = libfs.a
libfs_adir=.
libfs_a_SOURCES = \ libfs_a_SOURCES = \
fs.cpp fsdatasourceiter.cpp fserrors.cpp fsfactory.cpp \ fs.cpp fsdatasourceiter.cpp fserrors.cpp fsfactory.cpp \
fsnametranslator.cpp fsobject.cpp fsparserutil.cpp \ fsnametranslator.cpp fsobject.cpp fsparserutil.cpp \
fspropcalc.cpp fspropdisplayer.cpp fspropset.cpp \ fspropcalc.cpp fspropdisplayer.cpp fspropset.cpp \
fsstrings.cpp fsvisitor.cpp stdfs.cpp fsstrings.cpp fsvisitor.cpp stdfs.cpp
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit libfs_a_HEADERS = \
fs.h fsdatasourceiter.h fserrors.h fsfactory.h \
fsnametranslator.h fsobject.h fsparserutil.h \
fspropcalc.h fspropdisplayer.h fspropset.h fsstrings.h \
fsvisitor.h stdfs.h
DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libfs_a_OBJECTS) $(AR) ru ../../lib/libtripwire.a $(libfs_a_OBJECTS)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,17 +14,68 @@
@SET_MAKE@ @SET_MAKE@
SOURCES = $(libfs_a_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -36,20 +87,27 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
subdir = src/fs subdir = src/fs
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(libfs_a_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
LIBRARIES = $(noinst_LIBRARIES) LIBRARIES = $(noinst_LIBRARIES)
AR = ar
ARFLAGS = cru ARFLAGS = cru
AM_V_AR = $(am__v_AR_@AM_V@)
am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
am__v_AR_0 = @echo " AR " $@;
am__v_AR_1 =
libfs_a_AR = $(AR) $(ARFLAGS) libfs_a_AR = $(AR) $(ARFLAGS)
libfs_a_LIBADD = libfs_a_LIBADD =
am_libfs_a_OBJECTS = fs.$(OBJEXT) fsdatasourceiter.$(OBJEXT) \ am_libfs_a_OBJECTS = fs.$(OBJEXT) fsdatasourceiter.$(OBJEXT) \
@ -59,23 +117,95 @@ am_libfs_a_OBJECTS = fs.$(OBJEXT) fsdatasourceiter.$(OBJEXT) \
fspropdisplayer.$(OBJEXT) fspropset.$(OBJEXT) \ fspropdisplayer.$(OBJEXT) fspropset.$(OBJEXT) \
fsstrings.$(OBJEXT) fsvisitor.$(OBJEXT) stdfs.$(OBJEXT) fsstrings.$(OBJEXT) fsvisitor.$(OBJEXT) stdfs.$(OBJEXT)
libfs_a_OBJECTS = $(am_libfs_a_OBJECTS) libfs_a_OBJECTS = $(am_libfs_a_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
CXXLD = $(CXX) CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
-o $@ -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
SOURCES = $(libfs_a_SOURCES) SOURCES = $(libfs_a_SOURCES)
DIST_SOURCES = $(libfs_a_SOURCES) DIST_SOURCES = $(libfs_a_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(libfs_adir)"
HEADERS = $(libfs_a_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -91,7 +221,7 @@ CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
@ -99,6 +229,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -110,6 +241,7 @@ LN = @LN@
LN_S = @LN_S@ LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -126,21 +258,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -170,21 +305,32 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
noinst_LIBRARIES = libfs.a noinst_LIBRARIES = libfs.a
libfs_adir = .
libfs_a_SOURCES = \ libfs_a_SOURCES = \
fs.cpp fsdatasourceiter.cpp fserrors.cpp fsfactory.cpp \ fs.cpp fsdatasourceiter.cpp fserrors.cpp fsfactory.cpp \
fsnametranslator.cpp fsobject.cpp fsparserutil.cpp \ fsnametranslator.cpp fsobject.cpp fsparserutil.cpp \
fspropcalc.cpp fspropdisplayer.cpp fspropset.cpp \ fspropcalc.cpp fspropdisplayer.cpp fspropset.cpp \
fsstrings.cpp fsvisitor.cpp stdfs.cpp fsstrings.cpp fsvisitor.cpp stdfs.cpp
libfs_a_HEADERS = \
fs.h fsdatasourceiter.h fserrors.h fsfactory.h \
fsnametranslator.h fsobject.h fsparserutil.h \
fspropcalc.h fspropdisplayer.h fspropset.h fsstrings.h \
fsvisitor.h stdfs.h
all: all-am all: all-am
.SUFFIXES: .SUFFIXES:
@ -193,15 +339,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/fs/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/fs/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/fs/Makefile $(AUTOMAKE) --foreign src/fs/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -218,13 +363,15 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-noinstLIBRARIES: clean-noinstLIBRARIES:
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
libfs.a: $(libfs_a_OBJECTS) $(libfs_a_DEPENDENCIES)
-rm -f libfs.a libfs.a: $(libfs_a_OBJECTS) $(libfs_a_DEPENDENCIES) $(EXTRA_libfs_a_DEPENDENCIES)
$(libfs_a_AR) libfs.a $(libfs_a_OBJECTS) $(libfs_a_LIBADD) $(AM_V_at)-rm -f libfs.a
$(RANLIB) libfs.a $(AM_V_AR)$(libfs_a_AR) libfs.a $(libfs_a_OBJECTS) $(libfs_a_LIBADD)
$(AM_V_at)$(RANLIB) libfs.a
mostlyclean-compile: mostlyclean-compile:
-rm -f *.$(OBJEXT) -rm -f *.$(OBJEXT)
@ -233,91 +380,121 @@ distclean-compile:
-rm -f *.tab.c -rm -f *.tab.c
.cpp.o: .cpp.o:
$(CXXCOMPILE) -c -o $@ $< $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ $<
.cpp.obj: .cpp.obj:
$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
uninstall-info-am: install-libfs_aHEADERS: $(libfs_a_HEADERS)
@$(NORMAL_INSTALL)
@list='$(libfs_a_HEADERS)'; test -n "$(libfs_adir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(libfs_adir)'"; \
$(MKDIR_P) "$(DESTDIR)$(libfs_adir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libfs_adir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(libfs_adir)" || exit $$?; \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) uninstall-libfs_aHEADERS:
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @$(NORMAL_UNINSTALL)
unique=`for i in $$list; do \ @list='$(libfs_a_HEADERS)'; test -n "$(libfs_adir)" || list=; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
done | \ dir='$(DESTDIR)$(libfs_adir)'; $(am__uninstall_files_from_dir)
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ID: $(am__tagged_files)
$(TAGS_FILES) $(LISP) $(am__define_uniq_tagged_files); mkid -fID $$unique
tags=; \ tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \ here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-am
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile $(LIBRARIES) all-am: Makefile $(LIBRARIES) $(HEADERS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(libfs_adir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
install-data: install-data-am install-data: install-data-am
@ -328,16 +505,22 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -357,18 +540,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am: install-libfs_aHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -387,22 +590,30 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-am: uninstall-libfs_aHEADERS
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ .MAKE: install-am install-strip
clean-noinstLIBRARIES ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \ .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
html-am info info-am install install-am install-data \ clean-noinstLIBRARIES cscopelist-am ctags ctags-am distclean \
install-data-am install-exec install-exec-am install-info \ distclean-compile distclean-generic distclean-tags distdir dvi \
install-info-am install-man install-strip installcheck \ dvi-am html html-am info info-am install install-am \
installcheck-am installdirs maintainer-clean \ install-data install-data-am install-dvi install-dvi-am \
maintainer-clean-generic mostlyclean mostlyclean-compile \ install-exec install-exec-am install-html install-html-am \
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ install-info install-info-am install-libfs_aHEADERS \
uninstall-am uninstall-info-am install-man install-pdf install-pdf-am install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am \
uninstall-libfs_aHEADERS
.PRECIOUS: Makefile
all: $(noinst_LIBRARIES) all: $(noinst_LIBRARIES)
$(AR) ru ../../lib/libtripwire.a $(libfs_a_OBJECTS) $(AR) ru ../../lib/libtripwire.a $(libfs_a_OBJECTS)
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -149,7 +149,7 @@ void cFSDataSourceIter::GetChildrenNames( const TSTRING& strParentName, std::vec
{ {
iFSServices::GetInstance()->ReadDir( strParentName, vChildrenNames, false ); iFSServices::GetInstance()->ReadDir( strParentName, vChildrenNames, false );
} }
catch( eFSServices& e ) catch( eError& e )
{ {
cDebug d("cFSDataSourceIter::GeneratePeers"); cDebug d("cFSDataSourceIter::GeneratePeers");
d.TraceError("**** ReadDir failed for %s\n", strParentName.c_str() ); d.TraceError("**** ReadDir failed for %s\n", strParentName.c_str() );
@ -184,7 +184,7 @@ bool cFSDataSourceIter::InitializeTypeInfo(iFCO* pFCO)
{ {
iFSServices::GetInstance()->Stat( pTrans->ToStringAPI( pObj->GetName() ), statArgs); iFSServices::GetInstance()->Stat( pTrans->ToStringAPI( pObj->GetName() ), statArgs);
} }
catch(eFSServices& e) catch(eError& e)
{ {
cDebug d("CreateObject"); cDebug d("CreateObject");
d.TraceError( "*** Stat of %s failed!!!\n", pObj->GetName().AsString().c_str() ); d.TraceError( "*** Stat of %s failed!!!\n", pObj->GetName().AsString().c_str() );

View File

@ -137,8 +137,8 @@ void cFSParserUtil::InterpretFCOName( const std::list<TSTRING>& l, cFCOName& nam
for( std::list<TSTRING>::const_iterator i = l.begin(); i != l.end(); i++ ) for( std::list<TSTRING>::const_iterator i = l.begin(); i != l.end(); i++ )
strT += *i; strT += *i;
#ifdef __AROS__ #if USES_DEVICE_PATH
strT = cArosPath::AsPosix(strT); strT = cDevicePath::AsPosix(strT);
#endif #endif
// let cFCOName handle interpretation // let cFCOName handle interpretation

View File

@ -45,6 +45,7 @@
#include "fspropcalc.h" #include "fspropcalc.h"
#include "fsobject.h" #include "fsobject.h"
#if IS_UNIX #if IS_UNIX
#include <unistd.h> #include <unistd.h>
#endif #endif
@ -96,9 +97,18 @@ static bool GetSymLinkStr(const cFCOName& fileName, cArchive& arch)
#ifdef _UNICODE #ifdef _UNICODE
#error GetSymLinkStr in fspropcalc.cpp is not unicode compliant #error GetSymLinkStr in fspropcalc.cpp is not unicode compliant
#else // ifdef _UNICODE #else // ifdef _UNICODE
char buf[1024]; char buf[1024];
#if defined(O_PATH)
int fd = open(iTWFactory::GetInstance()->GetNameTranslator()->ToStringAPI( fileName ).c_str(),
(O_PATH | O_NOFOLLOW | O_NOATIME));
int rtn = readlinkat(fd, 0, buf, 1024);
close(fd);
#else
int rtn = readlink( iTWFactory::GetInstance()->GetNameTranslator()->ToStringAPI( fileName ).c_str(), int rtn = readlink( iTWFactory::GetInstance()->GetNameTranslator()->ToStringAPI( fileName ).c_str(),
buf, 1024 ); buf, 1024 );
#endif
if(rtn == -1) if(rtn == -1)
return false; return false;
@ -167,7 +177,7 @@ void cFSPropCalc::VisitFSObject(cFSObject& obj)
bDidStat = true; bDidStat = true;
} }
} }
catch(eFSServices& e) catch(eError& e)
{ {
d.TraceError("Error getting stat info for %s : %s\n", strName.c_str(), e.GetMsg().c_str()); d.TraceError("Error getting stat info for %s : %s\n", strName.c_str(), e.GetMsg().c_str());
@ -268,6 +278,8 @@ void cFSPropCalc::VisitFSObject(cFSObject& obj)
} }
} }
bool hash_success = false;
// if the file type is not a regular file, we will // if the file type is not a regular file, we will
// not try to open the file for signature generation // not try to open the file for signature generation
ASSERT( propSet.GetValidVector().ContainsItem(cFSPropSet::PROP_FILETYPE) ); ASSERT( propSet.GetValidVector().ContainsItem(cFSPropSet::PROP_FILETYPE) );
@ -283,7 +295,8 @@ void cFSPropCalc::VisitFSObject(cFSObject& obj)
cFileArchive arch; cFileArchive arch;
cMemoryArchive memArch; cMemoryArchive memArch;
cBidirArchive* pTheArch; cBidirArchive* pTheArch;
bool bInitSuccess = true; hash_success = true;
if(propSet.GetFileType() == cFSPropSet::FT_SYMLINK) if(propSet.GetFileType() == cFSPropSet::FT_SYMLINK)
{ {
pTheArch = &memArch; pTheArch = &memArch;
@ -292,7 +305,7 @@ void cFSPropCalc::VisitFSObject(cFSObject& obj)
// add it to the bucket... // add it to the bucket...
if(mpErrorBucket) if(mpErrorBucket)
mpErrorBucket->AddError( eArchiveOpen( strName, iFSServices::GetInstance()->GetErrString(), eError::NON_FATAL ) ); mpErrorBucket->AddError( eArchiveOpen( strName, iFSServices::GetInstance()->GetErrString(), eError::NON_FATAL ) );
bInitSuccess = false; hash_success = false;
} }
} }
@ -300,22 +313,24 @@ void cFSPropCalc::VisitFSObject(cFSObject& obj)
{ {
pTheArch = &arch; pTheArch = &arch;
try try
{ {
arch.OpenRead(strName.c_str(), cFileArchive::FA_NONBLOCKING); arch.OpenRead(strName.c_str(), ((mCalcFlags & iFCOPropCalc::DIRECT_IO) ?
cFileArchive::FA_SCANNING | cFileArchive::FA_DIRECT :
cFileArchive::FA_SCANNING) );
} }
catch (eArchive&) catch (eError&)
{ {
// add it to the bucket... // add it to the bucket...
if(mpErrorBucket) if(mpErrorBucket)
mpErrorBucket->AddError( eArchiveOpen( strName, iFSServices::GetInstance()->GetErrString(), eError::NON_FATAL ) ); mpErrorBucket->AddError( eArchiveOpen( strName, iFSServices::GetInstance()->GetErrString(), eError::NON_FATAL ) );
bInitSuccess = false; hash_success = false;
} }
} }
// //
// if we have successfully initialized the archive // if we have successfully initialized the archive
// //
if (bInitSuccess) if (hash_success)
{ {
cArchiveSigGen asg; cArchiveSigGen asg;
@ -346,13 +361,26 @@ void cFSPropCalc::VisitFSObject(cFSObject& obj)
// //
// calculate the signatures // calculate the signatures
// //
pTheArch->Seek( 0, cBidirArchive::BEGINNING ); try
asg.CalculateSignatures( *pTheArch ); {
arch.Close(); pTheArch->Seek( 0, cBidirArchive::BEGINNING );
asg.CalculateSignatures( *pTheArch );
arch.Close();
}
catch (eError& e)
{
d.TraceError("Error generating hashes for %s : %s\n", strName.c_str(), e.GetMsg().c_str());
e.SetFatality(false);
if(mpErrorBucket)
mpErrorBucket->AddError(e);
hash_success = false;
}
} }
} }
} }
else
if (!hash_success)
{ {
// We can't calculate signatures, set them to undefined // We can't calculate signatures, set them to undefined
if (propsToCheck.ContainsItem(cFSPropSet::PROP_CRC32)) if (propsToCheck.ContainsItem(cFSPropSet::PROP_CRC32))

View File

@ -73,6 +73,7 @@ public:
virtual int GetCalcFlags() const; virtual int GetCalcFlags() const;
virtual void SetCalcFlags( int i ); virtual void SetCalcFlags( int i );
private: private:
cFSPropCalc( const cFSPropCalc& ); cFSPropCalc( const cFSPropCalc& );
void operator =( const cFSPropCalc& ); void operator =( const cFSPropCalc& );

View File

@ -270,7 +270,7 @@ void cFSPropDisplayer::InitForProp( const iFCO* const pFCO, const int propIdx)
if( ! GetUsername( i64UID, tstrDummy ) ) if( ! GetUsername( i64UID, tstrDummy ) )
{ {
TSTRING tstrUsername; TSTRING tstrUsername;
if( iFSServices::GetInstance()->GetOwnerForFile( pFCO->GetName().AsString(), tstrUsername ) ) if( iFSServices::GetInstance()->GetUserName( i64UID, tstrUsername ) )
AddUsernameMapping ( i64UID, tstrUsername ); AddUsernameMapping ( i64UID, tstrUsername );
else else
AddUsernameMapping ( i64UID, _T("") ); // on failure, enter error value into mapping so we don't search for this value again. AddUsernameMapping ( i64UID, _T("") ); // on failure, enter error value into mapping so we don't search for this value again.
@ -286,7 +286,7 @@ void cFSPropDisplayer::InitForProp( const iFCO* const pFCO, const int propIdx)
if( ! GetGroupname( i64GID, tstrDummy ) ) if( ! GetGroupname( i64GID, tstrDummy ) )
{ {
TSTRING tstrGroupname; TSTRING tstrGroupname;
if( iFSServices::GetInstance()->GetGroupForFile( pFCO->GetName().AsString(), tstrGroupname ) ) if( iFSServices::GetInstance()->GetGroupName( i64GID, tstrGroupname ) )
AddGroupnameMapping( i64GID, tstrGroupname ); AddGroupnameMapping( i64GID, tstrGroupname );
else else
AddGroupnameMapping( i64GID, _T("") ); // on failure, enter error value into mapping so we don't search for this value again. AddGroupnameMapping( i64GID, _T("") ); // on failure, enter error value into mapping so we don't search for this value again.

View File

@ -1,17 +1,21 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
AM_INSTALL_PROGRAM_FLAGS = -m 755 AM_INSTALL_PROGRAM_FLAGS = -m 755
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
LIBS = -ltripwire -lcryptlib @LIBS@ LIBS = -ltripwire -lcryptlib @LIBS@
LDFLAGS = @LDFLAGS@ -L../../lib LDFLAGS = @LDFLAGS@ -L../../lib
LN_S = @LN@ LN_S = @LN@
sbin_PROGRAMS = siggen sbin_PROGRAMS = siggen
siggendir=.
siggen_SOURCES = \ siggen_SOURCES = \
siggen.cpp siggencmdline.cpp siggenmain.cpp \ siggen.cpp siggencmdline.cpp siggenmain.cpp \
siggenstrings.cpp stdsiggen.cpp siggenstrings.cpp stdsiggen.cpp
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit siggen_HEADERS = \
siggen.h siggencmdline.h siggenstrings.h stdsiggen.h
DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
CLEANFILES = ../../bin/siggen CLEANFILES = ../../bin/siggen
all: $(sbin_PROGRAMS) all: $(sbin_PROGRAMS)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,17 +14,68 @@
@SET_MAKE@ @SET_MAKE@
SOURCES = $(siggen_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -36,43 +87,117 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
sbin_PROGRAMS = siggen$(EXEEXT) sbin_PROGRAMS = siggen$(EXEEXT)
subdir = src/siggen subdir = src/siggen
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(siggen_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
am__installdirs = "$(DESTDIR)$(sbindir)" CONFIG_CLEAN_VPATH_FILES =
sbinPROGRAMS_INSTALL = $(INSTALL_PROGRAM) am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(siggendir)"
PROGRAMS = $(sbin_PROGRAMS) PROGRAMS = $(sbin_PROGRAMS)
am_siggen_OBJECTS = siggen.$(OBJEXT) siggencmdline.$(OBJEXT) \ am_siggen_OBJECTS = siggen.$(OBJEXT) siggencmdline.$(OBJEXT) \
siggenmain.$(OBJEXT) siggenstrings.$(OBJEXT) \ siggenmain.$(OBJEXT) siggenstrings.$(OBJEXT) \
stdsiggen.$(OBJEXT) stdsiggen.$(OBJEXT)
siggen_OBJECTS = $(am_siggen_OBJECTS) siggen_OBJECTS = $(am_siggen_OBJECTS)
siggen_LDADD = $(LDADD) siggen_LDADD = $(LDADD)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
CXXLD = $(CXX) CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
-o $@ -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
SOURCES = $(siggen_SOURCES) SOURCES = $(siggen_SOURCES)
DIST_SOURCES = $(siggen_SOURCES) DIST_SOURCES = $(siggen_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
HEADERS = $(siggen_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -88,7 +213,7 @@ CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
@ -96,6 +221,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -107,6 +233,7 @@ LN = @LN@
LN_S = @LN@ LN_S = @LN@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -123,21 +250,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -167,19 +297,27 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
AM_INSTALL_PROGRAM_FLAGS = -m 755 AM_INSTALL_PROGRAM_FLAGS = -m 755
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
siggendir = .
siggen_SOURCES = \ siggen_SOURCES = \
siggen.cpp siggencmdline.cpp siggenmain.cpp \ siggen.cpp siggencmdline.cpp siggenmain.cpp \
siggenstrings.cpp stdsiggen.cpp siggenstrings.cpp stdsiggen.cpp
siggen_HEADERS = \
siggen.h siggencmdline.h siggenstrings.h stdsiggen.h
CLEANFILES = ../../bin/siggen CLEANFILES = ../../bin/siggen
all: all-am all: all-am
@ -189,15 +327,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/siggen/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/siggen/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/siggen/Makefile $(AUTOMAKE) --foreign src/siggen/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -214,32 +351,53 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-sbinPROGRAMS: $(sbin_PROGRAMS) install-sbinPROGRAMS: $(sbin_PROGRAMS)
@$(NORMAL_INSTALL) @$(NORMAL_INSTALL)
test -z "$(sbindir)" || $(mkdir_p) "$(DESTDIR)$(sbindir)" @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \
@list='$(sbin_PROGRAMS)'; for p in $$list; do \ if test -n "$$list"; then \
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \
if test -f $$p \ $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \
; then \ fi; \
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ for p in $$list; do echo "$$p $$p"; done | \
echo " $(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(sbindir)/$$f'"; \ sed 's/$(EXEEXT)$$//' | \
$(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(sbindir)/$$f" || exit 1; \ while read p p1; do if test -f $$p \
else :; fi; \ ; then echo "$$p"; echo "$$p"; else :; fi; \
done done | \
sed -e 'p;s,.*/,,;n;h' \
-e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) files[d] = files[d] " " $$1; \
else { print "f", $$3 "/" $$4, $$1; } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \
} \
; done
uninstall-sbinPROGRAMS: uninstall-sbinPROGRAMS:
@$(NORMAL_UNINSTALL) @$(NORMAL_UNINSTALL)
@list='$(sbin_PROGRAMS)'; for p in $$list; do \ @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ files=`for p in $$list; do echo "$$p"; done | \
echo " rm -f '$(DESTDIR)$(sbindir)/$$f'"; \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
rm -f "$(DESTDIR)$(sbindir)/$$f"; \ -e 's/$$/$(EXEEXT)/' \
done `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(sbindir)" && rm -f $$files
clean-sbinPROGRAMS: clean-sbinPROGRAMS:
-test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS)
siggen$(EXEEXT): $(siggen_OBJECTS) $(siggen_DEPENDENCIES)
siggen$(EXEEXT): $(siggen_OBJECTS) $(siggen_DEPENDENCIES) $(EXTRA_siggen_DEPENDENCIES)
@rm -f siggen$(EXEEXT) @rm -f siggen$(EXEEXT)
$(CXXLINK) $(siggen_LDFLAGS) $(siggen_OBJECTS) $(siggen_LDADD) $(LIBS) $(AM_V_CXXLD)$(CXXLINK) $(siggen_OBJECTS) $(siggen_LDADD) $(LIBS)
mostlyclean-compile: mostlyclean-compile:
-rm -f *.$(OBJEXT) -rm -f *.$(OBJEXT)
@ -248,93 +406,120 @@ distclean-compile:
-rm -f *.tab.c -rm -f *.tab.c
.cpp.o: .cpp.o:
$(CXXCOMPILE) -c -o $@ $< $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ $<
.cpp.obj: .cpp.obj:
$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
uninstall-info-am: install-siggenHEADERS: $(siggen_HEADERS)
@$(NORMAL_INSTALL)
@list='$(siggen_HEADERS)'; test -n "$(siggendir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(siggendir)'"; \
$(MKDIR_P) "$(DESTDIR)$(siggendir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(siggendir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(siggendir)" || exit $$?; \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) uninstall-siggenHEADERS:
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @$(NORMAL_UNINSTALL)
unique=`for i in $$list; do \ @list='$(siggen_HEADERS)'; test -n "$(siggendir)" || list=; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
done | \ dir='$(DESTDIR)$(siggendir)'; $(am__uninstall_files_from_dir)
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ID: $(am__tagged_files)
$(TAGS_FILES) $(LISP) $(am__define_uniq_tagged_files); mkid -fID $$unique
tags=; \ tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \ here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-am
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile $(PROGRAMS) all-am: Makefile $(PROGRAMS) $(HEADERS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(sbindir)"; do \ for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(siggendir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
@ -346,17 +531,23 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -376,18 +567,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am: install-siggenHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-sbinPROGRAMS install-exec-am: install-sbinPROGRAMS
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -406,22 +617,30 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-sbinPROGRAMS uninstall-am: uninstall-sbinPROGRAMS uninstall-siggenHEADERS
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ .MAKE: install-am install-strip
clean-sbinPROGRAMS ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \ .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
html-am info info-am install install-am install-data \ clean-sbinPROGRAMS cscopelist-am ctags ctags-am distclean \
install-data-am install-exec install-exec-am install-info \ distclean-compile distclean-generic distclean-tags distdir dvi \
install-info-am install-man install-sbinPROGRAMS install-strip \ dvi-am html html-am info info-am install install-am \
installcheck installcheck-am installdirs maintainer-clean \ install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-ps install-ps-am install-sbinPROGRAMS \
install-siggenHEADERS install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \ maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-info-am uninstall-sbinPROGRAMS uninstall-am uninstall-sbinPROGRAMS uninstall-siggenHEADERS
.PRECIOUS: Makefile
all: $(sbin_PROGRAMS) all: $(sbin_PROGRAMS)
@test -d ../../bin && $(LN) -f $(sbin_PROGRAMS) ../../bin @test -d ../../bin && $(LN) -f $(sbin_PROGRAMS) ../../bin
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

Binary file not shown.

View File

@ -1,47 +0,0 @@
//
// The developer of the original code and/or files is Tripwire, Inc.
// Portions created by Tripwire, Inc. are copyright (C) 2000 Tripwire,
// Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights
// reserved.
//
// This program is free software. The contents of this file are subject
// to 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. You may redistribute it and/or modify it
// only in compliance with the GNU General Public License.
//
// This program is distributed in the hope that it will be useful.
// However, this program is distributed AS-IS WITHOUT ANY
// WARRANTY; INCLUDING THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS
// FOR A PARTICULAR PURPOSE. Please 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
//
// Nothing in the GNU General Public License or any other license to use
// the code or files shall permit you to use Tripwire's trademarks,
// service marks, or other intellectual property without Tripwire's
// prior written consent.
//
// If you have any questions, please contact Tripwire, Inc. at either
// info@tripwire.org or www.tripwire.org.
//
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by Script2.rc
//
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 102
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1000
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif

View File

@ -50,8 +50,10 @@
#if IS_UNIX #if IS_UNIX
#include <unistd.h> #include <unistd.h>
#include <fcntl.h> #include <fcntl.h>
#include <termios.h> #if SUPPORTS_TERMIOS
#include <sys/ioctl.h> # include <termios.h>
# include <sys/ioctl.h>
#endif
//#include <signal.h> //#include <signal.h>
int _getch(void); int _getch(void);
#endif #endif

View File

@ -42,6 +42,12 @@
#include "stdsiggen.h" #include "stdsiggen.h"
#include "siggenstrings.h" #include "siggenstrings.h"
#if IS_AROS
# define VERSION_PREFIX "$VER: "
#else
# define VERSION_PREFIX "@(#)"
#endif
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// String Table // String Table
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -62,10 +68,11 @@ TSS_BeginStringtable( cSiggen )
_T("\n") _T("\n")
), ),
TSS_StringEntry( siggen::STR_SIGGEN_VERSION, _T("siggen: Display signature function values. \n")), TSS_StringEntry( siggen::STR_SIGGEN_VERSION, _T("siggen: Display signature function values. \n")),
TSS_StringEntry( siggen::STR_EMBEDDED_VERSION, _T(VERSION_PREFIX "siggen " PACKAGE_VERSION)),
TSS_StringEntry( siggen::STR_ERR_OPEN_FAILED, _T("File could not be opened") ), TSS_StringEntry( siggen::STR_ERR_OPEN_FAILED, _T("File could not be opened") ),
TSS_StringEntry( siggen::STR_ERR_NO_FILE, _T("File does not exist") ), TSS_StringEntry( siggen::STR_ERR_NO_FILE, _T("File does not exist") ),
TSS_StringEntry( siggen::STR_SIGGEN_NOT_REG_FILE, _T(" is not a regular file; ignoring.") ) TSS_StringEntry( siggen::STR_SIGGEN_NOT_REG_FILE, _T(" is not a regular file; ignoring.") )
TSS_EndStringtable( cSiggen ) TSS_EndStringtable( cSiggen )
// eof: siggenstrings.cpp // eof: siggenstrings.cpp

View File

@ -45,7 +45,8 @@
TSS_BeginStringIds( siggen ) TSS_BeginStringIds( siggen )
STR_SIGGEN_USAGE, STR_SIGGEN_USAGE,
STR_SIGGEN_VERSION, STR_SIGGEN_VERSION,
STR_EMBEDDED_VERSION,
STR_SIGGEN_NOT_REG_FILE, STR_SIGGEN_NOT_REG_FILE,
STR_ERR_NO_FILE, STR_ERR_NO_FILE,
STR_ERR_OPEN_FAILED STR_ERR_OPEN_FAILED

View File

@ -1,19 +1,25 @@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
AM_INSTALL_PROGRAM_FLAGS = -m 755 AM_INSTALL_PROGRAM_FLAGS = -m 755
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
LIBS = -ltripwire -lcryptlib @LIBS@ LIBS = -ltripwire -lcryptlib @LIBS@
LDFLAGS = @LDFLAGS@ -L../../lib LDFLAGS = @LDFLAGS@ -L../../lib
LN_S = @LN@ LN_S = @LN@
sbin_PROGRAMS = tripwire sbin_PROGRAMS = tripwire
tripwiredir=.
tripwire_SOURCES = \ tripwire_SOURCES = \
generatedb.cpp integritycheck.cpp mailmessage.cpp pipedmailmessage.cpp \ generatedb.cpp integritycheck.cpp mailmessage.cpp pipedmailmessage.cpp \
policyupdate.cpp smtpmailmessage.cpp stdtripwire.cpp syslog_trip.cpp \ policyupdate.cpp smtpmailmessage.cpp stdtripwire.cpp syslog_trip.cpp \
tripwire.cpp tripwireerrors.cpp tripwiremain.cpp tripwirestrings.cpp \ tripwire.cpp tripwireerrors.cpp tripwiremain.cpp tripwirestrings.cpp \
tripwireutil.cpp twcmdline.cpp twcmdlineutil.cpp updatedb.cpp tripwireutil.cpp twcmdline.cpp twcmdlineutil.cpp updatedb.cpp
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit tripwire_HEADERS = \
generatedb.h integritycheck.h mailmessage.h policyupdate.h resource.h \
stdtripwire.h syslog_trip.h tripwire.h tripwireerrors.h tripwiremsg.h \
tripwirestrings.h tripwireutil.h twcmdline.h twcmdlineutil.h updatedb.h
DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
CLEANFILES = ../../bin/tripwire ../../lib/libtripwire.a CLEANFILES = ../../bin/tripwire ../../lib/libtripwire.a
all: $(sbin_PROGRAMS) all: $(sbin_PROGRAMS)

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am. # Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994-2014 Free Software Foundation, Inc.
# 2003, 2004 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
@ -14,17 +14,68 @@
@SET_MAKE@ @SET_MAKE@
SOURCES = $(tripwire_SOURCES)
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../.. pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@ -36,20 +87,23 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
target_triplet = @target@
sbin_PROGRAMS = tripwire$(EXEEXT) sbin_PROGRAMS = tripwire$(EXEEXT)
subdir = src/tripwire subdir = src/tripwire
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.in $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(tripwire_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
am__installdirs = "$(DESTDIR)$(sbindir)" CONFIG_CLEAN_VPATH_FILES =
sbinPROGRAMS_INSTALL = $(INSTALL_PROGRAM) am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(tripwiredir)"
PROGRAMS = $(sbin_PROGRAMS) PROGRAMS = $(sbin_PROGRAMS)
am_tripwire_OBJECTS = generatedb.$(OBJEXT) integritycheck.$(OBJEXT) \ am_tripwire_OBJECTS = generatedb.$(OBJEXT) integritycheck.$(OBJEXT) \
mailmessage.$(OBJEXT) pipedmailmessage.$(OBJEXT) \ mailmessage.$(OBJEXT) pipedmailmessage.$(OBJEXT) \
@ -60,23 +114,94 @@ am_tripwire_OBJECTS = generatedb.$(OBJEXT) integritycheck.$(OBJEXT) \
twcmdline.$(OBJEXT) twcmdlineutil.$(OBJEXT) updatedb.$(OBJEXT) twcmdline.$(OBJEXT) twcmdlineutil.$(OBJEXT) updatedb.$(OBJEXT)
tripwire_OBJECTS = $(am_tripwire_OBJECTS) tripwire_OBJECTS = $(am_tripwire_OBJECTS)
tripwire_LDADD = $(LDADD) tripwire_LDADD = $(LDADD)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = depcomp =
am__depfiles_maybe = am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
CXXLD = $(CXX) CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
-o $@ -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
SOURCES = $(tripwire_SOURCES) SOURCES = $(tripwire_SOURCES)
DIST_SOURCES = $(tripwire_SOURCES) DIST_SOURCES = $(tripwire_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
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 = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
HEADERS = $(tripwire_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags ETAGS = etags
CTAGS = ctags CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
@ -92,7 +217,7 @@ CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ # This gets rid of the -I. so INCLUDES must be more explicit DEFS = @DEFS@ # This gets rid of the -I. so AM_CPPFLAGS must be more explicit
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
@ -100,6 +225,7 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
GREP = @GREP@ GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -111,6 +237,7 @@ LN = @LN@
LN_S = @LN@ LN_S = @LN@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
@ -127,21 +254,24 @@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
YFLAGS = @YFLAGS@ YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@ build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@ build_cpu = @build_cpu@
build_os = @build_os@ build_os = @build_os@
build_vendor = @build_vendor@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
@ -171,21 +301,31 @@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target = @target@ target = @target@
target_alias = @target_alias@ target_alias = @target_alias@
target_cpu = @target_cpu@ target_cpu = @target_cpu@
target_os = @target_os@ target_os = @target_os@
target_vendor = @target_vendor@ target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies AUTOMAKE_OPTIONS = foreign no-dependencies
AM_INSTALL_PROGRAM_FLAGS = -m 755 AM_INSTALL_PROGRAM_FLAGS = -m 755
INCLUDES = -I.. AM_CPPFLAGS = -I$(srcdir)/..
tripwiredir = .
tripwire_SOURCES = \ tripwire_SOURCES = \
generatedb.cpp integritycheck.cpp mailmessage.cpp pipedmailmessage.cpp \ generatedb.cpp integritycheck.cpp mailmessage.cpp pipedmailmessage.cpp \
policyupdate.cpp smtpmailmessage.cpp stdtripwire.cpp syslog_trip.cpp \ policyupdate.cpp smtpmailmessage.cpp stdtripwire.cpp syslog_trip.cpp \
tripwire.cpp tripwireerrors.cpp tripwiremain.cpp tripwirestrings.cpp \ tripwire.cpp tripwireerrors.cpp tripwiremain.cpp tripwirestrings.cpp \
tripwireutil.cpp twcmdline.cpp twcmdlineutil.cpp updatedb.cpp tripwireutil.cpp twcmdline.cpp twcmdlineutil.cpp updatedb.cpp
tripwire_HEADERS = \
generatedb.h integritycheck.h mailmessage.h policyupdate.h resource.h \
stdtripwire.h syslog_trip.h tripwire.h tripwireerrors.h tripwiremsg.h \
tripwirestrings.h tripwireutil.h twcmdline.h twcmdlineutil.h updatedb.h
CLEANFILES = ../../bin/tripwire ../../lib/libtripwire.a CLEANFILES = ../../bin/tripwire ../../lib/libtripwire.a
all: all-am all: all-am
@ -195,15 +335,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& exit 0; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/tripwire/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/tripwire/Makefile'; \
cd $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/tripwire/Makefile $(AUTOMAKE) --foreign src/tripwire/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
@ -220,32 +359,53 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-sbinPROGRAMS: $(sbin_PROGRAMS) install-sbinPROGRAMS: $(sbin_PROGRAMS)
@$(NORMAL_INSTALL) @$(NORMAL_INSTALL)
test -z "$(sbindir)" || $(mkdir_p) "$(DESTDIR)$(sbindir)" @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \
@list='$(sbin_PROGRAMS)'; for p in $$list; do \ if test -n "$$list"; then \
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \
if test -f $$p \ $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \
; then \ fi; \
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ for p in $$list; do echo "$$p $$p"; done | \
echo " $(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(sbindir)/$$f'"; \ sed 's/$(EXEEXT)$$//' | \
$(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(sbindir)/$$f" || exit 1; \ while read p p1; do if test -f $$p \
else :; fi; \ ; then echo "$$p"; echo "$$p"; else :; fi; \
done done | \
sed -e 'p;s,.*/,,;n;h' \
-e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) files[d] = files[d] " " $$1; \
else { print "f", $$3 "/" $$4, $$1; } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \
} \
; done
uninstall-sbinPROGRAMS: uninstall-sbinPROGRAMS:
@$(NORMAL_UNINSTALL) @$(NORMAL_UNINSTALL)
@list='$(sbin_PROGRAMS)'; for p in $$list; do \ @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ files=`for p in $$list; do echo "$$p"; done | \
echo " rm -f '$(DESTDIR)$(sbindir)/$$f'"; \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
rm -f "$(DESTDIR)$(sbindir)/$$f"; \ -e 's/$$/$(EXEEXT)/' \
done `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(sbindir)" && rm -f $$files
clean-sbinPROGRAMS: clean-sbinPROGRAMS:
-test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS)
tripwire$(EXEEXT): $(tripwire_OBJECTS) $(tripwire_DEPENDENCIES)
tripwire$(EXEEXT): $(tripwire_OBJECTS) $(tripwire_DEPENDENCIES) $(EXTRA_tripwire_DEPENDENCIES)
@rm -f tripwire$(EXEEXT) @rm -f tripwire$(EXEEXT)
$(CXXLINK) $(tripwire_LDFLAGS) $(tripwire_OBJECTS) $(tripwire_LDADD) $(LIBS) $(AM_V_CXXLD)$(CXXLINK) $(tripwire_OBJECTS) $(tripwire_LDADD) $(LIBS)
mostlyclean-compile: mostlyclean-compile:
-rm -f *.$(OBJEXT) -rm -f *.$(OBJEXT)
@ -254,93 +414,120 @@ distclean-compile:
-rm -f *.tab.c -rm -f *.tab.c
.cpp.o: .cpp.o:
$(CXXCOMPILE) -c -o $@ $< $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ $<
.cpp.obj: .cpp.obj:
$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` $(AM_V_CXX)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
uninstall-info-am: install-tripwireHEADERS: $(tripwire_HEADERS)
@$(NORMAL_INSTALL)
@list='$(tripwire_HEADERS)'; test -n "$(tripwiredir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(tripwiredir)'"; \
$(MKDIR_P) "$(DESTDIR)$(tripwiredir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(tripwiredir)'"; \
$(INSTALL_HEADER) $$files "$(DESTDIR)$(tripwiredir)" || exit $$?; \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) uninstall-tripwireHEADERS:
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @$(NORMAL_UNINSTALL)
unique=`for i in $$list; do \ @list='$(tripwire_HEADERS)'; test -n "$(tripwiredir)" || list=; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
done | \ dir='$(DESTDIR)$(tripwiredir)'; $(am__uninstall_files_from_dir)
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ID: $(am__tagged_files)
$(TAGS_FILES) $(LISP) $(am__define_uniq_tagged_files); mkid -fID $$unique
tags=; \ tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \ here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ $(am__define_uniq_tagged_files); \
unique=`for i in $$list; do \ shift; \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \ test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ if test $$# -gt 0; then \
$$tags $$unique; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi fi
ctags: CTAGS ctags: ctags-am
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP) CTAGS: ctags
tags=; \ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
here=`pwd`; \ $(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ test -z "$(CTAGS_ARGS)$$unique" \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique $$unique
GTAGS: GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \ here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \ && $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags: distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; for file in $$list; do \ list='$(DISTFILES)'; \
case $$file in \ dist_files=`for file in $$list; do echo $$file; done | \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ sed -e "s|^$$srcdirstrip/||;t" \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
esac; \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f $(distdir)/$$file \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file $(distdir)/$$file \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile $(PROGRAMS) all-am: Makefile $(PROGRAMS) $(HEADERS)
installdirs: installdirs:
for dir in "$(DESTDIR)$(sbindir)"; do \ for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(tripwiredir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done done
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
@ -352,17 +539,23 @@ install-am: all-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ if test -z '$(STRIP)'; then \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic: distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@ -382,18 +575,38 @@ dvi-am:
html: html-am html: html-am
html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am: install-tripwireHEADERS
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-sbinPROGRAMS install-exec-am: install-sbinPROGRAMS
install-html: install-html-am
install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am:
install-man: install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
@ -412,22 +625,30 @@ ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-info-am uninstall-sbinPROGRAMS uninstall-am: uninstall-sbinPROGRAMS uninstall-tripwireHEADERS
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ .MAKE: install-am install-strip
clean-sbinPROGRAMS ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \ .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
html-am info info-am install install-am install-data \ clean-sbinPROGRAMS cscopelist-am ctags ctags-am distclean \
install-data-am install-exec install-exec-am install-info \ distclean-compile distclean-generic distclean-tags distdir dvi \
install-info-am install-man install-sbinPROGRAMS install-strip \ dvi-am html html-am info info-am install install-am \
installcheck installcheck-am installdirs maintainer-clean \ install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-ps install-ps-am install-sbinPROGRAMS \
install-strip install-tripwireHEADERS installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \ maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-info-am uninstall-sbinPROGRAMS uninstall-am uninstall-sbinPROGRAMS uninstall-tripwireHEADERS
.PRECIOUS: Makefile
all: $(sbin_PROGRAMS) all: $(sbin_PROGRAMS)
@test -d ../../bin && $(LN) -f $(sbin_PROGRAMS) ../../bin @test -d ../../bin && $(LN) -f $(sbin_PROGRAMS) ../../bin
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -147,6 +147,11 @@ void cGenerateDb::Execute( const cFCOSpecList& specList, cHierDatabase& db, iFCO
dbIter.SetIterFlags( iFCODataSourceIter::DO_NOT_MODIFY_OBJECTS ); dbIter.SetIterFlags( iFCODataSourceIter::DO_NOT_MODIFY_OBJECTS );
pDSIter->SetIterFlags( iFCODataSourceIter::DO_NOT_MODIFY_OBJECTS ); pDSIter->SetIterFlags( iFCODataSourceIter::DO_NOT_MODIFY_OBJECTS );
} }
if (flags & FLAG_DIRECT_IO)
{
pPC->SetCalcFlags( pPC->GetCalcFlags() | iFCOPropCalc::DIRECT_IO);
}
// //
// iterate over all of the specs... // iterate over all of the specs...

View File

@ -54,10 +54,12 @@ public:
enum Flags enum Flags
{ {
FLAG_ERASE_FOOTPRINTS_GD = 0x00000001 FLAG_ERASE_FOOTPRINTS_GD = 0x00000001,
// when this flag is set, cGenerateDb will attempt to leave no footprints when // when this flag is set, cGenerateDb will attempt to leave no footprints when
// creating the database for instance, cGenerateDb will tell the property calculator // creating the database for instance, cGenerateDb will tell the property calculator
// to reset access times. // to reset access times.
FLAG_DIRECT_IO = 0x00000002
// Use direct i/o when scanning files
}; };
}; };

Some files were not shown because too many files have changed in this diff Show More