Commit 353dd4fe authored by serg@serg.mylan's avatar serg@serg.mylan

dbug: DBUG_EXECUTE_IF macro, build user manual automatically, document all features

charset2html moved from mysys to extra
ignore: new files added, garbage removed
parent b12dfea6
......@@ -9,6 +9,7 @@
*.lo
*.o
*.reject
*.so
*.spec
*/*_pure_*warnings
*/.pure
......@@ -26,24 +27,18 @@
.out
.snprj/*
.vimrc
50
=6
BUILD/compile-pentium-maintainer
BitKeeper/etc/config
BitKeeper/etc/csets
BitKeeper/etc/csets-in
BitKeeper/etc/csets-out
BitKeeper/etc/gone
BitKeeper/etc/level
BitKeeper/etc/pushed
BitKeeper/post-commit
BitKeeper/post-commit-manual
BitKeeper/tmp/*
BitKeeper/tmp/bkr3sAHD
BitKeeper/tmp/gone
COPYING
COPYING.LIB
Docs/#manual.texi#
Docs/INSTALL-BINARY
Docs/Images/myaccess-odbc.txt
Docs/Images/myaccess.txt
......@@ -67,7 +62,6 @@ Docs/internals_toc.html
Docs/manual.aux
Docs/manual.cp
Docs/manual.cps
Docs/manual.de.log
Docs/manual.dvi
Docs/manual.fn
Docs/manual.fns
......@@ -76,8 +70,6 @@ Docs/manual.ky
Docs/manual.log
Docs/manual.pdf
Docs/manual.pg
Docs/manual.texi.orig
Docs/manual.texi.rej
Docs/manual.toc
Docs/manual.tp
Docs/manual.txt
......@@ -98,17 +90,11 @@ Logs/*
MIRRORS
Makefile
Makefile.in
Makefile.in'
PENDING/*
TAGS
aclocal.m4
autom4te-2.53.cache/output.0
autom4te-2.53.cache/requests
autom4te-2.53.cache/traces.0
autom4te-2.53.cache/*
autom4te.cache/*
autom4te.cache/output.0
autom4te.cache/requests
autom4te.cache/traces.0
bdb/README
bdb/btree/btree_auto.c
bdb/build_unix/*
......@@ -153,13 +139,8 @@ bdb/db/crdel_auto.c
bdb/db/db_auto.c
bdb/dbinc_auto/*.*
bdb/dbreg/dbreg_auto.c
bdb/dist/autom4te-2.53.cache/output.0
bdb/dist/autom4te-2.53.cache/requests
bdb/dist/autom4te-2.53.cache/traces.0
bdb/dist/autom4te-2.53.cache/*
bdb/dist/autom4te.cache/*
bdb/dist/autom4te.cache/output.0
bdb/dist/autom4te.cache/requests
bdb/dist/autom4te.cache/traces.0
bdb/dist/config.hin
bdb/dist/configure
bdb/dist/tags
......@@ -238,20 +219,13 @@ bdb/test/include.tcl
bdb/test/logtrack.list
bdb/txn/txn_auto.c
binary/*
bkpull.log
bkpull.log.2
bkpull.log.3
bkpull.log.4
bkpull.log.5
bkpull.log.6
bkpush.log
bkpull.log*
bkpush.log*
build.log
build_tags.sh
client/insert_test
client/log_event.cc
client/log_event.h
client/mf_iocache.c
client/mf_iocache.cc
client/mysql
client/mysqladmin
client/mysqlbinlog
......@@ -262,11 +236,8 @@ client/mysqlmanager-pwgen
client/mysqlmanagerc
client/mysqlshow
client/mysqltest
client/mysys_priv.h
client/select_test
client/ssl_test
client/thimble
client/thread_test
client_test
cmd-line-utils/libedit/common.h
cmd-line-utils/libedit/makelist
......@@ -279,12 +250,20 @@ config.status
configure
configure.lineno
core
core.2430
core.*
db-*.*.*
dbug/dbug_analyze
dbug/example*.r
dbug/factorial
dbug/factorial.r
dbug/main.r
dbug/output*.r
dbug/user.ps
dbug/user.t
depcomp
emacs.h
extra/comp_err
extra/charset2html
extra/my_print_defaults
extra/mysql_install
extra/mysql_tzinfo_to_sql
......@@ -296,6 +275,7 @@ extra/resolveip
extra/tztime.cc
fcns.c
fcns.h
gdbinit
gmon.out
hardcopy.0
heap/hp_test1
......@@ -309,13 +289,8 @@ include/readline
include/readline/*.h
include/readline/readline.h
include/widec.h
innobase/autom4te-2.53.cache/output.0
innobase/autom4te-2.53.cache/requests
innobase/autom4te-2.53.cache/traces.0
innobase/autom4te-2.53.cache/*
innobase/autom4te.cache/*
innobase/autom4te.cache/output.0
innobase/autom4te.cache/requests
innobase/autom4te.cache/traces.0
innobase/configure.lineno
innobase/conftest.s1
innobase/conftest.subs
......@@ -435,6 +410,7 @@ libmysqld/sql_db.cc
libmysqld/sql_delete.cc
libmysqld/sql_derived.cc
libmysqld/sql_do.cc
libmysqld/sql_error.cc
libmysqld/sql_handler.cc
libmysqld/sql_help.cc
libmysqld/sql_insert.cc
......@@ -445,6 +421,7 @@ libmysqld/sql_manager.cc
libmysqld/sql_map.cc
libmysqld/sql_olap.cc
libmysqld/sql_parse.cc
libmysqld/sql_prepare.cc
libmysqld/sql_rename.cc
libmysqld/sql_repl.cc
libmysqld/sql_select.cc
......@@ -479,15 +456,6 @@ linked_server_sources
linked_tools_sources
locked
man/*.1
mit-pthreads/config.flags
mit-pthreads/include/bits
mit-pthreads/include/pthread/machdep.h
mit-pthreads/include/pthread/posix.h
mit-pthreads/include/sys
mit-pthreads/machdep.c
mit-pthreads/pg++
mit-pthreads/pgcc
mit-pthreads/syscall.S
myisam/FT1.MYD
myisam/FT1.MYI
myisam/ft_dump
......@@ -513,9 +481,6 @@ myisam/test1.MYD
myisam/test1.MYI
myisam/test2.MYD
myisam/test2.MYI
mysql-4.0.2-alpha-pc-linux-gnu-i686.tar.gz
mysql-4.0.2-alpha.tar.gz
mysql-max-4.0.2-alpha-pc-linux-gnu-i686.tar.gz
mysql-test/gmon.out
mysql-test/install_test_db
mysql-test/mysql-test-run
......@@ -539,12 +504,6 @@ mysql.proj
mysql_priv.h
mysqld.S
mysqld.sym
mysys/#mf_iocache.c#
mysys/charset2html
mysys/getopt.c
mysys/getopt1.c
mysys/main.cc
mysys/ste5KbMa
mysys/test_charset
mysys/test_dir
mysys/test_gethwaddr
......@@ -667,14 +626,6 @@ ndb/examples/ndbapi_example2/ndbapi_example2
ndb/examples/ndbapi_example3/ndbapi_example3
ndb/examples/ndbapi_example5/ndbapi_example5
ndb/examples/select_all/select_all
ndb/lib/libMGM_API.so
ndb/lib/libNDB_API.so
ndb/lib/libNDB_ODBC.so
ndb/lib/libNEWTON_API.so
ndb/lib/libNEWTON_BASICTEST_COMMON.so
ndb/lib/libREP_API.so
ndb/lib/libndbclient.so
ndb/lib/libndbclient_extra.so
ndb/src/common/mgmcommon/printConfig/*.d
ndb/src/cw/cpcd/ndb_cpcd
ndb/src/kernel/blocks/backup/restore/ndb_restore
......@@ -806,7 +757,6 @@ sql-bench/test-insert
sql-bench/test-select
sql-bench/test-transactions
sql-bench/test-wisconsin
sql/.gdbinit
sql/client.c
sql/gen_lex_hash
sql/gmon.out
......@@ -821,24 +771,12 @@ sql/mysqld
sql/mysqld-purecov
sql/mysqld-purify
sql/mysqld-quantify
sql/new.cc
sql/pack.c
sql/safe_to_cache_query.txt
sql/share/*.sys
sql/share/charsets/gmon.out
sql/share/gmon.out
sql/share/mysql
sql/share/norwegian-ny/errmsg.sys
sql/share/norwegian/errmsg.sys
sql/sql_select.cc.orig
sql/sql_yacc.cc
sql/sql_yacc.h
sql/sql_yacc.output
sql/sql_yacc.yy.orig
sql/test_time
sql/udf_example.so
sql_error.cc
sql_prepare.cc
stamp-h
stamp-h.in
stamp-h1
......@@ -930,10 +868,8 @@ tests/client_test
tests/connect_test
thread_test
tmp/*
tools/my_vsnprintf.c
tools/mysqlmanager
tools/mysqlmngd
tools/mysys_priv.h
vi.h
vio/test-ssl
vio/test-sslclient
......
......@@ -2861,12 +2861,10 @@ then
AC_DEFINE([THREAD], [1],
[Define if you want to have threaded code. This may be undef on client code])
# Avoid _PROGRAMS names
THREAD_LPROGRAMS="test_thr_alarm\$(EXEEXT) test_thr_lock\$(EXEEXT)"
AC_SUBST(THREAD_LPROGRAMS)
THREAD_LOBJECTS="thr_alarm.o thr_lock.o thr_mutex.o thr_rwlock.o my_pthread.o my_thr_init.o"
AC_SUBST(THREAD_LOBJECTS)
server_scripts="mysqld_safe mysql_install_db"
sql_server_dirs="strings dbug mysys extra regex"
sql_server_dirs="strings mysys dbug extra regex"
#
......
......@@ -15,43 +15,52 @@
# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
# MA 02111-1307, USA
INCLUDES = @MT_INCLUDES@ -I$(top_srcdir)/include
LDADD = libdbug.a ../strings/libmystrings.a
pkglib_LIBRARIES = libdbug.a
noinst_HEADERS = dbug_long.h
libdbug_a_SOURCES = dbug.c sanity.c
EXTRA_DIST = example1.c example2.c example3.c \
user.r monty.doc readme.prof \
main.c factorial.c dbug_analyze.c
INCLUDES = @MT_INCLUDES@ -I$(top_srcdir)/include
LDADD = libdbug.a ../mysys/libmysys.a ../strings/libmystrings.a
pkglib_LIBRARIES = libdbug.a
noinst_HEADERS = dbug_long.h
libdbug_a_SOURCES = dbug.c sanity.c
EXTRA_DIST = example1.c example2.c example3.c \
user.r monty.doc readme.prof dbug_add_tags.pl \
main.c factorial.c dbug_analyze.c
NROFF_INC = example1.r example2.r example3.r main.r \
factorial.r output1.r output2.r output3.r \
output4.r output5.r
# Must be linked with libs that are not compiled yet
extra_progs: factorial dbug_analyze
noinst_PROGRAMS = factorial dbug_analyze
factorial_SOURCES = main.c factorial.c
dbug_analyze_SOURCES = dbug_analyze.c
all: user.t user.ps
factorial: main.o factorial.o
@rm -f factorial
$(LINK) main.o factorial.o -lmysys
user.t: user.r $(NROFF_INC)
nroff -mm user.r > $@
dbug_analyze: dbug_analyze.o
@rm -f dbug_analyze
$(LINK) dbug_analyze.o -lmysys
user.ps: user.r $(NROFF_INC)
groff -mm user.r > $@
user.t: user.r $(NROFF_INC)
nroff -cm user.r > $@
output1.r: factorial
./factorial 1 2 3 4 5 | cat > $@
output1.r: $(PROGRAM)
factorial 1 2 3 4 5 | cat > $@
output2.r: factorial
./factorial -\#t:o 2 3 | cat >$@
output2.r: $(PROGRAM)
factorial -\#t:o 2 3 | cat >$@
output3.r: factorial
./factorial -\#d:t:o 3 | cat >$@
output3.r: $(PROGRAM)
factorial -\#d:t:o 3 | cat >$@
output4.r: factorial
./factorial -\#d,result:o 4 | cat >$@
output4.r: $(PROGRAM)
factorial -\#d,result:o 4 | cat >$@
output5.r: factorial
./factorial -\#d:f,factorial:F:L:o 3 | cat >$@
.c.r:
@RM@ -f $@
@SED@ -e 's!\\!\\\\!g' $< > $@
output5.r: $(PROGRAM)
factorial -\#d:f,factorial:F:L:o 3 | cat >$@
clean:
@RM@ -f $(NROFF_INC) user.t user.ps
# Don't update the files from bitkeeper
%::SCCS/s.%
......@@ -21,8 +21,7 @@
* all copies and derivative works. Thank you. *
* *
* The author makes no warranty of any kind with respect to this *
* product and explicitly disclaims any implied warranties of mer- *ct_lex.table_list.first=0;
thd->lex.selec
* product and explicitly disclaims any implied warranties of mer- *
* chantability or fitness for any particular purpose. *
* *
******************************************************************************
......@@ -60,8 +59,8 @@
*
* Michael Widenius:
* DBUG_DUMP - To dump a block of memory.
* PUSH_FLAG "O" - To be used insted of "o" if we don't
* want flushing (for slow systems)
* PUSH_FLAG "O" - To be used insted of "o" if we
* want flushing after each write
* PUSH_FLAG "A" - as 'O', but we will append to the out file instead
* of creating a new one.
* Check of malloc on entry/exit (option "S")
......@@ -930,7 +929,7 @@ void _db_doprnt_ (const char *format,...)
/*
* FUNCTION
*
* _db_dump_ dump a string until '\0' is found
* _db_dump_ dump a string in hex
*
* SYNOPSIS
*
......@@ -1204,6 +1203,33 @@ static BOOLEAN DoProfile ()
}
#endif
/*
* FUNCTION
*
* _db_strict_keyword_ test keyword for member of keyword list
*
* SYNOPSIS
*
* BOOLEAN _db_strict_keyword_ (keyword)
* char *keyword;
*
* DESCRIPTION
*
* Similar to _db_keyword_, but keyword is NOT accepted if keyword list
* is empty. Used in DBUG_EXECUTE_IF() - for actions that must not be
* executed by default.
*
* Returns TRUE if keyword accepted, FALSE otherwise.
*
*/
BOOLEAN _db_strict_keyword_ (
const char *keyword)
{
if (stack -> keywords == NULL)
return FALSE;
return _db_keyword_ (keyword);
}
/*
* FUNCTION
......
......@@ -572,6 +572,11 @@ int main (int argc, char **argv)
FILE *infile;
FILE *outfile = {stdout};
#if defined(HAVE_PTHREAD_INIT) && defined(THREAD)
pthread_init(); /* Must be called before DBUG_ENTER */
#endif
my_thread_global_init();
{
DBUG_ENTER ("main");
DBUG_PROCESS (argv[0]);
my_name = argv[0];
......@@ -601,6 +606,7 @@ int main (int argc, char **argv)
output (outfile);
DBUG_RETURN (EX_OK);
}
}
#ifdef MSDOS
......
#error This file is not used in MySQL - see ../include/my_dbug.h instead
/******************************************************************************
* *
* N O T I C E *
......
......@@ -13,6 +13,7 @@ char *argv[];
#if defined(HAVE_PTHREAD_INIT) && defined(THREAD)
pthread_init(); /* Must be called before DBUG_ENTER */
#endif
my_thread_global_init();
{
DBUG_ENTER ("main");
DBUG_PROCESS (argv[0]);
......
This diff is collapsed.
......@@ -20,6 +20,7 @@ LDADD = @CLIENT_EXTRA_LDFLAGS@ ../mysys/libmysys.a \
../dbug/libdbug.a ../strings/libmystrings.a
bin_PROGRAMS = replace comp_err perror resolveip my_print_defaults \
resolve_stack_dump mysql_waitpid
noinst_PROGRAMS = charset2html
# Don't update the files from bitkeeper
%::SCCS/s.%
......@@ -25,6 +25,7 @@ extern int _db_on_,_no_db_;
extern FILE *_db_fp_;
extern char *_db_process_;
extern int _db_keyword_(const char *keyword);
extern int _db_strict_keyword_(const char *keyword);
extern void _db_setjmp_(void);
extern void _db_longjmp_(void);
extern void _db_push_(const char *control);
......@@ -67,12 +68,15 @@ extern void _db_unlock_file();
#define DBUG_LOCK_FILE { _db_lock_file(); }
#define DBUG_UNLOCK_FILE { _db_unlock_file(); }
#define DBUG_ASSERT(A) assert(A)
#define DBUG_EXECUTE_IF(keyword,a1) \
{if (_db_on_) {if (_db_strict_keyword_ (keyword)) { a1 }}}
#else /* No debugger */
#define DBUG_ENTER(a1)
#define DBUG_RETURN(a1) return(a1)
#define DBUG_VOID_RETURN return
#define DBUG_EXECUTE(keyword,a1) {}
#define DBUG_EXECUTE_IF(keyword,a1) {}
#define DBUG_PRINT(keyword,arglist) {}
#define DBUG_PUSH(a1) {}
#define DBUG_POP() {}
......
......@@ -57,7 +57,6 @@ libmysys_a_SOURCES = my_init.c my_getwd.c mf_getdate.c \
EXTRA_DIST = thr_alarm.c thr_lock.c my_pthread.c my_thr_init.c \
thr_mutex.c thr_rwlock.c
libmysys_a_LIBADD = @THREAD_LOBJECTS@
noinst_PROGRAMS = charset2html @THREAD_LPROGRAMS@
# test_dir_DEPENDENCIES= $(LIBRARIES)
# testhash_DEPENDENCIES= $(LIBRARIES)
# test_charset_DEPENDENCIES= $(LIBRARIES)
......@@ -105,9 +104,6 @@ test_dir$(EXEEXT): test_dir.c $(LIBRARIES)
test_charset$(EXEEXT): test_charset.c $(LIBRARIES)
$(LINK) $(FLAGS) -DMAIN $(srcdir)/test_charset.c $(LDADD) $(LIBS)
charset2html$(EXEEXT): charset2html.c $(LIBRARIES)
$(LINK) $(FLAGS) -DMAIN $(srcdir)/charset2html.c $(LDADD) $(LIBS)
testhash$(EXEEXT): testhash.c $(LIBRARIES)
$(LINK) $(FLAGS) -DMAIN $(srcdir)/testhash.c $(LDADD) $(LIBS)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment