Install zkg as part of the Zeek distribution.

- Add auxil/package-manager submodule as an optional build
  source. When the submodule is present, zkg gets installed into the
  Zeek installation's bin directory, its config file into etc/zkg, and
  its state into var/lib/zkg. Like zeekctl, zkg finds its own module
  independently of any PYTHONPATH. Installation via pip remains
  supported. You can skip zkg explicitly via --disable-zkg. See the
  NEWS update for details.

- Establish a "zeek/python" subdirectory under libdir as the common place
  for Python modules in the Zeek distribution. This now separates out
  the Broker Python bindings, ZeekControl, and zkg's Python module.

- Add configure flags to allow customizing this Python folder, in
  three ways: --python-dir, --python-prefix, and --python-home. These
  differ in the logic they automatically add to the path, and build on
  the logic already used in Broker.

- Include a (comented-out) @load for zkg's packages folder in
  local.zeek.

- Bump zeekctl to move to this new location.

- Bump doc to include installation instructions

- Update NEWS accordingly.
This commit is contained in:
Christian Kreibich 2020-12-07 13:46:59 -08:00
parent 9d8bab692c
commit d1d218b5cc
9 changed files with 147 additions and 28 deletions

22
configure vendored
View file

@ -43,6 +43,12 @@ Usage: $0 [OPTION]... [VAR=VALUE]...
--libdir=PATH installation directory for library files [PREFIX/lib]
--conf-files-dir=PATH config files installation directory [PREFIX/etc]
--mandir=PATH installation path for man pages [PREFIX/share/man]
--python-dir=PATH explicit installation directory for Python modules
--python-prefix=PATH versioned installation directory for Python modules,
like setup.py install --prefix
[PATH/lib/python<Python Version>/site-packages]
--python-home=PATH installation path for Python modules, like setup.py's
install --home [PATH/lib/python]
Optional Features:
--enable-debug compile in debugging mode (like --build-type=Debug)
@ -61,6 +67,7 @@ Usage: $0 [OPTION]... [VAR=VALUE]...
--disable-archiver don't build or install zeek-archiver tool
--disable-python don't try to build python bindings for Broker
--disable-broker-tests don't try to build Broker unit tests
--disable-zkg don't install zkg
Required Packages in Non-Standard Locations:
--with-openssl=PATH path to OpenSSL install root
@ -157,6 +164,7 @@ append_cache_entry BUILD_SHARED_LIBS BOOL true
append_cache_entry INSTALL_AUX_TOOLS BOOL true
append_cache_entry INSTALL_ZEEK_ARCHIVER BOOL true
append_cache_entry INSTALL_ZEEKCTL BOOL true
append_cache_entry INSTALL_ZKG BOOL true
append_cache_entry CPACK_SOURCE_IGNORE_FILES STRING
append_cache_entry ENABLE_MOBILE_IPV6 BOOL false
append_cache_entry ZEEK_SANITIZERS STRING ""
@ -201,11 +209,20 @@ while [ $# -ne 0 ]; do
--prefix=*)
prefix=$optarg
append_cache_entry CMAKE_INSTALL_PREFIX PATH $optarg
append_cache_entry ZEEK_ROOT_DIR PATH $optarg
append_cache_entry ZEEK_ROOT_DIR PATH $optarg
;;
--libdir=*)
append_cache_entry CMAKE_INSTALL_LIBDIR PATH $optarg
;;
--python-dir=*)
append_cache_entry ZEEK_PYTHON_DIR PATH $optarg
;;
--python-prefix=*)
append_cache_entry ZEEK_PYTHON_PREFIX PATH $optarg
;;
--python-home=*)
append_cache_entry ZEEK_PYTHON_HOME PATH $optarg
;;
--scriptdir=*)
append_cache_entry ZEEK_SCRIPT_INSTALL_PATH STRING $optarg
user_set_scriptdir="true"
@ -277,6 +294,9 @@ while [ $# -ne 0 ]; do
append_cache_entry BROKER_DISABLE_TESTS BOOL true
append_cache_entry BROKER_DISABLE_DOC_EXAMPLES BOOL true
;;
--disable-zkg)
append_cache_entry INSTALL_ZKG BOOL false
;;
--with-openssl=*)
append_cache_entry OPENSSL_ROOT_DIR PATH $optarg
;;