Commit graph

61 commits

Author SHA1 Message Date
Robin Sommer
a7bc12066b Merge remote-tracking branch 'origin/master' into topic/robin/dataseries
Conflicts:
	CMakeLists.txt
	cmake
2012-04-17 16:37:37 -07:00
Jon Siwek
8e2ce1d350 Fix CMake from warning about unused ENABLE_PERFTOOLS_DEBUG variable.
The variable was never "used" in the case google perftools was not
found, so CMake warned about it being unused since it was manually
specified as a cache variable in the configure script.  There might
be a better way to organize that, but this is a quick/easy hack.
2012-04-05 11:41:14 -05:00
Robin Sommer
952b6b293a Merging in DataSeries support from topic/gilbert/logging.
I copied the code over manually, no merging, because (1) it needed to
be adapted to the new threading API, and (2) there's more stuff in the
branch that I haven't ported yet.

The DS output generally seems to work, but it has seen no further
testing yet.

Not unit tests yet either.
2012-04-03 22:14:56 -07:00
Robin Sommer
42066cc1fd Teaching cmake to always link in tcmalloc if it finds it.
Also renaming --enable-perftools to --enable-perftool-debug to
indicate that the switch is only relevant for debugging the heap. It's
not needed to pick up tcmalloc for better performance.

--with-perftools can still (and always) be used to give a hint where
to find the libraries.

With the threading, using tcmalloc improves memory usage on FreeBSD
significantly when running on a trace. If it fixes the live problems,
remains to be seen ...
2012-03-28 15:42:09 -07:00
Jon Siwek
b552979011 Raise minimum required CMake version to 2.6.3 2012-02-24 13:14:49 -06:00
Jon Siwek
d750c3ba74 Promote libz and libmagic to required dependencies. 2011-11-11 12:39:00 -06:00
Jon Siwek
22a89011a5 Update to use cmake submodule 2011-09-20 10:15:09 -05:00
Robin Sommer
fbe6356927 Install binaries with an RPATH.
Note, I didn't see the topic/jsiwek/cmake-rpath branch in the Bro
repository so I copied the change from the submodules, assuming it
applies in the same way.
2011-09-04 09:00:55 -07:00
Robin Sommer
1ca9def9e6 Merge remote-tracking branch 'origin/topic/jsiwek/autodoc-fixes'
* origin/topic/jsiwek/autodoc-fixes:
  Update doc sources and touch up a few script comments.
  Fixes for script auto-documentation.

Conflicts:
	scripts/base/frameworks/logging/main.bro
2011-08-13 12:09:13 -07:00
Jon Siwek
b783732f7d Workaround for FreeBSD CMake port missing debug flags 2011-08-09 13:34:12 -05:00
Jon Siwek
4ac6d0ae2e Fixes for script auto-documentation.
- Fixing the parts of the `make restdoc` and `make doc` process that were
  broken by the last Bro script re-organization

- Generated documentation for Bro scripts derived from BiFs now use the
  original BiF source file as the "original source file" link

- Renaming of the internal POLICYDEST definition and other misc places that
  refer to "policy" scripts; that terminology doesn't make total sense now

- Added a documentation blacklist reminder test that will fail if there's
  scripts that are blacklisted from being documentated because they're still
  in progress

- Some minor Bro script changes to fix small @load dependency errors

Addresses #543
2011-08-08 19:50:45 -05:00
Seth Hall
597a4d6704 Hopefully the last major script reorganization.
- policy/ renamed to scripts/

- By default BROPATH now contains:
	- scripts/
	- scripts/policy
	- scripts/site

- *Nearly* all tests pass.

- All of scripts/base/ is loaded by main.cc
	- Can be disabled by setting $BRO_NO_BASE_SCRIPTS
	- Scripts in scripts/base/ don't use relative path loading to ease use of BRO_NO_BASE_SCRIPTS (to copy and paste that script).

- The scripts in scripts/base/protocols/ only (or soon will only) do logging and state building.

- The scripts in scripts/base/frameworks/ add functionality without causing any additional overhead.

- All "detection" activity happens through scripts in scripts/policy/.

- Communications framework modified temporarily to need an environment variable to actually enable (ENABLE_COMMUNICATION=1)
	- This is so the communications framework can be loaded as part
	  of the base without causing trouble when it's not needed.
	- This will be removed once a resolution to ticket #540 is reached.
2011-08-05 23:09:53 -04:00
Seth Hall
cdca251f47 $PATH is now appropriately set by the bro-path-dev.(sh|csh) scripts. 2011-07-19 16:28:05 -04:00
Seth Hall
9576c85dab One more small vestige of the cluster config option. 2011-07-15 01:51:55 -04:00
Jon Siwek
7d261dcb55 Merge branch 'master' into topic/jsiwek/doc-framework
Conflicts:
	src/main.cc
2011-04-07 16:44:29 -05:00
Jon Siwek
5183ab409b Initial implementation of a make doc target to generate script docs. 2011-04-06 12:06:39 -05:00
Jon Siwek
9282e0adff Add explicit CMake check for compiler 2011-03-09 11:48:00 -06:00
Jon Siwek
abd92115f4 Add alternative way to set BROPATH for running bro from build/ dir.
Adds two extra shell scripts, one to handle either the c-shell
or bourne-shell syntax for setting environment variables, that can
be sourced in order to set the BROPATH directly in the current
shell/environment in a way that's compatible with running bro
from the build/ directory.
2011-03-02 14:14:07 -06:00
Jon Siwek
4da36217b7 Fix for the --with-binpac configure option
Compiling from existing sources no longer overrides this option.
2011-01-24 11:02:16 -06:00
Jon Siwek
6ea8def6f6 MacPorts & Fink paths now prepended to default search prefixes 2011-01-19 14:57:06 -06:00
Jon Siwek
8d4f487add Changes to CMake logic for binary packaging
- pre/post install scripts now track configuration files that may
  be clobbered on package install/upgrade through the
  INSTALLED_CONFIG_FILES CMake variable and attempts to make backups
  when the distribution's file differs from the existing file.
2011-01-13 21:58:25 -06:00
Jon Siwek
5d1f1e9edb Fix package configuration macro returning from sub-project too early 2011-01-11 19:30:31 -06:00
Jon Siwek
911230b037 Add warning when building and installing are done by different users 2011-01-11 15:59:25 -06:00
Jon Siwek
fa07bcd233 Changes to allow source packaging via CPack
- Refactored all packaging related stuff into a single CMake module
- Build should no longer fail when optional sources (e.g. broctl)
  do not exist in the source directory, instead a warning is issued
- Additional configure options to change packaging behavior
2011-01-05 12:05:39 -06:00
Jon Siwek
e89182dcc0 Changes to make running bro from build dir easier.
The 'bro-path-dev' script is configured at make time to echo the
right paths to policy files.
2010-12-06 11:30:52 -06:00
Jon Siwek
0f854e201b CMake 2.6 compatibility changes
Also removed Mac specific feature of rewriting optional library
install_names.
2010-11-30 13:21:30 -06:00
Jon Siwek
8901b30236 Enable broccoli, broctl, aux tools by default
The configure wrapper now only provides --disable options for each
aux. package.
2010-11-22 19:42:37 -06:00
Jon Siwek
1b7c6b469e Fix to allow tilde ($HOME) in install prefix. 2010-11-20 20:40:54 -06:00
Jon Siwek
3b459c368c Added uninstall target 2010-11-20 12:18:54 -06:00
Jon Siwek
4982c02eba Source package excludes .git and generate only TGZ 2010-11-19 11:59:22 -06:00
Jon Siwek
0878e9b8f1 Configure wrapper fixes for Broctl
Made order of --enable-broctl and --enable-cluster not matter.

--enable-cluster always enables Broctl in cluster configuration even if
the other option is used.

--enable-broctl will enable Broctl in standalone configuration only if
--enable-cluster isn't present.
2010-11-19 11:28:43 -06:00
Jon Siwek
552177c33a CPack's source package now ignores the build dir 2010-11-19 10:45:46 -06:00
Jon Siwek
e4d12ea1d3 Changed default CMAKE_BUILD_TYPE to RelWithDebInfo
The --enable-debug option of the configure wrapper changes it to Debug.
Removed --enable-release option of the configure wrapper.
Updated submodules
2010-11-18 11:34:29 -06:00
Jon Siwek
efce9dbfe2 Customizable error messages for missing prereqs.
Adds the FindRequiredPackage() macro that wraps the functionality
of the standard find_package() macro.
2010-11-17 20:38:35 -06:00
Jon Siwek
3c7c068685 Renaming of DATADIR CMake variable.
To POLICYDIR since that's more clear.  Also decided that restricting
it to a subdirectory of prefix isn't much use as an option, so went
back to having it be an absolute path.
2010-11-17 20:38:35 -06:00
Jon Siwek
7737572aab Allow building auxilliary projects along with Bro.
BinPAC, Broccoli, Broctl, and Bro auxilliary tools are included
as git submodules.
2010-11-17 20:38:35 -06:00
Jon Siwek
c147710319 configure now writes directly to CMakeCache.txt
The intermediate BuildOptions.cmake file is no longer needed.
2010-11-17 20:38:35 -06:00
Jon Siwek
7eb92d6a2d Style/comment enhancements. 2010-11-17 20:38:35 -06:00
Jon Siwek
737ce489a9 Added CPack packaging and fix Linux compatibility.
- configure wrapper had bash syntax some places; replaced w/ sh syntax
- Added FindOpenSSL module.  The one that ships with CMake does not
  allow for specifying a non-standard location.
- datadir configure option changed to be relative to prefix.  This
  simplifies the packaging from having to consider absolute paths.
- Added macro for changing install_name of shared libs that need to
  ship with precompiled Bro for OS X.  This is only the optional
  libmagic and libGeoIP for now.
2010-11-17 20:38:35 -06:00
Jon Siwek
43cbe2a9fc Added configure option to build aux. tools.
Also updated submodules to fix small bug in CMake module path.
2010-11-17 20:38:34 -06:00
Jon Siwek
02e17e949b Added configure script to wrap cmake functionality 2010-11-17 20:38:34 -06:00
Jon Siwek
c1e0b41275 Make DATADIR (policy file install path) absolute. 2010-11-17 20:38:34 -06:00
Jon Siwek
5765c93bd0 Changes to add install target. 2010-11-17 20:38:34 -06:00
Jon Siwek
1b9c041d29 Removed unused configure checks (leftover from autotools). 2010-11-17 20:38:34 -06:00
Jon Siwek
afb5bd8ce7 Moved the logic to build BinPAC locally to FindBinPAC module. 2010-11-17 20:38:34 -06:00
Jon Siwek
47de996544 Make disabled optional features show as false in build summary. 2010-11-17 20:38:34 -06:00
Jon Siwek
e22ec206ca Added support for optional google-perftools. 2010-11-17 20:38:34 -06:00
Jon Siwek
5ea4189011 Added support for optional libGeoIP. 2010-11-17 20:38:34 -06:00
Jon Siwek
bc1a25da37 Added forgotten libz and libmagic include dirs to the search path.
This allows them to be located in a non-standard location.
2010-11-17 20:38:34 -06:00
Jon Siwek
d043aba54d Added support for optional libz. 2010-11-17 20:38:34 -06:00