mirror of
https://github.com/tcsenpai/awesome-linux-binaries.git
synced 2025-06-03 16:20:02 +00:00
Added detox
This commit is contained in:
parent
ff419ba6d9
commit
e4d14a652a
@ -1,3 +1,12 @@
|
||||
# Dynamic and updating list of prebuilt linux binaries
|
||||
|
||||
## Content
|
||||
|
||||
### Utilities
|
||||
|
||||
#### detox
|
||||
*ensures a filename is sanitized*
|
||||
cd detox && ./install.sh
|
||||
**USAGE: detox -h**
|
||||
|
||||
|
||||
|
3
detox/install.sh
Executable file
3
detox/install.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
cd latest
|
||||
sudo make install
|
977
detox/latest/Makefile
Normal file
977
detox/latest/Makefile
Normal file
@ -0,0 +1,977 @@
|
||||
# Makefile.in generated by automake 1.16.1 from Makefile.am.
|
||||
# Makefile. Generated from Makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994-2018 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
|
||||
|
||||
|
||||
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)/detox
|
||||
pkgincludedir = $(includedir)/detox
|
||||
pkglibdir = $(libdir)/detox
|
||||
pkglibexecdir = $(libexecdir)/detox
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
subdir = .
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
|
||||
$(am__configure_deps) $(dist_doc_DATA) $(dist_pkgdata_DATA) \
|
||||
$(dist_sysconf_DATA) $(am__DIST_COMMON)
|
||||
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
||||
configure.lineno config.status.lineno
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/src/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
||||
ctags-recursive dvi-recursive html-recursive info-recursive \
|
||||
install-data-recursive install-dvi-recursive \
|
||||
install-exec-recursive install-html-recursive \
|
||||
install-info-recursive install-pdf-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
|
||||
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; }; \
|
||||
}
|
||||
man1dir = $(mandir)/man1
|
||||
am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" \
|
||||
"$(DESTDIR)$(docdir)" "$(DESTDIR)$(pkgdatadir)" \
|
||||
"$(DESTDIR)$(sysconfdir)"
|
||||
man5dir = $(mandir)/man5
|
||||
NROFF = nroff
|
||||
MANS = $(dist_man1_MANS) $(dist_man5_MANS)
|
||||
DATA = $(dist_doc_DATA) $(dist_pkgdata_DATA) $(dist_sysconf_DATA)
|
||||
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 distdir-am dist dist-all distcheck
|
||||
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
|
||||
CTAGS = ctags
|
||||
CSCOPE = cscope
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
am__DIST_COMMON = $(dist_man1_MANS) $(dist_man5_MANS) \
|
||||
$(srcdir)/Makefile.in compile depcomp install-sh missing \
|
||||
ylwrap
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
distdir = $(PACKAGE)-$(VERSION)
|
||||
top_distdir = $(distdir)
|
||||
am__remove_distdir = \
|
||||
if test -d "$(distdir)"; then \
|
||||
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& 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
|
||||
GZIP_ENV = --best
|
||||
DIST_TARGETS = dist-gzip
|
||||
distuninstallcheck_listfiles = find . -type f -print
|
||||
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
|
||||
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
|
||||
distcleancheck_listfiles = find . -type f -print
|
||||
ACLOCAL = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing aclocal-1.16
|
||||
AMTAR = $${TAR-tar}
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AUTOCONF = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing automake-1.16
|
||||
AWK = mawk
|
||||
CC = gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = gcc -E
|
||||
CPPFLAGS =
|
||||
CYGPATH_W = echo
|
||||
DEFS = -DHAVE_CONFIG_H
|
||||
DEPDIR = .deps
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LDFLAGS =
|
||||
LEX = flex
|
||||
LEXLIB = -lfl
|
||||
LEX_OUTPUT_ROOT = lex.yy
|
||||
LIBOBJS =
|
||||
LIBS =
|
||||
LTLIBOBJS =
|
||||
MAKEINFO = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing makeinfo
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
OBJEXT = o
|
||||
PACKAGE = detox
|
||||
PACKAGE_BUGREPORT = detox.dharple at gmail.com
|
||||
PACKAGE_NAME = detox
|
||||
PACKAGE_STRING = detox 1.4.5
|
||||
PACKAGE_TARNAME = detox
|
||||
PACKAGE_URL = https://github.com/dharple/detox
|
||||
PACKAGE_VERSION = 1.4.5
|
||||
PATH_SEPARATOR = :
|
||||
SET_MAKE =
|
||||
SHELL = /bin/bash
|
||||
STRIP =
|
||||
VERSION = 1.4.5
|
||||
YACC = bison -y
|
||||
YFLAGS =
|
||||
abs_builddir = /home/tcsenpai/Downloads/detox-1.4.5
|
||||
abs_srcdir = /home/tcsenpai/Downloads/detox-1.4.5
|
||||
abs_top_builddir = /home/tcsenpai/Downloads/detox-1.4.5
|
||||
abs_top_srcdir = /home/tcsenpai/Downloads/detox-1.4.5
|
||||
ac_ct_CC = gcc
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build_alias =
|
||||
builddir = .
|
||||
datadir = ${datarootdir}
|
||||
datarootdir = ${prefix}/share
|
||||
docdir = ${datarootdir}/doc/${PACKAGE_TARNAME}
|
||||
dvidir = ${docdir}
|
||||
exec_prefix = ${prefix}
|
||||
host_alias =
|
||||
htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/install-sh
|
||||
libdir = ${exec_prefix}/lib
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /usr/local
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
runstatedir = ${localstatedir}/run
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
sharedstatedir = ${prefix}/com
|
||||
srcdir = .
|
||||
sysconfdir = ${prefix}/etc
|
||||
target_alias =
|
||||
top_build_prefix =
|
||||
top_builddir = .
|
||||
top_srcdir = .
|
||||
SUBDIRS = src
|
||||
dist_doc_DATA = README.md
|
||||
dist_man1_MANS = man/detox.1 man/inline-detox.1
|
||||
dist_man5_MANS = man/detox.tbl.5 man/detoxrc.5
|
||||
dist_sysconf_DATA = etc/detoxrc.sample
|
||||
dist_pkgdata_DATA = table/iso8859_1.tbl.sample table/safe.tbl.sample table/unicode.tbl.sample
|
||||
all: all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
am--refresh: Makefile
|
||||
@:
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
|
||||
$(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
echo ' $(SHELL) ./config.status'; \
|
||||
$(SHELL) ./config.status;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
$(SHELL) ./config.status --recheck
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
$(am__cd) $(srcdir) && $(AUTOCONF)
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||
$(am__aclocal_m4_deps):
|
||||
install-man1: $(dist_man1_MANS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list1='$(dist_man1_MANS)'; \
|
||||
list2=''; \
|
||||
test -n "$(man1dir)" \
|
||||
&& test -n "`echo $$list1$$list2`" \
|
||||
|| exit 0; \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(man1dir)" || 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 '/\.1[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,^[^1][0-9a-z]*$$,1,;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)$(man1dir)/$$inst'"; \
|
||||
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
|
||||
fi; \
|
||||
done; \
|
||||
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
test -z "$$files" || { \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
|
||||
done; }
|
||||
|
||||
uninstall-man1:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_man1_MANS)'; test -n "$(man1dir)" || exit 0; \
|
||||
files=`{ for i in $$list; do echo "$$i"; done; \
|
||||
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
|
||||
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
|
||||
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
|
||||
install-man5: $(dist_man5_MANS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list1='$(dist_man5_MANS)'; \
|
||||
list2=''; \
|
||||
test -n "$(man5dir)" \
|
||||
&& test -n "`echo $$list1$$list2`" \
|
||||
|| exit 0; \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(man5dir)'"; \
|
||||
$(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; \
|
||||
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
test -z "$$files" || { \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man5dir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(man5dir)" || exit $$?; }; \
|
||||
done; }
|
||||
|
||||
uninstall-man5:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_man5_MANS)'; test -n "$(man5dir)" || exit 0; \
|
||||
files=`{ for i in $$list; do echo "$$i"; done; \
|
||||
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
|
||||
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
|
||||
dir='$(DESTDIR)$(man5dir)'; $(am__uninstall_files_from_dir)
|
||||
install-dist_docDATA: $(dist_doc_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(dist_doc_DATA)'; test -n "$(docdir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(docdir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(docdir)" || 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_DATA) $$files '$(DESTDIR)$(docdir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-dist_docDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_doc_DATA)'; test -n "$(docdir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(docdir)'; $(am__uninstall_files_from_dir)
|
||||
install-dist_pkgdataDATA: $(dist_pkgdata_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || 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_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-dist_pkgdataDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir)
|
||||
install-dist_sysconfDATA: $(dist_sysconf_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(dist_sysconf_DATA)'; test -n "$(sysconfdir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(sysconfdir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(sysconfdir)" || 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_DATA) $$files '$(DESTDIR)$(sysconfdir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(sysconfdir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-dist_sysconfDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_sysconf_DATA)'; test -n "$(sysconfdir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(sysconfdir)'; $(am__uninstall_files_from_dir)
|
||||
|
||||
# This directory's subdirectories are mostly independent; you can cd
|
||||
# into them and run 'make' without going through this Makefile.
|
||||
# To change the values of 'make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in 'config.status', edit 'config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run 'make');
|
||||
# (2) otherwise, pass the desired values on the 'make' command line.
|
||||
$(am__recursive_targets):
|
||||
@fail=; \
|
||||
if $(am__make_keepgoing); then \
|
||||
failcom='fail=yes'; \
|
||||
else \
|
||||
failcom='exit 1'; \
|
||||
fi; \
|
||||
dot_seen=no; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
for subdir in $$list; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
dot_seen=yes; \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done; \
|
||||
if test "$$dot_seen" = "no"; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-recursive
|
||||
TAGS: tags
|
||||
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
include_option=--etags-include; \
|
||||
empty_fix=.; \
|
||||
else \
|
||||
include_option=--include; \
|
||||
empty_fix=; \
|
||||
fi; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test ! -f $$subdir/TAGS || \
|
||||
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
if test $$# -gt 0; then \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
"$$@" $$unique; \
|
||||
else \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: ctags-recursive
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& 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:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
|
||||
|
||||
distdir: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||
|
||||
distdir-am: $(DISTFILES)
|
||||
$(am__remove_distdir)
|
||||
test -d "$(distdir)" || mkdir "$(distdir)"
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
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 -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
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 \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
$(am__make_dryrun) \
|
||||
|| test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$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) \
|
||||
top_distdir="$$new_top_distdir" \
|
||||
distdir="$$new_distdir" \
|
||||
am__remove_distdir=: \
|
||||
am__skip_length_check=: \
|
||||
am__skip_mode_fix=: \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
-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 -400 -exec chmod a+r {} \; -o \
|
||||
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|
||||
|| chmod -R a+r "$(distdir)"
|
||||
dist-gzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-bzip2: distdir
|
||||
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
|
||||
$(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
|
||||
@echo WARNING: "Support for distribution archives compressed with" \
|
||||
"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
|
||||
@echo WARNING: "Support for shar distribution archives is" \
|
||||
"deprecated." >&2
|
||||
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
|
||||
shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-zip: distdir
|
||||
-rm -f $(distdir).zip
|
||||
zip -rq $(distdir).zip $(distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist dist-all:
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
# This target untars the dist file and tries a VPATH configuration. Then
|
||||
# it guarantees that the distribution is self-contained by making another
|
||||
# tarfile.
|
||||
distcheck: dist
|
||||
case '$(DIST_ARCHIVES)' in \
|
||||
*.tar.gz*) \
|
||||
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
|
||||
*.tar.bz2*) \
|
||||
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*) \
|
||||
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
|
||||
*.shar.gz*) \
|
||||
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
|
||||
*.zip*) \
|
||||
unzip $(distdir).zip ;;\
|
||||
esac
|
||||
chmod -R a-w $(distdir)
|
||||
chmod u+w $(distdir)
|
||||
mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
|
||||
chmod a-w $(distdir)
|
||||
test -d $(distdir)/_build || exit 0; \
|
||||
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
|
||||
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
|
||||
&& am__cwd=`pwd` \
|
||||
&& $(am__cd) $(distdir)/_build/sub \
|
||||
&& ../../configure \
|
||||
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
|
||||
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||||
--srcdir=../.. --prefix="$$dc_install_base" \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
|
||||
distuninstallcheck \
|
||||
&& chmod -R a-w "$$dc_install_base" \
|
||||
&& ({ \
|
||||
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
|
||||
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
|
||||
} || { rm -rf "$$dc_destdir"; exit 1; }) \
|
||||
&& rm -rf "$$dc_destdir" \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dist \
|
||||
&& rm -rf $(DIST_ARCHIVES) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
|
||||
&& cd "$$am__cwd" \
|
||||
|| exit 1
|
||||
$(am__post_remove_distdir)
|
||||
@(echo "$(distdir) archives ready for distribution: "; \
|
||||
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||||
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
|
||||
distuninstallcheck:
|
||||
@test -n '$(distuninstallcheck_dir)' || { \
|
||||
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:" ; \
|
||||
if test -n "$(DESTDIR)"; then \
|
||||
echo " (check DESTDIR support)"; \
|
||||
fi ; \
|
||||
$(distuninstallcheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
distcleancheck: distclean
|
||||
@if test '$(srcdir)' = . ; then \
|
||||
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|
||||
|| { echo "ERROR: files left in build directory after distclean:" ; \
|
||||
$(distcleancheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
check-am: all-am
|
||||
check: check-recursive
|
||||
all-am: Makefile $(MANS) $(DATA)
|
||||
installdirs: installdirs-recursive
|
||||
installdirs-am:
|
||||
for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(sysconfdir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-recursive
|
||||
install-exec: install-exec-recursive
|
||||
install-data: install-data-recursive
|
||||
uninstall: uninstall-recursive
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-recursive
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
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:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-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:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-recursive
|
||||
|
||||
clean-am: clean-generic mostlyclean-am
|
||||
|
||||
distclean: distclean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic distclean-tags
|
||||
|
||||
dvi: dvi-recursive
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-recursive
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-recursive
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-dist_docDATA install-dist_pkgdataDATA \
|
||||
install-man
|
||||
@$(NORMAL_INSTALL)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
|
||||
install-dvi: install-dvi-recursive
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am: install-dist_sysconfDATA
|
||||
|
||||
install-html: install-html-recursive
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-recursive
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man: install-man1 install-man5
|
||||
|
||||
install-pdf: install-pdf-recursive
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-recursive
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -rf $(top_srcdir)/autom4te.cache
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-recursive
|
||||
|
||||
mostlyclean-am: mostlyclean-generic
|
||||
|
||||
pdf: pdf-recursive
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-recursive
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-dist_docDATA uninstall-dist_pkgdataDATA \
|
||||
uninstall-dist_sysconfDATA uninstall-man
|
||||
@$(NORMAL_INSTALL)
|
||||
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
|
||||
uninstall-man: uninstall-man1 uninstall-man5
|
||||
|
||||
.MAKE: $(am__recursive_targets) install-am install-data-am \
|
||||
install-strip uninstall-am
|
||||
|
||||
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
|
||||
am--refresh check check-am clean clean-cscope clean-generic \
|
||||
cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
|
||||
dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
|
||||
distcheck distclean distclean-generic distclean-tags \
|
||||
distcleancheck distdir distuninstallcheck dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-data-hook install-dist_docDATA \
|
||||
install-dist_pkgdataDATA install-dist_sysconfDATA install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-man1 install-man5 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 \
|
||||
uninstall-dist_docDATA uninstall-dist_pkgdataDATA \
|
||||
uninstall-dist_sysconfDATA uninstall-hook uninstall-man \
|
||||
uninstall-man1 uninstall-man5
|
||||
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
install-data-hook:
|
||||
test -f $(DESTDIR)$(sysconfdir)/detoxrc || $(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/detoxrc.sample $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
test -f $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl.sample $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
test -f $(DESTDIR)$(pkgdatadir)/safe.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/safe.tbl.sample $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
test -f $(DESTDIR)$(pkgdatadir)/unicode.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/unicode.tbl.sample $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
.PHONY: force-install
|
||||
force-install: install
|
||||
$(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/detoxrc.sample $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl.sample $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/safe.tbl.sample $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/unicode.tbl.sample $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
uninstall-hook:
|
||||
rm $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
rm $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
rm $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
rm $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
# 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.
|
||||
.NOEXPORT:
|
28
detox/latest/Makefile.am
Normal file
28
detox/latest/Makefile.am
Normal file
@ -0,0 +1,28 @@
|
||||
SUBDIRS = src
|
||||
dist_doc_DATA = README.md
|
||||
|
||||
dist_man1_MANS = man/detox.1 man/inline-detox.1
|
||||
dist_man5_MANS = man/detox.tbl.5 man/detoxrc.5
|
||||
|
||||
dist_sysconf_DATA = etc/detoxrc.sample
|
||||
|
||||
dist_pkgdata_DATA = table/iso8859_1.tbl.sample table/safe.tbl.sample table/unicode.tbl.sample
|
||||
|
||||
install-data-hook:
|
||||
test -f $(DESTDIR)$(sysconfdir)/detoxrc || $(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/detoxrc.sample $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
test -f $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl.sample $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
test -f $(DESTDIR)$(pkgdatadir)/safe.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/safe.tbl.sample $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
test -f $(DESTDIR)$(pkgdatadir)/unicode.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/unicode.tbl.sample $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
.PHONY: force-install
|
||||
force-install: install
|
||||
$(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/detoxrc.sample $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl.sample $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/safe.tbl.sample $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/unicode.tbl.sample $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
uninstall-hook:
|
||||
rm $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
rm $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
rm $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
rm $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
977
detox/latest/Makefile.in
Normal file
977
detox/latest/Makefile.in
Normal file
@ -0,0 +1,977 @@
|
||||
# Makefile.in generated by automake 1.16.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2018 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
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@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
subdir = .
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
|
||||
$(am__configure_deps) $(dist_doc_DATA) $(dist_pkgdata_DATA) \
|
||||
$(dist_sysconf_DATA) $(am__DIST_COMMON)
|
||||
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
||||
configure.lineno config.status.lineno
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/src/config.h
|
||||
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 =
|
||||
DIST_SOURCES =
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
||||
ctags-recursive dvi-recursive html-recursive info-recursive \
|
||||
install-data-recursive install-dvi-recursive \
|
||||
install-exec-recursive install-html-recursive \
|
||||
install-info-recursive install-pdf-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
|
||||
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; }; \
|
||||
}
|
||||
man1dir = $(mandir)/man1
|
||||
am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" \
|
||||
"$(DESTDIR)$(docdir)" "$(DESTDIR)$(pkgdatadir)" \
|
||||
"$(DESTDIR)$(sysconfdir)"
|
||||
man5dir = $(mandir)/man5
|
||||
NROFF = nroff
|
||||
MANS = $(dist_man1_MANS) $(dist_man5_MANS)
|
||||
DATA = $(dist_doc_DATA) $(dist_pkgdata_DATA) $(dist_sysconf_DATA)
|
||||
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 distdir-am dist dist-all distcheck
|
||||
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
|
||||
CTAGS = ctags
|
||||
CSCOPE = cscope
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
am__DIST_COMMON = $(dist_man1_MANS) $(dist_man5_MANS) \
|
||||
$(srcdir)/Makefile.in compile depcomp install-sh missing \
|
||||
ylwrap
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
distdir = $(PACKAGE)-$(VERSION)
|
||||
top_distdir = $(distdir)
|
||||
am__remove_distdir = \
|
||||
if test -d "$(distdir)"; then \
|
||||
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& 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
|
||||
GZIP_ENV = --best
|
||||
DIST_TARGETS = dist-gzip
|
||||
distuninstallcheck_listfiles = find . -type f -print
|
||||
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
|
||||
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
|
||||
distcleancheck_listfiles = find . -type f -print
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LEX = @LEX@
|
||||
LEXLIB = @LEXLIB@
|
||||
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
OBJEXT = @OBJEXT@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
YACC = @YACC@
|
||||
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@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build_alias = @build_alias@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host_alias = @host_alias@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
runstatedir = @runstatedir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
SUBDIRS = src
|
||||
dist_doc_DATA = README.md
|
||||
dist_man1_MANS = man/detox.1 man/inline-detox.1
|
||||
dist_man5_MANS = man/detox.tbl.5 man/detoxrc.5
|
||||
dist_sysconf_DATA = etc/detoxrc.sample
|
||||
dist_pkgdata_DATA = table/iso8859_1.tbl.sample table/safe.tbl.sample table/unicode.tbl.sample
|
||||
all: all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
am--refresh: Makefile
|
||||
@:
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
|
||||
$(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
echo ' $(SHELL) ./config.status'; \
|
||||
$(SHELL) ./config.status;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
$(SHELL) ./config.status --recheck
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
$(am__cd) $(srcdir) && $(AUTOCONF)
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||
$(am__aclocal_m4_deps):
|
||||
install-man1: $(dist_man1_MANS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list1='$(dist_man1_MANS)'; \
|
||||
list2=''; \
|
||||
test -n "$(man1dir)" \
|
||||
&& test -n "`echo $$list1$$list2`" \
|
||||
|| exit 0; \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(man1dir)" || 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 '/\.1[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,^[^1][0-9a-z]*$$,1,;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)$(man1dir)/$$inst'"; \
|
||||
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
|
||||
fi; \
|
||||
done; \
|
||||
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
test -z "$$files" || { \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
|
||||
done; }
|
||||
|
||||
uninstall-man1:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_man1_MANS)'; test -n "$(man1dir)" || exit 0; \
|
||||
files=`{ for i in $$list; do echo "$$i"; done; \
|
||||
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
|
||||
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
|
||||
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
|
||||
install-man5: $(dist_man5_MANS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list1='$(dist_man5_MANS)'; \
|
||||
list2=''; \
|
||||
test -n "$(man5dir)" \
|
||||
&& test -n "`echo $$list1$$list2`" \
|
||||
|| exit 0; \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(man5dir)'"; \
|
||||
$(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; \
|
||||
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
test -z "$$files" || { \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man5dir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(man5dir)" || exit $$?; }; \
|
||||
done; }
|
||||
|
||||
uninstall-man5:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_man5_MANS)'; test -n "$(man5dir)" || exit 0; \
|
||||
files=`{ for i in $$list; do echo "$$i"; done; \
|
||||
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
|
||||
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
|
||||
dir='$(DESTDIR)$(man5dir)'; $(am__uninstall_files_from_dir)
|
||||
install-dist_docDATA: $(dist_doc_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(dist_doc_DATA)'; test -n "$(docdir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(docdir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(docdir)" || 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_DATA) $$files '$(DESTDIR)$(docdir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-dist_docDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_doc_DATA)'; test -n "$(docdir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(docdir)'; $(am__uninstall_files_from_dir)
|
||||
install-dist_pkgdataDATA: $(dist_pkgdata_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || 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_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-dist_pkgdataDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir)
|
||||
install-dist_sysconfDATA: $(dist_sysconf_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(dist_sysconf_DATA)'; test -n "$(sysconfdir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(sysconfdir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(sysconfdir)" || 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_DATA) $$files '$(DESTDIR)$(sysconfdir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(sysconfdir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-dist_sysconfDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(dist_sysconf_DATA)'; test -n "$(sysconfdir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(sysconfdir)'; $(am__uninstall_files_from_dir)
|
||||
|
||||
# This directory's subdirectories are mostly independent; you can cd
|
||||
# into them and run 'make' without going through this Makefile.
|
||||
# To change the values of 'make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in 'config.status', edit 'config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run 'make');
|
||||
# (2) otherwise, pass the desired values on the 'make' command line.
|
||||
$(am__recursive_targets):
|
||||
@fail=; \
|
||||
if $(am__make_keepgoing); then \
|
||||
failcom='fail=yes'; \
|
||||
else \
|
||||
failcom='exit 1'; \
|
||||
fi; \
|
||||
dot_seen=no; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
for subdir in $$list; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
dot_seen=yes; \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done; \
|
||||
if test "$$dot_seen" = "no"; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-recursive
|
||||
TAGS: tags
|
||||
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
include_option=--etags-include; \
|
||||
empty_fix=.; \
|
||||
else \
|
||||
include_option=--include; \
|
||||
empty_fix=; \
|
||||
fi; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test ! -f $$subdir/TAGS || \
|
||||
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
if test $$# -gt 0; then \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
"$$@" $$unique; \
|
||||
else \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: ctags-recursive
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& 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:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
|
||||
|
||||
distdir: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||
|
||||
distdir-am: $(DISTFILES)
|
||||
$(am__remove_distdir)
|
||||
test -d "$(distdir)" || mkdir "$(distdir)"
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
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 -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
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 \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
$(am__make_dryrun) \
|
||||
|| test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$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) \
|
||||
top_distdir="$$new_top_distdir" \
|
||||
distdir="$$new_distdir" \
|
||||
am__remove_distdir=: \
|
||||
am__skip_length_check=: \
|
||||
am__skip_mode_fix=: \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
-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 -400 -exec chmod a+r {} \; -o \
|
||||
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|
||||
|| chmod -R a+r "$(distdir)"
|
||||
dist-gzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-bzip2: distdir
|
||||
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
|
||||
$(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
|
||||
@echo WARNING: "Support for distribution archives compressed with" \
|
||||
"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
|
||||
@echo WARNING: "Support for shar distribution archives is" \
|
||||
"deprecated." >&2
|
||||
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
|
||||
shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-zip: distdir
|
||||
-rm -f $(distdir).zip
|
||||
zip -rq $(distdir).zip $(distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist dist-all:
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
# This target untars the dist file and tries a VPATH configuration. Then
|
||||
# it guarantees that the distribution is self-contained by making another
|
||||
# tarfile.
|
||||
distcheck: dist
|
||||
case '$(DIST_ARCHIVES)' in \
|
||||
*.tar.gz*) \
|
||||
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
|
||||
*.tar.bz2*) \
|
||||
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*) \
|
||||
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
|
||||
*.shar.gz*) \
|
||||
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
|
||||
*.zip*) \
|
||||
unzip $(distdir).zip ;;\
|
||||
esac
|
||||
chmod -R a-w $(distdir)
|
||||
chmod u+w $(distdir)
|
||||
mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
|
||||
chmod a-w $(distdir)
|
||||
test -d $(distdir)/_build || exit 0; \
|
||||
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
|
||||
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
|
||||
&& am__cwd=`pwd` \
|
||||
&& $(am__cd) $(distdir)/_build/sub \
|
||||
&& ../../configure \
|
||||
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
|
||||
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||||
--srcdir=../.. --prefix="$$dc_install_base" \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
|
||||
distuninstallcheck \
|
||||
&& chmod -R a-w "$$dc_install_base" \
|
||||
&& ({ \
|
||||
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
|
||||
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
|
||||
} || { rm -rf "$$dc_destdir"; exit 1; }) \
|
||||
&& rm -rf "$$dc_destdir" \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dist \
|
||||
&& rm -rf $(DIST_ARCHIVES) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
|
||||
&& cd "$$am__cwd" \
|
||||
|| exit 1
|
||||
$(am__post_remove_distdir)
|
||||
@(echo "$(distdir) archives ready for distribution: "; \
|
||||
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||||
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
|
||||
distuninstallcheck:
|
||||
@test -n '$(distuninstallcheck_dir)' || { \
|
||||
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:" ; \
|
||||
if test -n "$(DESTDIR)"; then \
|
||||
echo " (check DESTDIR support)"; \
|
||||
fi ; \
|
||||
$(distuninstallcheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
distcleancheck: distclean
|
||||
@if test '$(srcdir)' = . ; then \
|
||||
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|
||||
|| { echo "ERROR: files left in build directory after distclean:" ; \
|
||||
$(distcleancheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
check-am: all-am
|
||||
check: check-recursive
|
||||
all-am: Makefile $(MANS) $(DATA)
|
||||
installdirs: installdirs-recursive
|
||||
installdirs-am:
|
||||
for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(sysconfdir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-recursive
|
||||
install-exec: install-exec-recursive
|
||||
install-data: install-data-recursive
|
||||
uninstall: uninstall-recursive
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-recursive
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
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:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-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:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-recursive
|
||||
|
||||
clean-am: clean-generic mostlyclean-am
|
||||
|
||||
distclean: distclean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic distclean-tags
|
||||
|
||||
dvi: dvi-recursive
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-recursive
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-recursive
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-dist_docDATA install-dist_pkgdataDATA \
|
||||
install-man
|
||||
@$(NORMAL_INSTALL)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
|
||||
install-dvi: install-dvi-recursive
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am: install-dist_sysconfDATA
|
||||
|
||||
install-html: install-html-recursive
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-recursive
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man: install-man1 install-man5
|
||||
|
||||
install-pdf: install-pdf-recursive
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-recursive
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -rf $(top_srcdir)/autom4te.cache
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-recursive
|
||||
|
||||
mostlyclean-am: mostlyclean-generic
|
||||
|
||||
pdf: pdf-recursive
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-recursive
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-dist_docDATA uninstall-dist_pkgdataDATA \
|
||||
uninstall-dist_sysconfDATA uninstall-man
|
||||
@$(NORMAL_INSTALL)
|
||||
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
|
||||
uninstall-man: uninstall-man1 uninstall-man5
|
||||
|
||||
.MAKE: $(am__recursive_targets) install-am install-data-am \
|
||||
install-strip uninstall-am
|
||||
|
||||
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
|
||||
am--refresh check check-am clean clean-cscope clean-generic \
|
||||
cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
|
||||
dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
|
||||
distcheck distclean distclean-generic distclean-tags \
|
||||
distcleancheck distdir distuninstallcheck dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-data-hook install-dist_docDATA \
|
||||
install-dist_pkgdataDATA install-dist_sysconfDATA install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-man1 install-man5 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 \
|
||||
uninstall-dist_docDATA uninstall-dist_pkgdataDATA \
|
||||
uninstall-dist_sysconfDATA uninstall-hook uninstall-man \
|
||||
uninstall-man1 uninstall-man5
|
||||
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
install-data-hook:
|
||||
test -f $(DESTDIR)$(sysconfdir)/detoxrc || $(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/detoxrc.sample $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
test -f $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl.sample $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
test -f $(DESTDIR)$(pkgdatadir)/safe.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/safe.tbl.sample $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
test -f $(DESTDIR)$(pkgdatadir)/unicode.tbl || $(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/unicode.tbl.sample $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
.PHONY: force-install
|
||||
force-install: install
|
||||
$(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/detoxrc.sample $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl.sample $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/safe.tbl.sample $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
$(INSTALL_DATA) $(DESTDIR)$(pkgdatadir)/unicode.tbl.sample $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
uninstall-hook:
|
||||
rm $(DESTDIR)$(sysconfdir)/detoxrc
|
||||
rm $(DESTDIR)$(pkgdatadir)/iso8859_1.tbl
|
||||
rm $(DESTDIR)$(pkgdatadir)/safe.tbl
|
||||
rm $(DESTDIR)$(pkgdatadir)/unicode.tbl
|
||||
|
||||
# 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.
|
||||
.NOEXPORT:
|
42
detox/latest/README.md
Normal file
42
detox/latest/README.md
Normal file
@ -0,0 +1,42 @@
|
||||
# Overview
|
||||
|
||||
`detox` is a program that renames files to make them easier to work with under
|
||||
Unix and related operating systems. Spaces and various other unsafe
|
||||
characters (such as "$") get replaced with "_". ISO 8859-1 (Latin-1)
|
||||
characters can be transliterated to ASCII, as can UTF-8 characters.
|
||||
More details are contained in the `detox.1` man page.
|
||||
|
||||
# Runtime Notes
|
||||
|
||||
The most important option to learn is `-n`, aka `--dry-run`. This will let you
|
||||
run `detox` without actually changing any files, so that you can get an idea
|
||||
of what `detox` is all about.
|
||||
|
||||
The simplest way to run `detox` is to just run it on a directory containing
|
||||
files that need work:
|
||||
|
||||
detox xfer_files/
|
||||
|
||||
You can also just to specify the filename:
|
||||
|
||||
detox my\ bad\ file.txt
|
||||
|
||||
You can also specify recursion (this works best on directories):
|
||||
|
||||
detox -r /music/transferred_from_elsewhere/
|
||||
|
||||
# Build
|
||||
|
||||
To build `detox` from source, run:
|
||||
|
||||
```
|
||||
git clone https://github.com/dharple/detox.git
|
||||
cd detox
|
||||
autoreconf --install
|
||||
./configure
|
||||
make
|
||||
```
|
||||
|
||||
# Contact
|
||||
|
||||
Doug Harple <detox.dharple@gmail.com>
|
1135
detox/latest/aclocal.m4
vendored
Normal file
1135
detox/latest/aclocal.m4
vendored
Normal file
File diff suppressed because it is too large
Load Diff
348
detox/latest/compile
Executable file
348
detox/latest/compile
Executable file
@ -0,0 +1,348 @@
|
||||
#! /bin/sh
|
||||
# Wrapper for compilers which do not understand '-c -o'.
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1999-2018 Free Software Foundation, Inc.
|
||||
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||
#
|
||||
# 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, 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, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# This file is maintained in Automake, please report
|
||||
# bugs to <bug-automake@gnu.org> or send patches to
|
||||
# <automake-patches@gnu.org>.
|
||||
|
||||
nl='
|
||||
'
|
||||
|
||||
# We need space, tab and new line, in precisely that order. Quoting is
|
||||
# there to prevent tools from complaining about whitespace usage.
|
||||
IFS=" "" $nl"
|
||||
|
||||
file_conv=
|
||||
|
||||
# func_file_conv build_file lazy
|
||||
# Convert a $build file to $host form and store it in $file
|
||||
# Currently only supports Windows hosts. If the determined conversion
|
||||
# type is listed in (the comma separated) LAZY, no conversion will
|
||||
# take place.
|
||||
func_file_conv ()
|
||||
{
|
||||
file=$1
|
||||
case $file in
|
||||
/ | /[!/]*) # absolute file, and not a UNC file
|
||||
if test -z "$file_conv"; then
|
||||
# lazily determine how to convert abs files
|
||||
case `uname -s` in
|
||||
MINGW*)
|
||||
file_conv=mingw
|
||||
;;
|
||||
CYGWIN*)
|
||||
file_conv=cygwin
|
||||
;;
|
||||
*)
|
||||
file_conv=wine
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
case $file_conv/,$2, in
|
||||
*,$file_conv,*)
|
||||
;;
|
||||
mingw/*)
|
||||
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
|
||||
;;
|
||||
cygwin/*)
|
||||
file=`cygpath -m "$file" || echo "$file"`
|
||||
;;
|
||||
wine/*)
|
||||
file=`winepath -w "$file" || echo "$file"`
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# func_cl_dashL linkdir
|
||||
# Make cl look for libraries in LINKDIR
|
||||
func_cl_dashL ()
|
||||
{
|
||||
func_file_conv "$1"
|
||||
if test -z "$lib_path"; then
|
||||
lib_path=$file
|
||||
else
|
||||
lib_path="$lib_path;$file"
|
||||
fi
|
||||
linker_opts="$linker_opts -LIBPATH:$file"
|
||||
}
|
||||
|
||||
# func_cl_dashl library
|
||||
# Do a library search-path lookup for cl
|
||||
func_cl_dashl ()
|
||||
{
|
||||
lib=$1
|
||||
found=no
|
||||
save_IFS=$IFS
|
||||
IFS=';'
|
||||
for dir in $lib_path $LIB
|
||||
do
|
||||
IFS=$save_IFS
|
||||
if $shared && test -f "$dir/$lib.dll.lib"; then
|
||||
found=yes
|
||||
lib=$dir/$lib.dll.lib
|
||||
break
|
||||
fi
|
||||
if test -f "$dir/$lib.lib"; then
|
||||
found=yes
|
||||
lib=$dir/$lib.lib
|
||||
break
|
||||
fi
|
||||
if test -f "$dir/lib$lib.a"; then
|
||||
found=yes
|
||||
lib=$dir/lib$lib.a
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS=$save_IFS
|
||||
|
||||
if test "$found" != yes; then
|
||||
lib=$lib.lib
|
||||
fi
|
||||
}
|
||||
|
||||
# func_cl_wrapper cl arg...
|
||||
# Adjust compile command to suit cl
|
||||
func_cl_wrapper ()
|
||||
{
|
||||
# Assume a capable shell
|
||||
lib_path=
|
||||
shared=:
|
||||
linker_opts=
|
||||
for arg
|
||||
do
|
||||
if test -n "$eat"; then
|
||||
eat=
|
||||
else
|
||||
case $1 in
|
||||
-o)
|
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||
eat=1
|
||||
case $2 in
|
||||
*.o | *.[oO][bB][jJ])
|
||||
func_file_conv "$2"
|
||||
set x "$@" -Fo"$file"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
func_file_conv "$2"
|
||||
set x "$@" -Fe"$file"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
-I)
|
||||
eat=1
|
||||
func_file_conv "$2" mingw
|
||||
set x "$@" -I"$file"
|
||||
shift
|
||||
;;
|
||||
-I*)
|
||||
func_file_conv "${1#-I}" mingw
|
||||
set x "$@" -I"$file"
|
||||
shift
|
||||
;;
|
||||
-l)
|
||||
eat=1
|
||||
func_cl_dashl "$2"
|
||||
set x "$@" "$lib"
|
||||
shift
|
||||
;;
|
||||
-l*)
|
||||
func_cl_dashl "${1#-l}"
|
||||
set x "$@" "$lib"
|
||||
shift
|
||||
;;
|
||||
-L)
|
||||
eat=1
|
||||
func_cl_dashL "$2"
|
||||
;;
|
||||
-L*)
|
||||
func_cl_dashL "${1#-L}"
|
||||
;;
|
||||
-static)
|
||||
shared=false
|
||||
;;
|
||||
-Wl,*)
|
||||
arg=${1#-Wl,}
|
||||
save_ifs="$IFS"; IFS=','
|
||||
for flag in $arg; do
|
||||
IFS="$save_ifs"
|
||||
linker_opts="$linker_opts $flag"
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
;;
|
||||
-Xlinker)
|
||||
eat=1
|
||||
linker_opts="$linker_opts $2"
|
||||
;;
|
||||
-*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
|
||||
func_file_conv "$1"
|
||||
set x "$@" -Tp"$file"
|
||||
shift
|
||||
;;
|
||||
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
|
||||
func_file_conv "$1" mingw
|
||||
set x "$@" "$file"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
shift
|
||||
done
|
||||
if test -n "$linker_opts"; then
|
||||
linker_opts="-link$linker_opts"
|
||||
fi
|
||||
exec "$@" $linker_opts
|
||||
exit 1
|
||||
}
|
||||
|
||||
eat=
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<\EOF
|
||||
Usage: compile [--help] [--version] PROGRAM [ARGS]
|
||||
|
||||
Wrapper for compilers which do not understand '-c -o'.
|
||||
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
|
||||
arguments, and rename the output as expected.
|
||||
|
||||
If you are trying to build a whole package this is not the
|
||||
right script to run: please start by reading the file 'INSTALL'.
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "compile $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
|
||||
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
|
||||
func_cl_wrapper "$@" # Doesn't return...
|
||||
;;
|
||||
esac
|
||||
|
||||
ofile=
|
||||
cfile=
|
||||
|
||||
for arg
|
||||
do
|
||||
if test -n "$eat"; then
|
||||
eat=
|
||||
else
|
||||
case $1 in
|
||||
-o)
|
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||
# So we strip '-o arg' only if arg is an object.
|
||||
eat=1
|
||||
case $2 in
|
||||
*.o | *.obj)
|
||||
ofile=$2
|
||||
;;
|
||||
*)
|
||||
set x "$@" -o "$2"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*.c)
|
||||
cfile=$1
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
shift
|
||||
done
|
||||
|
||||
if test -z "$ofile" || test -z "$cfile"; then
|
||||
# If no '-o' option was seen then we might have been invoked from a
|
||||
# pattern rule where we don't need one. That is ok -- this is a
|
||||
# normal compilation that the losing compiler can handle. If no
|
||||
# '.c' file was seen then we are probably linking. That is also
|
||||
# ok.
|
||||
exec "$@"
|
||||
fi
|
||||
|
||||
# Name of file we expect compiler to create.
|
||||
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
|
||||
|
||||
# Create the lock directory.
|
||||
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
|
||||
# that we are using for the .o file. Also, base the name on the expected
|
||||
# object file name, since that is what matters with a parallel build.
|
||||
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
|
||||
while true; do
|
||||
if mkdir "$lockdir" >/dev/null 2>&1; then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
# FIXME: race condition here if user kills between mkdir and trap.
|
||||
trap "rmdir '$lockdir'; exit 1" 1 2 15
|
||||
|
||||
# Run the compile.
|
||||
"$@"
|
||||
ret=$?
|
||||
|
||||
if test -f "$cofile"; then
|
||||
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
|
||||
elif test -f "${cofile}bj"; then
|
||||
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
|
||||
fi
|
||||
|
||||
rmdir "$lockdir"
|
||||
exit $ret
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
2286
detox/latest/config.log
Normal file
2286
detox/latest/config.log
Normal file
File diff suppressed because it is too large
Load Diff
1199
detox/latest/config.status
Executable file
1199
detox/latest/config.status
Executable file
File diff suppressed because it is too large
Load Diff
6078
detox/latest/configure
vendored
Executable file
6078
detox/latest/configure
vendored
Executable file
File diff suppressed because it is too large
Load Diff
19
detox/latest/configure.ac
Normal file
19
detox/latest/configure.ac
Normal file
@ -0,0 +1,19 @@
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
AC_INIT([detox], [1.4.5], [detox.dharple at gmail.com], [], [https://github.com/dharple/detox])
|
||||
AM_INIT_AUTOMAKE([foreign -Wall -Werror])
|
||||
|
||||
AC_PROG_CC
|
||||
AC_PROG_LEX([noyywrap])
|
||||
AC_PROG_YACC
|
||||
|
||||
AC_CHECK_FUNCS([getopt_long])
|
||||
AC_STRUCT_ST_BLOCKS
|
||||
|
||||
AC_SYS_LARGEFILE
|
||||
|
||||
AC_CONFIG_HEADERS([src/config.h])
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
src/Makefile
|
||||
])
|
||||
AC_OUTPUT
|
791
detox/latest/depcomp
Executable file
791
detox/latest/depcomp
Executable file
@ -0,0 +1,791 @@
|
||||
#! /bin/sh
|
||||
# depcomp - compile a program generating dependencies as side-effects
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1999-2018 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, 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, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<\EOF
|
||||
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
||||
|
||||
Run PROGRAMS ARGS to compile a file, generating dependencies
|
||||
as side-effects.
|
||||
|
||||
Environment variables:
|
||||
depmode Dependency tracking mode.
|
||||
source Source file read by 'PROGRAMS ARGS'.
|
||||
object Object file output by 'PROGRAMS ARGS'.
|
||||
DEPDIR directory where to store dependencies.
|
||||
depfile Dependency file to output.
|
||||
tmpdepfile Temporary file to use when outputting dependencies.
|
||||
libtool Whether libtool is used (yes/no).
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "depcomp $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
esac
|
||||
|
||||
# Get the directory component of the given path, and save it in the
|
||||
# global variables '$dir'. Note that this directory component will
|
||||
# be either empty or ending with a '/' character. This is deliberate.
|
||||
set_dir_from ()
|
||||
{
|
||||
case $1 in
|
||||
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
|
||||
*) dir=;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Get the suffix-stripped basename of the given path, and save it the
|
||||
# global variable '$base'.
|
||||
set_base_from ()
|
||||
{
|
||||
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
|
||||
}
|
||||
|
||||
# If no dependency file was actually created by the compiler invocation,
|
||||
# we still have to create a dummy depfile, to avoid errors with the
|
||||
# Makefile "include basename.Plo" scheme.
|
||||
make_dummy_depfile ()
|
||||
{
|
||||
echo "#dummy" > "$depfile"
|
||||
}
|
||||
|
||||
# Factor out some common post-processing of the generated depfile.
|
||||
# Requires the auxiliary global variable '$tmpdepfile' to be set.
|
||||
aix_post_process_depfile ()
|
||||
{
|
||||
# If the compiler actually managed to produce a dependency file,
|
||||
# post-process it.
|
||||
if test -f "$tmpdepfile"; then
|
||||
# Each line is of the form 'foo.o: dependency.h'.
|
||||
# Do two passes, one to just change these to
|
||||
# $object: dependency.h
|
||||
# and one to simply output
|
||||
# dependency.h:
|
||||
# which is needed to avoid the deleted-header problem.
|
||||
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
|
||||
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
|
||||
} > "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
}
|
||||
|
||||
# A tabulation character.
|
||||
tab=' '
|
||||
# A newline character.
|
||||
nl='
|
||||
'
|
||||
# Character ranges might be problematic outside the C locale.
|
||||
# These definitions help.
|
||||
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||
lower=abcdefghijklmnopqrstuvwxyz
|
||||
digits=0123456789
|
||||
alpha=${upper}${lower}
|
||||
|
||||
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
||||
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
|
||||
depfile=${depfile-`echo "$object" |
|
||||
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
|
||||
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
||||
|
||||
rm -f "$tmpdepfile"
|
||||
|
||||
# Avoid interferences from the environment.
|
||||
gccflag= dashmflag=
|
||||
|
||||
# Some modes work just like other modes, but use different flags. We
|
||||
# parameterize here, but still list the modes in the big case below,
|
||||
# to make depend.m4 easier to write. Note that we *cannot* use a case
|
||||
# here, because this file can only contain one case statement.
|
||||
if test "$depmode" = hp; then
|
||||
# HP compiler uses -M and no extra arg.
|
||||
gccflag=-M
|
||||
depmode=gcc
|
||||
fi
|
||||
|
||||
if test "$depmode" = dashXmstdout; then
|
||||
# This is just like dashmstdout with a different argument.
|
||||
dashmflag=-xM
|
||||
depmode=dashmstdout
|
||||
fi
|
||||
|
||||
cygpath_u="cygpath -u -f -"
|
||||
if test "$depmode" = msvcmsys; then
|
||||
# This is just like msvisualcpp but w/o cygpath translation.
|
||||
# Just convert the backslash-escaped backslashes to single forward
|
||||
# slashes to satisfy depend.m4
|
||||
cygpath_u='sed s,\\\\,/,g'
|
||||
depmode=msvisualcpp
|
||||
fi
|
||||
|
||||
if test "$depmode" = msvc7msys; then
|
||||
# This is just like msvc7 but w/o cygpath translation.
|
||||
# Just convert the backslash-escaped backslashes to single forward
|
||||
# slashes to satisfy depend.m4
|
||||
cygpath_u='sed s,\\\\,/,g'
|
||||
depmode=msvc7
|
||||
fi
|
||||
|
||||
if test "$depmode" = xlc; then
|
||||
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
|
||||
gccflag=-qmakedep=gcc,-MF
|
||||
depmode=gcc
|
||||
fi
|
||||
|
||||
case "$depmode" in
|
||||
gcc3)
|
||||
## gcc 3 implements dependency tracking that does exactly what
|
||||
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
|
||||
## it if -MD -MP comes after the -MF stuff. Hmm.
|
||||
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
|
||||
## the command line argument order; so add the flags where they
|
||||
## appear in depend2.am. Note that the slowdown incurred here
|
||||
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
|
||||
*) set fnord "$@" "$arg" ;;
|
||||
esac
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
done
|
||||
"$@"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
mv "$tmpdepfile" "$depfile"
|
||||
;;
|
||||
|
||||
gcc)
|
||||
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
|
||||
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
|
||||
## (see the conditional assignment to $gccflag above).
|
||||
## There are various ways to get dependency output from gcc. Here's
|
||||
## why we pick this rather obscure method:
|
||||
## - Don't want to use -MD because we'd like the dependencies to end
|
||||
## up in a subdir. Having to rename by hand is ugly.
|
||||
## (We might end up doing this anyway to support other compilers.)
|
||||
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
|
||||
## -MM, not -M (despite what the docs say). Also, it might not be
|
||||
## supported by the other compilers which use the 'gcc' depmode.
|
||||
## - Using -M directly means running the compiler twice (even worse
|
||||
## than renaming).
|
||||
if test -z "$gccflag"; then
|
||||
gccflag=-MD,
|
||||
fi
|
||||
"$@" -Wp,"$gccflag$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
# The second -e expression handles DOS-style file names with drive
|
||||
# letters.
|
||||
sed -e 's/^[^:]*: / /' \
|
||||
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
|
||||
## This next piece of magic avoids the "deleted header file" problem.
|
||||
## The problem is that when a header file which appears in a .P file
|
||||
## is deleted, the dependency causes make to die (because there is
|
||||
## typically no way to rebuild the header). We avoid this by adding
|
||||
## dummy dependencies for each header file. Too bad gcc doesn't do
|
||||
## this for us directly.
|
||||
## Some versions of gcc put a space before the ':'. On the theory
|
||||
## that the space means something, we add a space to the output as
|
||||
## well. hp depmode also adds that space, but also prefixes the VPATH
|
||||
## to the object. Take care to not repeat it in the output.
|
||||
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
## correctly. Breaking it into two sed invocations is a workaround.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
sgi)
|
||||
if test "$libtool" = yes; then
|
||||
"$@" "-Wp,-MDupdate,$tmpdepfile"
|
||||
else
|
||||
"$@" -MDupdate "$tmpdepfile"
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
|
||||
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
|
||||
echo "$object : \\" > "$depfile"
|
||||
# Clip off the initial element (the dependent). Don't try to be
|
||||
# clever and replace this with sed code, as IRIX sed won't handle
|
||||
# lines with more than a fixed number of characters (4096 in
|
||||
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
|
||||
# the IRIX cc adds comments like '#:fec' to the end of the
|
||||
# dependency line.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
|
||||
| tr "$nl" ' ' >> "$depfile"
|
||||
echo >> "$depfile"
|
||||
# The second pass generates a dummy entry for each header file.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
|
||||
>> "$depfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
xlc)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
aix)
|
||||
# The C for AIX Compiler uses -M and outputs the dependencies
|
||||
# in a .u file. In older versions, this file always lives in the
|
||||
# current directory. Also, the AIX compiler puts '$object:' at the
|
||||
# start of each line; $object doesn't have directory information.
|
||||
# Version 6 uses the directory in both cases.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$base.u
|
||||
tmpdepfile3=$dir.libs/$base.u
|
||||
"$@" -Wc,-M
|
||||
else
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$dir$base.u
|
||||
tmpdepfile3=$dir$base.u
|
||||
"$@" -M
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
aix_post_process_depfile
|
||||
;;
|
||||
|
||||
tcc)
|
||||
# tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
|
||||
# FIXME: That version still under development at the moment of writing.
|
||||
# Make that this statement remains true also for stable, released
|
||||
# versions.
|
||||
# It will wrap lines (doesn't matter whether long or short) with a
|
||||
# trailing '\', as in:
|
||||
#
|
||||
# foo.o : \
|
||||
# foo.c \
|
||||
# foo.h \
|
||||
#
|
||||
# It will put a trailing '\' even on the last line, and will use leading
|
||||
# spaces rather than leading tabs (at least since its commit 0394caf7
|
||||
# "Emit spaces for -MD").
|
||||
"$@" -MD -MF "$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
|
||||
# We have to change lines of the first kind to '$object: \'.
|
||||
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
|
||||
# And for each line of the second kind, we have to emit a 'dep.h:'
|
||||
# dummy dependency, to avoid the deleted-header problem.
|
||||
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
## The order of this option in the case statement is important, since the
|
||||
## shell code in configure will try each of these formats in the order
|
||||
## listed in this file. A plain '-MD' option would be understood by many
|
||||
## compilers, so we must ensure this comes after the gcc and icc options.
|
||||
pgcc)
|
||||
# Portland's C compiler understands '-MD'.
|
||||
# Will always output deps to 'file.d' where file is the root name of the
|
||||
# source file under compilation, even if file resides in a subdirectory.
|
||||
# The object file name does not affect the name of the '.d' file.
|
||||
# pgcc 10.2 will output
|
||||
# foo.o: sub/foo.c sub/foo.h
|
||||
# and will wrap long lines using '\' :
|
||||
# foo.o: sub/foo.c ... \
|
||||
# sub/foo.h ... \
|
||||
# ...
|
||||
set_dir_from "$object"
|
||||
# Use the source, not the object, to determine the base name, since
|
||||
# that's sadly what pgcc will do too.
|
||||
set_base_from "$source"
|
||||
tmpdepfile=$base.d
|
||||
|
||||
# For projects that build the same source file twice into different object
|
||||
# files, the pgcc approach of using the *source* file root name can cause
|
||||
# problems in parallel builds. Use a locking strategy to avoid stomping on
|
||||
# the same $tmpdepfile.
|
||||
lockdir=$base.d-lock
|
||||
trap "
|
||||
echo '$0: caught signal, cleaning up...' >&2
|
||||
rmdir '$lockdir'
|
||||
exit 1
|
||||
" 1 2 13 15
|
||||
numtries=100
|
||||
i=$numtries
|
||||
while test $i -gt 0; do
|
||||
# mkdir is a portable test-and-set.
|
||||
if mkdir "$lockdir" 2>/dev/null; then
|
||||
# This process acquired the lock.
|
||||
"$@" -MD
|
||||
stat=$?
|
||||
# Release the lock.
|
||||
rmdir "$lockdir"
|
||||
break
|
||||
else
|
||||
# If the lock is being held by a different process, wait
|
||||
# until the winning process is done or we timeout.
|
||||
while test -d "$lockdir" && test $i -gt 0; do
|
||||
sleep 1
|
||||
i=`expr $i - 1`
|
||||
done
|
||||
fi
|
||||
i=`expr $i - 1`
|
||||
done
|
||||
trap - 1 2 13 15
|
||||
if test $i -le 0; then
|
||||
echo "$0: failed to acquire lock after $numtries attempts" >&2
|
||||
echo "$0: check lockdir '$lockdir'" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
# Each line is of the form `foo.o: dependent.h',
|
||||
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
|
||||
# Do two passes, one to just change these to
|
||||
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp2)
|
||||
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
|
||||
# compilers, which have integrated preprocessors. The correct option
|
||||
# to use with these is +Maked; it writes dependencies to a file named
|
||||
# 'foo.d', which lands next to the object file, wherever that
|
||||
# happens to be.
|
||||
# Much of this is similar to the tru64 case; see comments there.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir.libs/$base.d
|
||||
"$@" -Wc,+Maked
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
"$@" +Maked
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
if test -f "$tmpdepfile"; then
|
||||
sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
|
||||
# Add 'dependent.h:' lines.
|
||||
sed -ne '2,${
|
||||
s/^ *//
|
||||
s/ \\*$//
|
||||
s/$/:/
|
||||
p
|
||||
}' "$tmpdepfile" >> "$depfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
rm -f "$tmpdepfile" "$tmpdepfile2"
|
||||
;;
|
||||
|
||||
tru64)
|
||||
# The Tru64 compiler uses -MD to generate dependencies as a side
|
||||
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
|
||||
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
|
||||
# dependencies in 'foo.d' instead, so we check for that too.
|
||||
# Subdirectories are respected.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
|
||||
if test "$libtool" = yes; then
|
||||
# Libtool generates 2 separate objects for the 2 libraries. These
|
||||
# two compilations output dependencies in $dir.libs/$base.o.d and
|
||||
# in $dir$base.o.d. We have to check for both files, because
|
||||
# one of the two compilations can be disabled. We should prefer
|
||||
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
||||
# automatically cleaned when .libs/ is deleted, while ignoring
|
||||
# the former would cause a distcleancheck panic.
|
||||
tmpdepfile1=$dir$base.o.d # libtool 1.5
|
||||
tmpdepfile2=$dir.libs/$base.o.d # Likewise.
|
||||
tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
|
||||
"$@" -Wc,-MD
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
tmpdepfile3=$dir$base.d
|
||||
"$@" -MD
|
||||
fi
|
||||
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
# Same post-processing that is required for AIX mode.
|
||||
aix_post_process_depfile
|
||||
;;
|
||||
|
||||
msvc7)
|
||||
if test "$libtool" = yes; then
|
||||
showIncludes=-Wc,-showIncludes
|
||||
else
|
||||
showIncludes=-showIncludes
|
||||
fi
|
||||
"$@" $showIncludes > "$tmpdepfile"
|
||||
stat=$?
|
||||
grep -v '^Note: including file: ' "$tmpdepfile"
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
# The first sed program below extracts the file names and escapes
|
||||
# backslashes for cygpath. The second sed program outputs the file
|
||||
# name when reading, but also accumulates all include files in the
|
||||
# hold buffer in order to output them again at the end. This only
|
||||
# works with sed implementations that can handle large buffers.
|
||||
sed < "$tmpdepfile" -n '
|
||||
/^Note: including file: *\(.*\)/ {
|
||||
s//\1/
|
||||
s/\\/\\\\/g
|
||||
p
|
||||
}' | $cygpath_u | sort -u | sed -n '
|
||||
s/ /\\ /g
|
||||
s/\(.*\)/'"$tab"'\1 \\/p
|
||||
s/.\(.*\) \\/\1:/
|
||||
H
|
||||
$ {
|
||||
s/.*/'"$tab"'/
|
||||
G
|
||||
p
|
||||
}' >> "$depfile"
|
||||
echo >> "$depfile" # make sure the fragment doesn't end with a backslash
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvc7msys)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
#nosideeffect)
|
||||
# This comment above is used by automake to tell side-effect
|
||||
# dependency tracking mechanisms from slower ones.
|
||||
|
||||
dashmstdout)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout, regardless of -o.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove '-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
test -z "$dashmflag" && dashmflag=-M
|
||||
# Require at least two characters before searching for ':'
|
||||
# in the target name. This is to cope with DOS-style filenames:
|
||||
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
|
||||
"$@" $dashmflag |
|
||||
sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
cat < "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process this sed invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
dashXmstdout)
|
||||
# This case only exists to satisfy depend.m4. It is never actually
|
||||
# run, as this mode is specially recognized in the preamble.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
makedepend)
|
||||
"$@" || exit $?
|
||||
# Remove any Libtool call
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
# X makedepend
|
||||
shift
|
||||
cleared=no eat=no
|
||||
for arg
|
||||
do
|
||||
case $cleared in
|
||||
no)
|
||||
set ""; shift
|
||||
cleared=yes ;;
|
||||
esac
|
||||
if test $eat = yes; then
|
||||
eat=no
|
||||
continue
|
||||
fi
|
||||
case "$arg" in
|
||||
-D*|-I*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
# Strip any option that makedepend may not understand. Remove
|
||||
# the object too, otherwise makedepend will parse it as a source file.
|
||||
-arch)
|
||||
eat=yes ;;
|
||||
-*|$object)
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
esac
|
||||
done
|
||||
obj_suffix=`echo "$object" | sed 's/^.*\././'`
|
||||
touch "$tmpdepfile"
|
||||
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
|
||||
rm -f "$depfile"
|
||||
# makedepend may prepend the VPATH from the source file name to the object.
|
||||
# No need to regex-escape $object, excess matching of '.' is harmless.
|
||||
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process the last invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed '1,2d' "$tmpdepfile" \
|
||||
| tr ' ' "$nl" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile" "$tmpdepfile".bak
|
||||
;;
|
||||
|
||||
cpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove '-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
"$@" -E \
|
||||
| sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||
| sed '$ s: \\$::' > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
cat < "$tmpdepfile" >> "$depfile"
|
||||
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvisualcpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case "$arg" in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
|
||||
set fnord "$@"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
"$@" -E 2>/dev/null |
|
||||
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
|
||||
echo "$tab" >> "$depfile"
|
||||
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvcmsys)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
none)
|
||||
exec "$@"
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unknown depmode $depmode" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
84
detox/latest/etc/detoxrc.sample
Normal file
84
detox/latest/etc/detoxrc.sample
Normal file
@ -0,0 +1,84 @@
|
||||
#
|
||||
# config file for detox(1)
|
||||
#
|
||||
|
||||
#
|
||||
# Default sequence
|
||||
#
|
||||
|
||||
sequence default {
|
||||
utf_8;
|
||||
safe;
|
||||
wipeup;
|
||||
};
|
||||
|
||||
#
|
||||
# Sequences meant primarily for detox
|
||||
#
|
||||
|
||||
# transliterates ISO8859-1 into ASCII
|
||||
sequence "iso8859_1" {
|
||||
iso8859_1;
|
||||
safe;
|
||||
wipeup;
|
||||
};
|
||||
|
||||
# transliterates UTF-8 into ASCII
|
||||
sequence "utf_8" {
|
||||
utf_8;
|
||||
safe;
|
||||
wipeup;
|
||||
};
|
||||
|
||||
# decodes CGI escaped characters
|
||||
sequence "uncgi" {
|
||||
uncgi;
|
||||
safe;
|
||||
wipeup;
|
||||
};
|
||||
|
||||
# converts files to lower case
|
||||
sequence "lower" {
|
||||
iso8859_1;
|
||||
safe;
|
||||
lower;
|
||||
wipeup;
|
||||
};
|
||||
|
||||
#
|
||||
# Sequences meant primarily for inline-detox
|
||||
#
|
||||
|
||||
# transliterates ISO8859-1 to ASCII
|
||||
sequence "iso8859_1-only" {
|
||||
iso8859_1;
|
||||
};
|
||||
|
||||
# transliterates UTF-8 to ASCII
|
||||
sequence "utf_8-only" {
|
||||
utf_8;
|
||||
};
|
||||
|
||||
# decodes CGI escaped characters
|
||||
sequence "uncgi-only" {
|
||||
uncgi;
|
||||
};
|
||||
|
||||
# converts files to lower case
|
||||
sequence "lower-only" {
|
||||
lower;
|
||||
};
|
||||
|
||||
|
||||
#
|
||||
# Files to ignore (detox only)
|
||||
#
|
||||
|
||||
ignore {
|
||||
filename ".arch-params";
|
||||
filename ".evolution";
|
||||
filename ".gnome";
|
||||
filename ".mozilla";
|
||||
filename ".themes";
|
||||
filename "{arch}";
|
||||
};
|
518
detox/latest/install-sh
Executable file
518
detox/latest/install-sh
Executable file
@ -0,0 +1,518 @@
|
||||
#!/bin/sh
|
||||
# install - install a program, script, or datafile
|
||||
|
||||
scriptversion=2018-03-11.20; # 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 (C) 1994 X Consortium
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to
|
||||
# deal in the Software without restriction, including without limitation the
|
||||
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
# sell copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# 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
|
||||
# 'make' implicit rules from creating a file called install from it
|
||||
# when there is no Makefile.
|
||||
#
|
||||
# This script is compatible with the BSD install script, but was written
|
||||
# from scratch.
|
||||
|
||||
tab=' '
|
||||
nl='
|
||||
'
|
||||
IFS=" $tab$nl"
|
||||
|
||||
# Set DOITPROG to "echo" to test this script.
|
||||
|
||||
doit=${DOITPROG-}
|
||||
doit_exec=${doit:-exec}
|
||||
|
||||
# Put in absolute file names if you don't have them in your path;
|
||||
# or use environment vars.
|
||||
|
||||
chgrpprog=${CHGRPPROG-chgrp}
|
||||
chmodprog=${CHMODPROG-chmod}
|
||||
chownprog=${CHOWNPROG-chown}
|
||||
cmpprog=${CMPPROG-cmp}
|
||||
cpprog=${CPPROG-cp}
|
||||
mkdirprog=${MKDIRPROG-mkdir}
|
||||
mvprog=${MVPROG-mv}
|
||||
rmprog=${RMPROG-rm}
|
||||
stripprog=${STRIPPROG-strip}
|
||||
|
||||
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
|
||||
|
||||
# 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
|
||||
|
||||
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
|
||||
# When -d is used, all remaining arguments are directories to create.
|
||||
# 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 test $# -eq 0; then
|
||||
if test -z "$dir_arg"; then
|
||||
echo "$0: no input file specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
# It's OK to call 'install-sh -d' without argument.
|
||||
# This can happen when creating conditional directories.
|
||||
exit 0
|
||||
fi
|
||||
|
||||
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 test -z "$dir_arg"; then
|
||||
do_exit='(exit $ret); exit $ret'
|
||||
trap "ret=129; $do_exit" 1
|
||||
trap "ret=130; $do_exit" 2
|
||||
trap "ret=141; $do_exit" 13
|
||||
trap "ret=143; $do_exit" 15
|
||||
|
||||
# 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;;
|
||||
|
||||
*[0-7])
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw='% 200'
|
||||
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
|
||||
|
||||
for src
|
||||
do
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $src in
|
||||
-* | [=\(\)!]) src=./$src;;
|
||||
esac
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
dst=$src
|
||||
dstdir=$dst
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
else
|
||||
|
||||
# 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
|
||||
|
||||
if test -z "$dst_arg"; then
|
||||
echo "$0: no destination specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
dst=$dst_arg
|
||||
|
||||
# If destination is a directory, append the input filename.
|
||||
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
|
||||
dstbase=`basename "$src"`
|
||||
case $dst in
|
||||
*/) dst=$dst$dstbase;;
|
||||
*) dst=$dst/$dstbase;;
|
||||
esac
|
||||
dstdir_status=0
|
||||
else
|
||||
dstdir=`dirname "$dst"`
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
fi
|
||||
fi
|
||||
|
||||
case $dstdir in
|
||||
*/) dstdirslash=$dstdir;;
|
||||
*) dstdirslash=$dstdir/;;
|
||||
esac
|
||||
|
||||
obsolete_mkdir_used=false
|
||||
|
||||
if test $dstdir_status != 0; then
|
||||
case $posix_mkdir in
|
||||
'')
|
||||
# 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;;
|
||||
|
||||
*[0-7])
|
||||
mkdir_umask=`expr $umask + 22 \
|
||||
- $umask % 100 % 40 + $umask % 20 \
|
||||
- $umask % 10 % 4 + $umask % 2
|
||||
`;;
|
||||
*) mkdir_umask=$umask,go-w;;
|
||||
esac
|
||||
|
||||
# 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
|
||||
|
||||
posix_mkdir=false
|
||||
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.
|
||||
;;
|
||||
*)
|
||||
# Note that $RANDOM variable is not portable (e.g. dash); Use it
|
||||
# here however when possible just to lower collision chance.
|
||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
||||
|
||||
trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
|
||||
|
||||
# Because "mkdir -p" follows existing symlinks and we likely work
|
||||
# directly in world-writeable /tmp, make sure that the '$tmpdir'
|
||||
# directory is successfully created first before we actually test
|
||||
# 'mkdir -p' feature.
|
||||
if (umask $mkdir_umask &&
|
||||
$mkdirprog $mkdir_mode "$tmpdir" &&
|
||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/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.
|
||||
test_tmpdir="$tmpdir/a"
|
||||
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
|
||||
case $ls_ld_tmpdir in
|
||||
d????-?r-*) different_mode=700;;
|
||||
d????-?--*) different_mode=755;;
|
||||
*) false;;
|
||||
esac &&
|
||||
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
|
||||
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
|
||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||
}
|
||||
}
|
||||
then posix_mkdir=:
|
||||
fi
|
||||
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
|
||||
else
|
||||
# Remove any dirs left behind by ancient mkdir implementations.
|
||||
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
|
||||
fi
|
||||
trap '' 0;;
|
||||
esac;;
|
||||
esac
|
||||
|
||||
if
|
||||
$posix_mkdir && (
|
||||
umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
|
||||
)
|
||||
then :
|
||||
else
|
||||
|
||||
# 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=${dstdirslash}_inst.$$_
|
||||
rmtmp=${dstdirslash}_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 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
149
detox/latest/man/detox.1
Normal file
149
detox/latest/man/detox.1
Normal file
@ -0,0 +1,149 @@
|
||||
.\"
|
||||
.\" This file is part of the Detox package.
|
||||
.\"
|
||||
.\" Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
.\"
|
||||
.\" For the full copyright and license information, please view the LICENSE
|
||||
.\" file that was distributed with this source code.
|
||||
.\"
|
||||
.Dd February 11, 2021
|
||||
.Dt DETOX 1
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm detox
|
||||
.Nd clean up filenames
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Fl hnLrv
|
||||
.Op Fl s Ar sequence
|
||||
.Op Fl f Ar configfile
|
||||
.Op Fl -dry-run
|
||||
.Op Fl -special
|
||||
.Ar
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
utility renames files to make them easier to work with. It removes
|
||||
spaces and other such annoyances. It'll also translate or cleanup
|
||||
Latin-1 (ISO 8859-1) characters encoded in 8-bit ASCII, Unicode
|
||||
characters encoded in UTF-8, and CGI escaped characters.
|
||||
.Ss Sequences
|
||||
.Nm
|
||||
is driven by a configurable series of filters, called a sequence.
|
||||
Sequences are covered in more detail in
|
||||
.Xr detoxrc 5
|
||||
and are discoverable with the
|
||||
.Fl L
|
||||
option. Some examples of default sequences are
|
||||
.Cm iso8859_1
|
||||
and
|
||||
.Cm utf_8 .
|
||||
.Ss Options
|
||||
The main options:
|
||||
.Bl -tag -width Fl
|
||||
.It Fl f Ar configfile
|
||||
Use
|
||||
.Ar configfile
|
||||
instead of the default configuration files for loading translation
|
||||
sequences. No other config file will be parsed.
|
||||
.It Fl h -help
|
||||
Display helpful information.
|
||||
.It Fl L
|
||||
List the currently available sequences. When paired with
|
||||
.Fl v
|
||||
this option shows what filters are used in each sequence and any
|
||||
properties applied to the filters.
|
||||
.It Fl n -dry-run
|
||||
Doesn't actually change anything. This implies the
|
||||
.Fl v
|
||||
option.
|
||||
.It Fl r
|
||||
Recurse into subdirectories.
|
||||
.It Fl s Ar sequence
|
||||
Use
|
||||
.Ar sequence
|
||||
instead of default.
|
||||
.It Fl -special
|
||||
Works on special files (including links). Normally
|
||||
.Nm
|
||||
ignores these files.
|
||||
.It Fl v
|
||||
Be verbose about which files are being renamed.
|
||||
.It Fl V
|
||||
Show the current version of
|
||||
.Nm .
|
||||
.El
|
||||
.Ss Deprecated Options
|
||||
Deprecated Options are options that were available in earlier versions
|
||||
of
|
||||
.Nm
|
||||
but have lost their meaning and are being phased out.
|
||||
.Bl -tag -width Fl
|
||||
.It Fl -remove-trailing
|
||||
Removes _ and - after .'s in filenames. This was first provided in
|
||||
the 0.9 series of
|
||||
.Nm .
|
||||
After the introduction of sequences, it lost its meaning, as you could
|
||||
now determine the properties of wipeup through a particular sequence's
|
||||
configuration. It presently forces all instances of the wipeup filter
|
||||
to use remove trailing, regardless of what's actually in the config
|
||||
files.
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width iso8859_1.tbl -compact
|
||||
.It Pa detoxrc
|
||||
The system-wide detoxrc file.
|
||||
.It Pa ~/.detoxrc
|
||||
A user's personal detoxrc. Normally it extends the system-wide
|
||||
detoxrc, unless
|
||||
.Fl f
|
||||
has been specified, in which case, it is ignored.
|
||||
.It Pa iso8859_1.tbl
|
||||
The default ISO 8859-1 translation table.
|
||||
.It Pa unicode.tbl
|
||||
The default Unicode (UTF-8) translation table.
|
||||
.El
|
||||
.Sh EXAMPLES
|
||||
.Bl -tag -width Fl
|
||||
.It Nm Fl s Ar iso8859_1 Fl r Fl v Fl n Pa /tmp/new_files
|
||||
Will run the sequence
|
||||
.Ar iso8859_1
|
||||
recursively, listing any changes, without changing anything, on the
|
||||
files of
|
||||
.Pa /tmp/new_files .
|
||||
.It Nm Fl f Ar my_detoxrc Fl L Fl v
|
||||
Will list the sequences within
|
||||
.Ar my_detoxrc ,
|
||||
showing their filters and options.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr inline-detox 1 ,
|
||||
.Xr detoxrc 5 ,
|
||||
.Xr detox.tbl 5 .
|
||||
.Sh HISTORY
|
||||
.Nm
|
||||
was originally designed to clean up files that I had received from
|
||||
friends which had been created using other operating systems. It's
|
||||
trivial to create a filename with spaces, parenthesis, brackets, and
|
||||
ampersands under some operating systems. These have special meaning
|
||||
within FreeBSD and Linux, and cause problems when you go to access
|
||||
them. I created
|
||||
.Nm
|
||||
to clean up these files.
|
||||
.Sh AUTHORS
|
||||
.Nm
|
||||
was written by
|
||||
.An "Doug Harple" .
|
||||
.Sh BUGS
|
||||
If, after the translation of a filename is finished, a file already
|
||||
exists with that same name,
|
||||
.Nm
|
||||
will not rename the file. This could cause a problem with the
|
||||
.Cm max_length
|
||||
filter, if it was imperative that the files be cut down to a certain
|
||||
length.
|
||||
.Pp
|
||||
Long options don't work under Solaris or Darwin.
|
||||
.Pp
|
||||
An error in the config file will cause a segfault as it's going to
|
||||
print the offending word within the config file.
|
56
detox/latest/man/detox.tbl.5
Normal file
56
detox/latest/man/detox.tbl.5
Normal file
@ -0,0 +1,56 @@
|
||||
.\"
|
||||
.\" This file is part of the Detox package.
|
||||
.\"
|
||||
.\" Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
.\"
|
||||
.\" For the full copyright and license information, please view the LICENSE
|
||||
.\" file that was distributed with this source code.
|
||||
.\"
|
||||
.Dd August 3, 2004
|
||||
.Dt DETOX.TBL 5
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm detox.tbl
|
||||
.Nd translation table for
|
||||
.Xr detox 1
|
||||
.Sh OVERVIEW
|
||||
detox allows for configuration of how the ISO 8859-1 and UTF-8
|
||||
(Unicode) filters operate. Through text based translation tables, it
|
||||
is possible to tune how these character sets are interpreted.
|
||||
.Sh SYNTAX
|
||||
The format of the translation tables is simple. There are two levels:
|
||||
one containing meta data and one containing the actual translations.
|
||||
.Bl -tag -width 0.25i
|
||||
.It Cm default Ar _
|
||||
Default specifies the default translation for a character. An empty
|
||||
or nonexistent default indicates that any unknown character should
|
||||
fall through to the next filter. In this manner, it is possible to
|
||||
chain together multiple translation tables in a sequence.
|
||||
.It Cm start
|
||||
Indicates the start of a value list within the translation table.
|
||||
.It Cm start Ar lang
|
||||
Indicates the start of a language specific value list within the
|
||||
translation table.
|
||||
.It Cm end
|
||||
Indicates the end of a value list within the translation table.
|
||||
.It Ar value translation
|
||||
Value can be specified in decimal (1), hex (0x01) or octal (01). The
|
||||
same rules that apply to sscanf apply here.
|
||||
.Pp
|
||||
Translation can be a string or a quoted string, with either single or
|
||||
double quotes.
|
||||
.El
|
||||
.Sh EXAMPLE
|
||||
.Bd -literal
|
||||
default _
|
||||
start
|
||||
0x0101 a
|
||||
0x0102 b
|
||||
end
|
||||
.Ed
|
||||
.Sh SEE ALSO
|
||||
.Xr detox 1 ,
|
||||
.Xr detoxrc 5 .
|
||||
.Sh AUTHORS
|
||||
detox was written by
|
||||
.An "Doug Harple" .
|
214
detox/latest/man/detoxrc.5
Normal file
214
detox/latest/man/detoxrc.5
Normal file
@ -0,0 +1,214 @@
|
||||
.\"
|
||||
.\" This file is part of the Detox package.
|
||||
.\"
|
||||
.\" Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
.\"
|
||||
.\" For the full copyright and license information, please view the LICENSE
|
||||
.\" file that was distributed with this source code.
|
||||
.\"
|
||||
.Dd August 3, 2004
|
||||
.Dt DETOXRC 5
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm detoxrc
|
||||
.Nd configuration file for
|
||||
.Xr detox 1
|
||||
.Sh OVERVIEW
|
||||
detox allows for configuration of its sequences through config files.
|
||||
This document describes how these files work.
|
||||
.Sh IMPORTANT
|
||||
When setting up a new set of rules, the
|
||||
.Cm safe
|
||||
and
|
||||
.Cm wipeup
|
||||
filters must always be run after a translating filter (or series
|
||||
thereof), such as the
|
||||
.Cm utf_8
|
||||
or the
|
||||
.Cm uncgi
|
||||
filters. Otherwise, the risk of introducing illegal characters into
|
||||
the filename is introduced.
|
||||
.Sh SYNTAX
|
||||
The format of this configuration file is C-like. It is based loosely
|
||||
off named's configuration files. Each statement is semicolon
|
||||
terminated, and modifiers on a particular statement are generally
|
||||
contained within braces.
|
||||
.Bl -tag -width 0.25i
|
||||
.It Cm sequence Qo Ar name Qc Bro Ar ... Brc ;
|
||||
Defines a sequence of filters to run a filename through. "name"
|
||||
specifies how the user will refer to the particular sequence during
|
||||
runtime. Quotes around the sequence name are generally optional, but
|
||||
should be used if the sequence name does not start with a letter.
|
||||
.Pp
|
||||
There is a special sequence, named "default", which is the default
|
||||
sequence used by detox. This can be overridden through the command
|
||||
line option
|
||||
.Fl s
|
||||
or the environmental variable
|
||||
.Ev DETOX_SEQUENCE .
|
||||
.Pp
|
||||
Sequence names are case sensitive and unique throughout all sequences;
|
||||
that is, if a system wide file defines
|
||||
.Ar normal_seq
|
||||
and a user has a sequence with the same name in their
|
||||
.Pa .detoxrc ,
|
||||
the users'
|
||||
.Ar normal_seq
|
||||
will take precedence.
|
||||
.It Cm iso8859_1 Bro Cm filename Qo Ar /path/to/filename Qc ; Brc ;
|
||||
This translates ISO 8859-1 (aka Latin-1) characters into lower ASCII
|
||||
equivalents. The output is not necessarily safe, and should also be
|
||||
run through the
|
||||
.Cm safe
|
||||
filter.
|
||||
.Pp
|
||||
Under normal circumstances, the filename syntax is not needed. Detox
|
||||
looks in several locations for a file called
|
||||
.Pa iso8859_1.tbl ,
|
||||
which is a set of rules defining how an ISO 8859-1 character should be
|
||||
translated.
|
||||
.Pp
|
||||
In the event this table doesn't exist, you have two options. You can
|
||||
download or create your own, and tell detox the location of it using
|
||||
the filename syntax shown above, or you can let detox fall back on its
|
||||
internal tables. The internal tables translate the same as the stock
|
||||
translation tables.
|
||||
.Pp
|
||||
You can chain together multiple iso8859_1 translations, as long as the
|
||||
default value of all but the last one is set to nothing. This is
|
||||
explained in
|
||||
.Xr detox.tbl 5 .
|
||||
.Pp
|
||||
This filter is mutually exclusive with the
|
||||
.Cm utf_8
|
||||
filter.
|
||||
.It Cm utf_8 Bro Cm filename Qo Ar /path/to/filename Qc ; Brc ;
|
||||
This translates Unicode characters, encoded by the UTF-8 translation
|
||||
method, into safe equivalents.
|
||||
.Pp
|
||||
This operates in a manner similar to
|
||||
.Cm iso8859_1 ,
|
||||
except it looks for a translation table called
|
||||
.Pa unicode.tbl .
|
||||
.Pp
|
||||
The default internal translation for Unicode characters only contains
|
||||
the lower 256 characters of Unicode, which is equivalent to the set of
|
||||
Basic Latin and Latin-1 characters.
|
||||
.It Cm uncgi ;
|
||||
This translates CGI escaped strings into their ASCII equivalents. The
|
||||
output of this is not necessarily safe, and could contain ISO 8859-1
|
||||
chars or potentially UTF-8 characters.
|
||||
.It Cm safe Bro Cm filename Qo Ar /path/to/filename Qc ; Brc ;
|
||||
This could also be called "safe for UNIX-like operating systems". It
|
||||
translates characters that are difficult to work with in UNIX
|
||||
environments into characters that are not.
|
||||
.Pp
|
||||
In earlier versions this filter was entirely internal. Starting with
|
||||
1.2.0, this filter is controlled by a translation table. In the
|
||||
absence of the translation table, the previous code will be employed
|
||||
for the translation. Also, prior to 1.2.0, the safe filter removed
|
||||
leading dashes to prevent the hassle of dealing with a filename in
|
||||
the format
|
||||
.Pa -filename .
|
||||
This functionality is exclusively handled by the
|
||||
.Cm wipeup
|
||||
filter now.
|
||||
.Pp
|
||||
See the
|
||||
.Sx SAFE
|
||||
section for more details on what this filter translates by default.
|
||||
.It Cm wipeup Bro Cm remove_trailing ; Brc ;
|
||||
This wipes up any excessive characters. For instance, multiple
|
||||
underscores or dashes will be converted into a single underscore or
|
||||
dash. Any series of dash and underscore (i.e. "_-_") will be
|
||||
converted into a single dash.
|
||||
.Pp
|
||||
The remove trailing option removes a dash or underscore followed
|
||||
immediately by a period.
|
||||
.Pp
|
||||
See the
|
||||
.Sx WIPEUP
|
||||
section for more details on what this filter translates.
|
||||
.It Cm max_length Bro Cm length Ar value ; Brc ;
|
||||
This trims a file down to the length specified (or less). It is
|
||||
conscious of extensions and attempts to preserve anything following
|
||||
the last period in a filename.
|
||||
.Pp
|
||||
For instance, given a max length of 12, and a filename of
|
||||
"this_is_my_file.txt", the filter would output "this_is_.txt".
|
||||
.It Cm lower ;
|
||||
This translates uppercase characters into lowercase characters.
|
||||
.It Cm # Comments
|
||||
Any thing after a # on any line is ignored.
|
||||
.El
|
||||
.Sh EXAMPLE
|
||||
.Bd -literal
|
||||
sequence default {
|
||||
uncgi;
|
||||
iso8859_1 {
|
||||
filename "iso8859_1.tbl";
|
||||
};
|
||||
# utf_8 {
|
||||
# filename "unicode.tbl";
|
||||
# };
|
||||
safe {
|
||||
filename "safe.tbl";
|
||||
};
|
||||
wipeup {
|
||||
remove_trailing;
|
||||
};
|
||||
# max_length {
|
||||
# length 128;
|
||||
# };
|
||||
};
|
||||
.Ed
|
||||
.Sh SAFE
|
||||
The following characters are translated by the stock
|
||||
.Cm safe
|
||||
filter. They can be tuned by updating safe.tbl or creating a copy of
|
||||
safe.tbl and updating your rc file.
|
||||
.Pp
|
||||
.Ss Rules that apply anywhere in the filename:
|
||||
.Bl -column -offset indent ".Sy Removed" ".Sy Original"
|
||||
.It Sy Safe Ta Sy Original
|
||||
.It _and_ Ta &
|
||||
.It _ Ta \fIspace\fR ` \&! @ $ * \e | \&: \&; \&" ' < > \&? /
|
||||
.It - Ta \&( \&) \&[ \&] { }
|
||||
.El
|
||||
.Pp
|
||||
.Sh WIPEUP
|
||||
The following characters are translated by the
|
||||
.Cm wipeup
|
||||
filter.
|
||||
.Pp
|
||||
.Ss Rules that apply anywhere in the filename:
|
||||
.Bl -column -offset indent ".Sy Wipeup" ".Sy Original"
|
||||
.It Sy Wipeup Ta Sy Original
|
||||
.It - Ta -_
|
||||
.It - Ta _-
|
||||
.It - Ta --
|
||||
.It _ Ta __
|
||||
.El
|
||||
.Pp
|
||||
.Ss Rules that apply only at the beginning of a filename:
|
||||
Any leading dashes are stripped to prevent programs from interpreting
|
||||
these files as command line options.
|
||||
.Bl -column -offset indent ".Sy removed" ".Sy Original"
|
||||
.It Sy Wipeup Ta Sy Original
|
||||
.It \fIremoved\fR Ta - _ #
|
||||
.El
|
||||
.Ss Rules that apply when remove trailing is enabled:
|
||||
.Bl -column -offset indent ".Sy Wipeup" ".Sy Original"
|
||||
.It Sy Wipeup Ta Sy Original
|
||||
.It . Ta .-
|
||||
.It . Ta -.
|
||||
.It . Ta ._
|
||||
.It . Ta _.
|
||||
.El
|
||||
.Pp
|
||||
.Sh SEE ALSO
|
||||
.Xr detox 1 ,
|
||||
.Xr detox.tbl 5 .
|
||||
.Sh AUTHORS
|
||||
detox was written by
|
||||
.An "Doug Harple" .
|
126
detox/latest/man/inline-detox.1
Normal file
126
detox/latest/man/inline-detox.1
Normal file
@ -0,0 +1,126 @@
|
||||
.\"
|
||||
.\" This file is part of the Detox package.
|
||||
.\"
|
||||
.\" Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
.\"
|
||||
.\" For the full copyright and license information, please view the LICENSE
|
||||
.\" file that was distributed with this source code.
|
||||
.\"
|
||||
.Dd February 11, 2021
|
||||
.Dt DETOX 1
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm inline-detox
|
||||
.Nd clean up filenames (stream-based)
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Fl hnLrv
|
||||
.Op Fl s Ar sequence
|
||||
.Op Fl f Ar configfile
|
||||
.Ar
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
utility can remove spaces and other such annoyances from streams.
|
||||
It'll also translate or cleanup Latin-1 (ISO 8859-1) characters encoded
|
||||
in 8-bit ASCII, Unicode characters encoded in UTF-8, and CGI escaped characters.
|
||||
Basically it's detox, but does not operate on files.
|
||||
.Ss Sequences
|
||||
.Nm
|
||||
is driven by a configurable series of filters, called a sequence.
|
||||
Sequences are covered in more detail in
|
||||
.Xr detoxrc 5
|
||||
and are discoverable with the
|
||||
.Fl L
|
||||
option. Some examples of default sequences are
|
||||
.Cm iso8859_1
|
||||
and
|
||||
.Cm utf_8 .
|
||||
.Ss Options
|
||||
The main options:
|
||||
.Bl -tag -width Fl
|
||||
.It Fl f Ar configfile
|
||||
Use
|
||||
.Ar configfile
|
||||
instead of the default configuration files for loading translation
|
||||
sequences. No other config file will be parsed.
|
||||
.It Fl h -help
|
||||
Display helpful information.
|
||||
.It Fl L
|
||||
List the currently available sequences. When paired with
|
||||
.Fl v
|
||||
this option shows what filters are used in each sequence and any
|
||||
properties applied to the filters.
|
||||
.It Fl r
|
||||
Recurse into subdirectories.
|
||||
.It Fl s Ar sequence
|
||||
Use
|
||||
.Ar sequence
|
||||
instead of default.
|
||||
.It Fl v
|
||||
Be verbose about which files are being renamed.
|
||||
.It Fl V
|
||||
Show the current version of
|
||||
.Nm .
|
||||
.El
|
||||
.Ss Deprecated Options
|
||||
Deprecated Options are options that were available in earlier versions
|
||||
of
|
||||
.Nm
|
||||
but have lost their meaning and are being phased out.
|
||||
.Bl -tag -width Fl
|
||||
.It Fl -remove-trailing
|
||||
Removes _ and - after .'s in filenames. This was first provided in
|
||||
the 0.9 series of
|
||||
.Nm .
|
||||
After the introduction of sequences, it lost its meaning, as you could
|
||||
now determine the properties of wipeup through a particular sequence's
|
||||
configuration. It presently forces all instances of the wipeup filter
|
||||
to use remove trailing, regardless of what's actually in the config
|
||||
files.
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width iso8859_1.tbl -compact
|
||||
.It Pa detoxrc
|
||||
The system-wide detoxrc file.
|
||||
.It Pa ~/.detoxrc
|
||||
A user's personal detoxrc. Normally it extends the system-wide
|
||||
detoxrc, unless
|
||||
.Fl f
|
||||
has been specified, in which case, it is ignored.
|
||||
.It Pa iso8859_1.tbl
|
||||
The default ISO 8859-1 translation table.
|
||||
.It Pa unicode.tbl
|
||||
The default Unicode (UTF-8) translation table.
|
||||
.El
|
||||
.Sh EXAMPLES
|
||||
.Bl -tag -width Fl
|
||||
.It echo "Foo Bar" | Nm Fl s Ar iso8859_1 Fl v
|
||||
Will run the sequence
|
||||
.Ar iso8859_1
|
||||
listing any changes and returning the result to STDOUT.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr detox 1 ,
|
||||
.Xr detoxrc 5 ,
|
||||
.Xr detox.tbl 5 .
|
||||
.Sh HISTORY
|
||||
detox
|
||||
was originally designed to clean up files that I had received from
|
||||
friends which had been created using other operating systems. It's
|
||||
trivial to create a filename with spaces, parenthesis, brackets, and
|
||||
ampersands under some operating systems. These have special meaning
|
||||
within FreeBSD and Linux, and cause problems when you go to access
|
||||
them. I created
|
||||
.Nm
|
||||
to clean up these files.
|
||||
.Sh AUTHORS
|
||||
.Nm
|
||||
was written by
|
||||
.An "Doug Harple" .
|
||||
.Sh BUGS
|
||||
.Pp
|
||||
Long options don't work under Solaris or Darwin.
|
||||
.Pp
|
||||
An error in the config file will cause a segfault as it's going to
|
||||
print the offending word within the config file.
|
215
detox/latest/missing
Executable file
215
detox/latest/missing
Executable file
@ -0,0 +1,215 @@
|
||||
#! /bin/sh
|
||||
# Common wrapper for a few potentially missing GNU programs.
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1996-2018 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
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, 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, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
if test $# -eq 0; then
|
||||
echo 1>&2 "Try '$0 --help' for more information"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
|
||||
--is-lightweight)
|
||||
# Used by our autoconf macros to check whether the available missing
|
||||
# script is modern enough.
|
||||
exit 0
|
||||
;;
|
||||
|
||||
--run)
|
||||
# Back-compat with the calling convention used by older automake.
|
||||
shift
|
||||
;;
|
||||
|
||||
-h|--h|--he|--hel|--help)
|
||||
echo "\
|
||||
$0 [OPTION]... PROGRAM [ARGUMENT]...
|
||||
|
||||
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
|
||||
to PROGRAM being missing or too old.
|
||||
|
||||
Options:
|
||||
-h, --help display this help and exit
|
||||
-v, --version output version information and exit
|
||||
|
||||
Supported PROGRAM values:
|
||||
aclocal autoconf autoheader autom4te automake makeinfo
|
||||
bison yacc flex lex help2man
|
||||
|
||||
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
|
||||
'g' are ignored when checking the name.
|
||||
|
||||
Send bug reports to <bug-automake@gnu.org>."
|
||||
exit $?
|
||||
;;
|
||||
|
||||
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
|
||||
echo "missing $scriptversion (GNU Automake)"
|
||||
exit $?
|
||||
;;
|
||||
|
||||
-*)
|
||||
echo 1>&2 "$0: unknown '$1' option"
|
||||
echo 1>&2 "Try '$0 --help' for more information"
|
||||
exit 1
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
# 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=https://www.perl.org/
|
||||
flex_URL=https://github.com/westes/flex
|
||||
gnu_software_URL=https://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 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
147
detox/latest/src/.deps/clean_string.Po
Normal file
147
detox/latest/src/.deps/clean_string.Po
Normal file
@ -0,0 +1,147 @@
|
||||
clean_string.o: clean_string.c /usr/include/stdc-predef.h config.h \
|
||||
/usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/ctype.h /usr/include/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
clean_string.h iso8859_1.h unicode.h parse_table.h table.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/ctype.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
clean_string.h:
|
||||
iso8859_1.h:
|
||||
unicode.h:
|
||||
parse_table.h:
|
||||
table.h:
|
134
detox/latest/src/.deps/config_file_dump.Po
Normal file
134
detox/latest/src/.deps/config_file_dump.Po
Normal file
@ -0,0 +1,134 @@
|
||||
config_file_dump.o: config_file_dump.c /usr/include/stdc-predef.h \
|
||||
config.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h detox.h \
|
||||
config_file_dump.h clean_string.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
detox.h:
|
||||
config_file_dump.h:
|
||||
clean_string.h:
|
166
detox/latest/src/.deps/config_file_lex.Po
Normal file
166
detox/latest/src/.deps/config_file_lex.Po
Normal file
@ -0,0 +1,166 @@
|
||||
config_file_lex.o: config_file_lex.c /usr/include/stdc-predef.h \
|
||||
/usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdlib.h /usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/inttypes.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h /usr/include/stdint.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h config.h \
|
||||
config_file_yacc.h /usr/include/unistd.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/posix_opt.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h
|
||||
/usr/include/stdc-predef.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/inttypes.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wchar.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
|
||||
config.h:
|
||||
config_file_yacc.h:
|
||||
/usr/include/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/posix_opt.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h:
|
143
detox/latest/src/.deps/config_file_spoof.Po
Normal file
143
detox/latest/src/.deps/config_file_spoof.Po
Normal file
@ -0,0 +1,143 @@
|
||||
config_file_spoof.o: config_file_spoof.c /usr/include/stdc-predef.h \
|
||||
config.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
detox.h config_file_spoof.h clean_string.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
detox.h:
|
||||
config_file_spoof.h:
|
||||
clean_string.h:
|
134
detox/latest/src/.deps/config_file_yacc.Po
Normal file
134
detox/latest/src/.deps/config_file_yacc.Po
Normal file
@ -0,0 +1,134 @@
|
||||
config_file_yacc.o: config_file_yacc.c /usr/include/stdc-predef.h \
|
||||
config.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h detox.h \
|
||||
clean_string.h config_file.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
detox.h:
|
||||
clean_string.h:
|
||||
config_file.h:
|
172
detox/latest/src/.deps/detox.Po
Normal file
172
detox/latest/src/.deps/detox.Po
Normal file
@ -0,0 +1,172 @@
|
||||
detox.o: detox.c /usr/include/stdc-predef.h config.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h /usr/include/features.h \
|
||||
/usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/unistd.h /usr/include/x86_64-linux-gnu/bits/posix_opt.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h detox.h clean_string.h \
|
||||
file.h config_file.h config_file_spoof.h config_file_dump.h \
|
||||
parse_table.h table.h parse_options.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/posix_opt.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h:
|
||||
detox.h:
|
||||
clean_string.h:
|
||||
file.h:
|
||||
config_file.h:
|
||||
config_file_spoof.h:
|
||||
config_file_dump.h:
|
||||
parse_table.h:
|
||||
table.h:
|
||||
parse_options.h:
|
180
detox/latest/src/.deps/file.Po
Normal file
180
detox/latest/src/.deps/file.Po
Normal file
@ -0,0 +1,180 @@
|
||||
file.o: file.c /usr/include/stdc-predef.h config.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h /usr/include/features.h \
|
||||
/usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/unistd.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/posix_opt.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h /usr/include/dirent.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/dirent.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/posix1_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/local_lim.h \
|
||||
/usr/include/linux/limits.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/dirent_ext.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/errno.h /usr/include/x86_64-linux-gnu/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
clean_string.h file.h detox.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/posix_opt.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h:
|
||||
/usr/include/dirent.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/dirent.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/posix1_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/local_lim.h:
|
||||
/usr/include/linux/limits.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/dirent_ext.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
clean_string.h:
|
||||
file.h:
|
||||
detox.h:
|
168
detox/latest/src/.deps/parse_options.Po
Normal file
168
detox/latest/src/.deps/parse_options.Po
Normal file
@ -0,0 +1,168 @@
|
||||
parse_options.o: parse_options.c /usr/include/stdc-predef.h config.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h /usr/include/features.h \
|
||||
/usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/unistd.h /usr/include/x86_64-linux-gnu/bits/posix_opt.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h /usr/include/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/libgen.h detox.h parse_options.h /usr/include/getopt.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_ext.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/posix_opt.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/environments.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/confname.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_core.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/libgen.h:
|
||||
detox.h:
|
||||
parse_options.h:
|
||||
/usr/include/getopt.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/getopt_ext.h:
|
151
detox/latest/src/.deps/parse_table.Po
Normal file
151
detox/latest/src/.deps/parse_table.Po
Normal file
@ -0,0 +1,151 @@
|
||||
parse_table.o: parse_table.c /usr/include/stdc-predef.h config.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h /usr/include/features.h \
|
||||
/usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/ctype.h /usr/include/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/locale.h /usr/include/x86_64-linux-gnu/bits/locale.h \
|
||||
table.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/stat.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stat.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_stat.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/ctype.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/locale.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/locale.h:
|
||||
table.h:
|
142
detox/latest/src/.deps/table.Po
Normal file
142
detox/latest/src/.deps/table.Po
Normal file
@ -0,0 +1,142 @@
|
||||
table.o: table.c /usr/include/stdc-predef.h config.h /usr/include/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h \
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h /usr/include/stdlib.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h /usr/include/string.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
|
||||
/usr/include/strings.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h \
|
||||
/usr/include/ctype.h /usr/include/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
table.h
|
||||
/usr/include/stdc-predef.h:
|
||||
config.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/timesize.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/long-double.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
|
||||
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h:
|
||||
/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/time64.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdio2.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endian.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/endianness.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
|
||||
/usr/include/x86_64-linux-gnu/sys/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select2.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/select-decl.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/stdlib.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:
|
||||
/usr/include/ctype.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/x86_64-linux-gnu/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
table.h:
|
676
detox/latest/src/Makefile
Normal file
676
detox/latest/src/Makefile
Normal file
@ -0,0 +1,676 @@
|
||||
# Makefile.in generated by automake 1.16.1 from Makefile.am.
|
||||
# src/Makefile. Generated from Makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994-2018 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
|
||||
|
||||
|
||||
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)/detox
|
||||
pkgincludedir = $(includedir)/detox
|
||||
pkglibdir = $(libdir)/detox
|
||||
pkglibexecdir = $(libexecdir)/detox
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
bin_PROGRAMS = detox$(EXEEXT) inline-detox$(EXEEXT)
|
||||
subdir = src
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
am__installdirs = "$(DESTDIR)$(bindir)"
|
||||
PROGRAMS = $(bin_PROGRAMS)
|
||||
am_detox_OBJECTS = detox.$(OBJEXT) file.$(OBJEXT) \
|
||||
clean_string.$(OBJEXT) table.$(OBJEXT) parse_table.$(OBJEXT) \
|
||||
config_file_yacc.$(OBJEXT) config_file_lex.$(OBJEXT) \
|
||||
config_file_spoof.$(OBJEXT) config_file_dump.$(OBJEXT) \
|
||||
parse_options.$(OBJEXT)
|
||||
detox_OBJECTS = $(am_detox_OBJECTS)
|
||||
detox_LDADD = $(LDADD)
|
||||
am__objects_1 = detox.$(OBJEXT) file.$(OBJEXT) clean_string.$(OBJEXT) \
|
||||
table.$(OBJEXT) parse_table.$(OBJEXT) \
|
||||
config_file_yacc.$(OBJEXT) config_file_lex.$(OBJEXT) \
|
||||
config_file_spoof.$(OBJEXT) config_file_dump.$(OBJEXT) \
|
||||
parse_options.$(OBJEXT)
|
||||
am_inline_detox_OBJECTS = $(am__objects_1)
|
||||
inline_detox_OBJECTS = $(am_inline_detox_OBJECTS)
|
||||
inline_detox_LDADD = $(LDADD)
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
DEFAULT_INCLUDES = -I.
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__maybe_remake_depfiles = depfiles
|
||||
am__depfiles_remade = ./$(DEPDIR)/clean_string.Po \
|
||||
./$(DEPDIR)/config_file_dump.Po ./$(DEPDIR)/config_file_lex.Po \
|
||||
./$(DEPDIR)/config_file_spoof.Po \
|
||||
./$(DEPDIR)/config_file_yacc.Po ./$(DEPDIR)/detox.Po \
|
||||
./$(DEPDIR)/file.Po ./$(DEPDIR)/parse_options.Po \
|
||||
./$(DEPDIR)/parse_table.Po ./$(DEPDIR)/table.Po
|
||||
am__mv = mv -f
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
AM_V_CC = $(am__v_CC_$(V))
|
||||
am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CC_0 = @echo " CC " $@;
|
||||
am__v_CC_1 =
|
||||
CCLD = $(CC)
|
||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_CCLD = $(am__v_CCLD_$(V))
|
||||
am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||
am__v_CCLD_1 =
|
||||
LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
|
||||
AM_V_LEX = $(am__v_LEX_$(V))
|
||||
am__v_LEX_ = $(am__v_LEX_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_LEX_0 = @echo " LEX " $@;
|
||||
am__v_LEX_1 =
|
||||
YLWRAP = $(top_srcdir)/ylwrap
|
||||
am__yacc_c2h = sed -e s/cc$$/hh/ -e s/cpp$$/hpp/ -e s/cxx$$/hxx/ \
|
||||
-e s/c++$$/h++/ -e s/c$$/h/
|
||||
YACCCOMPILE = $(YACC) $(AM_YFLAGS) $(YFLAGS)
|
||||
AM_V_YACC = $(am__v_YACC_$(V))
|
||||
am__v_YACC_ = $(am__v_YACC_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_YACC_0 = @echo " YACC " $@;
|
||||
am__v_YACC_1 =
|
||||
SOURCES = $(detox_SOURCES) $(inline_detox_SOURCES)
|
||||
DIST_SOURCES = $(detox_SOURCES) $(inline_detox_SOURCES)
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
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
|
||||
CTAGS = ctags
|
||||
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
|
||||
$(top_srcdir)/depcomp $(top_srcdir)/ylwrap config_file_lex.c \
|
||||
config_file_yacc.c config_file_yacc.h
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing aclocal-1.16
|
||||
AMTAR = $${TAR-tar}
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AUTOCONF = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing automake-1.16
|
||||
AWK = mawk
|
||||
CC = gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = gcc -E
|
||||
CPPFLAGS =
|
||||
CYGPATH_W = echo
|
||||
DEFS = -DHAVE_CONFIG_H
|
||||
DEPDIR = .deps
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LDFLAGS =
|
||||
LEX = flex
|
||||
LEXLIB = -lfl
|
||||
LEX_OUTPUT_ROOT = lex.yy
|
||||
LIBOBJS =
|
||||
LIBS =
|
||||
LTLIBOBJS =
|
||||
MAKEINFO = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/missing makeinfo
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
OBJEXT = o
|
||||
PACKAGE = detox
|
||||
PACKAGE_BUGREPORT = detox.dharple at gmail.com
|
||||
PACKAGE_NAME = detox
|
||||
PACKAGE_STRING = detox 1.4.5
|
||||
PACKAGE_TARNAME = detox
|
||||
PACKAGE_URL = https://github.com/dharple/detox
|
||||
PACKAGE_VERSION = 1.4.5
|
||||
PATH_SEPARATOR = :
|
||||
SET_MAKE =
|
||||
SHELL = /bin/bash
|
||||
STRIP =
|
||||
VERSION = 1.4.5
|
||||
YACC = bison -y
|
||||
YFLAGS =
|
||||
abs_builddir = /home/tcsenpai/Downloads/detox-1.4.5/src
|
||||
abs_srcdir = /home/tcsenpai/Downloads/detox-1.4.5/src
|
||||
abs_top_builddir = /home/tcsenpai/Downloads/detox-1.4.5
|
||||
abs_top_srcdir = /home/tcsenpai/Downloads/detox-1.4.5
|
||||
ac_ct_CC = gcc
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build_alias =
|
||||
builddir = .
|
||||
datadir = ${datarootdir}
|
||||
datarootdir = ${prefix}/share
|
||||
docdir = ${datarootdir}/doc/${PACKAGE_TARNAME}
|
||||
dvidir = ${docdir}
|
||||
exec_prefix = ${prefix}
|
||||
host_alias =
|
||||
htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /home/tcsenpai/Downloads/detox-1.4.5/install-sh
|
||||
libdir = ${exec_prefix}/lib
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /usr/local
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
runstatedir = ${localstatedir}/run
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
sharedstatedir = ${prefix}/com
|
||||
srcdir = .
|
||||
sysconfdir = ${prefix}/etc
|
||||
target_alias =
|
||||
top_build_prefix = ../
|
||||
top_builddir = ..
|
||||
top_srcdir = ..
|
||||
BUILT_SOURCES = config_file.h
|
||||
AM_YFLAGS = -d
|
||||
AM_CPPFLAGS = -DDATADIR=\"$(datadir)\" -DSYSCONFDIR=\"$(sysconfdir)\"
|
||||
detox_SOURCES = detox.c file.c clean_string.c table.c parse_table.c config_file_yacc.y config_file_lex.l config_file_spoof.c config_file_dump.c parse_options.c
|
||||
inline_detox_SOURCES = $(detox_SOURCES)
|
||||
EXTRA_DIST = *.h
|
||||
all: $(BUILT_SOURCES) config.h
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .l .o .obj .y
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign src/Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
config.h: stamp-h1
|
||||
@test -f $@ || rm -f stamp-h1
|
||||
@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
|
||||
|
||||
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
|
||||
@rm -f stamp-h1
|
||||
cd $(top_builddir) && $(SHELL) ./config.status src/config.h
|
||||
$(srcdir)/config.h.in: $(am__configure_deps)
|
||||
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
|
||||
rm -f stamp-h1
|
||||
touch $@
|
||||
|
||||
distclean-hdr:
|
||||
-rm -f config.h stamp-h1
|
||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do echo "$$p $$p"; done | \
|
||||
sed 's/$(EXEEXT)$$//' | \
|
||||
while read p p1; do if test -f $$p \
|
||||
; then echo "$$p"; echo "$$p"; else :; fi; \
|
||||
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)$(bindir)$$dir'"; \
|
||||
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
|
||||
} \
|
||||
; done
|
||||
|
||||
uninstall-binPROGRAMS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
|
||||
files=`for p in $$list; do echo "$$p"; done | \
|
||||
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
|
||||
-e 's/$$/$(EXEEXT)/' \
|
||||
`; \
|
||||
test -n "$$list" || exit 0; \
|
||||
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
|
||||
cd "$(DESTDIR)$(bindir)" && rm -f $$files
|
||||
|
||||
clean-binPROGRAMS:
|
||||
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
|
||||
config_file_yacc.h: config_file_yacc.c
|
||||
@if test ! -f $@; then rm -f config_file_yacc.c; else :; fi
|
||||
@if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) config_file_yacc.c; else :; fi
|
||||
|
||||
detox$(EXEEXT): $(detox_OBJECTS) $(detox_DEPENDENCIES) $(EXTRA_detox_DEPENDENCIES)
|
||||
@rm -f detox$(EXEEXT)
|
||||
$(AM_V_CCLD)$(LINK) $(detox_OBJECTS) $(detox_LDADD) $(LIBS)
|
||||
|
||||
inline-detox$(EXEEXT): $(inline_detox_OBJECTS) $(inline_detox_DEPENDENCIES) $(EXTRA_inline_detox_DEPENDENCIES)
|
||||
@rm -f inline-detox$(EXEEXT)
|
||||
$(AM_V_CCLD)$(LINK) $(inline_detox_OBJECTS) $(inline_detox_LDADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
include ./$(DEPDIR)/clean_string.Po # am--include-marker
|
||||
include ./$(DEPDIR)/config_file_dump.Po # am--include-marker
|
||||
include ./$(DEPDIR)/config_file_lex.Po # am--include-marker
|
||||
include ./$(DEPDIR)/config_file_spoof.Po # am--include-marker
|
||||
include ./$(DEPDIR)/config_file_yacc.Po # am--include-marker
|
||||
include ./$(DEPDIR)/detox.Po # am--include-marker
|
||||
include ./$(DEPDIR)/file.Po # am--include-marker
|
||||
include ./$(DEPDIR)/parse_options.Po # am--include-marker
|
||||
include ./$(DEPDIR)/parse_table.Po # am--include-marker
|
||||
include ./$(DEPDIR)/table.Po # am--include-marker
|
||||
|
||||
$(am__depfiles_remade):
|
||||
@$(MKDIR_P) $(@D)
|
||||
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
|
||||
|
||||
am--depfiles: $(am__depfiles_remade)
|
||||
|
||||
.c.o:
|
||||
$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.l.c:
|
||||
$(AM_V_LEX)$(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
|
||||
|
||||
.y.c:
|
||||
$(AM_V_YACC)$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h `echo $@ | $(am__yacc_c2h)` y.output $*.output -- $(YACCCOMPILE)
|
||||
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
TAGS: tags
|
||||
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
if test $$# -gt 0; then \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
"$$@" $$unique; \
|
||||
else \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: ctags-am
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& 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:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||
|
||||
distdir-am: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
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 -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
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 \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) check-am
|
||||
all-am: Makefile $(PROGRAMS) config.h
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(bindir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
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:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-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:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-rm -f config_file_lex.c
|
||||
-rm -f config_file_yacc.c
|
||||
-rm -f config_file_yacc.h
|
||||
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f ./$(DEPDIR)/clean_string.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_dump.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_lex.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_spoof.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_yacc.Po
|
||||
-rm -f ./$(DEPDIR)/detox.Po
|
||||
-rm -f ./$(DEPDIR)/file.Po
|
||||
-rm -f ./$(DEPDIR)/parse_options.Po
|
||||
-rm -f ./$(DEPDIR)/parse_table.Po
|
||||
-rm -f ./$(DEPDIR)/table.Po
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-hdr distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am: install-binPROGRAMS
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f ./$(DEPDIR)/clean_string.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_dump.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_lex.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_spoof.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_yacc.Po
|
||||
-rm -f ./$(DEPDIR)/detox.Po
|
||||
-rm -f ./$(DEPDIR)/file.Po
|
||||
-rm -f ./$(DEPDIR)/parse_options.Po
|
||||
-rm -f ./$(DEPDIR)/parse_table.Po
|
||||
-rm -f ./$(DEPDIR)/table.Po
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-binPROGRAMS
|
||||
|
||||
.MAKE: all check install install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
|
||||
clean-binPROGRAMS clean-generic cscopelist-am ctags ctags-am \
|
||||
distclean distclean-compile distclean-generic distclean-hdr \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-binPROGRAMS 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 maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
|
||||
uninstall-am uninstall-binPROGRAMS
|
||||
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
# 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.
|
||||
.NOEXPORT:
|
10
detox/latest/src/Makefile.am
Normal file
10
detox/latest/src/Makefile.am
Normal file
@ -0,0 +1,10 @@
|
||||
BUILT_SOURCES = config_file.h
|
||||
AM_YFLAGS = -d
|
||||
|
||||
AM_CPPFLAGS = -DDATADIR=\"$(datadir)\" -DSYSCONFDIR=\"$(sysconfdir)\"
|
||||
|
||||
bin_PROGRAMS = detox inline-detox
|
||||
detox_SOURCES = detox.c file.c clean_string.c table.c parse_table.c config_file_yacc.y config_file_lex.l config_file_spoof.c config_file_dump.c parse_options.c
|
||||
inline_detox_SOURCES = $(detox_SOURCES)
|
||||
|
||||
EXTRA_DIST = *.h
|
676
detox/latest/src/Makefile.in
Normal file
676
detox/latest/src/Makefile.in
Normal file
@ -0,0 +1,676 @@
|
||||
# Makefile.in generated by automake 1.16.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2018 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
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@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
bin_PROGRAMS = detox$(EXEEXT) inline-detox$(EXEEXT)
|
||||
subdir = src
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
am__installdirs = "$(DESTDIR)$(bindir)"
|
||||
PROGRAMS = $(bin_PROGRAMS)
|
||||
am_detox_OBJECTS = detox.$(OBJEXT) file.$(OBJEXT) \
|
||||
clean_string.$(OBJEXT) table.$(OBJEXT) parse_table.$(OBJEXT) \
|
||||
config_file_yacc.$(OBJEXT) config_file_lex.$(OBJEXT) \
|
||||
config_file_spoof.$(OBJEXT) config_file_dump.$(OBJEXT) \
|
||||
parse_options.$(OBJEXT)
|
||||
detox_OBJECTS = $(am_detox_OBJECTS)
|
||||
detox_LDADD = $(LDADD)
|
||||
am__objects_1 = detox.$(OBJEXT) file.$(OBJEXT) clean_string.$(OBJEXT) \
|
||||
table.$(OBJEXT) parse_table.$(OBJEXT) \
|
||||
config_file_yacc.$(OBJEXT) config_file_lex.$(OBJEXT) \
|
||||
config_file_spoof.$(OBJEXT) config_file_dump.$(OBJEXT) \
|
||||
parse_options.$(OBJEXT)
|
||||
am_inline_detox_OBJECTS = $(am__objects_1)
|
||||
inline_detox_OBJECTS = $(am_inline_detox_OBJECTS)
|
||||
inline_detox_LDADD = $(LDADD)
|
||||
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@
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__maybe_remake_depfiles = depfiles
|
||||
am__depfiles_remade = ./$(DEPDIR)/clean_string.Po \
|
||||
./$(DEPDIR)/config_file_dump.Po ./$(DEPDIR)/config_file_lex.Po \
|
||||
./$(DEPDIR)/config_file_spoof.Po \
|
||||
./$(DEPDIR)/config_file_yacc.Po ./$(DEPDIR)/detox.Po \
|
||||
./$(DEPDIR)/file.Po ./$(DEPDIR)/parse_options.Po \
|
||||
./$(DEPDIR)/parse_table.Po ./$(DEPDIR)/table.Po
|
||||
am__mv = mv -f
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
AM_V_CC = $(am__v_CC_@AM_V@)
|
||||
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
|
||||
am__v_CC_0 = @echo " CC " $@;
|
||||
am__v_CC_1 =
|
||||
CCLD = $(CC)
|
||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
|
||||
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
||||
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||
am__v_CCLD_1 =
|
||||
LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
|
||||
AM_V_LEX = $(am__v_LEX_@AM_V@)
|
||||
am__v_LEX_ = $(am__v_LEX_@AM_DEFAULT_V@)
|
||||
am__v_LEX_0 = @echo " LEX " $@;
|
||||
am__v_LEX_1 =
|
||||
YLWRAP = $(top_srcdir)/ylwrap
|
||||
am__yacc_c2h = sed -e s/cc$$/hh/ -e s/cpp$$/hpp/ -e s/cxx$$/hxx/ \
|
||||
-e s/c++$$/h++/ -e s/c$$/h/
|
||||
YACCCOMPILE = $(YACC) $(AM_YFLAGS) $(YFLAGS)
|
||||
AM_V_YACC = $(am__v_YACC_@AM_V@)
|
||||
am__v_YACC_ = $(am__v_YACC_@AM_DEFAULT_V@)
|
||||
am__v_YACC_0 = @echo " YACC " $@;
|
||||
am__v_YACC_1 =
|
||||
SOURCES = $(detox_SOURCES) $(inline_detox_SOURCES)
|
||||
DIST_SOURCES = $(detox_SOURCES) $(inline_detox_SOURCES)
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
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
|
||||
CTAGS = ctags
|
||||
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
|
||||
$(top_srcdir)/depcomp $(top_srcdir)/ylwrap config_file_lex.c \
|
||||
config_file_yacc.c config_file_yacc.h
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
GREP = @GREP@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LEX = @LEX@
|
||||
LEXLIB = @LEXLIB@
|
||||
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
OBJEXT = @OBJEXT@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
YACC = @YACC@
|
||||
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@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build_alias = @build_alias@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host_alias = @host_alias@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
runstatedir = @runstatedir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
BUILT_SOURCES = config_file.h
|
||||
AM_YFLAGS = -d
|
||||
AM_CPPFLAGS = -DDATADIR=\"$(datadir)\" -DSYSCONFDIR=\"$(sysconfdir)\"
|
||||
detox_SOURCES = detox.c file.c clean_string.c table.c parse_table.c config_file_yacc.y config_file_lex.l config_file_spoof.c config_file_dump.c parse_options.c
|
||||
inline_detox_SOURCES = $(detox_SOURCES)
|
||||
EXTRA_DIST = *.h
|
||||
all: $(BUILT_SOURCES) config.h
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .l .o .obj .y
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign src/Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
config.h: stamp-h1
|
||||
@test -f $@ || rm -f stamp-h1
|
||||
@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
|
||||
|
||||
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
|
||||
@rm -f stamp-h1
|
||||
cd $(top_builddir) && $(SHELL) ./config.status src/config.h
|
||||
$(srcdir)/config.h.in: $(am__configure_deps)
|
||||
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
|
||||
rm -f stamp-h1
|
||||
touch $@
|
||||
|
||||
distclean-hdr:
|
||||
-rm -f config.h stamp-h1
|
||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do echo "$$p $$p"; done | \
|
||||
sed 's/$(EXEEXT)$$//' | \
|
||||
while read p p1; do if test -f $$p \
|
||||
; then echo "$$p"; echo "$$p"; else :; fi; \
|
||||
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)$(bindir)$$dir'"; \
|
||||
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
|
||||
} \
|
||||
; done
|
||||
|
||||
uninstall-binPROGRAMS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
|
||||
files=`for p in $$list; do echo "$$p"; done | \
|
||||
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
|
||||
-e 's/$$/$(EXEEXT)/' \
|
||||
`; \
|
||||
test -n "$$list" || exit 0; \
|
||||
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
|
||||
cd "$(DESTDIR)$(bindir)" && rm -f $$files
|
||||
|
||||
clean-binPROGRAMS:
|
||||
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
|
||||
config_file_yacc.h: config_file_yacc.c
|
||||
@if test ! -f $@; then rm -f config_file_yacc.c; else :; fi
|
||||
@if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) config_file_yacc.c; else :; fi
|
||||
|
||||
detox$(EXEEXT): $(detox_OBJECTS) $(detox_DEPENDENCIES) $(EXTRA_detox_DEPENDENCIES)
|
||||
@rm -f detox$(EXEEXT)
|
||||
$(AM_V_CCLD)$(LINK) $(detox_OBJECTS) $(detox_LDADD) $(LIBS)
|
||||
|
||||
inline-detox$(EXEEXT): $(inline_detox_OBJECTS) $(inline_detox_DEPENDENCIES) $(EXTRA_inline_detox_DEPENDENCIES)
|
||||
@rm -f inline-detox$(EXEEXT)
|
||||
$(AM_V_CCLD)$(LINK) $(inline_detox_OBJECTS) $(inline_detox_LDADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/clean_string.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/config_file_dump.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/config_file_lex.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/config_file_spoof.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/config_file_yacc.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/detox.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parse_options.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parse_table.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/table.Po@am__quote@ # am--include-marker
|
||||
|
||||
$(am__depfiles_remade):
|
||||
@$(MKDIR_P) $(@D)
|
||||
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
|
||||
|
||||
am--depfiles: $(am__depfiles_remade)
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.l.c:
|
||||
$(AM_V_LEX)$(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
|
||||
|
||||
.y.c:
|
||||
$(AM_V_YACC)$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h `echo $@ | $(am__yacc_c2h)` y.output $*.output -- $(YACCCOMPILE)
|
||||
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
TAGS: tags
|
||||
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
if test $$# -gt 0; then \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
"$$@" $$unique; \
|
||||
else \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: ctags-am
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& 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:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||
|
||||
distdir-am: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
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 -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
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 \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) check-am
|
||||
all-am: Makefile $(PROGRAMS) config.h
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(bindir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
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:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-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:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-rm -f config_file_lex.c
|
||||
-rm -f config_file_yacc.c
|
||||
-rm -f config_file_yacc.h
|
||||
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f ./$(DEPDIR)/clean_string.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_dump.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_lex.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_spoof.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_yacc.Po
|
||||
-rm -f ./$(DEPDIR)/detox.Po
|
||||
-rm -f ./$(DEPDIR)/file.Po
|
||||
-rm -f ./$(DEPDIR)/parse_options.Po
|
||||
-rm -f ./$(DEPDIR)/parse_table.Po
|
||||
-rm -f ./$(DEPDIR)/table.Po
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-hdr distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am: install-binPROGRAMS
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f ./$(DEPDIR)/clean_string.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_dump.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_lex.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_spoof.Po
|
||||
-rm -f ./$(DEPDIR)/config_file_yacc.Po
|
||||
-rm -f ./$(DEPDIR)/detox.Po
|
||||
-rm -f ./$(DEPDIR)/file.Po
|
||||
-rm -f ./$(DEPDIR)/parse_options.Po
|
||||
-rm -f ./$(DEPDIR)/parse_table.Po
|
||||
-rm -f ./$(DEPDIR)/table.Po
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-binPROGRAMS
|
||||
|
||||
.MAKE: all check install install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
|
||||
clean-binPROGRAMS clean-generic cscopelist-am ctags ctags-am \
|
||||
distclean distclean-compile distclean-generic distclean-hdr \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-binPROGRAMS 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 maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
|
||||
uninstall-am uninstall-binPROGRAMS
|
||||
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
# 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.
|
||||
.NOEXPORT:
|
773
detox/latest/src/clean_string.c
Normal file
773
detox/latest/src/clean_string.c
Normal file
@ -0,0 +1,773 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include "clean_string.h"
|
||||
|
||||
/* translation array for ISO8859.1 characters */
|
||||
#include "iso8859_1.h"
|
||||
|
||||
/* translation array for unicode characters */
|
||||
#include "unicode.h"
|
||||
|
||||
#include "parse_table.h"
|
||||
#include "table.h"
|
||||
|
||||
|
||||
/*
|
||||
* Translates ISO8859.1 characters (Latin-1) into lower ASCII characters.
|
||||
*/
|
||||
unsigned char *clean_iso8859_1_basic(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk, *replace_walk;
|
||||
int replace_pos;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
output = malloc((strlen(s) * ISO8859_1_MAXLEN) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
if (*input_walk >= ISO8859_1_OFFSET) {
|
||||
replace_pos = *input_walk - ISO8859_1_OFFSET;
|
||||
replace_walk = (unsigned char *)&iso8859_1_trans[replace_pos];
|
||||
|
||||
while (*replace_walk != '\0') {
|
||||
*output_walk++ = *replace_walk++;
|
||||
}
|
||||
input_walk++;
|
||||
}
|
||||
else {
|
||||
*output_walk++ = *input_walk++;
|
||||
}
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
/*
|
||||
* Translates ISO8859.1 characters (Latin-1) into lower ASCII characters.
|
||||
*/
|
||||
unsigned char *clean_iso8859_1(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk, *replace_walk;
|
||||
|
||||
struct translation_table *table = NULL;
|
||||
struct clean_string_options *options = NULL;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (opts == NULL) {
|
||||
fprintf(stderr, "this shouldn't happen\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
options = (struct clean_string_options *)opts;
|
||||
table = options->translation_table;
|
||||
|
||||
output = malloc((strlen(s) * table->max_data_length) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
if (*input_walk >= ISO8859_1_OFFSET) {
|
||||
replace_walk = table_get(table, *input_walk);
|
||||
if (replace_walk == NULL) {
|
||||
if (table->default_translation == NULL) {
|
||||
/*
|
||||
* Null translation == leave it alone
|
||||
*/
|
||||
*output_walk++ = *input_walk++;
|
||||
continue;
|
||||
}
|
||||
else {
|
||||
replace_walk = table->default_translation;
|
||||
}
|
||||
}
|
||||
|
||||
while (*replace_walk != '\0') {
|
||||
*output_walk++ = *replace_walk++;
|
||||
}
|
||||
|
||||
input_walk++;
|
||||
}
|
||||
else {
|
||||
*output_walk++ = *input_walk++;
|
||||
}
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Cleans up any unsafe characters.
|
||||
*
|
||||
* The rules are:
|
||||
* Leave alone:
|
||||
* - # ~ % ^ _ , . + =
|
||||
*
|
||||
* Translate:
|
||||
* & into _and_
|
||||
*
|
||||
* Replace with _:
|
||||
* ` ! @ $ * \ | : ; " ' < ? / '\n' '\r' '\t'
|
||||
*
|
||||
* Replace with -:
|
||||
* ( ) [ ] { }
|
||||
*
|
||||
*/
|
||||
unsigned char *clean_safe_basic(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
output = malloc((strlen(s) * 5) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
if (isalnum(*input_walk)) {
|
||||
*output_walk++ = *input_walk++;
|
||||
continue;
|
||||
}
|
||||
|
||||
switch (*input_walk) {
|
||||
case '-':
|
||||
case '#':
|
||||
case '~':
|
||||
case '%':
|
||||
case '^':
|
||||
case '_':
|
||||
case ',':
|
||||
case '.':
|
||||
case '+':
|
||||
case '=':
|
||||
*output_walk++ = *input_walk;
|
||||
break;
|
||||
|
||||
case '&':
|
||||
*output_walk++ = '_';
|
||||
*output_walk++ = 'a';
|
||||
*output_walk++ = 'n';
|
||||
*output_walk++ = 'd';
|
||||
*output_walk++ = '_';
|
||||
break;
|
||||
|
||||
case ' ':
|
||||
case '`':
|
||||
case '!':
|
||||
case '@':
|
||||
case '$':
|
||||
case '*':
|
||||
case '\\':
|
||||
case '|':
|
||||
case ':':
|
||||
case ';':
|
||||
case '"':
|
||||
case '\'':
|
||||
case '<':
|
||||
case '>':
|
||||
case '?':
|
||||
case '/':
|
||||
case '\n':
|
||||
case '\r':
|
||||
case '\t':
|
||||
*output_walk++ = '_';
|
||||
break;
|
||||
|
||||
case '(':
|
||||
case ')':
|
||||
case '[':
|
||||
case ']':
|
||||
case '{':
|
||||
case '}':
|
||||
*output_walk++ = '-';
|
||||
break;
|
||||
}
|
||||
|
||||
input_walk++;
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Translates unsafe characters
|
||||
*/
|
||||
unsigned char *clean_safe(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk, *replace_walk;
|
||||
|
||||
struct translation_table *table = NULL;
|
||||
struct clean_string_options *options = NULL;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (opts == NULL) {
|
||||
fprintf(stderr, "this shouldn't happen\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
options = (struct clean_string_options *)opts;
|
||||
table = options->translation_table;
|
||||
|
||||
output = malloc((strlen(s) * table->max_data_length) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
replace_walk = table_get(table, *input_walk);
|
||||
if (replace_walk == NULL) {
|
||||
if (table->default_translation == NULL) {
|
||||
|
||||
/*
|
||||
* Null translation == leave it alone
|
||||
*/
|
||||
*output_walk++ = *input_walk++;
|
||||
continue;
|
||||
}
|
||||
else {
|
||||
replace_walk = table->default_translation;
|
||||
}
|
||||
}
|
||||
|
||||
while (*replace_walk != '\0') {
|
||||
*output_walk++ = *replace_walk++;
|
||||
}
|
||||
|
||||
input_walk++;
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Cleans up any CGI encoded characters, in the form "%" followed by 2 hex
|
||||
* digits.
|
||||
*/
|
||||
unsigned char *clean_uncgi(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk;
|
||||
unsigned char conv[3];
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
output = malloc(strlen(s) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
if (input_walk[0] == '%' && isxdigit(input_walk[1]) && isxdigit(input_walk[2])) {
|
||||
conv[0] = input_walk[1];
|
||||
conv[1] = input_walk[2];
|
||||
conv[2] = 0;
|
||||
*output_walk++ = (unsigned char)strtol(conv, NULL, 16);
|
||||
input_walk += 3;
|
||||
}
|
||||
else {
|
||||
*output_walk++ = *input_walk++;
|
||||
}
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Reduces any series of "_" and "-" to a single character. "-" takes
|
||||
* precedence.
|
||||
*
|
||||
* If "remove_trailing" is set to non-zero, then "." is added to the
|
||||
* comparison, and takes precedence. This has the effect of reducing "-." or
|
||||
* "._", etc, to ".".
|
||||
*
|
||||
* Strips any "-", "_" or "#" from the beginning of a string.
|
||||
*
|
||||
*/
|
||||
unsigned char *clean_wipeup(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk;
|
||||
int matched;
|
||||
int remove_trailing;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
remove_trailing = 0;
|
||||
if (opts != NULL) {
|
||||
remove_trailing = ((struct clean_string_options *)opts)->remove_trailing;
|
||||
}
|
||||
|
||||
/* remove any -, _, or # at beginning of string */
|
||||
while (*s == '-' || *s == '_' || *s == '#') {
|
||||
s++;
|
||||
}
|
||||
|
||||
output = malloc(strlen(s) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
matched = 0;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
switch (*input_walk) {
|
||||
case '-':
|
||||
if (matched) {
|
||||
if (*output_walk == '_') {
|
||||
*output_walk = '-';
|
||||
}
|
||||
}
|
||||
else {
|
||||
*output_walk = '-';
|
||||
}
|
||||
|
||||
matched = 1;
|
||||
break;
|
||||
|
||||
case '_':
|
||||
if (!matched) {
|
||||
*output_walk = '_';
|
||||
}
|
||||
|
||||
matched = 1;
|
||||
break;
|
||||
|
||||
case '.':
|
||||
if (remove_trailing) {
|
||||
*output_walk = '.';
|
||||
matched = 1;
|
||||
break;
|
||||
} /* else fall through */
|
||||
default:
|
||||
if (matched) {
|
||||
output_walk++;
|
||||
matched = 0;
|
||||
}
|
||||
|
||||
*output_walk++ = *input_walk;
|
||||
}
|
||||
input_walk++;
|
||||
}
|
||||
|
||||
if (matched) {
|
||||
output_walk++;
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
#define UTF_8_ENCODED 0x80
|
||||
#define UTF_8_ENCODED_4_CHARS 0xf0
|
||||
#define UTF_8_ENCODED_3_CHARS 0xe0
|
||||
#define UTF_8_ENCODED_2_CHARS 0xc0
|
||||
|
||||
/*
|
||||
* Translates UTF-8 characters (Unicode Translation Format - 8 Bit) into
|
||||
* Unicode and then lower ASCII characters.
|
||||
*/
|
||||
unsigned char *clean_utf_8_basic(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk, *replace_walk;
|
||||
int new_value, expected_chars;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
output = malloc((strlen(s) * UNICODE_MAXLEN) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
if ((*input_walk & UTF_8_ENCODED) == 0) {
|
||||
*output_walk++ = *input_walk++;
|
||||
continue;
|
||||
}
|
||||
|
||||
new_value = 0;
|
||||
expected_chars = 0;
|
||||
|
||||
/*
|
||||
* Needs to be done in descending orders due to the fact that
|
||||
* the 2 char mask will match on the 4 char mask, but not
|
||||
* vice versa.
|
||||
*/
|
||||
if ((*input_walk & UTF_8_ENCODED_4_CHARS) == UTF_8_ENCODED_4_CHARS) {
|
||||
|
||||
/*
|
||||
* 11110aaa 10bbbbbb 10cccccc 10dddddd
|
||||
*/
|
||||
|
||||
new_value = *input_walk & 0x07;
|
||||
expected_chars = 3;
|
||||
}
|
||||
else if ((*input_walk & UTF_8_ENCODED_3_CHARS) == UTF_8_ENCODED_3_CHARS) {
|
||||
|
||||
/*
|
||||
* 1110aaaa 10bbbbbb 10cccccc
|
||||
*/
|
||||
|
||||
new_value = *input_walk & 0x0f;
|
||||
expected_chars = 2;
|
||||
}
|
||||
else if ((*input_walk & UTF_8_ENCODED_2_CHARS) == UTF_8_ENCODED_2_CHARS) {
|
||||
|
||||
/*
|
||||
* 110aaaaa 10bbbbbb
|
||||
*/
|
||||
|
||||
new_value = *input_walk & 0x1f;
|
||||
expected_chars = 1;
|
||||
}
|
||||
else {
|
||||
input_walk++;
|
||||
continue;
|
||||
}
|
||||
|
||||
while (expected_chars > 0) {
|
||||
new_value <<= 6;
|
||||
|
||||
input_walk++;
|
||||
|
||||
if (*input_walk == '\0') {
|
||||
new_value = -1;
|
||||
break;
|
||||
}
|
||||
|
||||
if ((*input_walk & UTF_8_ENCODED) == 0) {
|
||||
new_value = -1;
|
||||
break;
|
||||
}
|
||||
|
||||
new_value += *input_walk & 0x3f;
|
||||
|
||||
expected_chars--;
|
||||
}
|
||||
|
||||
if (new_value == -1) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (new_value >= UNICODE_COUNT) {
|
||||
*output_walk++ = '_';
|
||||
continue;
|
||||
}
|
||||
|
||||
replace_walk = (unsigned char *)&unicode_trans[new_value];
|
||||
|
||||
while (*replace_walk != '\0') {
|
||||
*output_walk++ = *replace_walk++;
|
||||
}
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
/*
|
||||
* Translates UTF-8 characters (Unicode Translation Format - 8 Bit) into
|
||||
* Unicode and then runs the translation table.
|
||||
*/
|
||||
unsigned char *clean_utf_8(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk, *replace_walk;
|
||||
int new_value, expected_chars;
|
||||
|
||||
struct translation_table *table = NULL;
|
||||
struct clean_string_options *options = NULL;
|
||||
|
||||
int characters_eaten;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (opts == NULL) {
|
||||
fprintf(stderr, "this shouldn't happen\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
options = (struct clean_string_options *)opts;
|
||||
table = options->translation_table;
|
||||
|
||||
output = malloc((strlen(s) * table->max_data_length) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
new_value = 0;
|
||||
expected_chars = 0;
|
||||
characters_eaten = 0;
|
||||
|
||||
/*
|
||||
* Needs to be done in descending orders due to the fact that
|
||||
* the 2 char mask will match on the 4 char mask, but not
|
||||
* vice versa.
|
||||
*/
|
||||
if ((*input_walk & UTF_8_ENCODED_4_CHARS) == UTF_8_ENCODED_4_CHARS) {
|
||||
|
||||
/*
|
||||
* 11110aaa 10bbbbbb 10cccccc 10dddddd
|
||||
*/
|
||||
|
||||
new_value = *input_walk & 0x07;
|
||||
expected_chars = 3;
|
||||
characters_eaten = 4;
|
||||
}
|
||||
else if ((*input_walk & UTF_8_ENCODED_3_CHARS) == UTF_8_ENCODED_3_CHARS) {
|
||||
|
||||
/*
|
||||
* 1110aaaa 10bbbbbb 10cccccc
|
||||
*/
|
||||
|
||||
new_value = *input_walk & 0x0f;
|
||||
expected_chars = 2;
|
||||
characters_eaten = 3;
|
||||
}
|
||||
else if ((*input_walk & UTF_8_ENCODED_2_CHARS) == UTF_8_ENCODED_2_CHARS) {
|
||||
|
||||
/*
|
||||
* 110aaaaa 10bbbbbb
|
||||
*/
|
||||
|
||||
new_value = *input_walk & 0x1f;
|
||||
expected_chars = 1;
|
||||
characters_eaten = 2;
|
||||
}
|
||||
else if ((*input_walk & UTF_8_ENCODED) == UTF_8_ENCODED) {
|
||||
fprintf(stderr, "unsupported unicode length\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
else {
|
||||
new_value = *input_walk;
|
||||
expected_chars = 0;
|
||||
characters_eaten = 1;
|
||||
}
|
||||
|
||||
while (expected_chars > 0) {
|
||||
new_value <<= 6;
|
||||
|
||||
input_walk++;
|
||||
|
||||
if (*input_walk == '\0') {
|
||||
new_value = -1;
|
||||
break;
|
||||
}
|
||||
|
||||
if ((*input_walk & UTF_8_ENCODED) == 0) {
|
||||
new_value = -1;
|
||||
break;
|
||||
}
|
||||
|
||||
new_value += *input_walk & 0x3f;
|
||||
|
||||
expected_chars--;
|
||||
}
|
||||
input_walk++;
|
||||
|
||||
if (new_value == -1) {
|
||||
continue;
|
||||
}
|
||||
|
||||
replace_walk = table_get(table, new_value);
|
||||
|
||||
if (replace_walk == NULL) {
|
||||
replace_walk = table->default_translation;
|
||||
}
|
||||
|
||||
if (replace_walk == NULL) {
|
||||
|
||||
/*
|
||||
* Null translation == leave it alone
|
||||
*/
|
||||
input_walk -= characters_eaten;
|
||||
|
||||
while (characters_eaten > 0) {
|
||||
*output_walk++ = *input_walk++;
|
||||
characters_eaten--;
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
while (*replace_walk != '\0') {
|
||||
*output_walk++ = *replace_walk++;
|
||||
}
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Trims a file down to specified length.
|
||||
*/
|
||||
unsigned char *clean_max_length(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk;
|
||||
size_t max_length;
|
||||
size_t s_length;
|
||||
size_t ext_length;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
max_length = 256;
|
||||
if (opts != NULL) {
|
||||
max_length = ((struct clean_string_options *)opts)->max_length;
|
||||
}
|
||||
|
||||
s_length = strlen(s);
|
||||
|
||||
output = malloc(max_length + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
snprintf(output, max_length + 1, "%s", s);
|
||||
|
||||
if (s_length <= max_length) {
|
||||
return output;
|
||||
}
|
||||
|
||||
input_walk = strrchr(s, '.');
|
||||
|
||||
if (input_walk == NULL) {
|
||||
return output;
|
||||
}
|
||||
|
||||
ext_length = strlen(input_walk);
|
||||
|
||||
output_walk = output;
|
||||
output_walk += max_length - ext_length;
|
||||
|
||||
while (*(output_walk - 1) == '.' && output_walk > output) {
|
||||
output_walk--;
|
||||
}
|
||||
|
||||
snprintf(output_walk, ext_length + 1, "%s", input_walk);
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Converts all characters to lowercase.
|
||||
*/
|
||||
unsigned char *clean_lower(unsigned char *s, void *opts)
|
||||
{
|
||||
unsigned char *output, *input_walk, *output_walk;
|
||||
|
||||
if (s == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
output = malloc(strlen(s) + 1);
|
||||
if (output == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
input_walk = s;
|
||||
output_walk = output;
|
||||
|
||||
while (*input_walk != '\0') {
|
||||
if (isupper(*input_walk)) {
|
||||
*output_walk++ = tolower(*input_walk++);
|
||||
}
|
||||
else {
|
||||
*output_walk++ = *input_walk++;
|
||||
}
|
||||
}
|
||||
|
||||
*output_walk = '\0';
|
||||
|
||||
return output;
|
||||
}
|
33
detox/latest/src/clean_string.h
Normal file
33
detox/latest/src/clean_string.h
Normal file
@ -0,0 +1,33 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#ifndef __CLEAN_STRING_H
|
||||
#define __CLEAN_STRING_H
|
||||
|
||||
struct clean_string_options {
|
||||
char *filename;
|
||||
int remove_trailing;
|
||||
size_t max_length;
|
||||
|
||||
void *misc;
|
||||
void *translation_table;
|
||||
};
|
||||
|
||||
extern unsigned char *clean_iso8859_1_basic(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_iso8859_1(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_safe_basic(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_safe(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_uncgi(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_wipeup(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_utf_8_basic(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_utf_8(unsigned char *s, void *options);
|
||||
extern unsigned char *clean_max_length(unsigned char *s, void *opts);
|
||||
extern unsigned char *clean_lower(unsigned char *s, void *opts);
|
||||
|
||||
#endif /* __CLEAN_STRING_H */
|
BIN
detox/latest/src/clean_string.o
Normal file
BIN
detox/latest/src/clean_string.o
Normal file
Binary file not shown.
81
detox/latest/src/config.h
Normal file
81
detox/latest/src/config.h
Normal file
@ -0,0 +1,81 @@
|
||||
/* src/config.h. Generated from config.h.in by configure. */
|
||||
/* src/config.h.in. Generated from configure.ac by autoheader. */
|
||||
|
||||
/* Define to 1 if you have the `getopt_long' function. */
|
||||
#define HAVE_GETOPT_LONG 1
|
||||
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#define HAVE_INTTYPES_H 1
|
||||
|
||||
/* Define to 1 if you have the <memory.h> header file. */
|
||||
#define HAVE_MEMORY_H 1
|
||||
|
||||
/* Define to 1 if you have the <stdint.h> header file. */
|
||||
#define HAVE_STDINT_H 1
|
||||
|
||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
#define HAVE_STDLIB_H 1
|
||||
|
||||
/* Define to 1 if you have the <strings.h> header file. */
|
||||
#define HAVE_STRINGS_H 1
|
||||
|
||||
/* Define to 1 if you have the <string.h> header file. */
|
||||
#define HAVE_STRING_H 1
|
||||
|
||||
/* Define to 1 if `st_blocks' is a member of `struct stat'. */
|
||||
#define HAVE_STRUCT_STAT_ST_BLOCKS 1
|
||||
|
||||
/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use
|
||||
`HAVE_STRUCT_STAT_ST_BLOCKS' instead. */
|
||||
#define HAVE_ST_BLOCKS 1
|
||||
|
||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
#define HAVE_SYS_STAT_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#define HAVE_SYS_TYPES_H 1
|
||||
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#define HAVE_UNISTD_H 1
|
||||
|
||||
/* Name of package */
|
||||
#define PACKAGE "detox"
|
||||
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#define PACKAGE_BUGREPORT "detox.dharple at gmail.com"
|
||||
|
||||
/* Define to the full name of this package. */
|
||||
#define PACKAGE_NAME "detox"
|
||||
|
||||
/* Define to the full name and version of this package. */
|
||||
#define PACKAGE_STRING "detox 1.4.5"
|
||||
|
||||
/* Define to the one symbol short name of this package. */
|
||||
#define PACKAGE_TARNAME "detox"
|
||||
|
||||
/* Define to the home page for this package. */
|
||||
#define PACKAGE_URL "https://github.com/dharple/detox"
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#define PACKAGE_VERSION "1.4.5"
|
||||
|
||||
/* Define to 1 if you have the ANSI C header files. */
|
||||
#define STDC_HEADERS 1
|
||||
|
||||
/* Version number of package */
|
||||
#define VERSION "1.4.5"
|
||||
|
||||
/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
|
||||
`char[]'. */
|
||||
#define YYTEXT_POINTER 1
|
||||
|
||||
/* Enable large inode numbers on Mac OS X 10.5. */
|
||||
#ifndef _DARWIN_USE_64_BIT_INODE
|
||||
# define _DARWIN_USE_64_BIT_INODE 1
|
||||
#endif
|
||||
|
||||
/* Number of bits in a file offset, on hosts where this is settable. */
|
||||
/* #undef _FILE_OFFSET_BITS */
|
||||
|
||||
/* Define for large files, on AIX-style hosts. */
|
||||
/* #undef _LARGE_FILES */
|
80
detox/latest/src/config.h.in
Normal file
80
detox/latest/src/config.h.in
Normal file
@ -0,0 +1,80 @@
|
||||
/* src/config.h.in. Generated from configure.ac by autoheader. */
|
||||
|
||||
/* Define to 1 if you have the `getopt_long' function. */
|
||||
#undef HAVE_GETOPT_LONG
|
||||
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#undef HAVE_INTTYPES_H
|
||||
|
||||
/* Define to 1 if you have the <memory.h> header file. */
|
||||
#undef HAVE_MEMORY_H
|
||||
|
||||
/* Define to 1 if you have the <stdint.h> header file. */
|
||||
#undef HAVE_STDINT_H
|
||||
|
||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
#undef HAVE_STDLIB_H
|
||||
|
||||
/* Define to 1 if you have the <strings.h> header file. */
|
||||
#undef HAVE_STRINGS_H
|
||||
|
||||
/* Define to 1 if you have the <string.h> header file. */
|
||||
#undef HAVE_STRING_H
|
||||
|
||||
/* Define to 1 if `st_blocks' is a member of `struct stat'. */
|
||||
#undef HAVE_STRUCT_STAT_ST_BLOCKS
|
||||
|
||||
/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use
|
||||
`HAVE_STRUCT_STAT_ST_BLOCKS' instead. */
|
||||
#undef HAVE_ST_BLOCKS
|
||||
|
||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
#undef HAVE_SYS_STAT_H
|
||||
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#undef HAVE_SYS_TYPES_H
|
||||
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#undef HAVE_UNISTD_H
|
||||
|
||||
/* Name of package */
|
||||
#undef PACKAGE
|
||||
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#undef PACKAGE_BUGREPORT
|
||||
|
||||
/* Define to the full name of this package. */
|
||||
#undef PACKAGE_NAME
|
||||
|
||||
/* Define to the full name and version of this package. */
|
||||
#undef PACKAGE_STRING
|
||||
|
||||
/* Define to the one symbol short name of this package. */
|
||||
#undef PACKAGE_TARNAME
|
||||
|
||||
/* Define to the home page for this package. */
|
||||
#undef PACKAGE_URL
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#undef PACKAGE_VERSION
|
||||
|
||||
/* Define to 1 if you have the ANSI C header files. */
|
||||
#undef STDC_HEADERS
|
||||
|
||||
/* Version number of package */
|
||||
#undef VERSION
|
||||
|
||||
/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
|
||||
`char[]'. */
|
||||
#undef YYTEXT_POINTER
|
||||
|
||||
/* Enable large inode numbers on Mac OS X 10.5. */
|
||||
#ifndef _DARWIN_USE_64_BIT_INODE
|
||||
# define _DARWIN_USE_64_BIT_INODE 1
|
||||
#endif
|
||||
|
||||
/* Number of bits in a file offset, on hosts where this is settable. */
|
||||
#undef _FILE_OFFSET_BITS
|
||||
|
||||
/* Define for large files, on AIX-style hosts. */
|
||||
#undef _LARGE_FILES
|
19
detox/latest/src/config_file.h
Normal file
19
detox/latest/src/config_file.h
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#ifndef __CONFIG_FILE_H
|
||||
#define __CONFIG_FILE_H
|
||||
|
||||
#include "detox.h"
|
||||
|
||||
extern int config_file_lineno;
|
||||
|
||||
extern struct detox_parse_results *parse_config_file(char *filename, struct detox_parse_results *previous_list, struct detox_options *main_options);
|
||||
|
||||
#endif /* __CONFIG_FILE_H */
|
112
detox/latest/src/config_file_dump.c
Normal file
112
detox/latest/src/config_file_dump.c
Normal file
@ -0,0 +1,112 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "detox.h"
|
||||
#include "config_file_dump.h"
|
||||
#include "clean_string.h"
|
||||
|
||||
void dump_config_file(struct detox_parse_results *parse_results, struct detox_options *main_options)
|
||||
{
|
||||
struct detox_sequence_list *list_work = NULL;
|
||||
struct detox_sequence_entry *work = NULL;
|
||||
struct detox_ignore_entry *ignore_walk = NULL;
|
||||
|
||||
if (!main_options->verbose) {
|
||||
printf("available sequences:\n");
|
||||
}
|
||||
|
||||
list_work = parse_results->sequences;
|
||||
|
||||
while (list_work != NULL) {
|
||||
if (main_options->verbose) {
|
||||
printf("sequence name: ");
|
||||
}
|
||||
else {
|
||||
printf("\t");
|
||||
}
|
||||
printf("%s%s\n", list_work->name, (main_options->sequence_to_use == list_work->head) ? " (*)" : "");
|
||||
if (main_options->verbose) {
|
||||
printf("\tsource file: %s\n", list_work->source_filename);
|
||||
|
||||
work = list_work->head;
|
||||
while (work != NULL) {
|
||||
if (work->cleaner == &clean_uncgi) {
|
||||
printf("\tcleaner: uncgi\n");
|
||||
}
|
||||
else if (work->cleaner == &clean_safe) {
|
||||
printf("\tcleaner: safe\n");
|
||||
if (work->options != NULL) {
|
||||
struct clean_string_options *opts = work->options;
|
||||
if (opts->filename != NULL) {
|
||||
printf("\t\ttranslation table: %s\n", opts->filename);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (work->cleaner == &clean_wipeup) {
|
||||
printf("\tcleaner: wipeup\n");
|
||||
if (work->options != NULL) {
|
||||
struct clean_string_options *opts = work->options;
|
||||
printf("\t\tremove trailing: %s\n", opts->remove_trailing ? "yes" : "no");
|
||||
}
|
||||
}
|
||||
else if (work->cleaner == &clean_iso8859_1) {
|
||||
printf("\tcleaner: iso8859_1\n");
|
||||
if (work->options != NULL) {
|
||||
struct clean_string_options *opts = work->options;
|
||||
if (opts->filename != NULL) {
|
||||
printf("\t\ttranslation table: %s\n", opts->filename);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (work->cleaner == &clean_utf_8) {
|
||||
printf("\tcleaner: utf_8\n");
|
||||
if (work->options != NULL) {
|
||||
struct clean_string_options *opts = work->options;
|
||||
if (opts->filename != NULL) {
|
||||
printf("\t\ttranslation table: %s\n", opts->filename);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (work->cleaner == &clean_max_length) {
|
||||
printf("\tcleaner: max length\n");
|
||||
if (work->options != NULL) {
|
||||
struct clean_string_options *opts = work->options;
|
||||
printf("\t\tlength: %d\n", (unsigned int)opts->max_length);
|
||||
}
|
||||
}
|
||||
if (work->cleaner == &clean_lower) {
|
||||
printf("\tcleaner: lower\n");
|
||||
}
|
||||
|
||||
work = work->next;
|
||||
}
|
||||
}
|
||||
|
||||
list_work = list_work->next;
|
||||
}
|
||||
|
||||
|
||||
if (parse_results->files_to_ignore) {
|
||||
printf("\nfiles to ignore:\n");
|
||||
|
||||
ignore_walk = parse_results->files_to_ignore;
|
||||
|
||||
while (ignore_walk != NULL) {
|
||||
printf("\t%s\n", ignore_walk->filename);
|
||||
ignore_walk = ignore_walk->next;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
17
detox/latest/src/config_file_dump.h
Normal file
17
detox/latest/src/config_file_dump.h
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#ifndef __CONFIG_FILE_DUMP_H
|
||||
#define __CONFIG_FILE_DUMP_H
|
||||
|
||||
#include "detox.h"
|
||||
|
||||
extern void dump_config_file(struct detox_parse_results *parse_results, struct detox_options *main_options);
|
||||
|
||||
#endif /* __CONFIG_FILE_DUMP_H */
|
BIN
detox/latest/src/config_file_dump.o
Normal file
BIN
detox/latest/src/config_file_dump.o
Normal file
Binary file not shown.
1946
detox/latest/src/config_file_lex.c
Normal file
1946
detox/latest/src/config_file_lex.c
Normal file
File diff suppressed because it is too large
Load Diff
86
detox/latest/src/config_file_lex.l
Normal file
86
detox/latest/src/config_file_lex.l
Normal file
@ -0,0 +1,86 @@
|
||||
%{
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "config_file_yacc.h"
|
||||
|
||||
int config_file_lineno = 1;
|
||||
|
||||
%}
|
||||
|
||||
%option noyywrap
|
||||
|
||||
%%
|
||||
|
||||
[\t ]+ { /* ignore whitespace */ }
|
||||
|
||||
#.* { /* ignore comments */ }
|
||||
|
||||
\n { config_file_lineno++; }
|
||||
|
||||
[Ss][Ee][Qq][Uu][Ee][Nn][Cc][Ee] { return SEQUENCE; }
|
||||
|
||||
[Ii][Gg][Nn][Oo][Rr][Ee] { return IGNORE; }
|
||||
|
||||
[Uu][Nn][Cc][Gg][Ii] { return UNCGI; }
|
||||
|
||||
[Ii][Ss][Oo]8859_1 { return ISO8859_1; }
|
||||
|
||||
[Uu][Tt][Ff]_8 { return UTF_8; }
|
||||
|
||||
[Ss][Aa][Ff][Ee] { return SAFE; }
|
||||
|
||||
[Ww][Ii][Pp][Ee][Uu][Pp] { return WIPEUP; }
|
||||
|
||||
[Mm][Aa][Xx]_[Ll][Ee][Nn][Gg][Tt][Hh] { return MAX_LENGTH; }
|
||||
|
||||
[Ll][Oo][Ww][Ee][Rr] { return LOWER; }
|
||||
|
||||
[Ll][Ee][Nn][Gg][Tt][Hh] { return LENGTH; }
|
||||
|
||||
[Ff][Ii][Ll][Ee][Nn][Aa][Mm][Ee] { return FILENAME; }
|
||||
|
||||
[Rr][Ee][Mm][Oo][Vv][Ee]_[Tt][Rr][Aa][Ii][Ll][Ii][Nn][Gg] { return REMOVE_TRAILING; }
|
||||
|
||||
[{] { return OPEN; }
|
||||
[}] { return CLOSE; }
|
||||
|
||||
\"[^\"\n]*[\"\n] {
|
||||
yylval.string = strdup(yytext+1);
|
||||
if (yylval.string[yyleng-2] != '"') {
|
||||
printf("Unterminated character string\n");
|
||||
}
|
||||
else {
|
||||
yylval.string[yyleng-2] = '\0';
|
||||
}
|
||||
return QSTRING;
|
||||
}
|
||||
|
||||
[a-zA-Z][a-zA-Z0-9_]* {
|
||||
yylval.string = strdup(yytext);
|
||||
return ID;
|
||||
}
|
||||
|
||||
[0-9]+ {
|
||||
yylval.nvalue = atoi(yytext);
|
||||
return NVALUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
[;] { return EOL; }
|
||||
|
||||
%%
|
||||
|
||||
|
BIN
detox/latest/src/config_file_lex.o
Normal file
BIN
detox/latest/src/config_file_lex.o
Normal file
Binary file not shown.
124
detox/latest/src/config_file_spoof.c
Normal file
124
detox/latest/src/config_file_spoof.c
Normal file
@ -0,0 +1,124 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include "detox.h"
|
||||
#include "config_file_spoof.h"
|
||||
#include "clean_string.h"
|
||||
|
||||
struct detox_parse_results *spoof_config_file(struct detox_options *main_options)
|
||||
{
|
||||
struct detox_parse_results *ret = NULL;
|
||||
struct detox_sequence_list *sequences = NULL;
|
||||
struct detox_sequence_entry *work = NULL;
|
||||
|
||||
/*
|
||||
* Initialize return
|
||||
*/
|
||||
|
||||
ret = malloc(sizeof(struct detox_parse_results));
|
||||
if (ret == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
memset(ret, 0, sizeof(struct detox_parse_results));
|
||||
|
||||
/*
|
||||
* Head of sequence
|
||||
*/
|
||||
|
||||
sequences = malloc(sizeof(struct detox_sequence_list));
|
||||
if (sequences == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
memset(sequences, 0, sizeof(struct detox_sequence_list));
|
||||
|
||||
sequences->name = strdup("default");
|
||||
sequences->source_filename = strdup("inside the beast");
|
||||
|
||||
/*
|
||||
* Step 1 - ISO8859_1
|
||||
*/
|
||||
|
||||
sequences->head = malloc(sizeof(struct detox_sequence_entry));
|
||||
if (sequences->head == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
work = sequences->head;
|
||||
memset(work, 0, sizeof(struct detox_sequence_entry));
|
||||
|
||||
work->cleaner = &clean_iso8859_1;
|
||||
|
||||
/*
|
||||
* Step 2 - Safe
|
||||
*/
|
||||
|
||||
work->next = malloc(sizeof(struct detox_sequence_entry));
|
||||
if (work->next == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
work = work->next;
|
||||
memset(work, 0, sizeof(struct detox_sequence_entry));
|
||||
|
||||
work->cleaner = &clean_safe;
|
||||
|
||||
/*
|
||||
* Step 3 - Wipe Up
|
||||
*/
|
||||
|
||||
work->next = malloc(sizeof(struct detox_sequence_entry));
|
||||
if (work->next == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
work = work->next;
|
||||
memset(work, 0, sizeof(struct detox_sequence_entry));
|
||||
|
||||
work->cleaner = &clean_wipeup;
|
||||
|
||||
/*
|
||||
* Deprecated
|
||||
*/
|
||||
if (main_options->remove_trailing) {
|
||||
static struct clean_string_options *csopts;
|
||||
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
if (csopts == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->remove_trailing = 1;
|
||||
|
||||
work->options = csopts;
|
||||
}
|
||||
|
||||
/*
|
||||
*
|
||||
*/
|
||||
|
||||
ret->sequences = sequences;
|
||||
|
||||
return ret;
|
||||
}
|
17
detox/latest/src/config_file_spoof.h
Normal file
17
detox/latest/src/config_file_spoof.h
Normal file
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#ifndef __CONFIG_FILE_SPOOF_H
|
||||
#define __CONFIG_FILE_SPOOF_H
|
||||
|
||||
#include "detox.h"
|
||||
|
||||
extern struct detox_parse_results *spoof_config_file(struct detox_options *main_options);
|
||||
|
||||
#endif /* __CONFIG_FILE_SPOOF_H */
|
BIN
detox/latest/src/config_file_spoof.o
Normal file
BIN
detox/latest/src/config_file_spoof.o
Normal file
Binary file not shown.
1949
detox/latest/src/config_file_yacc.c
Normal file
1949
detox/latest/src/config_file_yacc.c
Normal file
File diff suppressed because it is too large
Load Diff
113
detox/latest/src/config_file_yacc.h
Normal file
113
detox/latest/src/config_file_yacc.h
Normal file
@ -0,0 +1,113 @@
|
||||
/* A Bison parser, made by GNU Bison 3.0.4. */
|
||||
|
||||
/* Bison interface for Yacc-like parsers in C
|
||||
|
||||
Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 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, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* As a special exception, you may create a larger work that contains
|
||||
part or all of the Bison parser skeleton and distribute that work
|
||||
under terms of your choice, so long as that work isn't itself a
|
||||
parser generator using the skeleton or a modified version thereof
|
||||
as a parser skeleton. Alternatively, if you modify or redistribute
|
||||
the parser skeleton itself, you may (at your option) remove this
|
||||
special exception, which will cause the skeleton and the resulting
|
||||
Bison output files to be licensed under the GNU General Public
|
||||
License without this special exception.
|
||||
|
||||
This special exception was added by the Free Software Foundation in
|
||||
version 2.2 of Bison. */
|
||||
|
||||
#ifndef YY_YY_CONFIG_FILE_YACC_H_INCLUDED
|
||||
# define YY_YY_CONFIG_FILE_YACC_H_INCLUDED
|
||||
/* Debug traces. */
|
||||
#ifndef YYDEBUG
|
||||
# define YYDEBUG 0
|
||||
#endif
|
||||
#if YYDEBUG
|
||||
extern int yydebug;
|
||||
#endif
|
||||
|
||||
/* Token type. */
|
||||
#ifndef YYTOKENTYPE
|
||||
# define YYTOKENTYPE
|
||||
enum yytokentype
|
||||
{
|
||||
QSTRING = 258,
|
||||
ID = 259,
|
||||
SEQUENCE = 260,
|
||||
IGNORE = 261,
|
||||
UNCGI = 262,
|
||||
ISO8859_1 = 263,
|
||||
UTF_8 = 264,
|
||||
SAFE = 265,
|
||||
WIPEUP = 266,
|
||||
MAX_LENGTH = 267,
|
||||
LOWER = 268,
|
||||
FILENAME = 269,
|
||||
REMOVE_TRAILING = 270,
|
||||
LENGTH = 271,
|
||||
OPEN = 272,
|
||||
CLOSE = 273,
|
||||
EOL = 274,
|
||||
NVALUE = 275
|
||||
};
|
||||
#endif
|
||||
/* Tokens. */
|
||||
#define QSTRING 258
|
||||
#define ID 259
|
||||
#define SEQUENCE 260
|
||||
#define IGNORE 261
|
||||
#define UNCGI 262
|
||||
#define ISO8859_1 263
|
||||
#define UTF_8 264
|
||||
#define SAFE 265
|
||||
#define WIPEUP 266
|
||||
#define MAX_LENGTH 267
|
||||
#define LOWER 268
|
||||
#define FILENAME 269
|
||||
#define REMOVE_TRAILING 270
|
||||
#define LENGTH 271
|
||||
#define OPEN 272
|
||||
#define CLOSE 273
|
||||
#define EOL 274
|
||||
#define NVALUE 275
|
||||
|
||||
/* Value type. */
|
||||
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
||||
|
||||
union YYSTYPE
|
||||
{
|
||||
#line 66 "config_file_yacc.y" /* yacc.c:1909 */
|
||||
|
||||
char *string; /* string buffer */
|
||||
int cmd; /* command value */
|
||||
struct detox_sequence_entry *seq; /* sequence */
|
||||
int nvalue; /* nvalue */
|
||||
|
||||
#line 101 "config_file_yacc.h" /* yacc.c:1909 */
|
||||
};
|
||||
|
||||
typedef union YYSTYPE YYSTYPE;
|
||||
# define YYSTYPE_IS_TRIVIAL 1
|
||||
# define YYSTYPE_IS_DECLARED 1
|
||||
#endif
|
||||
|
||||
|
||||
extern YYSTYPE yylval;
|
||||
|
||||
int yyparse (void);
|
||||
|
||||
#endif /* !YY_YY_CONFIG_FILE_YACC_H_INCLUDED */
|
BIN
detox/latest/src/config_file_yacc.o
Normal file
BIN
detox/latest/src/config_file_yacc.o
Normal file
Binary file not shown.
412
detox/latest/src/config_file_yacc.y
Normal file
412
detox/latest/src/config_file_yacc.y
Normal file
@ -0,0 +1,412 @@
|
||||
%{
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "detox.h"
|
||||
#include "clean_string.h"
|
||||
#include "config_file.h"
|
||||
|
||||
/*
|
||||
* I must apologize in advance for the cryptic, global variable names.
|
||||
*/
|
||||
|
||||
static struct detox_sequence_list *cf_sl_ret, *cf_sl_current;
|
||||
static struct detox_sequence_entry *cf_seq_ret, *cf_seq_current;
|
||||
static struct detox_ignore_entry *cf_ignore_ret, *cf_ignore_current;
|
||||
static struct clean_string_options *csopts;
|
||||
static char *current_name = NULL;
|
||||
static char *current_filename = NULL;
|
||||
static struct detox_options *current_options;
|
||||
|
||||
void cf_append_sequence_list(void);
|
||||
void cf_append_sequence_entry(void *ptr, void *opts);
|
||||
void cf_append_ignore_entry(int token, void *str);
|
||||
|
||||
void yyerror (char *s);
|
||||
|
||||
int yylex (void);
|
||||
|
||||
%}
|
||||
|
||||
%union {
|
||||
char *string; /* string buffer */
|
||||
int cmd; /* command value */
|
||||
struct detox_sequence_entry *seq; /* sequence */
|
||||
int nvalue; /* nvalue */
|
||||
}
|
||||
|
||||
%token <string> QSTRING ID
|
||||
%token <cmd> SEQUENCE IGNORE
|
||||
%token <cmd> UNCGI ISO8859_1 UTF_8 SAFE WIPEUP
|
||||
%token <cmd> MAX_LENGTH LOWER
|
||||
%token <cmd> FILENAME REMOVE_TRAILING LENGTH
|
||||
%token <cmd> OPEN CLOSE EOL
|
||||
%token <nvalue> NVALUE
|
||||
|
||||
%type <string> string
|
||||
|
||||
%%
|
||||
|
||||
configfile:
|
||||
|
|
||||
configfile rule
|
||||
;
|
||||
|
||||
rule: sequence
|
||||
|
|
||||
ignore
|
||||
;
|
||||
|
||||
sequence: sequence_open method_list sequence_close
|
||||
;
|
||||
|
||||
sequence_open: SEQUENCE string OPEN { current_name = $2; }
|
||||
;
|
||||
|
||||
sequence_close: CLOSE EOL { cf_append_sequence_list(); }
|
||||
;
|
||||
|
||||
method_list: method |
|
||||
method_list method
|
||||
;
|
||||
|
||||
method: UNCGI EOL { cf_append_sequence_entry(&clean_uncgi, NULL); }
|
||||
|
|
||||
LOWER EOL { cf_append_sequence_entry(&clean_lower, NULL); }
|
||||
|
|
||||
wipeup EOL
|
||||
|
|
||||
iso8859_1 EOL
|
||||
|
|
||||
utf_8 EOL
|
||||
|
|
||||
safe EOL
|
||||
|
|
||||
max_length EOL
|
||||
;
|
||||
|
||||
iso8859_1: ISO8859_1 { cf_append_sequence_entry(&clean_iso8859_1, NULL); }
|
||||
|
|
||||
ISO8859_1 OPEN CLOSE { cf_append_sequence_entry(&clean_iso8859_1, NULL); }
|
||||
|
|
||||
ISO8859_1 OPEN FILENAME string EOL CLOSE {
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->filename = $4;
|
||||
|
||||
cf_append_sequence_entry(&clean_iso8859_1, csopts);
|
||||
}
|
||||
;
|
||||
|
||||
utf_8: UTF_8 { cf_append_sequence_entry(&clean_utf_8, NULL); }
|
||||
|
|
||||
UTF_8 OPEN CLOSE { cf_append_sequence_entry(&clean_utf_8, NULL); }
|
||||
|
|
||||
UTF_8 OPEN FILENAME string EOL CLOSE {
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->filename = $4;
|
||||
|
||||
cf_append_sequence_entry(&clean_utf_8, csopts);
|
||||
}
|
||||
;
|
||||
|
||||
safe: SAFE { cf_append_sequence_entry(&clean_safe, NULL); }
|
||||
|
|
||||
SAFE OPEN CLOSE { cf_append_sequence_entry(&clean_safe, NULL); }
|
||||
|
|
||||
SAFE OPEN FILENAME string EOL CLOSE {
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->filename = $4;
|
||||
|
||||
cf_append_sequence_entry(&clean_safe, csopts);
|
||||
}
|
||||
;
|
||||
|
||||
wipeup: WIPEUP {
|
||||
if (current_options->remove_trailing) {
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->remove_trailing = 1;
|
||||
}
|
||||
else {
|
||||
csopts = NULL;
|
||||
}
|
||||
|
||||
cf_append_sequence_entry(&clean_wipeup, csopts);
|
||||
}
|
||||
|
|
||||
WIPEUP OPEN CLOSE {
|
||||
if (current_options->remove_trailing) {
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->remove_trailing = 1;
|
||||
}
|
||||
else {
|
||||
csopts = NULL;
|
||||
}
|
||||
|
||||
cf_append_sequence_entry(&clean_wipeup, csopts);
|
||||
}
|
||||
|
|
||||
WIPEUP OPEN REMOVE_TRAILING EOL CLOSE {
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->remove_trailing = 1;
|
||||
|
||||
cf_append_sequence_entry(&clean_wipeup, csopts);
|
||||
}
|
||||
;
|
||||
|
||||
max_length: MAX_LENGTH { cf_append_sequence_entry(&clean_max_length, NULL); }
|
||||
|
|
||||
MAX_LENGTH OPEN CLOSE { cf_append_sequence_entry(&clean_max_length, NULL); }
|
||||
|
|
||||
MAX_LENGTH OPEN LENGTH NVALUE EOL CLOSE {
|
||||
csopts = malloc(sizeof(struct clean_string_options));
|
||||
memset(csopts, 0, sizeof(struct clean_string_options));
|
||||
csopts->max_length = (size_t)$4;
|
||||
|
||||
cf_append_sequence_entry(&clean_max_length, csopts);
|
||||
}
|
||||
;
|
||||
|
||||
ignore: ignore_open ignore_list ignore_close
|
||||
;
|
||||
|
||||
ignore_open: IGNORE OPEN
|
||||
;
|
||||
|
||||
ignore_close: CLOSE EOL
|
||||
;
|
||||
|
||||
ignore_list: ignore_filename |
|
||||
ignore_list ignore_filename
|
||||
;
|
||||
|
||||
ignore_filename: FILENAME string EOL {
|
||||
cf_append_ignore_entry(FILENAME, $2);
|
||||
}
|
||||
;
|
||||
|
||||
string: QSTRING { $$ = $1; }
|
||||
|
|
||||
ID { $$ = $1; }
|
||||
;
|
||||
|
||||
%%
|
||||
|
||||
extern FILE *yyin;
|
||||
extern FILE *yyout;
|
||||
|
||||
struct detox_parse_results *parse_config_file(char *filename, struct detox_parse_results *previous_results, struct detox_options *main_options) {
|
||||
struct detox_parse_results *ret = NULL;
|
||||
|
||||
current_filename = filename;
|
||||
current_options = main_options;
|
||||
|
||||
/*
|
||||
* XXX - Should we be closing the default yyin/yyout? If so, should we
|
||||
* be setting them to NULL at the end of this function?
|
||||
*/
|
||||
|
||||
yyin = fopen(filename, "r");
|
||||
if (yyin == NULL) {
|
||||
return previous_results;
|
||||
}
|
||||
yyout = fopen("/dev/null", "w");
|
||||
|
||||
/*
|
||||
* Initialize the return variable
|
||||
*/
|
||||
|
||||
if (previous_results) {
|
||||
ret = previous_results;
|
||||
}
|
||||
else {
|
||||
ret = malloc(sizeof(struct detox_parse_results));
|
||||
memset(ret, 0, sizeof(struct detox_parse_results));
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize the sequence list
|
||||
*/
|
||||
|
||||
cf_sl_ret = NULL;
|
||||
cf_sl_current = NULL;
|
||||
|
||||
if (previous_results && previous_results->sequences) {
|
||||
cf_sl_ret = previous_results->sequences;
|
||||
cf_sl_current = cf_sl_ret;
|
||||
while (cf_sl_current->next != NULL) {
|
||||
cf_sl_current = cf_sl_current->next;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize the ignore list
|
||||
*/
|
||||
|
||||
cf_ignore_ret = NULL;
|
||||
cf_ignore_current = NULL;
|
||||
|
||||
if (previous_results && previous_results->files_to_ignore) {
|
||||
cf_ignore_ret = previous_results->files_to_ignore;
|
||||
cf_ignore_current = cf_ignore_ret;
|
||||
while (cf_ignore_current->next != NULL) {
|
||||
cf_ignore_current = cf_ignore_current->next;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Reset the sequence entry holding vars
|
||||
*/
|
||||
|
||||
cf_seq_ret = NULL;
|
||||
cf_seq_current = NULL;
|
||||
|
||||
do {
|
||||
yyparse();
|
||||
}
|
||||
while (!feof(yyin));
|
||||
|
||||
fclose(yyin);
|
||||
fclose(yyout);
|
||||
|
||||
/*
|
||||
* Populate returns
|
||||
*/
|
||||
|
||||
ret->sequences = cf_sl_ret;
|
||||
ret->files_to_ignore = cf_ignore_ret;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
void yyerror(char *s) {
|
||||
/*
|
||||
* XXX - Is extern valid here? Does it do what I'm expecting?
|
||||
*/
|
||||
extern char *yytext;
|
||||
|
||||
fprintf(stderr, "detox: error parsing config file %s: %s\n", current_filename, s);
|
||||
fprintf(stderr, "\tline %d", config_file_lineno);
|
||||
if (yytext != NULL) {
|
||||
fprintf(stderr, ": %s", yytext);
|
||||
}
|
||||
fprintf(stderr, "\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
|
||||
void cf_append_sequence_list(void) {
|
||||
struct detox_sequence_list *work;
|
||||
|
||||
if (current_name == NULL) {
|
||||
current_name = strdup("default");
|
||||
}
|
||||
|
||||
work = NULL;
|
||||
|
||||
if (cf_sl_ret != NULL) {
|
||||
work = cf_sl_ret;
|
||||
|
||||
while (work != NULL) {
|
||||
if (strcmp(work->name, current_name) == 0) {
|
||||
break;
|
||||
}
|
||||
|
||||
work = work->next;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (work != NULL) {
|
||||
/*
|
||||
* XXX - Free Old Tree
|
||||
*/
|
||||
}
|
||||
else {
|
||||
work = malloc(sizeof(struct detox_sequence_list));
|
||||
memset(work, 0, sizeof(struct detox_sequence_list));
|
||||
|
||||
work->name = strdup(current_name);
|
||||
|
||||
/*
|
||||
* Append to the tree first. If we don't, we could create a
|
||||
* circular reference.
|
||||
*/
|
||||
if (cf_sl_ret == NULL) {
|
||||
cf_sl_ret = cf_sl_current = work;
|
||||
}
|
||||
else {
|
||||
cf_sl_current->next = work;
|
||||
cf_sl_current = work;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
work->head = cf_seq_ret;
|
||||
work->source_filename = strdup(current_filename);
|
||||
cf_seq_ret = cf_seq_current = NULL;
|
||||
|
||||
}
|
||||
|
||||
|
||||
void cf_append_sequence_entry(void *ptr, void *opts) {
|
||||
struct detox_sequence_entry *work;
|
||||
|
||||
work = malloc(sizeof(struct detox_sequence_entry));
|
||||
memset(work, 0, sizeof(struct detox_sequence_entry));
|
||||
|
||||
work->cleaner = ptr;
|
||||
work->options = opts;
|
||||
|
||||
if (cf_seq_ret == NULL) {
|
||||
cf_seq_ret = cf_seq_current = work;
|
||||
}
|
||||
else {
|
||||
cf_seq_current->next = work;
|
||||
cf_seq_current = work;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void cf_append_ignore_entry(int token, void *str) {
|
||||
struct detox_ignore_entry *work;
|
||||
|
||||
work = malloc(sizeof(struct detox_ignore_entry));
|
||||
memset(work, 0, sizeof(struct detox_ignore_entry));
|
||||
|
||||
switch(token) {
|
||||
case FILENAME:
|
||||
work->filename = str;
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
if (cf_ignore_ret == NULL) {
|
||||
cf_ignore_ret = cf_ignore_current = work;
|
||||
}
|
||||
else {
|
||||
cf_ignore_current->next = work;
|
||||
cf_ignore_current = work;
|
||||
}
|
||||
}
|
||||
|
||||
|
BIN
detox/latest/src/detox
Executable file
BIN
detox/latest/src/detox
Executable file
Binary file not shown.
356
detox/latest/src/detox.c
Normal file
356
detox/latest/src/detox.c
Normal file
@ -0,0 +1,356 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "detox.h"
|
||||
#include "clean_string.h"
|
||||
|
||||
#include "file.h"
|
||||
|
||||
#include "config_file.h"
|
||||
#include "config_file_spoof.h"
|
||||
#include "config_file_dump.h"
|
||||
#include "parse_table.h"
|
||||
#include "parse_options.h"
|
||||
|
||||
#define MAX_PATH_LEN 256
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
struct stat stat_info;
|
||||
int err;
|
||||
|
||||
struct detox_parse_results *parse_results = NULL;
|
||||
struct detox_sequence_list *list_work = NULL;
|
||||
struct detox_sequence_entry *which_sequence = NULL;
|
||||
struct detox_sequence_entry *work = NULL;
|
||||
struct detox_options *main_options;
|
||||
|
||||
char *check_config_file = NULL;
|
||||
char *file_work = NULL;
|
||||
char **file_walk;
|
||||
|
||||
main_options = parse_options_getopt(argc, argv);
|
||||
|
||||
if (main_options == NULL) {
|
||||
fprintf(stderr, "detox: an error occurred while parsing command line arguments\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
if (main_options->check_config_file) {
|
||||
check_config_file = strdup(main_options->check_config_file);
|
||||
}
|
||||
|
||||
if (check_config_file != NULL) {
|
||||
parse_results = parse_config_file(check_config_file, NULL, main_options);
|
||||
if (parse_results == NULL) {
|
||||
fprintf(stderr, "detox: unable to open: %s\n", check_config_file);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
else {
|
||||
check_config_file = malloc(MAX_PATH_LEN);
|
||||
if (check_config_file == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
#ifdef SYSCONFDIR
|
||||
err = snprintf(check_config_file, MAX_PATH_LEN, "%s/detoxrc", SYSCONFDIR);
|
||||
if (err < MAX_PATH_LEN)
|
||||
parse_results = parse_config_file(check_config_file, NULL, main_options);
|
||||
#endif
|
||||
|
||||
if (parse_results == NULL) {
|
||||
parse_results = parse_config_file("/etc/detoxrc", NULL, main_options);
|
||||
}
|
||||
|
||||
if (parse_results == NULL) {
|
||||
parse_results = parse_config_file("/usr/local/etc/detoxrc", NULL, main_options);
|
||||
}
|
||||
|
||||
file_work = getenv("HOME");
|
||||
if (file_work != NULL) {
|
||||
err = snprintf(check_config_file, MAX_PATH_LEN, "%s/.detoxrc", file_work);
|
||||
if (err < MAX_PATH_LEN)
|
||||
parse_results = parse_config_file(check_config_file, parse_results, main_options);
|
||||
|
||||
file_work = NULL;
|
||||
}
|
||||
|
||||
if (parse_results == NULL) {
|
||||
parse_results = spoof_config_file(main_options);
|
||||
}
|
||||
|
||||
free(check_config_file);
|
||||
}
|
||||
|
||||
if (parse_results == NULL) {
|
||||
fprintf(stderr, "detox: no config file to work with\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
/*
|
||||
* Store the files_to_ignore array in the main_options struct for use in
|
||||
* parse_dir/file/special
|
||||
*/
|
||||
|
||||
main_options->files_to_ignore = parse_results->files_to_ignore;
|
||||
|
||||
/*
|
||||
* Determine which sequence to use
|
||||
*/
|
||||
|
||||
which_sequence = NULL;
|
||||
|
||||
list_work = parse_results->sequences;
|
||||
|
||||
while (list_work != NULL) {
|
||||
if (strcmp(list_work->name, (main_options->sequence_name == NULL) ? "default" : main_options->sequence_name) == 0) {
|
||||
which_sequence = list_work->head;
|
||||
break;
|
||||
}
|
||||
|
||||
list_work = list_work->next;
|
||||
}
|
||||
|
||||
/*
|
||||
* If no sequence was found, and the user didn't specify a sequence
|
||||
* to use, just use the first sequence.
|
||||
*/
|
||||
|
||||
if (which_sequence == NULL && main_options->sequence_name == NULL) {
|
||||
if (parse_results->sequences != NULL) {
|
||||
which_sequence = parse_results->sequences->head;
|
||||
}
|
||||
}
|
||||
|
||||
main_options->sequence_to_use = which_sequence;
|
||||
|
||||
/*
|
||||
* List sequences
|
||||
*/
|
||||
if (main_options->list_sequences) {
|
||||
dump_config_file(parse_results, main_options);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
||||
/*
|
||||
* Fail if no sequence is available
|
||||
*/
|
||||
if (main_options->sequence_to_use == NULL) {
|
||||
/*
|
||||
* XXX - Explain this better
|
||||
*/
|
||||
fprintf(stderr, "detox: no sequence to work with\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
/*
|
||||
* Check translation tables
|
||||
*/
|
||||
|
||||
work = main_options->sequence_to_use;
|
||||
while (work != NULL) {
|
||||
char *check_filename = NULL;
|
||||
int do_search = 0;
|
||||
|
||||
struct translation_table *table = NULL;
|
||||
struct clean_string_options *opts;
|
||||
|
||||
if (work->cleaner == &clean_iso8859_1) {
|
||||
if (work->options != NULL) {
|
||||
opts = work->options;
|
||||
if (opts->filename != NULL) {
|
||||
check_filename = opts->filename;
|
||||
}
|
||||
}
|
||||
|
||||
if (!check_filename) {
|
||||
check_filename = "iso8859_1.tbl";
|
||||
do_search = 1;
|
||||
}
|
||||
}
|
||||
else if (work->cleaner == &clean_utf_8) {
|
||||
if (work->options != NULL) {
|
||||
opts = work->options;
|
||||
if (opts->filename != NULL) {
|
||||
check_filename = opts->filename;
|
||||
}
|
||||
}
|
||||
|
||||
if (!check_filename) {
|
||||
check_filename = "unicode.tbl";
|
||||
do_search = 1;
|
||||
}
|
||||
}
|
||||
else if (work->cleaner == &clean_safe) {
|
||||
if (work->options != NULL) {
|
||||
opts = work->options;
|
||||
if (opts->filename != NULL) {
|
||||
check_filename = opts->filename;
|
||||
}
|
||||
}
|
||||
|
||||
if (!check_filename) {
|
||||
check_filename = "safe.tbl";
|
||||
do_search = 1;
|
||||
}
|
||||
}
|
||||
|
||||
if (check_filename || do_search) {
|
||||
|
||||
table = NULL;
|
||||
|
||||
if (do_search) {
|
||||
check_config_file = malloc(MAX_PATH_LEN);
|
||||
if (check_config_file == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
#ifdef DATADIR
|
||||
err = snprintf(check_config_file, MAX_PATH_LEN, "%s/detox/%s", DATADIR, check_filename);
|
||||
if (err < MAX_PATH_LEN)
|
||||
table = parse_table(check_config_file);
|
||||
#endif
|
||||
|
||||
if (table == NULL) {
|
||||
err = snprintf(check_config_file, MAX_PATH_LEN, "/usr/share/detox/%s", check_filename);
|
||||
if (err < MAX_PATH_LEN)
|
||||
table = parse_table(check_config_file);
|
||||
}
|
||||
|
||||
if (table == NULL) {
|
||||
err = snprintf(check_config_file, MAX_PATH_LEN, "/usr/local/share/detox/%s", check_filename);
|
||||
if (err < MAX_PATH_LEN)
|
||||
table = parse_table(check_config_file);
|
||||
}
|
||||
|
||||
if (table == NULL) {
|
||||
|
||||
/*
|
||||
* Fall back to the non-file based
|
||||
* cleaner
|
||||
*/
|
||||
if (work->cleaner == &clean_iso8859_1) {
|
||||
work->cleaner = &clean_iso8859_1_basic;
|
||||
}
|
||||
else if (work->cleaner == &clean_utf_8) {
|
||||
work->cleaner = &clean_utf_8_basic;
|
||||
}
|
||||
else if (work->cleaner == &clean_safe) {
|
||||
work->cleaner = &clean_safe_basic;
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "detox: unable to locate translation table or fall back\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
||||
/*
|
||||
* Allocate an options
|
||||
*/
|
||||
opts = malloc(sizeof(struct clean_string_options));
|
||||
if (opts == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
memset(opts, 0, sizeof(struct clean_string_options));
|
||||
|
||||
opts->translation_table = table;
|
||||
work->options = opts;
|
||||
}
|
||||
|
||||
free(check_config_file);
|
||||
}
|
||||
else {
|
||||
table = parse_table(check_filename);
|
||||
if (table == NULL) {
|
||||
fprintf(stderr, "detox: unable to parse file: %s\n", check_filename);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
opts = work->options;
|
||||
opts->translation_table = table;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
work = work->next;
|
||||
}
|
||||
|
||||
/*
|
||||
* Do some actual work
|
||||
*/
|
||||
|
||||
if (!main_options->is_inline_mode) {
|
||||
file_walk = main_options->files;
|
||||
while (*file_walk) {
|
||||
if (main_options->verbose) {
|
||||
printf("Scanning: %s\n", *file_walk);
|
||||
}
|
||||
|
||||
err = lstat(*file_walk, &stat_info);
|
||||
if (err == -1) {
|
||||
fprintf(stderr, "%s: %s\n", *file_walk, strerror(errno));
|
||||
}
|
||||
else {
|
||||
if (S_ISDIR(stat_info.st_mode)) {
|
||||
file_work = parse_file(*file_walk, main_options);
|
||||
parse_dir(file_work, main_options);
|
||||
free(file_work);
|
||||
}
|
||||
else if (S_ISREG(stat_info.st_mode)) {
|
||||
parse_file(*file_walk, main_options);
|
||||
}
|
||||
else if (main_options->special) {
|
||||
parse_special(*file_walk, main_options);
|
||||
}
|
||||
}
|
||||
|
||||
file_walk++;
|
||||
}
|
||||
} else {
|
||||
if (main_options->files[0] != NULL) {
|
||||
file_walk = main_options->files;
|
||||
while (*file_walk) {
|
||||
err = lstat(*file_walk, &stat_info);
|
||||
if (err == -1) {
|
||||
fprintf(stderr, "%s: %s\n", *file_walk, strerror(errno));
|
||||
}
|
||||
else {
|
||||
if (S_ISDIR(stat_info.st_mode)) {
|
||||
fprintf(stderr, "%s: is a directory\n", *file_walk);
|
||||
}
|
||||
else {
|
||||
parse_inline(*file_walk, main_options);
|
||||
}
|
||||
}
|
||||
|
||||
file_walk++;
|
||||
}
|
||||
}
|
||||
else {
|
||||
parse_inline(NULL, main_options);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
79
detox/latest/src/detox.h
Normal file
79
detox/latest/src/detox.h
Normal file
@ -0,0 +1,79 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#ifndef __DETOX_H
|
||||
#define __DETOX_H
|
||||
|
||||
/*
|
||||
* Holds information about all of the defined sequences
|
||||
*/
|
||||
struct detox_sequence_list {
|
||||
struct detox_sequence_list *next;
|
||||
|
||||
char *name;
|
||||
|
||||
/*
|
||||
* The top of the linked list of entries for this sequence
|
||||
*/
|
||||
struct detox_sequence_entry *head;
|
||||
|
||||
char *source_filename;
|
||||
};
|
||||
|
||||
/*
|
||||
* Holds information about an entry within a specific sequence
|
||||
*/
|
||||
struct detox_sequence_entry {
|
||||
struct detox_sequence_entry *next;
|
||||
|
||||
unsigned char *(*cleaner) (unsigned char *str, void *options);
|
||||
void *options;
|
||||
};
|
||||
|
||||
/*
|
||||
* Holds information about files the user has asked us to ignore
|
||||
*/
|
||||
struct detox_ignore_entry {
|
||||
struct detox_ignore_entry *next;
|
||||
|
||||
unsigned char *filename;
|
||||
};
|
||||
|
||||
/*
|
||||
* Holds the result of a config file parse
|
||||
*/
|
||||
struct detox_parse_results {
|
||||
struct detox_sequence_list *sequences;
|
||||
struct detox_ignore_entry *files_to_ignore;
|
||||
};
|
||||
|
||||
/*
|
||||
* Holds command line options
|
||||
*/
|
||||
struct detox_options {
|
||||
int dry_run;
|
||||
int is_inline_bin;
|
||||
int is_inline_mode;
|
||||
int list_sequences;
|
||||
int recurse;
|
||||
int remove_trailing;
|
||||
int special;
|
||||
int verbose;
|
||||
|
||||
struct detox_sequence_entry *sequence_to_use;
|
||||
struct detox_ignore_entry *files_to_ignore;
|
||||
|
||||
char *sequence_name;
|
||||
|
||||
char *check_config_file;
|
||||
|
||||
char **files;
|
||||
};
|
||||
|
||||
#endif /* __DETOX_H */
|
BIN
detox/latest/src/detox.o
Normal file
BIN
detox/latest/src/detox.o
Normal file
Binary file not shown.
378
detox/latest/src/file.c
Normal file
378
detox/latest/src/file.c
Normal file
@ -0,0 +1,378 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <sys/stat.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <dirent.h>
|
||||
#include <string.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include "clean_string.h"
|
||||
#include "file.h"
|
||||
#include "detox.h"
|
||||
|
||||
static char badfiles[3][30] = {
|
||||
".",
|
||||
"..",
|
||||
""
|
||||
};
|
||||
|
||||
#define BUF_SIZE 1024
|
||||
|
||||
/*
|
||||
* Internal function declarations
|
||||
*/
|
||||
static int ignore_file(unsigned char *filename, struct detox_options *options);
|
||||
|
||||
/*
|
||||
* Renames file to a safe filename.
|
||||
*/
|
||||
unsigned char *parse_file(unsigned char *filename, struct detox_options *options)
|
||||
{
|
||||
unsigned char *old_filename, *old_filename_ptr, *new_filename;
|
||||
unsigned char *work, *hold;
|
||||
|
||||
struct stat stat_info_old;
|
||||
struct stat stat_info_new;
|
||||
int err;
|
||||
size_t len;
|
||||
|
||||
struct detox_sequence_entry *sequence;
|
||||
|
||||
len = strlen(filename) + 1;
|
||||
old_filename = malloc(len);
|
||||
if (old_filename == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
memcpy(old_filename, filename, len);
|
||||
|
||||
old_filename_ptr = strrchr(old_filename, '/');
|
||||
if (old_filename_ptr != NULL) {
|
||||
old_filename_ptr++;
|
||||
}
|
||||
else {
|
||||
old_filename_ptr = old_filename;
|
||||
}
|
||||
|
||||
/*
|
||||
* Check for files that need to be ignored
|
||||
*/
|
||||
|
||||
if (ignore_file(old_filename_ptr, options)) {
|
||||
return old_filename;
|
||||
}
|
||||
|
||||
/*
|
||||
* Do the actual filename cleaning
|
||||
*/
|
||||
|
||||
sequence = options->sequence_to_use;
|
||||
|
||||
work = strdup(old_filename_ptr);
|
||||
|
||||
while (sequence != NULL && work != NULL) {
|
||||
hold = sequence->cleaner(work, sequence->options);
|
||||
if (work != NULL) {
|
||||
free(work);
|
||||
}
|
||||
work = hold;
|
||||
|
||||
sequence = sequence->next;
|
||||
}
|
||||
|
||||
if (work == NULL) {
|
||||
return old_filename;
|
||||
}
|
||||
|
||||
/* check to see if nothing changed */
|
||||
if (strcmp(old_filename_ptr, work) == 0) {
|
||||
return old_filename;
|
||||
}
|
||||
|
||||
len = (old_filename_ptr - old_filename);
|
||||
new_filename = malloc(len + strlen(work) + 1);
|
||||
if (new_filename == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
free(work);
|
||||
free(old_filename);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
strncpy(new_filename, old_filename, len);
|
||||
strcpy(new_filename + len, work);
|
||||
|
||||
free(work);
|
||||
|
||||
err = lstat(old_filename, &stat_info_old);
|
||||
if (err == -1) {
|
||||
free(new_filename);
|
||||
return old_filename;
|
||||
}
|
||||
|
||||
err = lstat(new_filename, &stat_info_new);
|
||||
if (err != -1) { // New file exists
|
||||
if (stat_info_old.st_dev != stat_info_new.st_dev || // Different device
|
||||
stat_info_old.st_ino != stat_info_new.st_ino || // Different inode
|
||||
stat_info_old.st_nlink > 1) // More than one hard link
|
||||
{
|
||||
fprintf(stderr, "Cannot rename %s to %s: file already exists\n", old_filename, new_filename);
|
||||
|
||||
free(new_filename);
|
||||
return old_filename;
|
||||
}
|
||||
}
|
||||
|
||||
if (options->verbose || options->dry_run) {
|
||||
printf("%s -> %s\n", old_filename, new_filename);
|
||||
}
|
||||
|
||||
if (options->dry_run) {
|
||||
free(new_filename);
|
||||
return old_filename;
|
||||
}
|
||||
|
||||
err = rename(old_filename, new_filename);
|
||||
if (err == -1) {
|
||||
fprintf(stderr, "Cannot rename %s to %s: %s\n", old_filename, new_filename, strerror(errno));
|
||||
free(new_filename);
|
||||
return old_filename;
|
||||
}
|
||||
|
||||
free(old_filename);
|
||||
|
||||
return new_filename;
|
||||
}
|
||||
|
||||
/*
|
||||
* Handles directory.
|
||||
*/
|
||||
void parse_dir(unsigned char *indir, struct detox_options *options)
|
||||
{
|
||||
unsigned char *new_file, *work;
|
||||
DIR *dir_handle;
|
||||
struct dirent *dir_entry;
|
||||
struct stat stat_info;
|
||||
int check_file;
|
||||
int err;
|
||||
size_t new_file_length;
|
||||
|
||||
err = lstat(indir, &stat_info);
|
||||
if (err == -1) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!S_ISDIR(stat_info.st_mode)) {
|
||||
return;
|
||||
}
|
||||
|
||||
new_file_length = strlen(indir) + 1024;
|
||||
new_file = (char *)malloc(new_file_length);
|
||||
if (new_file == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Parse directory
|
||||
*/
|
||||
|
||||
dir_handle = opendir(indir);
|
||||
if (dir_handle == NULL) {
|
||||
fprintf(stderr, "unable to parse: %s\n", strerror(errno));
|
||||
free(new_file);
|
||||
return;
|
||||
}
|
||||
|
||||
dir_entry = readdir(dir_handle);
|
||||
|
||||
while (dir_entry != NULL) {
|
||||
|
||||
/*
|
||||
* Check for files that need to be ignored
|
||||
*/
|
||||
check_file = !ignore_file(dir_entry->d_name, options);
|
||||
|
||||
if (check_file) {
|
||||
snprintf(new_file, new_file_length, "%s/%s", indir, dir_entry->d_name);
|
||||
|
||||
lstat(new_file, &stat_info);
|
||||
if (S_ISDIR(stat_info.st_mode)) {
|
||||
work = parse_file(new_file, options);
|
||||
if (options->recurse) {
|
||||
parse_dir(work, options);
|
||||
}
|
||||
free(work);
|
||||
}
|
||||
else if (S_ISREG(stat_info.st_mode)) {
|
||||
work = parse_file(new_file, options);
|
||||
free(work);
|
||||
}
|
||||
else if (options->special) {
|
||||
parse_special(new_file, options);
|
||||
}
|
||||
}
|
||||
dir_entry = readdir(dir_handle);
|
||||
}
|
||||
closedir(dir_handle);
|
||||
}
|
||||
|
||||
/*
|
||||
* Handles a special file.
|
||||
*/
|
||||
void parse_special(unsigned char *in, struct detox_options *options)
|
||||
{
|
||||
struct stat stat_info;
|
||||
char *new_file, *work;
|
||||
int err;
|
||||
|
||||
/* detox, then parse_dir if a symlink to a dir */
|
||||
new_file = parse_file(in, options);
|
||||
if (!new_file) {
|
||||
return;
|
||||
}
|
||||
|
||||
err = lstat(new_file, &stat_info);
|
||||
if (err == -1) {
|
||||
fprintf(stderr, "Unable to stat %s\n", in);
|
||||
free(new_file);
|
||||
return;
|
||||
}
|
||||
|
||||
if (options->recurse && S_ISLNK(stat_info.st_mode)) {
|
||||
work = malloc(1024);
|
||||
if (!work) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
free(new_file);
|
||||
return;
|
||||
}
|
||||
|
||||
memset(work, 0, 1024);
|
||||
err = readlink(new_file, work, 1023);
|
||||
if (err == -1) {
|
||||
fprintf(stderr, "Unable to read symbolic link %s\n", in);
|
||||
free(work);
|
||||
free(new_file);
|
||||
return;
|
||||
}
|
||||
|
||||
err = lstat(work, &stat_info);
|
||||
if (err == -1) {
|
||||
fprintf(stderr, "Unable to follow symbolic link %s\n", in);
|
||||
free(work);
|
||||
free(new_file);
|
||||
return;
|
||||
}
|
||||
|
||||
if (S_ISDIR(stat_info.st_mode)) {
|
||||
parse_dir(work, options);
|
||||
}
|
||||
|
||||
free(work);
|
||||
}
|
||||
free(new_file);
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* Determines if the file should be ignored
|
||||
*/
|
||||
static int ignore_file(unsigned char *filename, struct detox_options *options)
|
||||
{
|
||||
struct detox_ignore_entry *ignore_walk;
|
||||
int x;
|
||||
|
||||
for (x = 0; badfiles[x][0] != 0; x++) {
|
||||
if (strcmp(filename, badfiles[x]) == 0) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
ignore_walk = options->files_to_ignore;
|
||||
while (ignore_walk != NULL) {
|
||||
if (strcmp(filename, ignore_walk->filename) == 0) {
|
||||
return 1;
|
||||
}
|
||||
ignore_walk = ignore_walk->next;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Renames file to a safe filename.
|
||||
*/
|
||||
void parse_inline(unsigned char *filename, struct detox_options *options)
|
||||
{
|
||||
struct detox_sequence_entry *sequence;
|
||||
FILE *fp;
|
||||
unsigned char *base, *work, *hold;
|
||||
size_t buf_size;
|
||||
|
||||
if (filename != NULL) {
|
||||
if (!(fp = fopen(filename, "r"))) {
|
||||
fprintf(stderr, "%s: %s\n", filename, strerror(errno));
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
fp = stdin;
|
||||
}
|
||||
|
||||
buf_size = BUF_SIZE;
|
||||
base = malloc(buf_size);
|
||||
if (base == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return;
|
||||
}
|
||||
|
||||
while (fgets(base, buf_size, fp)) {
|
||||
while (strrchr(base, '\n') == NULL) {
|
||||
work = realloc(base, buf_size + BUF_SIZE - 1);
|
||||
if (!fgets(work + buf_size - 1, BUF_SIZE, fp)) {
|
||||
base = work;
|
||||
break;
|
||||
}
|
||||
base = work;
|
||||
buf_size += BUF_SIZE - 1;
|
||||
}
|
||||
|
||||
hold = strrchr(base, '\n');
|
||||
if (hold == NULL) {
|
||||
fprintf(stderr, "Unable to parse input\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
*hold = '\0';
|
||||
|
||||
work = strdup(base);
|
||||
|
||||
sequence = options->sequence_to_use;
|
||||
|
||||
while (sequence != NULL && work != NULL) {
|
||||
hold = sequence->cleaner(work, sequence->options);
|
||||
if (work != NULL) {
|
||||
free(work);
|
||||
}
|
||||
work = hold;
|
||||
|
||||
sequence = sequence->next;
|
||||
}
|
||||
|
||||
if (work != NULL) {
|
||||
printf("%s\n", work);
|
||||
}
|
||||
else {
|
||||
printf("\n");
|
||||
}
|
||||
}
|
||||
}
|
23
detox/latest/src/file.h
Normal file
23
detox/latest/src/file.h
Normal file
@ -0,0 +1,23 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#ifndef __FILE_H
|
||||
#define __FILE_H
|
||||
|
||||
#include "detox.h"
|
||||
|
||||
extern unsigned char *parse_file(unsigned char *filename, struct detox_options *options);
|
||||
|
||||
extern void parse_dir(unsigned char *indir, struct detox_options *options);
|
||||
|
||||
extern void parse_special(unsigned char *in, struct detox_options *options);
|
||||
|
||||
extern void parse_inline(unsigned char *filename, struct detox_options *options);
|
||||
|
||||
#endif /* __FILE_H */
|
BIN
detox/latest/src/file.o
Normal file
BIN
detox/latest/src/file.o
Normal file
Binary file not shown.
BIN
detox/latest/src/inline-detox
Executable file
BIN
detox/latest/src/inline-detox
Executable file
Binary file not shown.
149
detox/latest/src/iso8859_1.h
Normal file
149
detox/latest/src/iso8859_1.h
Normal file
@ -0,0 +1,149 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Special thanks to: http://www.bbsinc.com/iso8859.html
|
||||
*/
|
||||
|
||||
#define ISO8859_1_OFFSET 0x80
|
||||
#define ISO8859_1_COUNT 128
|
||||
#define ISO8859_1_MAXLEN 8
|
||||
|
||||
/* starts at 80 */
|
||||
char iso8859_1_trans[ISO8859_1_COUNT][ISO8859_1_MAXLEN] = {
|
||||
"_", /* 0x0080 */
|
||||
"_", /* 0x0081 */
|
||||
"_", /* 0x0082 */
|
||||
"_", /* 0x0083 */
|
||||
"_", /* 0x0084 */
|
||||
"...", /* 0x0085 */
|
||||
"_", /* 0x0086 */
|
||||
"_", /* 0x0087 */
|
||||
"^", /* 0x0088 */
|
||||
"_", /* 0x0089 */
|
||||
"S", /* 0x008A */
|
||||
"_", /* 0x008B */
|
||||
"OE", /* 0x008C */
|
||||
"_", /* 0x008D */
|
||||
"_", /* 0x008E */
|
||||
"_", /* 0x008F */
|
||||
"_", /* 0x0090 */
|
||||
"_", /* 0x0091 */
|
||||
"_", /* 0x0092 */
|
||||
"_", /* 0x0093 */
|
||||
"_", /* 0x0094 */
|
||||
"_", /* 0x0095 */
|
||||
"-", /* 0x0096 */
|
||||
"-", /* 0x0097 */
|
||||
"_", /* 0x0098 */
|
||||
"_tm_", /* 0x0099 */
|
||||
"s", /* 0x009A */
|
||||
"_", /* 0x009B */
|
||||
"oe", /* 0x009C */
|
||||
"_", /* 0x009D */
|
||||
"_", /* 0x009E */
|
||||
"Y", /* 0x009F */
|
||||
"_", /* 0x00A0 */
|
||||
"_", /* 0x00A1 */
|
||||
"_cent_", /* 0x00A2 */
|
||||
"_pound_", /* 0x00A3 */
|
||||
"_", /* 0x00A4 */
|
||||
"_yen_", /* 0x00A5 */
|
||||
"_", /* 0x00A6 */
|
||||
"_", /* 0x00A7 */
|
||||
"_", /* 0x00A8 */
|
||||
"_copy_", /* 0x00A9 */
|
||||
"_", /* 0x00AA */
|
||||
"_", /* 0x00AB */
|
||||
"_", /* 0x00AC */
|
||||
"_", /* 0x00AD */
|
||||
"_reg_", /* 0x00AE */
|
||||
"_", /* 0x00AF */
|
||||
"_", /* 0x00B0 */
|
||||
"_", /* 0x00B1 */
|
||||
"2", /* 0x00B2 */
|
||||
"3", /* 0x00B3 */
|
||||
"_", /* 0x00B4 */
|
||||
"b", /* 0x00B5 */
|
||||
"_pp_", /* 0x00B6 */
|
||||
"_", /* 0x00B7 */
|
||||
"_", /* 0x00B8 */
|
||||
"1", /* 0x00B9 */
|
||||
"_", /* 0x00BA */
|
||||
"_", /* 0x00BB */
|
||||
"_", /* 0x00BC */
|
||||
"_", /* 0x00BD */
|
||||
"_", /* 0x00BE */
|
||||
"_", /* 0x00BF */
|
||||
"A", /* 0x00C0 */
|
||||
"A", /* 0x00C1 */
|
||||
"A", /* 0x00C2 */
|
||||
"A", /* 0x00C3 */
|
||||
"A", /* 0x00C4 */
|
||||
"A", /* 0x00C5 */
|
||||
"AE", /* 0x00C6 */
|
||||
"C", /* 0x00C7 */
|
||||
"E", /* 0x00C8 */
|
||||
"E", /* 0x00C9 */
|
||||
"E", /* 0x00CA */
|
||||
"E", /* 0x00CB */
|
||||
"I", /* 0x00CC */
|
||||
"I", /* 0x00CD */
|
||||
"I", /* 0x00CE */
|
||||
"I", /* 0x00CF */
|
||||
"TH", /* 0x00D0 */
|
||||
"N", /* 0x00D1 */
|
||||
"O", /* 0x00D2 */
|
||||
"O", /* 0x00D3 */
|
||||
"O", /* 0x00D4 */
|
||||
"O", /* 0x00D5 */
|
||||
"O", /* 0x00D6 */
|
||||
"x", /* 0x00D7 */
|
||||
"O", /* 0x00D8 */
|
||||
"U", /* 0x00D9 */
|
||||
"U", /* 0x00DA */
|
||||
"U", /* 0x00DB */
|
||||
"U", /* 0x00DC */
|
||||
"Y", /* 0x00DD */
|
||||
"TH", /* 0x00DE */
|
||||
"ss", /* 0x00DF */
|
||||
"a", /* 0x00E0 */
|
||||
"a", /* 0x00E1 */
|
||||
"a", /* 0x00E2 */
|
||||
"a", /* 0x00E3 */
|
||||
"a", /* 0x00E4 */
|
||||
"a", /* 0x00E5 */
|
||||
"ae", /* 0x00E6 */
|
||||
"c", /* 0x00E7 */
|
||||
"e", /* 0x00E8 */
|
||||
"e", /* 0x00E9 */
|
||||
"e", /* 0x00EA */
|
||||
"e", /* 0x00EB */
|
||||
"i", /* 0x00EC */
|
||||
"i", /* 0x00ED */
|
||||
"i", /* 0x00EE */
|
||||
"i", /* 0x00EF */
|
||||
"th", /* 0x00F0 */
|
||||
"n", /* 0x00F1 */
|
||||
"o", /* 0x00F2 */
|
||||
"o", /* 0x00F3 */
|
||||
"o", /* 0x00F4 */
|
||||
"o", /* 0x00F5 */
|
||||
"o", /* 0x00F6 */
|
||||
"_", /* 0x00F7 */
|
||||
"o", /* 0x00F8 */
|
||||
"u", /* 0x00F9 */
|
||||
"u", /* 0x00FA */
|
||||
"u", /* 0x00FB */
|
||||
"u", /* 0x00FC */
|
||||
"y", /* 0x00FD */
|
||||
"th", /* 0x00FE */
|
||||
"y", /* 0x00FF */
|
||||
};
|
282
detox/latest/src/parse_options.c
Normal file
282
detox/latest/src/parse_options.c
Normal file
@ -0,0 +1,282 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <sys/stat.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
#include <libgen.h>
|
||||
|
||||
#include "detox.h"
|
||||
#include "config.h"
|
||||
#include "parse_options.h"
|
||||
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
|
||||
enum {
|
||||
LONG_OPTION_DRY_RUN = 1,
|
||||
LONG_OPTION_INLINE,
|
||||
LONG_OPTION_REMOVE_TRAILING,
|
||||
LONG_OPTION_SPECIAL
|
||||
};
|
||||
|
||||
#define INLINE_DETOX_BIN "inline-detox"
|
||||
|
||||
/* expect this to be overwritten! */
|
||||
static int long_option = 0;
|
||||
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
static struct option longopts[] = {
|
||||
|
||||
/* long options with equivalents */
|
||||
{"help", no_argument, 0, 'h'},
|
||||
{"dry-run", no_argument, 0, 'n'},
|
||||
|
||||
/* long options without */
|
||||
{"inline", no_argument, &long_option, LONG_OPTION_INLINE},
|
||||
{"special", no_argument, &long_option, LONG_OPTION_SPECIAL},
|
||||
|
||||
/* deprecated long opts without */
|
||||
{"remove-trailing", no_argument, &long_option, LONG_OPTION_REMOVE_TRAILING},
|
||||
|
||||
/* done */
|
||||
{0, 0, 0, 0}
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
/* *INDENT-OFF* */
|
||||
|
||||
char usage_message[] = {
|
||||
"usage: detox [-hLnrvV] [-f configfile] [-s sequence]"
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" [--dry-run] [--inline] [--special]"
|
||||
"\n\t "
|
||||
#endif
|
||||
" file [file ...]\n"
|
||||
};
|
||||
|
||||
char help_message[] = {
|
||||
" -f configfile choose which config file to use\n"
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" -h --help this message\n"
|
||||
#else
|
||||
" -h this message\n"
|
||||
#endif
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" --inline run inline mode\n"
|
||||
#endif
|
||||
" -L list available sequences and exit\n"
|
||||
" with -v ... dump sequence contents\n"
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" -n --dry-run do a dry run (don't actually do anything)\n"
|
||||
#else
|
||||
" -n do a dry run (don't actually do anything)\n"
|
||||
#endif
|
||||
" -r be recursive (descend into subdirectories)\n"
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" --remove-trailing (deprecated)\n"
|
||||
" remove trailing _ and - before a period\n"
|
||||
#endif
|
||||
" -s sequence choose which sequence to detox with\n"
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" --special work on links and special files\n"
|
||||
#endif
|
||||
" -v be verbose\n"
|
||||
" -V show the current version\n"
|
||||
};
|
||||
|
||||
char usage_message_inline[] = {
|
||||
"usage: inline-detox [-hLvV] [-f configfile] [-s sequence] [file]\n"
|
||||
};
|
||||
|
||||
char help_message_inline[] = {
|
||||
" -f configfile choose which config file to use\n"
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" -h --help this message\n"
|
||||
#else
|
||||
" -h this message\n"
|
||||
#endif
|
||||
" -L list available sequences and exit\n"
|
||||
" with -v ... dump sequence contents\n"
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
" --remove-trailing (deprecated)\n"
|
||||
" remove trailing _ and - before a period\n"
|
||||
#endif
|
||||
" -s sequence choose which sequence to detox with\n"
|
||||
" -v be verbose\n"
|
||||
" -V show the current version\n"
|
||||
};
|
||||
|
||||
/* *INDENT-ON* */
|
||||
|
||||
struct detox_options *initialize_main_options(void)
|
||||
{
|
||||
struct detox_options *main_options;
|
||||
|
||||
main_options = malloc(sizeof(struct detox_options));
|
||||
if (main_options == NULL) {
|
||||
fprintf(stderr, "out of memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
memset(main_options, 0, sizeof(struct detox_options));
|
||||
|
||||
/*
|
||||
* XXX - handle blank strings better
|
||||
*/
|
||||
main_options->sequence_name = getenv("DETOX_SEQUENCE");
|
||||
|
||||
return main_options;
|
||||
}
|
||||
|
||||
struct detox_options *parse_options_getopt(int argc, char **argv)
|
||||
{
|
||||
int optcode;
|
||||
|
||||
struct detox_options *main_options;
|
||||
|
||||
int i;
|
||||
int max = 10;
|
||||
char *binname;
|
||||
|
||||
main_options = initialize_main_options();
|
||||
if (main_options == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
binname = basename(argv[0]);
|
||||
main_options->is_inline_bin = main_options->is_inline_mode =
|
||||
(strcmp(binname, INLINE_DETOX_BIN) == 0);
|
||||
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
while ((optcode = getopt_long(argc, argv, "hrvV?Ls:f:n", longopts, NULL)) != -1) {
|
||||
#else
|
||||
while ((optcode = getopt(argc, argv, "hrvV?Ls:f:n")) != -1) {
|
||||
#endif
|
||||
switch (optcode) {
|
||||
case 'h':
|
||||
printf("%s", !main_options->is_inline_bin ? usage_message :
|
||||
usage_message_inline);
|
||||
printf("\n");
|
||||
printf("%s", !main_options->is_inline_bin ? help_message :
|
||||
help_message_inline);
|
||||
exit(EXIT_SUCCESS);
|
||||
|
||||
case 'f':
|
||||
/*
|
||||
* XXX - free multiple check_config_files
|
||||
*/
|
||||
main_options->check_config_file = strdup(optarg);
|
||||
break;
|
||||
|
||||
case 'L':
|
||||
main_options->list_sequences = 1;
|
||||
break;
|
||||
|
||||
case 'n':
|
||||
main_options->dry_run = 1;
|
||||
break;
|
||||
|
||||
case 'r':
|
||||
main_options->recurse = 1;
|
||||
break;
|
||||
|
||||
case 's':
|
||||
/*
|
||||
* XXX - free multiple sequence name opts
|
||||
*/
|
||||
main_options->sequence_name = strdup(optarg);
|
||||
break;
|
||||
|
||||
case 'v':
|
||||
main_options->verbose++;
|
||||
break;
|
||||
|
||||
case 'V':
|
||||
printf("%s\n", PACKAGE_STRING);
|
||||
exit(EXIT_SUCCESS);
|
||||
|
||||
case '?':
|
||||
printf("%s", !main_options->is_inline_bin ? usage_message :
|
||||
usage_message_inline);
|
||||
exit(EXIT_SUCCESS);
|
||||
|
||||
case 0:
|
||||
switch (long_option) {
|
||||
case LONG_OPTION_INLINE:
|
||||
main_options->is_inline_mode = 1;
|
||||
break;
|
||||
|
||||
case LONG_OPTION_REMOVE_TRAILING:
|
||||
main_options->remove_trailing = 1;
|
||||
break;
|
||||
|
||||
case LONG_OPTION_SPECIAL:
|
||||
main_options->special = 1;
|
||||
break;
|
||||
|
||||
default:
|
||||
/*
|
||||
* getopt_long shouldn't let us get here...
|
||||
* verify?
|
||||
*/
|
||||
printf("unknown option: %s\n", optarg);
|
||||
break;
|
||||
}
|
||||
long_option = 0; /* clean up! */
|
||||
break;
|
||||
|
||||
default:
|
||||
fprintf(stderr, "unknown option: %c\n", optcode);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
}
|
||||
|
||||
if (main_options->list_sequences) {
|
||||
/*
|
||||
* Early Retirement
|
||||
*/
|
||||
return main_options;
|
||||
}
|
||||
|
||||
main_options->files = malloc(sizeof(char *) * 10);
|
||||
|
||||
i = 0;
|
||||
max = 10;
|
||||
|
||||
if (optind < argc) {
|
||||
while (optind < argc) {
|
||||
/* not enough space for the next file and
|
||||
possible ending NULL -> realloc */
|
||||
if (i + 2 > max) {
|
||||
main_options->files = realloc(main_options->files, sizeof(char *) * (10 + max));
|
||||
max += 10;
|
||||
}
|
||||
main_options->files[i++] = strdup(argv[optind]);
|
||||
|
||||
optind++;
|
||||
}
|
||||
|
||||
main_options->files[i] = NULL;
|
||||
}
|
||||
else if (!main_options->is_inline_mode) {
|
||||
printf("%s", !main_options->is_inline_bin ? usage_message :
|
||||
usage_message_inline);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
return main_options;
|
||||
}
|
25
detox/latest/src/parse_options.h
Normal file
25
detox/latest/src/parse_options.h
Normal file
@ -0,0 +1,25 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __PARSE_OPTIONS_H
|
||||
#define __PARSE_OPTIONS_H
|
||||
|
||||
#include "detox.h"
|
||||
|
||||
extern char usage_message[];
|
||||
extern char help_message[];
|
||||
|
||||
extern char usage_message_inline[];
|
||||
extern char help_message_inline[];
|
||||
|
||||
extern struct detox_options *initialize_main_options(void);
|
||||
extern struct detox_options *parse_options_getopt(int argc, char **argv);
|
||||
|
||||
#endif /* __PARSE_OPTIONS_H */
|
BIN
detox/latest/src/parse_options.o
Normal file
BIN
detox/latest/src/parse_options.o
Normal file
Binary file not shown.
222
detox/latest/src/parse_table.c
Normal file
222
detox/latest/src/parse_table.c
Normal file
@ -0,0 +1,222 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <locale.h>
|
||||
|
||||
#include "table.h"
|
||||
|
||||
#define LINE_LENGTH 6
|
||||
|
||||
enum {
|
||||
BASE_STATE,
|
||||
INSIDE_STATE
|
||||
};
|
||||
|
||||
struct translation_table *parse_table(char *filename)
|
||||
{
|
||||
FILE *ttable_file;
|
||||
char *work;
|
||||
int code;
|
||||
int offset;
|
||||
char *parsed;
|
||||
int err;
|
||||
int size;
|
||||
int max_data_length;
|
||||
int ret;
|
||||
int state;
|
||||
char *system_ctype;
|
||||
|
||||
struct translation_table *table;
|
||||
|
||||
struct stat ttable_stat;
|
||||
|
||||
err = stat(filename, &ttable_stat);
|
||||
if (err == -1) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
system_ctype = setlocale(LC_CTYPE, "");
|
||||
if (system_ctype == NULL) {
|
||||
system_ctype = ""; // I don't think we can free the return from setlocale()
|
||||
}
|
||||
|
||||
size = 0;
|
||||
|
||||
if (ttable_stat.st_size > 0) {
|
||||
size = ttable_stat.st_size / LINE_LENGTH;
|
||||
}
|
||||
#ifdef HAVE_STRUCT_STAT_ST_BLOCKS
|
||||
else {
|
||||
size = (512 * ttable_stat.st_blocks) / LINE_LENGTH;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (size < 500) {
|
||||
size = 500;
|
||||
}
|
||||
|
||||
table = table_init(size);
|
||||
if (table == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
ttable_file = fopen(filename, "r");
|
||||
if (ttable_file == NULL) {
|
||||
fprintf(stderr, "Unable to open translation table: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
work = malloc(1024);
|
||||
if (work == NULL) {
|
||||
fprintf(stderr, "Unable to allocate memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
parsed = malloc(1024);
|
||||
if (parsed == NULL) {
|
||||
fprintf(stderr, "Unable to allocate memory: %s\n", strerror(errno));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
max_data_length = 1;
|
||||
state = BASE_STATE;
|
||||
|
||||
while (fgets(work, 1024, ttable_file) != NULL) {
|
||||
if (*work == '#') {
|
||||
|
||||
/*
|
||||
* Don't even bother
|
||||
*/
|
||||
continue;
|
||||
}
|
||||
|
||||
parsed[0] = '\0';
|
||||
|
||||
if (state == BASE_STATE) {
|
||||
ret = sscanf(work, " %s %n", parsed, &offset);
|
||||
|
||||
if (ret == 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (strncasecmp(parsed, "start", 5) == 0) {
|
||||
if (work[offset] == '\0') {
|
||||
// All languages
|
||||
state = INSIDE_STATE;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (work[offset] == '"') {
|
||||
sscanf(work + offset + 1, "%[^\"]", parsed);
|
||||
}
|
||||
else if (work[offset] == '\'') {
|
||||
sscanf(work + offset + 1, "%[^']", parsed);
|
||||
}
|
||||
else {
|
||||
sscanf(work + offset, "%s", parsed);
|
||||
}
|
||||
|
||||
if (strncasecmp(parsed, system_ctype, strlen(parsed)) == 0) {
|
||||
state = INSIDE_STATE;
|
||||
}
|
||||
// else ignore this start/end block
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
if (strncasecmp(parsed, "default", 7) == 0) {
|
||||
|
||||
if (work[offset] == '\0') {
|
||||
table->default_translation = NULL;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (work[offset] == '"') {
|
||||
sscanf(work + offset + 1, "%[^\"]", parsed);
|
||||
}
|
||||
else if (work[offset] == '\'') {
|
||||
sscanf(work + offset + 1, "%[^']", parsed);
|
||||
}
|
||||
else {
|
||||
sscanf(work + offset, "%s", parsed);
|
||||
}
|
||||
|
||||
table->default_translation = strdup(parsed);
|
||||
|
||||
if (strlen(parsed) > max_data_length) {
|
||||
max_data_length = strlen(parsed);
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
/*
|
||||
* Inside state
|
||||
*/
|
||||
|
||||
code = -1;
|
||||
|
||||
ret = sscanf(work, "%i %n", &code, &offset);
|
||||
|
||||
if (ret == 0 || code < 0 || offset < 0) {
|
||||
|
||||
/*
|
||||
* Check for end
|
||||
*/
|
||||
ret = sscanf(work, " %s %n", parsed, &offset);
|
||||
|
||||
if (ret > 0 && strncasecmp(parsed, "end", 5) == 0) {
|
||||
state = BASE_STATE;
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
if (work[offset] == '\0') {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (work[offset] == '"') {
|
||||
sscanf(work + offset + 1, "%[^\"]", parsed);
|
||||
}
|
||||
else if (work[offset] == '\'') {
|
||||
sscanf(work + offset + 1, "%[^']", parsed);
|
||||
}
|
||||
else {
|
||||
sscanf(work + offset, "%s", parsed);
|
||||
}
|
||||
|
||||
table_put(table, code, parsed);
|
||||
|
||||
if (strlen(parsed) > max_data_length) {
|
||||
max_data_length = strlen(parsed);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
table->max_data_length = max_data_length;
|
||||
|
||||
free(work);
|
||||
free(parsed);
|
||||
fclose(ttable_file);
|
||||
|
||||
return table;
|
||||
}
|
18
detox/latest/src/parse_table.h
Normal file
18
detox/latest/src/parse_table.h
Normal file
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __PARSE_TABLE_H
|
||||
#define __PARSE_TABLE_H
|
||||
|
||||
#include "table.h"
|
||||
|
||||
extern struct translation_table *parse_table(char *filename);
|
||||
|
||||
#endif /* __PARSE_TABLE_H */
|
BIN
detox/latest/src/parse_table.o
Normal file
BIN
detox/latest/src/parse_table.o
Normal file
Binary file not shown.
1
detox/latest/src/stamp-h1
Normal file
1
detox/latest/src/stamp-h1
Normal file
@ -0,0 +1 @@
|
||||
timestamp for src/config.h
|
177
detox/latest/src/table.c
Normal file
177
detox/latest/src/table.c
Normal file
@ -0,0 +1,177 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include "table.h"
|
||||
|
||||
/*
|
||||
* Internal function declarations
|
||||
*/
|
||||
static int table_hash1(int table_length, unsigned int key);
|
||||
static int table_hash2(int table_length, unsigned int key);
|
||||
|
||||
struct translation_table *table_init(int max_rows)
|
||||
{
|
||||
struct translation_table *ret;
|
||||
size_t row_length;
|
||||
|
||||
if (max_rows <= 0) {
|
||||
max_rows = 500;
|
||||
}
|
||||
|
||||
row_length = max_rows * sizeof(struct translation_table_row);
|
||||
|
||||
ret = malloc(sizeof(struct translation_table));
|
||||
if (ret == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
memset(ret, 0, sizeof(struct translation_table));
|
||||
|
||||
ret->rows = malloc(row_length);
|
||||
if (ret->rows == NULL) {
|
||||
free(ret);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
memset(ret->rows, 0, row_length);
|
||||
|
||||
ret->length = max_rows;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
struct translation_table *table_resize(struct translation_table *table, int rows)
|
||||
{
|
||||
struct translation_table *ret;
|
||||
int i;
|
||||
|
||||
ret = table_init(rows);
|
||||
|
||||
if (ret == NULL)
|
||||
return table;
|
||||
|
||||
if (table == NULL)
|
||||
return ret;
|
||||
|
||||
for (i = 0; i < table->length; i++) {
|
||||
if (table->rows[i].key > 0 && table->rows[i].data != NULL) {
|
||||
table_put(ret, table->rows[i].key, table->rows[i].data);
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
void table_free(struct translation_table *table)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (table == NULL)
|
||||
return;
|
||||
|
||||
for (i = 0; i < table->length; i++) {
|
||||
if (table->rows[i].key > 0 && table->rows[i].data != NULL) {
|
||||
free(table->rows[i].data);
|
||||
}
|
||||
}
|
||||
|
||||
free(table->rows);
|
||||
free(table);
|
||||
}
|
||||
|
||||
static int table_hash1(int table_length, unsigned int key)
|
||||
{
|
||||
return key % table_length;
|
||||
}
|
||||
|
||||
static int table_hash2(int table_length, unsigned int key)
|
||||
{
|
||||
return (key >> 8) % table_length;
|
||||
}
|
||||
|
||||
/*
|
||||
* 0 is an invalid key (sorry)
|
||||
*/
|
||||
int table_put(struct translation_table *table, unsigned int key, char *data)
|
||||
{
|
||||
int hashed;
|
||||
int hashed2;
|
||||
int i;
|
||||
|
||||
if (table->length == table->used) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
hashed = table_hash1(table->length, key);
|
||||
|
||||
if (table->rows[hashed].key != 0 && table->rows[hashed].key != key) {
|
||||
hashed2 = table_hash2(table->length, key);
|
||||
i = 0;
|
||||
while (table->rows[hashed].key != 0 && table->rows[hashed].key != key) {
|
||||
hashed += i + hashed2;
|
||||
hashed %= table->length;
|
||||
}
|
||||
}
|
||||
|
||||
if (table->rows[hashed].key == key) {
|
||||
table->overwrites++;
|
||||
}
|
||||
|
||||
table->rows[hashed].key = key;
|
||||
table->rows[hashed].data = strdup(data);
|
||||
table->used++;
|
||||
return hashed;
|
||||
}
|
||||
|
||||
/*
|
||||
* 0 is an invalid key (sorry)
|
||||
*/
|
||||
char *table_get(struct translation_table *table, unsigned int key)
|
||||
{
|
||||
int hashed;
|
||||
int hashed2;
|
||||
int i;
|
||||
|
||||
if (table == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
hashed = table_hash1(table->length, key);
|
||||
|
||||
if (table->rows[hashed].key == 0) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (table->rows[hashed].key != key) {
|
||||
hashed2 = table_hash2(table->length, key);
|
||||
i = 0;
|
||||
while (table->rows[hashed].key != key && table->rows[hashed].key != 0) {
|
||||
table->misses++;
|
||||
|
||||
hashed += i + hashed2;
|
||||
hashed %= table->length;
|
||||
}
|
||||
}
|
||||
|
||||
if (table->rows[hashed].key == 0) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
table->hits++;
|
||||
|
||||
return table->rows[hashed].data;
|
||||
}
|
37
detox/latest/src/table.h
Normal file
37
detox/latest/src/table.h
Normal file
@ -0,0 +1,37 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
#ifndef __TABLE_H
|
||||
#define __TABLE_H
|
||||
|
||||
struct translation_table_row {
|
||||
unsigned int key;
|
||||
char *data;
|
||||
};
|
||||
|
||||
struct translation_table {
|
||||
int length;
|
||||
int used;
|
||||
|
||||
int max_data_length;
|
||||
|
||||
char *default_translation;
|
||||
|
||||
struct translation_table_row *rows;
|
||||
|
||||
int hits, misses, overwrites;
|
||||
};
|
||||
|
||||
extern struct translation_table *table_init(int max_rows);
|
||||
extern struct translation_table *table_resize(struct translation_table *table, int rows);
|
||||
extern void table_free(struct translation_table *table);
|
||||
extern int table_put(struct translation_table *table, unsigned int key, char *data);
|
||||
extern char *table_get(struct translation_table *table, unsigned int key);
|
||||
|
||||
#endif /* __TABLE_H */
|
BIN
detox/latest/src/table.o
Normal file
BIN
detox/latest/src/table.o
Normal file
Binary file not shown.
275
detox/latest/src/unicode.h
Normal file
275
detox/latest/src/unicode.h
Normal file
@ -0,0 +1,275 @@
|
||||
/**
|
||||
* This file is part of the Detox package.
|
||||
*
|
||||
* Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* Special thanks to: http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
|
||||
*/
|
||||
|
||||
#define UNICODE_COUNT 256
|
||||
#define UNICODE_MAXLEN 8
|
||||
|
||||
char unicode_trans[UNICODE_COUNT][UNICODE_MAXLEN] = {
|
||||
"_", /* 0x0000 */
|
||||
"_", /* 0x0001 */
|
||||
"_", /* 0x0002 */
|
||||
"_", /* 0x0003 */
|
||||
"_", /* 0x0004 */
|
||||
"_", /* 0x0005 */
|
||||
"_", /* 0x0006 */
|
||||
"_", /* 0x0007 */
|
||||
"_", /* 0x0008 */
|
||||
"_", /* 0x0009 */
|
||||
"_", /* 0x000A */
|
||||
"_", /* 0x000B */
|
||||
"_", /* 0x000C */
|
||||
"_", /* 0x000D */
|
||||
"_", /* 0x000E */
|
||||
"_", /* 0x000F */
|
||||
"_", /* 0x0010 */
|
||||
"_", /* 0x0011 */
|
||||
"_", /* 0x0012 */
|
||||
"_", /* 0x0013 */
|
||||
"_", /* 0x0014 */
|
||||
"_", /* 0x0015 */
|
||||
"_", /* 0x0016 */
|
||||
"_", /* 0x0017 */
|
||||
"_", /* 0x0018 */
|
||||
"_", /* 0x0019 */
|
||||
"_", /* 0x001A */
|
||||
"_", /* 0x001B */
|
||||
"_", /* 0x001C */
|
||||
"_", /* 0x001D */
|
||||
"_", /* 0x001E */
|
||||
"_", /* 0x001F */
|
||||
"_", /* 0x0020 */
|
||||
"_", /* 0x0021 */
|
||||
"_", /* 0x0022 */
|
||||
"#", /* 0x0023 */
|
||||
"_", /* 0x0024 */
|
||||
"%", /* 0x0025 */
|
||||
"_and_", /* 0x0026 */
|
||||
"_", /* 0x0027 */
|
||||
"_", /* 0x0028 */
|
||||
"_", /* 0x0029 */
|
||||
"_", /* 0x002A */
|
||||
"+", /* 0x002B */
|
||||
",", /* 0x002C */
|
||||
"-", /* 0x002D */
|
||||
".", /* 0x002E */
|
||||
"_", /* 0x002F */
|
||||
"0", /* 0x0030 */
|
||||
"1", /* 0x0031 */
|
||||
"2", /* 0x0032 */
|
||||
"3", /* 0x0033 */
|
||||
"4", /* 0x0034 */
|
||||
"5", /* 0x0035 */
|
||||
"6", /* 0x0036 */
|
||||
"7", /* 0x0037 */
|
||||
"8", /* 0x0038 */
|
||||
"9", /* 0x0039 */
|
||||
"_", /* 0x003A */
|
||||
"_", /* 0x003B */
|
||||
"_", /* 0x003C */
|
||||
"=", /* 0x003D */
|
||||
"_", /* 0x003E */
|
||||
"_", /* 0x003F */
|
||||
"_", /* 0x0040 */
|
||||
"A", /* 0x0041 */
|
||||
"B", /* 0x0042 */
|
||||
"C", /* 0x0043 */
|
||||
"D", /* 0x0044 */
|
||||
"E", /* 0x0045 */
|
||||
"F", /* 0x0046 */
|
||||
"G", /* 0x0047 */
|
||||
"H", /* 0x0048 */
|
||||
"I", /* 0x0049 */
|
||||
"J", /* 0x004A */
|
||||
"K", /* 0x004B */
|
||||
"L", /* 0x004C */
|
||||
"M", /* 0x004D */
|
||||
"N", /* 0x004E */
|
||||
"O", /* 0x004F */
|
||||
"P", /* 0x0050 */
|
||||
"Q", /* 0x0051 */
|
||||
"R", /* 0x0052 */
|
||||
"S", /* 0x0053 */
|
||||
"T", /* 0x0054 */
|
||||
"U", /* 0x0055 */
|
||||
"V", /* 0x0056 */
|
||||
"W", /* 0x0057 */
|
||||
"X", /* 0x0058 */
|
||||
"Y", /* 0x0059 */
|
||||
"Z", /* 0x005A */
|
||||
"_", /* 0x005B */
|
||||
"_", /* 0x005C */
|
||||
"_", /* 0x005D */
|
||||
"^", /* 0x005E */
|
||||
"_", /* 0x005F */
|
||||
"_", /* 0x0060 */
|
||||
"a", /* 0x0061 */
|
||||
"b", /* 0x0062 */
|
||||
"c", /* 0x0063 */
|
||||
"d", /* 0x0064 */
|
||||
"e", /* 0x0065 */
|
||||
"f", /* 0x0066 */
|
||||
"g", /* 0x0067 */
|
||||
"h", /* 0x0068 */
|
||||
"i", /* 0x0069 */
|
||||
"j", /* 0x006A */
|
||||
"k", /* 0x006B */
|
||||
"l", /* 0x006C */
|
||||
"m", /* 0x006D */
|
||||
"n", /* 0x006E */
|
||||
"o", /* 0x006F */
|
||||
"p", /* 0x0070 */
|
||||
"q", /* 0x0071 */
|
||||
"r", /* 0x0072 */
|
||||
"s", /* 0x0073 */
|
||||
"t", /* 0x0074 */
|
||||
"u", /* 0x0075 */
|
||||
"v", /* 0x0076 */
|
||||
"w", /* 0x0077 */
|
||||
"x", /* 0x0078 */
|
||||
"y", /* 0x0079 */
|
||||
"z", /* 0x007A */
|
||||
"_", /* 0x007B */
|
||||
"_", /* 0x007C */
|
||||
"_", /* 0x007D */
|
||||
"~", /* 0x007E */
|
||||
"_", /* 0x007F */
|
||||
"_", /* 0x0080 */
|
||||
"_", /* 0x0081 */
|
||||
"_", /* 0x0082 */
|
||||
"_", /* 0x0083 */
|
||||
"_", /* 0x0084 */
|
||||
"...", /* 0x0085 */
|
||||
"_", /* 0x0086 */
|
||||
"_", /* 0x0087 */
|
||||
"^", /* 0x0088 */
|
||||
"_", /* 0x0089 */
|
||||
"S", /* 0x008A */
|
||||
"_", /* 0x008B */
|
||||
"OE", /* 0x008C */
|
||||
"_", /* 0x008D */
|
||||
"_", /* 0x008E */
|
||||
"_", /* 0x008F */
|
||||
"_", /* 0x0090 */
|
||||
"_", /* 0x0091 */
|
||||
"_", /* 0x0092 */
|
||||
"_", /* 0x0093 */
|
||||
"_", /* 0x0094 */
|
||||
"_", /* 0x0095 */
|
||||
"-", /* 0x0096 */
|
||||
"-", /* 0x0097 */
|
||||
"_", /* 0x0098 */
|
||||
"_tm_", /* 0x0099 */
|
||||
"s", /* 0x009A */
|
||||
"_", /* 0x009B */
|
||||
"oe", /* 0x009C */
|
||||
"_", /* 0x009D */
|
||||
"_", /* 0x009E */
|
||||
"Y", /* 0x009F */
|
||||
"_", /* 0x00A0 */
|
||||
"_", /* 0x00A1 */
|
||||
"_cent_", /* 0x00A2 */
|
||||
"_pound_", /* 0x00A3 */
|
||||
"_", /* 0x00A4 */
|
||||
"_yen_", /* 0x00A5 */
|
||||
"_", /* 0x00A6 */
|
||||
"_", /* 0x00A7 */
|
||||
"_", /* 0x00A8 */
|
||||
"_copy_", /* 0x00A9 */
|
||||
"_", /* 0x00AA */
|
||||
"_", /* 0x00AB */
|
||||
"_", /* 0x00AC */
|
||||
"_", /* 0x00AD */
|
||||
"_reg_", /* 0x00AE */
|
||||
"_", /* 0x00AF */
|
||||
"_", /* 0x00B0 */
|
||||
"_", /* 0x00B1 */
|
||||
"2", /* 0x00B2 */
|
||||
"3", /* 0x00B3 */
|
||||
"_", /* 0x00B4 */
|
||||
"b", /* 0x00B5 */
|
||||
"_pp_", /* 0x00B6 */
|
||||
"_", /* 0x00B7 */
|
||||
"_", /* 0x00B8 */
|
||||
"1", /* 0x00B9 */
|
||||
"_", /* 0x00BA */
|
||||
"_", /* 0x00BB */
|
||||
"_", /* 0x00BC */
|
||||
"_", /* 0x00BD */
|
||||
"_", /* 0x00BE */
|
||||
"_", /* 0x00BF */
|
||||
"A", /* 0x00C0 */
|
||||
"A", /* 0x00C1 */
|
||||
"A", /* 0x00C2 */
|
||||
"A", /* 0x00C3 */
|
||||
"A", /* 0x00C4 */
|
||||
"A", /* 0x00C5 */
|
||||
"AE", /* 0x00C6 */
|
||||
"C", /* 0x00C7 */
|
||||
"E", /* 0x00C8 */
|
||||
"E", /* 0x00C9 */
|
||||
"E", /* 0x00CA */
|
||||
"E", /* 0x00CB */
|
||||
"I", /* 0x00CC */
|
||||
"I", /* 0x00CD */
|
||||
"I", /* 0x00CE */
|
||||
"I", /* 0x00CF */
|
||||
"TH", /* 0x00D0 */
|
||||
"N", /* 0x00D1 */
|
||||
"O", /* 0x00D2 */
|
||||
"O", /* 0x00D3 */
|
||||
"O", /* 0x00D4 */
|
||||
"O", /* 0x00D5 */
|
||||
"O", /* 0x00D6 */
|
||||
"x", /* 0x00D7 */
|
||||
"O", /* 0x00D8 */
|
||||
"U", /* 0x00D9 */
|
||||
"U", /* 0x00DA */
|
||||
"U", /* 0x00DB */
|
||||
"U", /* 0x00DC */
|
||||
"Y", /* 0x00DD */
|
||||
"TH", /* 0x00DE */
|
||||
"ss", /* 0x00DF */
|
||||
"a", /* 0x00E0 */
|
||||
"a", /* 0x00E1 */
|
||||
"a", /* 0x00E2 */
|
||||
"a", /* 0x00E3 */
|
||||
"a", /* 0x00E4 */
|
||||
"a", /* 0x00E5 */
|
||||
"ae", /* 0x00E6 */
|
||||
"c", /* 0x00E7 */
|
||||
"e", /* 0x00E8 */
|
||||
"e", /* 0x00E9 */
|
||||
"e", /* 0x00EA */
|
||||
"e", /* 0x00EB */
|
||||
"i", /* 0x00EC */
|
||||
"i", /* 0x00ED */
|
||||
"i", /* 0x00EE */
|
||||
"i", /* 0x00EF */
|
||||
"th", /* 0x00F0 */
|
||||
"n", /* 0x00F1 */
|
||||
"o", /* 0x00F2 */
|
||||
"o", /* 0x00F3 */
|
||||
"o", /* 0x00F4 */
|
||||
"o", /* 0x00F5 */
|
||||
"o", /* 0x00F6 */
|
||||
"_", /* 0x00F7 */
|
||||
"o", /* 0x00F8 */
|
||||
"u", /* 0x00F9 */
|
||||
"u", /* 0x00FA */
|
||||
"u", /* 0x00FB */
|
||||
"u", /* 0x00FC */
|
||||
"y", /* 0x00FD */
|
||||
"th", /* 0x00FE */
|
||||
"y", /* 0x00FF */
|
||||
};
|
131
detox/latest/table/iso8859_1.tbl.sample
Normal file
131
detox/latest/table/iso8859_1.tbl.sample
Normal file
@ -0,0 +1,131 @@
|
||||
# This file is part of the Detox package.
|
||||
#
|
||||
# Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
#
|
||||
# For the full copyright and license information, please view the LICENSE
|
||||
# file that was distributed with this source code.
|
||||
|
||||
#
|
||||
# Special thanks to: http://www.bbsinc.com/iso8859.html
|
||||
#
|
||||
|
||||
default _
|
||||
start
|
||||
|
||||
#
|
||||
# CP 1252
|
||||
#
|
||||
|
||||
0x85 ... # HORIZONTAL ELLIPSIS
|
||||
0x88 ^ # MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
0x8A S # LATIN CAPITAL LETTER S WITH CARON
|
||||
0x8C OE # LATIN CAPITAL LIGATURE OE
|
||||
|
||||
0x96 - # EN DASH
|
||||
0x97 - # EM DASH
|
||||
0x99 _tm_ # TRADE MARK SIGN
|
||||
0x9A s # LATIN SMALL LETTER S WITH CARON
|
||||
0x9C oe # LATIN SMALL LIGATURE OE
|
||||
0x9F Y # LATIN CAPITAL LETTER Y WITH DIAERESIS
|
||||
|
||||
#
|
||||
# Latin 1
|
||||
#
|
||||
|
||||
0xA2 _cent_
|
||||
0xA3 _pound_
|
||||
0xA5 _yen_
|
||||
0xA9 _copy_
|
||||
0xAE _reg_
|
||||
|
||||
0xB2 2
|
||||
0xB3 3
|
||||
0xB5 b
|
||||
0xB6 _pp_
|
||||
0xB9 1
|
||||
|
||||
0xC0 A # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0xC1 A # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0xC2 A # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0xC3 A # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0xC4 A # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0xC5 A # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0xC6 AE # LATIN CAPITAL LETTER AE
|
||||
0xC7 C # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0xC8 E # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0xC9 E # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0xCA E # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0xCB E # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0xCC I # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0xCD I # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0xCE I # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0xCF I # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
|
||||
0xD0 TH # LATIN CAPITAL LETTER ETH (Icelandic)
|
||||
0xD1 N # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0xD2 O # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0xD3 O # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0xD4 O # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0xD5 O # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0xD6 O # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0xD7 x # MULTIPLICATION SIGN
|
||||
0xD8 O # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0xD9 U # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0xDA U # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0xDB U # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0xDC U # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0xDD Y # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0xDE TH # LATIN CAPITAL LETTER THORN (Icelandic)
|
||||
0xDF ss # LATIN SMALL LETTER SHARP S (German)
|
||||
|
||||
0xE0 a # LATIN SMALL LETTER A WITH GRAVE
|
||||
0xE1 a # LATIN SMALL LETTER A WITH ACUTE
|
||||
0xE2 a # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0xE3 a # LATIN SMALL LETTER A WITH TILDE
|
||||
0xE4 a # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0xE5 a # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0xE6 ae # LATIN SMALL LETTER AE
|
||||
0xE7 c # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0xE8 e # LATIN SMALL LETTER E WITH GRAVE
|
||||
0xE9 e # LATIN SMALL LETTER E WITH ACUTE
|
||||
0xEA e # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0xEB e # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0xEC i # LATIN SMALL LETTER I WITH GRAVE
|
||||
0xED i # LATIN SMALL LETTER I WITH ACUTE
|
||||
0xEE i # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0xEF i # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
|
||||
0xF0 th # LATIN SMALL LETTER ETH (Icelandic)
|
||||
0xF1 n # LATIN SMALL LETTER N WITH TILDE
|
||||
0xF2 o # LATIN SMALL LETTER O WITH GRAVE
|
||||
0xF3 o # LATIN SMALL LETTER O WITH ACUTE
|
||||
0xF4 o # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0xF5 o # LATIN SMALL LETTER O WITH TILDE
|
||||
0xF6 o # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0xF8 o # LATIN SMALL LETTER O WITH STROKE
|
||||
0xF9 u # LATIN SMALL LETTER U WITH GRAVE
|
||||
0xFA u # LATIN SMALL LETTER U WITH ACUTE
|
||||
0xFB u # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0xFC u # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0xFD y # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0xFE th # LATIN SMALL LETTER THORN (Icelandic)
|
||||
0xFF y # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
|
||||
end
|
||||
|
||||
#
|
||||
# German specific conversions
|
||||
#
|
||||
|
||||
start de
|
||||
|
||||
0xC4 AE # LATIN CAPITAL LETTER A WITH UMLAUT
|
||||
0xD6 OE # LATIN CAPITAL LETTER O WITH UMLAUT
|
||||
0xDC UE # LATIN CAPITAL LETTER U WITH UMLAUT
|
||||
|
||||
0xE4 ae # LATIN SMALL LETTER A WITH UMLAUT
|
||||
0xF6 oe # LATIN SMALL LETTER O WITH UMLAUT
|
||||
0xFC ue # LATIN SMALL LETTER U WITH UMLAUT
|
||||
|
||||
end
|
||||
|
136
detox/latest/table/safe.tbl.sample
Normal file
136
detox/latest/table/safe.tbl.sample
Normal file
@ -0,0 +1,136 @@
|
||||
# This file is part of the Detox package.
|
||||
#
|
||||
# Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
#
|
||||
# For the full copyright and license information, please view the LICENSE
|
||||
# file that was distributed with this source code.
|
||||
|
||||
start
|
||||
|
||||
#
|
||||
# Alphanumeric
|
||||
#
|
||||
|
||||
0x30 0
|
||||
0x31 1
|
||||
0x32 2
|
||||
0x33 3
|
||||
0x34 4
|
||||
0x35 5
|
||||
0x36 6
|
||||
0x37 7
|
||||
0x38 8
|
||||
0x39 9
|
||||
|
||||
0x41 A
|
||||
0x42 B
|
||||
0x43 C
|
||||
0x44 D
|
||||
0x45 E
|
||||
0x46 F
|
||||
0x47 G
|
||||
0x48 H
|
||||
0x49 I
|
||||
0x4a J
|
||||
0x4b K
|
||||
0x4c L
|
||||
0x4d M
|
||||
0x4e N
|
||||
0x4f O
|
||||
0x50 P
|
||||
0x51 Q
|
||||
0x52 R
|
||||
0x53 S
|
||||
0x54 T
|
||||
0x55 U
|
||||
0x56 V
|
||||
0x57 W
|
||||
0x58 X
|
||||
0x59 Y
|
||||
0x5a Z
|
||||
|
||||
|
||||
0x61 a
|
||||
0x62 b
|
||||
0x63 c
|
||||
0x64 d
|
||||
0x65 e
|
||||
0x66 f
|
||||
0x67 g
|
||||
0x68 h
|
||||
0x69 i
|
||||
0x6a j
|
||||
0x6b k
|
||||
0x6c l
|
||||
0x6d m
|
||||
0x6e n
|
||||
0x6f o
|
||||
0x70 p
|
||||
0x71 q
|
||||
0x72 r
|
||||
0x73 s
|
||||
0x74 t
|
||||
0x75 u
|
||||
0x76 v
|
||||
0x77 w
|
||||
0x78 x
|
||||
0x79 y
|
||||
0x7a z
|
||||
|
||||
#
|
||||
# Chars to leave alone
|
||||
#
|
||||
|
||||
0x23 '#'
|
||||
0x25 %
|
||||
0x2b +
|
||||
0x2c ,
|
||||
0x2d -
|
||||
0x2e .
|
||||
0x3d =
|
||||
0x5e ^
|
||||
0x5f _
|
||||
0x7e ~
|
||||
|
||||
#
|
||||
# Chars to translate to _
|
||||
#
|
||||
|
||||
0x09 _ # tab
|
||||
0x0A _ # new line
|
||||
0x0D _ # carriage return
|
||||
0x20 _ # space
|
||||
0x21 _ # !
|
||||
0x22 _ # "
|
||||
0x24 _ # $
|
||||
0x27 _ # '
|
||||
0x2a _ # *
|
||||
0x2f _ # /
|
||||
0x3a _ # :
|
||||
0x3b _ # ;
|
||||
0x3c _ # <
|
||||
0x3e _ # >
|
||||
0x3f _ # ?
|
||||
0x40 _ # @
|
||||
0x5c _ # \
|
||||
0x60 _ # `
|
||||
0x7c _ # |
|
||||
|
||||
#
|
||||
# Chars to translate to -
|
||||
#
|
||||
|
||||
0x28 - # (
|
||||
0x29 - # )
|
||||
0x5b - # [
|
||||
0x5d - # ]
|
||||
0x7b - # {
|
||||
0x7d - # }
|
||||
|
||||
#
|
||||
# Other
|
||||
#
|
||||
|
||||
0x26 _and_ # &
|
||||
|
||||
end
|
386
detox/latest/table/unicode.tbl.sample
Normal file
386
detox/latest/table/unicode.tbl.sample
Normal file
@ -0,0 +1,386 @@
|
||||
# This file is part of the Detox package.
|
||||
#
|
||||
# Copyright (c) Doug Harple <detox.dharple@gmail.com>
|
||||
#
|
||||
# For the full copyright and license information, please view the LICENSE
|
||||
# file that was distributed with this source code.
|
||||
|
||||
#
|
||||
# Special thanks to: http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
|
||||
#
|
||||
# Used for translating Icelandic:
|
||||
# http://www.bartleby.com/65/th/Thingval.html
|
||||
# http://www.wordiq.com/definition/Thorn_%28letter%29
|
||||
# http://www.wordiq.com/definition/Edh
|
||||
#
|
||||
# Greenlandic:
|
||||
# http://std.dkuug.dk/cultreg/registrations/narrative/da_DK,_4.3.html
|
||||
#
|
||||
# Sami:
|
||||
# http://www.wordiq.com/definition/Sami_languages
|
||||
#
|
||||
# Germanic:
|
||||
# http://www.wordiq.com/definition/%DF
|
||||
#
|
||||
|
||||
default _
|
||||
|
||||
start
|
||||
|
||||
#
|
||||
# Basic Latin - This is a subset of the basic 7-bit ASCII table, with unsafe
|
||||
# characters removed.
|
||||
#
|
||||
|
||||
0x0023 # # NUMBER SIGN
|
||||
0x0025 % # PERCENT SIGN
|
||||
0x0026 _and_ # AMPERSAND
|
||||
0x002B + # PLUS SIGN
|
||||
0x002C , # COMMA
|
||||
0x002D - # HYPHEN-MINUS
|
||||
0x002E . # FULL STOP
|
||||
|
||||
0x0030 0 # DIGIT ZERO
|
||||
0x0031 1 # DIGIT ONE
|
||||
0x0032 2 # DIGIT TWO
|
||||
0x0033 3 # DIGIT THREE
|
||||
0x0034 4 # DIGIT FOUR
|
||||
0x0035 5 # DIGIT FIVE
|
||||
0x0036 6 # DIGIT SIX
|
||||
0x0037 7 # DIGIT SEVEN
|
||||
0x0038 8 # DIGIT EIGHT
|
||||
0x0039 9 # DIGIT NINE
|
||||
0x003D = # EQUALS SIGN
|
||||
|
||||
0x0041 A # LATIN CAPITAL LETTER A
|
||||
0x0042 B # LATIN CAPITAL LETTER B
|
||||
0x0043 C # LATIN CAPITAL LETTER C
|
||||
0x0044 D # LATIN CAPITAL LETTER D
|
||||
0x0045 E # LATIN CAPITAL LETTER E
|
||||
0x0046 F # LATIN CAPITAL LETTER F
|
||||
0x0047 G # LATIN CAPITAL LETTER G
|
||||
0x0048 H # LATIN CAPITAL LETTER H
|
||||
0x0049 I # LATIN CAPITAL LETTER I
|
||||
0x004A J # LATIN CAPITAL LETTER J
|
||||
0x004B K # LATIN CAPITAL LETTER K
|
||||
0x004C L # LATIN CAPITAL LETTER L
|
||||
0x004D M # LATIN CAPITAL LETTER M
|
||||
0x004E N # LATIN CAPITAL LETTER N
|
||||
0x004F O # LATIN CAPITAL LETTER O
|
||||
|
||||
0x0050 P # LATIN CAPITAL LETTER P
|
||||
0x0051 Q # LATIN CAPITAL LETTER Q
|
||||
0x0052 R # LATIN CAPITAL LETTER R
|
||||
0x0053 S # LATIN CAPITAL LETTER S
|
||||
0x0054 T # LATIN CAPITAL LETTER T
|
||||
0x0055 U # LATIN CAPITAL LETTER U
|
||||
0x0056 V # LATIN CAPITAL LETTER V
|
||||
0x0057 W # LATIN CAPITAL LETTER W
|
||||
0x0058 X # LATIN CAPITAL LETTER X
|
||||
0x0059 Y # LATIN CAPITAL LETTER Y
|
||||
0x005A Z # LATIN CAPITAL LETTER Z
|
||||
0x005E ^ # CIRCUMFLEX ACCENT
|
||||
|
||||
0x0061 a # LATIN SMALL LETTER A
|
||||
0x0062 b # LATIN SMALL LETTER B
|
||||
0x0063 c # LATIN SMALL LETTER C
|
||||
0x0064 d # LATIN SMALL LETTER D
|
||||
0x0065 e # LATIN SMALL LETTER E
|
||||
0x0066 f # LATIN SMALL LETTER F
|
||||
0x0067 g # LATIN SMALL LETTER G
|
||||
0x0068 h # LATIN SMALL LETTER H
|
||||
0x0069 i # LATIN SMALL LETTER I
|
||||
0x006A j # LATIN SMALL LETTER J
|
||||
0x006B k # LATIN SMALL LETTER K
|
||||
0x006C l # LATIN SMALL LETTER L
|
||||
0x006D m # LATIN SMALL LETTER M
|
||||
0x006E n # LATIN SMALL LETTER N
|
||||
0x006F o # LATIN SMALL LETTER O
|
||||
|
||||
0x0070 p # LATIN SMALL LETTER P
|
||||
0x0071 q # LATIN SMALL LETTER Q
|
||||
0x0072 r # LATIN SMALL LETTER R
|
||||
0x0073 s # LATIN SMALL LETTER S
|
||||
0x0074 t # LATIN SMALL LETTER T
|
||||
0x0075 u # LATIN SMALL LETTER U
|
||||
0x0076 v # LATIN SMALL LETTER V
|
||||
0x0077 w # LATIN SMALL LETTER W
|
||||
0x0078 x # LATIN SMALL LETTER X
|
||||
0x0079 y # LATIN SMALL LETTER Y
|
||||
0x007A z # LATIN SMALL LETTER Z
|
||||
0x007E ~ # TILDE
|
||||
|
||||
#
|
||||
# CP 1252
|
||||
#
|
||||
|
||||
0x0085 ... # HORIZONTAL ELLIPSIS
|
||||
0x0088 ^ # MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
0x008A S # LATIN CAPITAL LETTER S WITH CARON
|
||||
0x008C OE # LATIN CAPITAL LIGATURE OE
|
||||
|
||||
0x0096 - # EN DASH
|
||||
0x0097 - # EM DASH
|
||||
0x0099 _tm_ # TRADE MARK SIGN
|
||||
0x009A s # LATIN SMALL LETTER S WITH CARON
|
||||
0x009C oe # LATIN SMALL LIGATURE OE
|
||||
0x009F Y # LATIN CAPITAL LETTER Y WITH DIAERESIS
|
||||
|
||||
#
|
||||
# Latin 1
|
||||
#
|
||||
|
||||
0x00A2 _cent_
|
||||
0x00A3 _pound_
|
||||
0x00A5 _yen_
|
||||
0x00A9 _copy_
|
||||
0x00AE _reg_
|
||||
|
||||
0x00B2 2
|
||||
0x00B3 3
|
||||
0x00B5 b
|
||||
0x00B6 _pp_
|
||||
0x00B9 1
|
||||
|
||||
0x00C0 A # LATIN CAPITAL LETTER A WITH GRAVE
|
||||
0x00C1 A # LATIN CAPITAL LETTER A WITH ACUTE
|
||||
0x00C2 A # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
|
||||
0x00C3 A # LATIN CAPITAL LETTER A WITH TILDE
|
||||
0x00C4 A # LATIN CAPITAL LETTER A WITH DIAERESIS
|
||||
0x00C5 A # LATIN CAPITAL LETTER A WITH RING ABOVE
|
||||
0x00C6 AE # LATIN CAPITAL LETTER AE
|
||||
0x00C7 C # LATIN CAPITAL LETTER C WITH CEDILLA
|
||||
0x00C8 E # LATIN CAPITAL LETTER E WITH GRAVE
|
||||
0x00C9 E # LATIN CAPITAL LETTER E WITH ACUTE
|
||||
0x00CA E # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
|
||||
0x00CB E # LATIN CAPITAL LETTER E WITH DIAERESIS
|
||||
0x00CC I # LATIN CAPITAL LETTER I WITH GRAVE
|
||||
0x00CD I # LATIN CAPITAL LETTER I WITH ACUTE
|
||||
0x00CE I # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
|
||||
0x00CF I # LATIN CAPITAL LETTER I WITH DIAERESIS
|
||||
|
||||
0x00D0 TH # LATIN CAPITAL LETTER ETH (Icelandic)
|
||||
0x00D1 N # LATIN CAPITAL LETTER N WITH TILDE
|
||||
0x00D2 O # LATIN CAPITAL LETTER O WITH GRAVE
|
||||
0x00D3 O # LATIN CAPITAL LETTER O WITH ACUTE
|
||||
0x00D4 O # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
|
||||
0x00D5 O # LATIN CAPITAL LETTER O WITH TILDE
|
||||
0x00D6 O # LATIN CAPITAL LETTER O WITH DIAERESIS
|
||||
0x00D7 x # MULTIPLICATION SIGN
|
||||
0x00D8 O # LATIN CAPITAL LETTER O WITH STROKE
|
||||
0x00D9 U # LATIN CAPITAL LETTER U WITH GRAVE
|
||||
0x00DA U # LATIN CAPITAL LETTER U WITH ACUTE
|
||||
0x00DB U # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
|
||||
0x00DC U # LATIN CAPITAL LETTER U WITH DIAERESIS
|
||||
0x00DD Y # LATIN CAPITAL LETTER Y WITH ACUTE
|
||||
0x00DE TH # LATIN CAPITAL LETTER THORN (Icelandic)
|
||||
0x00DF ss # LATIN SMALL LETTER SHARP S (German)
|
||||
|
||||
0x00E0 a # LATIN SMALL LETTER A WITH GRAVE
|
||||
0x00E1 a # LATIN SMALL LETTER A WITH ACUTE
|
||||
0x00E2 a # LATIN SMALL LETTER A WITH CIRCUMFLEX
|
||||
0x00E3 a # LATIN SMALL LETTER A WITH TILDE
|
||||
0x00E4 a # LATIN SMALL LETTER A WITH DIAERESIS
|
||||
0x00E5 a # LATIN SMALL LETTER A WITH RING ABOVE
|
||||
0x00E6 ae # LATIN SMALL LETTER AE
|
||||
0x00E7 c # LATIN SMALL LETTER C WITH CEDILLA
|
||||
0x00E8 e # LATIN SMALL LETTER E WITH GRAVE
|
||||
0x00E9 e # LATIN SMALL LETTER E WITH ACUTE
|
||||
0x00EA e # LATIN SMALL LETTER E WITH CIRCUMFLEX
|
||||
0x00EB e # LATIN SMALL LETTER E WITH DIAERESIS
|
||||
0x00EC i # LATIN SMALL LETTER I WITH GRAVE
|
||||
0x00ED i # LATIN SMALL LETTER I WITH ACUTE
|
||||
0x00EE i # LATIN SMALL LETTER I WITH CIRCUMFLEX
|
||||
0x00EF i # LATIN SMALL LETTER I WITH DIAERESIS
|
||||
|
||||
0x00F0 th # LATIN SMALL LETTER ETH (Icelandic)
|
||||
0x00F1 n # LATIN SMALL LETTER N WITH TILDE
|
||||
0x00F2 o # LATIN SMALL LETTER O WITH GRAVE
|
||||
0x00F3 o # LATIN SMALL LETTER O WITH ACUTE
|
||||
0x00F4 o # LATIN SMALL LETTER O WITH CIRCUMFLEX
|
||||
0x00F5 o # LATIN SMALL LETTER O WITH TILDE
|
||||
0x00F6 o # LATIN SMALL LETTER O WITH DIAERESIS
|
||||
0x00F8 o # LATIN SMALL LETTER O WITH STROKE
|
||||
0x00F9 u # LATIN SMALL LETTER U WITH GRAVE
|
||||
0x00FA u # LATIN SMALL LETTER U WITH ACUTE
|
||||
0x00FB u # LATIN SMALL LETTER U WITH CIRCUMFLEX
|
||||
0x00FC u # LATIN SMALL LETTER U WITH DIAERESIS
|
||||
0x00FD y # LATIN SMALL LETTER Y WITH ACUTE
|
||||
0x00FE th # LATIN SMALL LETTER THORN (Icelandic)
|
||||
0x00FF y # LATIN SMALL LETTER Y WITH DIAERESIS
|
||||
|
||||
#
|
||||
# Latin Extended A
|
||||
#
|
||||
|
||||
0x0100 A # LATIN CAPITAL LETTER A WITH MACRON
|
||||
0x0101 a # LATIN SMALL LETTER A WITH MACRON
|
||||
0x0102 A # LATIN CAPITAL LETTER A WITH BREVE
|
||||
0x0103 a # LATIN SMALL LETTER A WITH BREVE
|
||||
0x0104 A # LATIN CAPITAL LETTER A WITH OGONEK
|
||||
0x0105 a # LATIN SMALL LETTER A WITH OGONEK
|
||||
0x0106 C # LATIN CAPITAL LETTER C WITH ACUTE
|
||||
0x0107 c # LATIN SMALL LETTER C WITH ACUTE
|
||||
0x0108 C # LATIN CAPITAL LETTER C WITH CIRCUMFLEX
|
||||
0x0109 c # LATIN SMALL LETTER C WITH CIRCUMFLEX
|
||||
0x010A C # LATIN CAPITAL LETTER C WITH DOT ABOVE
|
||||
0x010B c # LATIN SMALL LETTER C WITH DOT ABOVE
|
||||
0x010C C # LATIN CAPITAL LETTER C WITH CARON
|
||||
0x010D c # LATIN SMALL LETTER C WITH CARON
|
||||
0x010E D # LATIN CAPITAL LETTER D WITH CARON
|
||||
0x010F d # LATIN SMALL LETTER D WITH CARON
|
||||
|
||||
0x0110 D # LATIN CAPITAL LETTER D WITH STROKE
|
||||
0x0111 d # LATIN SMALL LETTER D WITH STROKE
|
||||
0x0112 E # LATIN CAPITAL LETTER E WITH MACRON
|
||||
0x0113 e # LATIN SMALL LETTER E WITH MACRON
|
||||
0x0114 E # LATIN CAPITAL LETTER E WITH BREVE
|
||||
0x0115 e # LATIN SMALL LETTER E WITH BREVE
|
||||
0x0116 E # LATIN CAPITAL LETTER E WITH DOT ABOVE
|
||||
0x0117 e # LATIN SMALL LETTER E WITH DOT ABOVE
|
||||
0x0118 E # LATIN CAPITAL LETTER E WITH OGONEK
|
||||
0x0119 e # LATIN SMALL LETTER E WITH OGONEK
|
||||
0x011A E # LATIN CAPITAL LETTER E WITH CARON
|
||||
0x011B e # LATIN SMALL LETTER E WITH CARON
|
||||
0x011C G # LATIN CAPITAL LETTER G WITH CIRCUMFLEX
|
||||
0x011D g # LATIN SMALL LETTER G WITH CIRCUMFLEX
|
||||
0x011E G # LATIN CAPITAL LETTER G WITH BREVE
|
||||
0x011F g # LATIN SMALL LETTER G WITH BREVE
|
||||
|
||||
0x0120 G # LATIN CAPITAL LETTER G WITH DOT ABOVE
|
||||
0x0121 g # LATIN SMALL LETTER G WITH DOT ABOVE
|
||||
0x0122 G # LATIN CAPITAL LETTER G WITH CEDILLA
|
||||
0x0123 g # LATIN SMALL LETTER G WITH CEDILLA
|
||||
0x0124 H # LATIN CAPITAL LETTER H WITH CIRCUMFLEX
|
||||
0x0125 h # LATIN SMALL LETTER H WITH CIRCUMFLEX
|
||||
0x0126 H # LATIN CAPITAL LETTER H WITH STROKE
|
||||
0x0127 h # LATIN SMALL LETTER H WITH STROKE
|
||||
0x0128 I # LATIN CAPITAL LETTER I WITH TILDE
|
||||
0x0129 i # LATIN SMALL LETTER I WITH TILDE
|
||||
0x012A I # LATIN CAPITAL LETTER I WITH MACRON
|
||||
0x012B i # LATIN SMALL LETTER I WITH MACRON
|
||||
0x012C I # LATIN CAPITAL LETTER I WITH BREVE
|
||||
0x012D i # LATIN SMALL LETTER I WITH BREVE
|
||||
0x012E I # LATIN CAPITAL LETTER I WITH OGONEK
|
||||
0x012F i # LATIN SMALL LETTER I WITH OGONEK
|
||||
|
||||
0x0130 I # LATIN CAPITAL LETTER I WITH DOT ABOVE
|
||||
0x0131 i # LATIN SMALL LETTER DOTLESS I
|
||||
0x0132 IJ # LATIN CAPITAL LIGATURE IJ
|
||||
0x0133 ij # LATIN SMALL LIGATURE IJ
|
||||
0x0134 J # LATIN CAPITAL LETTER J WITH CIRCUMFLEX
|
||||
0x0135 j # LATIN SMALL LETTER J WITH CIRCUMFLEX
|
||||
0x0136 K # LATIN CAPITAL LETTER K WITH CEDILLA
|
||||
0x0137 k # LATIN SMALL LETTER K WITH CEDILLA
|
||||
0x0138 q # LATIN SMALL LETTER KRA (Greenlandic)
|
||||
0x0139 L # LATIN CAPITAL LETTER L WITH ACUTE
|
||||
0x013A l # LATIN SMALL LETTER L WITH ACUTE
|
||||
0x013B L # LATIN CAPITAL LETTER L WITH CEDILLA
|
||||
0x013C l # LATIN SMALL LETTER L WITH CEDILLA
|
||||
0x013D L # LATIN CAPITAL LETTER L WITH CARON
|
||||
0x013E l # LATIN SMALL LETTER L WITH CARON
|
||||
0x013F L # LATIN CAPITAL LETTER L WITH MIDDLE DOT
|
||||
|
||||
0x0140 l # LATIN SMALL LETTER L WITH MIDDLE DOT
|
||||
0x0141 L # LATIN CAPITAL LETTER L WITH STROKE
|
||||
0x0142 l # LATIN SMALL LETTER L WITH STROKE
|
||||
0x0143 N # LATIN CAPITAL LETTER N WITH ACUTE
|
||||
0x0144 n # LATIN SMALL LETTER N WITH ACUTE
|
||||
0x0145 N # LATIN CAPITAL LETTER N WITH CEDILLA
|
||||
0x0146 n # LATIN SMALL LETTER N WITH CEDILLA
|
||||
0x0147 N # LATIN CAPITAL LETTER N WITH CARON
|
||||
0x0148 n # LATIN SMALL LETTER N WITH CARON
|
||||
0x0149 n # LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
|
||||
0x014A NG # LATIN CAPITAL LETTER ENG (Sami)
|
||||
0x014B ng # LATIN SMALL LETTER ENG (Sami)
|
||||
0x014C O # LATIN CAPITAL LETTER O WITH MACRON
|
||||
0x014D o # LATIN SMALL LETTER O WITH MACRON
|
||||
0x014E O # LATIN CAPITAL LETTER O WITH BREVE
|
||||
0x014F o # LATIN SMALL LETTER O WITH BREVE
|
||||
|
||||
0x0150 O # LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
|
||||
0x0151 o # LATIN SMALL LETTER O WITH DOUBLE ACUTE
|
||||
0x0152 OE # LATIN CAPITAL LIGATURE OE
|
||||
0x0153 oe # LATIN SMALL LIGATURE OE
|
||||
0x0154 R # LATIN CAPITAL LETTER R WITH ACUTE
|
||||
0x0155 r # LATIN SMALL LETTER R WITH ACUTE
|
||||
0x0156 R # LATIN CAPITAL LETTER R WITH CEDILLA
|
||||
0x0157 r # LATIN SMALL LETTER R WITH CEDILLA
|
||||
0x0158 R # LATIN CAPITAL LETTER R WITH CARON
|
||||
0x0159 r # LATIN SMALL LETTER R WITH CARON
|
||||
0x015A S # LATIN CAPITAL LETTER S WITH ACUTE
|
||||
0x015B s # LATIN SMALL LETTER S WITH ACUTE
|
||||
0x015C S # LATIN CAPITAL LETTER S WITH CIRCUMFLEX
|
||||
0x015D s # LATIN SMALL LETTER S WITH CIRCUMFLEX
|
||||
0x015E S # LATIN CAPITAL LETTER S WITH CEDILLA
|
||||
0x015F s # LATIN SMALL LETTER S WITH CEDILLA
|
||||
|
||||
0x0160 S # LATIN CAPITAL LETTER S WITH CARON
|
||||
0x0161 s # LATIN SMALL LETTER S WITH CARON
|
||||
0x0162 T # LATIN CAPITAL LETTER T WITH CEDILLA
|
||||
0x0163 t # LATIN SMALL LETTER T WITH CEDILLA
|
||||
0x0164 T # LATIN CAPITAL LETTER T WITH CARON
|
||||
0x0165 t # LATIN SMALL LETTER T WITH CARON
|
||||
0x0166 T # LATIN CAPITAL LETTER T WITH STROKE
|
||||
0x0167 t # LATIN SMALL LETTER T WITH STROKE
|
||||
0x0168 U # LATIN CAPITAL LETTER U WITH TILDE
|
||||
0x0169 u # LATIN SMALL LETTER U WITH TILDE
|
||||
0x016A U # LATIN CAPITAL LETTER U WITH MACRON
|
||||
0x016B u # LATIN SMALL LETTER U WITH MACRON
|
||||
0x016C U # LATIN CAPITAL LETTER U WITH BREVE
|
||||
0x016D u # LATIN SMALL LETTER U WITH BREVE
|
||||
0x016E U # LATIN CAPITAL LETTER U WITH RING ABOVE
|
||||
0x016F u # LATIN SMALL LETTER U WITH RING ABOVE
|
||||
|
||||
0x0170 U # LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
|
||||
0x0171 u # LATIN SMALL LETTER U WITH DOUBLE ACUTE
|
||||
0x0172 U # LATIN CAPITAL LETTER U WITH OGONEK
|
||||
0x0173 u # LATIN SMALL LETTER U WITH OGONEK
|
||||
0x0174 W # LATIN CAPITAL LETTER W WITH CIRCUMFLEX
|
||||
0x0175 w # LATIN SMALL LETTER W WITH CIRCUMFLEX
|
||||
0x0176 Y # LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
|
||||
0x0177 y # LATIN SMALL LETTER Y WITH CIRCUMFLEX
|
||||
0x0178 Y # LATIN CAPITAL LETTER Y WITH DIAERESIS
|
||||
0x0179 Z # LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
0x017A z # LATIN SMALL LETTER Z WITH ACUTE
|
||||
0x017B Z # LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
||||
0x017C z # LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
0x017D Z # LATIN CAPITAL LETTER Z WITH CARON
|
||||
0x017E z # LATIN SMALL LETTER Z WITH CARON
|
||||
0x017F s # LATIN SMALL LETTER LONG S
|
||||
|
||||
#
|
||||
# Dunno where
|
||||
#
|
||||
|
||||
0x02C6 ^ # MODIFIER LETTER CIRCUMFLEX ACCENT
|
||||
|
||||
0x2010 - # HYPHEN
|
||||
0x2011 - # NON-BREAKING HYPHEN
|
||||
0x2012 - # FIGURE DASH
|
||||
0x2013 - # EN DASH
|
||||
0x2014 - # EM DASH
|
||||
0x2015 - # HORIZONTAL BAR
|
||||
|
||||
0x2026 ... # HORIZONTAL ELLIPSIS
|
||||
|
||||
0x2122 _tm_ # TRADE MARK SIGN
|
||||
|
||||
end
|
||||
|
||||
#
|
||||
# German specific conversions
|
||||
#
|
||||
|
||||
start de
|
||||
|
||||
0x00C4 AE # LATIN CAPITAL LETTER A WITH UMLAUT
|
||||
0x00D6 OE # LATIN CAPITAL LETTER O WITH UMLAUT
|
||||
0x00DC UE # LATIN CAPITAL LETTER U WITH UMLAUT
|
||||
|
||||
0x00E4 ae # LATIN SMALL LETTER A WITH UMLAUT
|
||||
0x00F6 oe # LATIN SMALL LETTER O WITH UMLAUT
|
||||
0x00FC ue # LATIN SMALL LETTER U WITH UMLAUT
|
||||
|
||||
end
|
||||
|
247
detox/latest/ylwrap
Executable file
247
detox/latest/ylwrap
Executable file
@ -0,0 +1,247 @@
|
||||
#! /bin/sh
|
||||
# ylwrap - wrapper for lex/yacc invocations.
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1996-2018 Free Software Foundation, Inc.
|
||||
#
|
||||
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||
#
|
||||
# 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, 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, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# This file is maintained in Automake, please report
|
||||
# bugs to <bug-automake@gnu.org> or send patches to
|
||||
# <automake-patches@gnu.org>.
|
||||
|
||||
get_dirname ()
|
||||
{
|
||||
case $1 in
|
||||
*/*|*\\*) printf '%s\n' "$1" | sed -e 's|\([\\/]\)[^\\/]*$|\1|';;
|
||||
# Otherwise, we want the empty string (not ".").
|
||||
esac
|
||||
}
|
||||
|
||||
# guard FILE
|
||||
# ----------
|
||||
# The CPP macro used to guard inclusion of FILE.
|
||||
guard ()
|
||||
{
|
||||
printf '%s\n' "$1" \
|
||||
| sed \
|
||||
-e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
|
||||
-e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g' \
|
||||
-e 's/__*/_/g'
|
||||
}
|
||||
|
||||
# quote_for_sed [STRING]
|
||||
# ----------------------
|
||||
# Return STRING (or stdin) quoted to be used as a sed pattern.
|
||||
quote_for_sed ()
|
||||
{
|
||||
case $# in
|
||||
0) cat;;
|
||||
1) printf '%s\n' "$1";;
|
||||
esac \
|
||||
| sed -e 's|[][\\.*]|\\&|g'
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
'')
|
||||
echo "$0: No files given. Try '$0 --help' for more information." 1>&2
|
||||
exit 1
|
||||
;;
|
||||
--basedir)
|
||||
basedir=$2
|
||||
shift 2
|
||||
;;
|
||||
-h|--h*)
|
||||
cat <<\EOF
|
||||
Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]...
|
||||
|
||||
Wrapper for lex/yacc invocations, renaming files as desired.
|
||||
|
||||
INPUT is the input file
|
||||
OUTPUT is one file PROG generates
|
||||
DESIRED is the file we actually want instead of OUTPUT
|
||||
PROGRAM is program to run
|
||||
ARGS are passed to PROG
|
||||
|
||||
Any number of OUTPUT,DESIRED pairs may be used.
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v|--v*)
|
||||
echo "ylwrap $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
# The input.
|
||||
input=$1
|
||||
shift
|
||||
# We'll later need for a correct munging of "#line" directives.
|
||||
input_sub_rx=`get_dirname "$input" | quote_for_sed`
|
||||
case $input in
|
||||
[\\/]* | ?:[\\/]*)
|
||||
# Absolute path; do nothing.
|
||||
;;
|
||||
*)
|
||||
# Relative path. Make it absolute.
|
||||
input=`pwd`/$input
|
||||
;;
|
||||
esac
|
||||
input_rx=`get_dirname "$input" | quote_for_sed`
|
||||
|
||||
# Since DOS filename conventions don't allow two dots,
|
||||
# the DOS version of Bison writes out y_tab.c instead of y.tab.c
|
||||
# and y_tab.h instead of y.tab.h. Test to see if this is the case.
|
||||
y_tab_nodot=false
|
||||
if test -f y_tab.c || test -f y_tab.h; then
|
||||
y_tab_nodot=true
|
||||
fi
|
||||
|
||||
# The parser itself, the first file, is the destination of the .y.c
|
||||
# rule in the Makefile.
|
||||
parser=$1
|
||||
|
||||
# A sed program to s/FROM/TO/g for all the FROM/TO so that, for
|
||||
# instance, we rename #include "y.tab.h" into #include "parse.h"
|
||||
# during the conversion from y.tab.c to parse.c.
|
||||
sed_fix_filenames=
|
||||
|
||||
# Also rename header guards, as Bison 2.7 for instance uses its header
|
||||
# guard in its implementation file.
|
||||
sed_fix_header_guards=
|
||||
|
||||
while test $# -ne 0; do
|
||||
if test x"$1" = x"--"; then
|
||||
shift
|
||||
break
|
||||
fi
|
||||
from=$1
|
||||
# Handle y_tab.c and y_tab.h output by DOS
|
||||
if $y_tab_nodot; then
|
||||
case $from in
|
||||
"y.tab.c") from=y_tab.c;;
|
||||
"y.tab.h") from=y_tab.h;;
|
||||
esac
|
||||
fi
|
||||
shift
|
||||
to=$1
|
||||
shift
|
||||
sed_fix_filenames="${sed_fix_filenames}s|"`quote_for_sed "$from"`"|$to|g;"
|
||||
sed_fix_header_guards="${sed_fix_header_guards}s|"`guard "$from"`"|"`guard "$to"`"|g;"
|
||||
done
|
||||
|
||||
# The program to run.
|
||||
prog=$1
|
||||
shift
|
||||
# Make any relative path in $prog absolute.
|
||||
case $prog in
|
||||
[\\/]* | ?:[\\/]*) ;;
|
||||
*[\\/]*) prog=`pwd`/$prog ;;
|
||||
esac
|
||||
|
||||
dirname=ylwrap$$
|
||||
do_exit="cd '`pwd`' && rm -rf $dirname > /dev/null 2>&1;"' (exit $ret); exit $ret'
|
||||
trap "ret=129; $do_exit" 1
|
||||
trap "ret=130; $do_exit" 2
|
||||
trap "ret=141; $do_exit" 13
|
||||
trap "ret=143; $do_exit" 15
|
||||
mkdir $dirname || exit 1
|
||||
|
||||
cd $dirname
|
||||
|
||||
case $# in
|
||||
0) "$prog" "$input" ;;
|
||||
*) "$prog" "$@" "$input" ;;
|
||||
esac
|
||||
ret=$?
|
||||
|
||||
if test $ret -eq 0; then
|
||||
for from in *
|
||||
do
|
||||
to=`printf '%s\n' "$from" | sed "$sed_fix_filenames"`
|
||||
if test -f "$from"; then
|
||||
# If $2 is an absolute path name, then just use that,
|
||||
# otherwise prepend '../'.
|
||||
case $to in
|
||||
[\\/]* | ?:[\\/]*) target=$to;;
|
||||
*) target=../$to;;
|
||||
esac
|
||||
|
||||
# Do not overwrite unchanged header files to avoid useless
|
||||
# recompilations. Always update the parser itself: it is the
|
||||
# destination of the .y.c rule in the Makefile. Divert the
|
||||
# output of all other files to a temporary file so we can
|
||||
# compare them to existing versions.
|
||||
if test $from != $parser; then
|
||||
realtarget=$target
|
||||
target=tmp-`printf '%s\n' "$target" | sed 's|.*[\\/]||g'`
|
||||
fi
|
||||
|
||||
# Munge "#line" or "#" directives. Don't let the resulting
|
||||
# debug information point at an absolute srcdir. Use the real
|
||||
# output file name, not yy.lex.c for instance. Adjust the
|
||||
# include guards too.
|
||||
sed -e "/^#/!b" \
|
||||
-e "s|$input_rx|$input_sub_rx|" \
|
||||
-e "$sed_fix_filenames" \
|
||||
-e "$sed_fix_header_guards" \
|
||||
"$from" >"$target" || ret=$?
|
||||
|
||||
# Check whether files must be updated.
|
||||
if test "$from" != "$parser"; then
|
||||
if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then
|
||||
echo "$to is unchanged"
|
||||
rm -f "$target"
|
||||
else
|
||||
echo "updating $to"
|
||||
mv -f "$target" "$realtarget"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
# A missing file is only an error for the parser. This is a
|
||||
# blatant hack to let us support using "yacc -d". If -d is not
|
||||
# specified, don't fail when the header file is "missing".
|
||||
if test "$from" = "$parser"; then
|
||||
ret=1
|
||||
fi
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Remove the directory.
|
||||
cd ..
|
||||
rm -rf $dirname
|
||||
|
||||
exit $ret
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
Loading…
x
Reference in New Issue
Block a user