提交 9d46d892 编写于 作者: H Heikki Linnakangas

Leave out some object files from mock test programs.

This cuts down the size of each test program from about 45 MB to 41 MB on
my laptop, with debug-enabled builds. That should help to speed up the tests
a little bit.
上级 748f8abe
......@@ -21,14 +21,87 @@ MOCK_LIBS := -ldl $(filter-out -lpgport -ledit, $(LIBS)) $(LDAP_LIBS_BE)
# These files are not linked into test programs.
EXCL_OBJS=\
src/backend/main/main.o \
src/backend/access/transam/rmgr.o \
src/backend/utils/fmgrtab.o \
src/backend/gpopt/%.o \
src/backend/gpopt/config/%.o \
src/backend/gpopt/relcache/%.o \
src/backend/gpopt/translate/%.o \
src/backend/gpopt/utils/%.o
src/backend/gpopt/utils/%.o \
# More files that are not linked into test programs. There's no particular
# reason these couldn't be linked into, if necessary, but currently none of
# the tests need these, so better to leave them out to cut down on the size
# of the test programs. Feel free to link them back (i.e. remove them from
# this exclusion list) as needed.
EXCL_OBJS+=\
src/backend/access/gist/%.o \
src/backend/access/gin/%.o \
src/backend/access/hash/hash.o \
src/backend/access/hash/hashinsert.o \
src/backend/access/hash/hashovfl.o \
src/backend/access/hash/hashpage.o \
src/backend/access/hash/hashsearch.o \
src/backend/access/hash/hashutil.o \
\
src/backend/utils/adt/ascii.o \
src/backend/utils/adt/cash.o \
src/backend/utils/adt/char.o \
src/backend/utils/adt/complex_type.o \
src/backend/utils/adt/domains.o \
src/backend/utils/adt/enum.o \
src/backend/utils/adt/geo_ops.o \
src/backend/utils/adt/geo_selfuncs.o \
src/backend/utils/adt/gp_dump_oids.o \
src/backend/utils/adt/gp_optimizer_functions.o \
src/backend/utils/adt/interpolate.o \
src/backend/utils/adt/json.o \
src/backend/utils/adt/jsonfuncs.o \
src/backend/utils/adt/like.o \
src/backend/utils/adt/like_match.o \
src/backend/utils/adt/lockfuncs.o \
src/backend/utils/adt/mac.o \
src/backend/utils/adt/matrix.o \
src/backend/utils/adt/misc.o \
src/backend/utils/adt/oracle_compat.o \
src/backend/utils/adt/pgstatfuncs.o \
src/backend/utils/adt/pivot.o \
src/backend/utils/adt/pseudotypes.o \
src/backend/utils/adt/quote.o \
src/backend/utils/adt/rowtypes.o \
src/backend/utils/adt/tsginidx.o \
src/backend/utils/adt/tsgistidx.o \
src/backend/utils/adt/tsquery.o \
src/backend/utils/adt/tsquery_cleanup.o \
src/backend/utils/adt/tsquery_gist.o \
src/backend/utils/adt/tsquery_op.o \
src/backend/utils/adt/tsquery_rewrite.o \
src/backend/utils/adt/tsquery_util.o \
src/backend/utils/adt/tsrank.o \
src/backend/utils/adt/tsvector.o \
src/backend/utils/adt/tsvector_op.o \
src/backend/utils/adt/tsvector_parser.o \
src/backend/utils/adt/txid.o \
src/backend/utils/adt/uuid.o \
src/backend/utils/adt/xid.o \
src/backend/tsearch/dict.o \
src/backend/tsearch/dict_ispell.o \
src/backend/tsearch/dict_simple.o \
src/backend/tsearch/dict_synonym.o \
src/backend/tsearch/dict_thesaurus.o \
src/backend/tsearch/regis.o \
src/backend/tsearch/spell.o \
src/backend/tsearch/to_tsany.o \
src/backend/tsearch/ts_locale.o \
src/backend/tsearch/ts_parse.o \
src/backend/tsearch/ts_utils.o \
src/backend/tsearch/wparser.o \
src/backend/tsearch/wparser_def.o \
# These files are linked into every test program.
MOCK_OBJS=\
$(top_srcdir)/src/test/unit/mock/fmgrtab_mock.o \
$(top_srcdir)/src/test/unit/mock/rmgr_mock.o \
$(top_srcdir)/src/test/unit/mock/main_mock.o
# No test programs currently exercise the ORCA translator library, so
# mock that instead of linking with the real library.
......
/*
* This is a mock version of src/backend/utils/fmgrtab.c. The real fmgrtab.c
* contains a large table, fmgr_builtins, which contains a pointer to all
* the built-in functions that are exposed at SQL-level, in the pg_proc
* catalog. We don't need the table in mock tests, and if we leave them out,
* we don't need to link in the .o files containing them, which helps to cut
* down the size of the test programs.
*/
#include "postgres.h"
#include "utils/fmgrtab.h"
const FmgrBuiltin fmgr_builtins[] = { };
const int fmgr_nbuiltins = 0;
/*
* This is a mock version of src/backend/access/transam/rmgr.c. The real
* rmgr.c contains a table of the WAL redo/desc functions for all the WAL
* record types. Leave out the table, so that we can leave out the AM
* object files, which helps to cut down the size of the test programs.
*/
#include "postgres.h"
#include "access/rmgr.h"
#include "access/xlog_internal.h"
const RmgrData RmgrTable[RM_MAX_ID + 1];
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册