Andrew Morrow
2c01237bc0
SERVER-13544 Enable gperftools for C++11 builds
...
The following change was backported:
https://code.google.com/p/gperftools/source/detail?r=18fbc316eebea9db2d7ec41e161c0a3fbb09fa42
Another change we wanted was:
https://code.google.com/p/gperftools/source/detail?r=6287bbbbad8730712cfd1ee28ecc0648cbaa9f94#
However, since that patch must hit every PR/SC instance and the code has evolved from that point
we instead just ran the following two scripts over the gperftools source tree:
find . -type f | xargs egrep -l '"PR\w+"' | xargs perl -pi -e 's|"PR(\w+)"|" PR\1 "|g'
find . -type f | xargs egrep -l '"SC\w+"' | xargs perl -pi -e 's|"SC(\w+)"|" SC\1 "|g'
and then manually fixing up the one reference to GPRIuPTHREAD, which achieved the same result.
Finally, remove the logic preventing mixture of C++11 and gperftools from the build system.
2014-04-14 10:46:16 -04:00
Andrew Morrow
225d637878
SERVER-13559 Remove legacy debugging flags and honor zero arg invocations of dbg and opt
2014-04-11 16:26:24 -04:00
Andrew Morrow
911bbc14a8
SERVER-12189 Enable libstdc++ debugging features for debug builds when possible
2014-04-11 15:52:35 -04:00
Andrew Morrow
2670656283
SERVER-12255 Use tcmalloc on 32-bit linux and darwin as well
2014-04-07 19:09:32 -04:00
Andrew Morrow
025a54c830
SERVER-12255 Be explicit about target micro-architecture for 32-bit x86 builds
2014-04-07 19:09:31 -04:00
Andy Schwerin
881b2ee9ff
SERVER-5553 Eliminate malloc from printStacktrace(std::ostream&).
...
This also opens the exciting possibility of displaying the base address
of the file containing the address, which would let us dump stacks when
ASLR is in use. However, this implementation preserves the format used
in the Linux backtrace_symbols() implementation.
2014-04-03 13:16:44 -04:00
Andrew Morrow
9a45a1f363
SERVER-12572 Informatively fail attempts to build C++ client driver targets
...
The MongoDB C++ client driver now resides in a separate repo and is maintained
independently of the server. The targets in this repo that used to build or test
the driver will now print an error message explaining the change and referring
users to the relevant documentation.
2014-03-04 10:57:42 -05:00
Kaloian Manassiev
78b54a037a
Do not include cpppath/extrapath/libpath when generating output location
...
Otherwise, if libraries are used which have deeper paths, the ouput path
becomes really long and builds fail due to excessively long command line.
2014-02-25 13:49:42 -05:00
Nikolaus Demmel
efc9a4a324
SERVER-12682 Add warning on OS X if libc++ is selected and osx-version-min is < 10.7.
...
Signed-off-by: Andrew Morrow <acm@10gen.com>
2014-02-18 18:44:14 -05:00
Mark Benvenuto
40b314894c
SERVER-12304 Query concurrency -- 2.6 regression
2014-02-18 17:19:39 -05:00
Ernie Hershey
ea4ba610f0
SERVER-11106 Detect non-enterprise MSI configurations
2014-02-12 18:25:33 -05:00
Ernie Hershey
95fd79cb23
SERVER-10324 Allow modules to add files to different archive subdirectories
...
This CR is 1 of 2 covering the open source server repo component
of https://jira.mongodb.org/browse/SERVER-10324 . It supplants
http://codereview.10gen.com/4892644241047552/
2014-01-28 22:38:50 -05:00
Andrew Morrow
fc0280414c
SERVER-12456 Also pass stack protector option to the link step
2014-01-25 11:43:49 -05:00
Eric Milkie
a6c4e86b0a
SERVER-12403 permit use-system-boost on Windows to work with autolib linking
2014-01-23 08:47:52 -05:00
Eric Milkie
eff37e9c0e
SERVER-12421 - detect sasl library properly for C++ driver on Windows
2014-01-23 08:47:50 -05:00
Mark Benvenuto
7964cab85a
SERVER-12166 : Promote struct/class mismatch warning to error with GCC/Clang
2013-12-31 15:16:54 -05:00
Mark Benvenuto
5d54ce99eb
SERVER-10142 : Eliminate Compiler Warnings on Windows Builders
...
BF-60 :compile broken on windows
2013-12-18 12:57:34 -05:00
Andrew Morrow
c9808ef308
SERVER-11689 Always link libgcc statically if linking libstdc++ statically
2013-11-27 13:17:08 -05:00
Shaun Verch
c9168762e4
SERVER-11575 Added support for YAML Config File
2013-11-13 16:46:49 -05:00
Mathias Stearn
e4a1f917ad
SERVER-6950 Add a TCMalloc ServerStatusSection
2013-11-12 19:08:06 -05:00
Andrew Morrow
f7443bad6c
SERVER-9855 Add support for specifying Mavericks as the OS X minimum version
2013-11-05 14:02:46 -05:00
Andrew Morrow
6fc17c30a8
SERVER-9855 Remove obsolete darwin configuration options
...
- We want to use whatever compiler SCons tooling picks now that we support clang.
- /usr/64 isn't a thing on modern Darwin (at least since 10.6, which is our minimum)
- It probably never made sense to look in /usr/64/include for anything
- If you want to use MacPorts, use --extrapath=/opt/local, similar for Fink
2013-11-05 14:02:46 -05:00
Andrew Morrow
dd6d28a356
SERVER-11333 Add build flag to suppress use of __declspec(thread)
2013-10-24 12:55:22 -04:00
Andrew Morrow
5682288d90
SERVER-11333 Use configure time checks and posix feature tests to select TSP implementation
2013-10-24 12:55:22 -04:00
Andrew Morrow
978af98546
SERVER-11264 Include OS X minimum version flag on link lines
2013-10-18 14:46:47 -04:00
Eric Milkie
7ada7a8e11
SERVER-10830 msi builder as an scons target
2013-10-09 13:59:08 -04:00
Mathias Stearn
62d754f991
SERVER-11084 Error when mixing --gcov and --cache
2013-10-08 17:35:05 -04:00
Andrew Morrow
ac2bd10833
SERVER-11053 Support use of CacheDir rather than Brobdingnagian variant directory names
2013-10-07 08:47:51 -04:00
Mike Grundy
d1a4564bba
SERVER-10808 add __gcov_flush() call on exit
...
Signed-off-by: Matt Kangas <matt.kangas@mongodb.com>
2013-10-03 18:51:18 -04:00
matt dannenberg
97c82b16b2
SERVER-10816 enable StackChecker when not optimized and in debug mode rather than when simply in debug mode
2013-09-25 10:40:14 -04:00
Andrew Morrow
681bc4c9be
SERVER-10401 Disable new clang-3.4 warning
2013-09-18 17:39:40 -04:00
Andrew Morrow
8ba48088a3
SERVER-10726 Orthogonalize debugging and optimization options
...
Introduce new flags --dbg and --opt which permit independent control over optimization and
debugging. The old --d, --dd, and --release flags were not independent, and had surprising
interactions, particularly on Windows.
The old flags are still supported in a legacy mode for --d and --dd builds, cannot be mixed
with the new.
For builds specifying none of --dbg, --opt, --d, or --dd, there should be no behavior change,
except on Windows. On that platform, a no-flags-specified build will now default to
optimization enabled, whereas before it did not.
2013-09-16 17:36:35 -04:00
matt dannenberg
3145d2440b
SERVER-8684 added a CCPDEFINE to cause newer system versions of boost to use the thread version we do
2013-09-16 11:17:44 -04:00
Andrew Morrow
73ce2fd28b
SERVER-9766 Don't fail the build on missing system libraries unless they are in demand
2013-09-11 16:46:52 -04:00
Andrew Morrow
f0deda49e3
SERVER-9766 Remove support for separate client driver package
2013-09-11 16:46:52 -04:00
Eric Milkie
b91195fe8f
SERVER-9770 introduce new scons flag to optionally build with /MD
2013-09-06 15:22:24 -04:00
Andrew Morrow
23b676781c
Retain frame pointers when building with clang sanitizers
2013-08-15 10:13:09 -04:00
Andrew Morrow
3ffea6597a
SERVER-10401 Suppress tautology warning in v8 triggered when using clang-3.4
2013-08-01 16:24:59 -04:00
Andy Schwerin
1158aa623d
SERVER-9670 Eliminate MONGO_LIBDEPS_* global environment variables from SCons.
2013-07-09 17:49:14 -04:00
Andrew Morrow
2eceeb6202
SERVER-9881 Use presence of a certain type_trait to detect libstdc++ 4.6.0 or better
2013-07-02 13:35:15 -04:00
Tad Marshall
1c53e2b9e9
SERVER-9775 Remove use-system-sm option
2013-06-24 19:54:43 -04:00
Tad Marshall
eb7ba8adc1
SERVER-9775 Remove SpiderMonkey
2013-06-24 17:26:06 -04:00
Andrew Morrow
57a4875807
SERVER-9761 Enforce immediate binding of all symbols at process startup
2013-06-24 17:10:21 -04:00
Tad Marshall
54f25e6292
SERVER-7080 Link to backtrace, backtrace_symbols and backtrace_symbols_fd at runtime
...
Do not make direct calls to backtrace, backtrace_symbols or backtrace_symbols_fd,
which are present in Solaris 11 but not in Solaris 10. Instead, see if they are
available in a loaded library (which will be libc.so.1) at runtime and either
call them or call an emulation.
2013-06-20 11:53:23 -04:00
Andrew Morrow
58f82cf66d
SERVER-9890 Force the use of gnulink on solaris, since we always link through the compiler
2013-06-13 17:02:51 -04:00
Andrew Morrow
713734e413
SERVER-9881 Reject attempts to build in C++11 mode with ancient libstdc++
2013-06-10 12:14:06 -04:00
Andrew Morrow
eb5b8b0226
SERVER-8467 Don't pass -rdynamic on OS X
...
On OS X, clang ignores -rdynamic, but issues a warning, which can
be a problem if -Werror is in effect. Remove the flag because
-rdynamic is not needed on OS X.
2013-06-08 12:35:23 -04:00
Andrew Morrow
ce97dc76c6
SERVER-6514 Only apply -zdefs and --as-needed to shared client library
2013-06-06 13:39:50 -04:00
Andrew Morrow
75095e78e0
SERVER-9410 Permit use of Interlocked operations on Windows Server 2003
2013-06-04 16:59:34 -04:00
Andrew Morrow
2e7d108efe
SERVER-6951 SERVER-9656 SERVER-9849 Handle third_party libraries consistently
2013-06-03 20:57:46 -04:00
Rogério Brito
ec4e8f3ea7
SERVER-9656 Use libstemmer when using system libraries.
...
Signed-off-by: Andrew Morrow <acm@10gen.com>
2013-06-03 20:57:46 -04:00
Andrew Morrow
da8c0fa929
SERVER-6514 Re-add support for building the C++ driver shared library
2013-06-03 20:21:13 -04:00
agralius
f2bf885d38
SERVER-7902 added support for global /etc/mongorc.js
...
The corresponding Windows path is
%SYSTEMROOT%\system32\drivers\etc\mongorc.js
2013-05-06 16:40:04 -04:00
Andrew Morrow
2daa35d735
Provide an option to tunnel the calling shell environment
2013-05-02 18:59:12 -04:00
Andrew Morrow
e801393010
SERVER-8465 Provide a way to tell scons to honor $CC and $CXX
2013-05-02 18:59:12 -04:00
Andrew Morrow
4a27c92015
Rely more exclusively on SCons to locate MS tools
2013-04-26 11:45:36 -04:00
Andrew Morrow
128b0cb3b4
Handle gcc options parsing peculiarity for -Wno- flags
2013-04-26 11:08:34 -04:00
Andrew Morrow
bc532c817a
Don't suppress configure checks during --clean
2013-04-26 11:08:25 -04:00
Mathias Stearn
8cc2ab561e
Fix buildbot due to what we think is a bug in g++-4.6
2013-04-24 16:38:01 -04:00
Mathias Stearn
2d30f0b562
Add -Wno-unused-typedefs to unbreak building with g++-4.8
2013-04-24 10:33:55 -04:00
Andy Schwerin
2d8e983197
SERVER-8813 Switch C++ client and shell code for SASL authentication to use the Cyrus SASL library.
...
Replaces gsasl implementation in clients.
2013-04-22 13:02:47 -04:00
Andrew Morrow
53d7bcd4ed
SERVER-8969 Support specifying minimum windows version to build
2013-04-08 20:58:23 -04:00
Andrew Morrow
ad60f1bdac
Add support for new sanitizers in clang 3.3 and gcc 4.8
2013-04-08 20:58:23 -04:00
Andrew Morrow
224a7bb7f6
SERVER-9002 Fix indentation issue with compiler detection bodies
2013-03-23 15:43:06 -04:00
Andrew Morrow
1b2a4e07f2
SERVER-8463 Make control of link time optimization explicit
2013-03-23 11:19:59 -04:00
Andrew Morrow
037ccf6382
Add option for slightly faster sconsing
2013-03-23 11:19:59 -04:00
Andrew Morrow
6286ed8d31
SERVER-9002 Some preliminary work towards knowing what toolchain we are using
2013-03-23 11:19:59 -04:00
Andrew Morrow
00421d40cb
Work around old GCC that doesn't understand -Wno-error
2013-03-16 12:45:54 -04:00
Andrew Morrow
a7e6e1fa8b
SERVER-8464 For C++11 builds, specify C99 mode for any C compiles
2013-03-15 20:24:49 -04:00
Andrew Morrow
e01d425eef
SERVER-8842 Apply OS X minimum version flag to build
2013-03-15 20:24:49 -04:00
Andrew Morrow
1426de920e
SERVER-8676 Add libc++ support when building with clang
2013-03-15 20:24:49 -04:00
Andrew Morrow
e08eb0176c
SERVER-8464 Add C++11 support to build system
2013-03-15 20:24:49 -04:00
Andrew Morrow
054ac98b9a
SERVER-8466 SERVER-8467 Clang support and autodetection
2013-03-15 20:24:49 -04:00
Andrew Morrow
97e9f84c29
Options to adorn variant dir, including with current branch
2013-03-15 20:24:49 -04:00
Andy Schwerin
0c1895dae4
SCons: Make glibc check a function of --release flag, not presence of --s3dist on command line.
...
Release builds of mongo on Linux are not supposed to depend on symbols from
GLIBC2.4. Prior to this patch, we enforced this by adding a post build option
to Program steps on linux when s3dist appeared on the command line, unless
suppressed by --no-glibc-check. In this patch, we instead add the post build
option if --release is set on the command line, unless suppressed by the
--no-glibc-check. Without this change, the s3dist rule can cause unnecessary
relinking of the programs to be archived and pushed.
2013-02-22 13:35:39 -05:00
Eric Milkie
14b14fe13b
SERVER-8459 add command line flag to enable FIPS mode
...
See internal SSL build instructions for use of this flag.
2013-02-08 10:13:48 -05:00
Eliot Horowitz
bc8a25a7f0
scons fixes for fts and --32
2012-12-31 10:58:26 -05:00
Eliot Horowitz
d2df300721
SERVER-380 : Add snowball stemmer
2012-12-25 12:25:45 -05:00
Shaun Verch
8214e8666e
SERVER-7513 Build tcmalloc on mac
2012-12-24 09:59:09 -08:00
Eliot Horowitz
14a2ac2ff9
add static-libstdc++ option to scons
2012-12-23 02:37:03 -05:00
Hari Khalsa
6da0f1c47c
clean up geo parsing a bit
2012-12-18 09:44:00 -05:00
Eric Milkie
50759820a8
add colon to characters that are transformed when generating variant dir
2012-12-14 17:55:06 -05:00
Eric Milkie
b21c528acf
link correct libraries on Windows for openssl
2012-12-14 17:55:05 -05:00
Andrew Morrow
dfeb366b82
SERVER-7405 Stage banners as requested in modules
2012-11-27 09:58:07 -05:00
Eric Milkie
96bfc6ffc5
SERVER-7088 make --usev8 the default instead of --usesm
2012-11-11 09:51:06 -05:00
Andy Schwerin
924afa4629
Client and common support for SASL authentication.
...
SERVER-7130, SERVER-7131, SERVER-7133
2012-11-08 14:42:05 -05:00
Jason Rassi
71835a2d7b
Remove stray debug print statement from SConstruct
...
(Erroneous addition from 876a1351
)
2012-11-05 12:02:29 -05:00
Andy Schwerin
2386f89081
SERVER-7473 Provide functionality for registering "module" tests in SCons.
...
These tests exist to facilitate writing integration tests for MongoDB modules,
and could also be used to register integration tests for core MongoDB components
that are not written as jstests or dbtests.
2012-10-31 12:53:39 -04:00
Jason Rassi
6e9661724b
SERVER-7086 Integrate third_party V8 build into SConstruct
2012-10-29 15:57:42 -04:00
Jason Rassi
8e05f36287
SERVER-7086 Complete implementation of V8 SConscript
...
Supports [MacOS, Linux, Windows, Solaris, FreeBSD]
* [32-bit, 64-bit]
* [debug, release]
2012-10-29 15:53:40 -04:00
Hari Khalsa
6d151dbaf1
Revert "(should) fix build on most linux machines"
...
This reverts commit 88b04683d0
.
2012-10-29 11:25:01 -04:00
Hari Khalsa
88b04683d0
(should) fix build on most linux machines
2012-10-29 11:10:18 -04:00
Eliot Horowitz
76c04a7d2d
--use-cpu-profiler shouldn't impact variant dir
2012-10-24 00:32:17 -04:00
Andy Schwerin
2716c5467a
SERVER-7118 Change "mongo modules" to use SConscript files for modules.
...
Also allows you to have modules in mongos and the shell, as well as mongod.
Requires changes to the modules, to have SConscript files, and define libraries.
Allows modules to have unit tests, interesting linking rules, dependencies into
mongo, etc.
Still may need to do some work on includes. The mongo-enterprise module has very
simple include requirements, today.
2012-10-23 16:35:42 -04:00
Eliot Horowitz
814807af7f
can pass a list of files to lint.py
2012-10-16 10:35:38 -04:00
Eliot Horowitz
c444625527
move lint code to its own directory
2012-10-15 18:07:07 -04:00
Eliot Horowitz
a8d20647d7
hook up our own IsTestFilename for cpplint
2012-10-15 18:07:07 -04:00
Eliot Horowitz
3a15fac7d8
hookup google cpplint, and make "scons lint" run the checks we pass on now
...
including a few that i made pass
2012-10-15 18:07:06 -04:00
Andrew Schwerin
26f3e41041
Do not import now-defunct buildscripts.bb in SConstruct.
2012-10-12 16:25:40 -04:00
Randall Hunt
003bf7c7e6
remove bb.py as it's no longer needed in buildbot
2012-10-12 14:09:40 -04:00
Andy Schwerin
60305ad7a4
Simplify the implementation of s3push() in SConstruct, eliminate _rpartition function.
2012-10-04 18:20:08 -04:00
Randall Hunt
563d64e6f8
Fix BUILDBOT-185 by checking env['MONGO_MODULES'] and adding it to the build name
2012-09-18 19:13:08 -04:00
Randall Hunt
bde4065f5a
fix module searchpath for 2.2
2012-09-18 17:22:05 -04:00
Tad Marshall
3f8a82f94a
SERVER-6848 Replace tabs with 8 spaces in SConstruct
2012-09-02 08:21:46 -04:00
Andy Schwerin
572d39f494
SERVER-4683 Only use embedded tcmalloc on x86_64 linux by default.
2012-08-10 18:15:24 -04:00
Andy Schwerin
eee3fe4ce6
SERVER-4683 Support the imported tcmalloc, ystem tcmalloc or the default system allocator library.
...
Pass --allocator=tcmalloc (default on Linux) or --allocator=system (default elsewhere)
to control which allocator is used, and --use-system-tcmalloc to use the system-
installed tcmalloc instead of the one in the mongo source tree if you use --allocator=tcmalloc.
2012-08-10 17:19:08 -04:00
Andy Schwerin
517dfc979a
SERVER-6532 Add PDB for mongos and mongod to Windows dist archive.
2012-08-07 13:34:18 -04:00
Tad Marshall
c9eb7c87a3
SERVER-6713 use /LARGEADDRESSAWARE linker switch in Windows
...
Add /LARGEADDRESSAWARE linker switch to Windows builds to
double the user address space in 32-bit builds.
2012-08-05 14:17:49 -04:00
Tad Marshall
0ff6b7aeb3
SERVER-6705 disable FPO for 32-bit Windows
...
Disable Frame Pointer Omission/Optimization in Windows
release builds. This is already disabled in debug builds,
and only affects the 32-bit version.
2012-08-04 16:52:10 -04:00
Andy Schwerin
78f93d7a33
Link programs by linking all object files on the command line.
...
This is done rather than enumerating a list of static libraries to include.
SERVER-5112 and SERVER-6461
2012-07-17 13:10:04 -04:00
Eliot Horowitz
cc8aa499ff
SERVER-3893, can't find a system where this breaks right now
2012-07-11 13:24:31 -04:00
Dan Crosta
a6989ade62
allow db modules to declare scripts that are run as a test suite
2012-07-10 11:13:00 -04:00
Dan Crosta
09c5aff0fe
discover and configure modules in db/modules/
2012-07-06 16:08:39 -04:00
Andy Schwerin
83418bb235
SERVER-6158 : Link against an explicit instance of the mongoclient library.
...
This makes sure we're building and testing against the version of the library
that we expect.
2012-07-05 15:07:37 -04:00
Matt Dannenberg
f710e51faa
better freebsd support in sconstruct
...
Signed-off-by: Siddharth Singh <singhsiddharth@gmail.com>
2012-06-13 18:35:29 -04:00
Andy Schwerin
57f64fe508
SERVER-5852 : Use frame-pointers in 64-bit FreeBSD builds.
...
This makes execinfo:backtrace() work, and should have a minimal impact on
performance.
2012-06-08 17:59:21 -04:00
Andy Schwerin
82811e8dc8
SERVER-5702 Fix Build Break
...
SCons has decidedly mixed feelings about recursively substituting expansion
variables in env.Alias() statements. Replace "$UNITTEST_ALIAS" with "unittests"
in SConstruct.
2012-06-04 13:27:00 -04:00
Andy Schwerin
82544c7d08
SERVER-5702 : Add ability to register unit tests in SCons.
...
Tests are registered with env.RegisterUnitTest(), or by compiling a C++ unit
test with
env.CppUnitTest('test_name', [test_source_list], LIBDEPS=[...])
The result is that SCons knows how to build a file "build/unittests.txt", one line per test.
2012-06-04 13:08:27 -04:00
Andy Schwerin
c04922ad14
SERVER-5702 : C++ unit test framework that can be compiled separately.
...
Includes a unit test of the unit test framework written in the unit test
framework, itself.
2012-06-04 13:08:27 -04:00
Eric Milkie
a7be5e92b2
Revert " SERVER-5852 use libunwind routines for backtrace on freebsd"
...
This reverts commit e6f9efc3c3
.
This may be resubmitted as a generic replacement for backtrace()
on all platforms, rather than just FreeBSD.
2012-05-24 13:48:36 -04:00
Eric Milkie
e6f9efc3c3
SERVER-5852 use libunwind routines for backtrace on freebsd
2012-05-24 09:41:37 -04:00
Dan Crosta
3509a34e11
Set linker flags for GNU ld on FreeBSD 9
2012-05-16 09:15:49 -04:00
Dan Crosta
7d43615455
SERVER-5791 : SCons shouldn't die if HOME env var is not set
2012-05-09 14:38:01 -04:00
Eric Milkie
86b4fde37e
write minidumps for unhandled exceptions on Windows
...
This will write a file mongo.dmp in the current directory when you crash.
You can open this dump with windbg and examine all thread stacks and locals.
To read and parse the exception details, issue the .ecxr command.
2012-04-24 16:24:35 -04:00
Andy Schwerin
84614c30a3
SERVER-5557 : Higher performance timer on Linux.
...
Also supports systems that implement POSIX's clock_gettime() (i.e., FreeBSD).
2012-04-23 16:11:11 -04:00
Andy Schwerin
13bb9abf36
SCons: No need to check for libstdc++ when building on *nix machines.
2012-04-19 13:45:44 -04:00
Eliot Horowitz
b682f1071a
python on windows doesn't support uname
2012-04-19 10:01:54 -04:00
Eliot Horowitz
9185a4bfe5
some cleaning based on andy's code review
2012-04-18 17:59:43 -04:00
Eliot Horowitz
09804cb1b1
make config files and db depend on os/host
2012-04-18 14:43:59 -04:00
Andy Schwerin
890d3b586d
Move printStackTrace into new stacktrace.h/cpp; improve detection of execinfo.h.
2012-04-12 14:00:21 -04:00
Dan Crosta
1c58a7b5a1
SERVER-5524 upload client tarball to correct location in S3
2012-04-05 14:50:42 -04:00
Eric Milkie
8dd9661ca7
new scons option --mute, for less build output
2012-04-03 11:17:18 -04:00
Eric Milkie
51e9cc2895
cleanup pch; move some macros to SConstruct
2012-04-03 10:59:12 -04:00
Andy Schwerin
0546c22c22
SERVER-5451 : Fix "scons clientBuild" on buildbots with Boost installed in non-standard locations.
2012-03-30 14:05:09 -04:00
Andy Schwerin
9d92f4014f
SCons: Build spidermonkey using a SConscript, instead of the third-party tools crud.
...
Get rid of the third-party tools crud.
2012-03-28 20:23:09 -04:00
Andy Schwerin
fba1ca674b
SCons: Move snappy library building into its own SConscript.
...
Move away from the third-party-specific module importer, as with boost and pcre.
2012-03-28 20:23:09 -04:00
Andy Schwerin
4de8795575
SCons, use CCFLAGS, not CPPFLAGS, when referring to compiler flags.
2012-03-28 20:23:09 -04:00
Andy Schwerin
7655aa54ea
SCons: Clarify determination of when to use a system version of a library.
...
Introduces a predicate in our build system "use_system_version_of_library"
to answer the question of whether or not to use the system-supplied version
of a specified library (i.e., boost).
2012-03-28 20:23:09 -04:00
Andy Schwerin
0d40ba0044
Remove myCheckLib from SConstruct, other simplification/cleanup.
2012-03-28 11:42:59 -04:00
Andy Schwerin
a3e51b6721
SCons: /DNDEBUG stops boost assertions from aborting the program, which is not our desired behavior.
...
On Linux, we never define NDEBUG; make Windows behave the same.
2012-03-28 11:42:08 -04:00
Andy Schwerin
69db073a3e
SERVER-4881 : Stop defining BOOST_ENABLE_ASSERT_HANDLER.
...
It's correct for assertion failures in boost code to terminate the process,
which is their default behavior.
2012-03-26 21:39:10 -04:00
Andy Schwerin
a1f3bbaf6a
Build "test" as part of "all".
2012-03-23 14:07:15 -04:00
Andy Schwerin
d67ce1cd31
SCons refactoring, cleans up building and testing the C++ client.
...
This patch does the following:
1.) Remove pcre.h dependencies in the C++ client, and remove some other
unnecessary dependencies.
2.) Clean up how we build the client from the client source tarball, so it's
more like how we build it from the git repo / full source tarball.
3.) Fix up our "scons" so you only have to write "scons ." to build all of our
binaries, the binary archive (zip or tgz) and client source archive (zip or
tgz).
4.) Fix up SCons aliases "core", "tools", and "all".
5.) Let user specify the name of the client tarball via a SCons command line
switch.
Resolves SERVER-4231, SERVER-5255 .
2012-03-23 10:35:31 -04:00
Andy Schwerin
d500568fe1
Remove debugging print statement from SConstruct.
2012-03-19 17:09:33 -04:00
Andy Schwerin
0e0adf8855
Enable/disable DB-level locking at compile time.
...
Use the "--mongod-concurrency-level=db" flag to scons to enable db-level locking. Defaults
to disabled, can be disabled explicitly with "--mongod-concurrency-level=global".
2012-03-19 15:10:35 -04:00
Eliot Horowitz
6fc718c18a
enable BOOST_ENABLE_ASSERT_HANDLER in scons and fix boost assert functions
...
haven't removed from pch.h
2012-03-19 10:51:00 -04:00
Eric Milkie
0578ab5c5f
improved Windows compilation flags
2012-03-07 15:44:04 -05:00
Andy Schwerin
322c3cc620
SERVER-5172 : Fix builds that set include and library paths.
2012-03-07 15:05:48 -05:00
Andy Schwerin
1daae4e935
SERVER-5172 : Respond to forgotten CR comments.
2012-03-07 10:46:54 -05:00
Andy Schwerin
a8c3284a03
SERVER-5172 : Compile and link mongod and friends against the boost in third_party.
...
To use system boost, pass --use-system-boost or --use-system-all to scons.
2012-03-07 10:37:06 -05:00
Tad Marshall
7ee0d0d8d1
Merge pull request #171 from djcsdy/windows-32-bit-build-fix
...
SERVER-5038 Always build 32-bit when building with --32 on Windows
Set force32, msarch and TARGET_ARCH correctly when --32 is specified.
Verified that this was broken before and is fixed by this patch.
2012-03-03 15:20:02 -08:00
Eliot Horowitz
c72786cdd1
add gcov option to scons to prep for SERVER-1600
2012-03-02 15:54:11 -05:00
Dan Crosta
40365f6cb4
SERVER-4995 : check for and link with librt on Solaris
2012-03-01 15:15:40 -05:00
Eric Milkie
058a36a347
SERVER-3827 SConstruct changes for new pcre
2012-02-28 14:06:35 -05:00
Eliot Horowitz
2ebabdfbf4
Revert " BUILDBOT-58 : use s3tool to do s3-related work (and remove old, unused s3 scripts)"
...
This reverts commit fc7cac2239
.
2012-02-18 01:55:34 -05:00
Dan Crosta
fc7cac2239
BUILDBOT-58 : use s3tool to do s3-related work (and remove old, unused s3 scripts)
2012-02-16 21:51:26 -05:00
Dan Crosta
b1d52e5246
add --smokeauth pass-through to smoke.py --auth
2012-02-10 22:08:13 -05:00
Mathias Stearn
74c1ffb05d
Add -Woverloaded-virtual to CXXFLAGS and fix build SERVER-4802
2012-02-09 17:57:49 -05:00
Andy Schwerin
0b0a55509e
Make SConstruct robust to TERM not being set.
2012-02-08 11:24:26 -05:00
Dan Crosta
7ce95709fe
set up files lists and installs for client tarball SERVER-4875
2012-02-08 00:28:53 -05:00
Daniel Cassidy
01d17fa1c5
Always use the 32-bit Microsoft toolchain when building with --32 on Windows.
2012-01-31 15:07:42 +00:00
Eliot Horowitz
38399f723c
Revert "horrible hack for sun32"
...
This reverts commit ef9684b7e0
.
2012-01-30 15:43:19 -05:00
Eliot Horowitz
ef9684b7e0
horrible hack for sun32
2012-01-30 12:50:30 -05:00
Dan Crosta
ff87e84c3e
SERVER-4591 : python-2.4 compatible version of rpartition
2012-01-23 09:38:39 -08:00
Eliot Horowitz
ff0157a562
cleaner variant dir directories
2012-01-21 19:50:45 -05:00
Andy Schwerin
e885029b8f
Fix scons dist_clean
2012-01-20 23:03:12 -08:00
Andy Schwerin
1afb642f15
SCons: Check SCons version >= 1.1.0 before compiling (used to be 0.98.4).
2012-01-20 09:24:27 -08:00
Andy Schwerin
785651d2be
Fix "scons dist" / "scons s3dist".
...
Also, fix stripping and checking for GLIBC_2.4 dependencies on Linux.
2012-01-20 00:32:00 -08:00
Andy Schwerin
959ca16b31
Make SConstruct more consistent with old behavior for finding pcap on Windows, for buildslaves.
2012-01-19 16:50:57 -08:00
Andy Schwerin
51a735c40f
SCons: Fix 64-bit on OS X 10.5 build by specifying target architecture when building RelocatableObjects.
2012-01-19 10:26:48 -08:00
Andy Schwerin
dcb8445b55
SCons: Fix Solaris 64-bit support.
2012-01-18 14:17:12 -08:00
Andy Schwerin
2561f20421
SConstruct: Prioritize includes from mongo source tree and third_party over system includes, unless explicitly overridden.
2012-01-18 11:01:55 -08:00
Andy Schwerin
84289e0b88
Fix for including right PCRE headers and linking commands into mongod/s.
2012-01-17 23:48:19 -08:00
Andy Schwerin
6cf66ed2a0
Change client library linking on OS X to support 10.5.
2012-01-17 19:23:17 -08:00
Andy Schwerin
30668e1c79
SCons updates to support variant directories.
...
This patch is a reorganization of our build files, which brings them slightly
closer in line with standard SCons organization.
In particular, the SConstruct file sets up the various "build environment"
objects, by examining the local system and command line parameters. Then, it
delegates to some SConscript files, which describe build rules, like how to
compile "mongod" from source.
Typically, you would create several SConscript files for a project this large,
after breaking the project into logical sub projects, such as "platform
abstraction", "data manager", "query optimizer", etc. That will be future work.
For now, we only separate out the special rules for executing smoke tests into
SConscript.smoke. Pretty much all other build rules are in src/mongo/SConscript.
"tools" are placed in site_scons/site_tools.
This patch also includes better support for building and tracking dependencies
among static libraries ("libdeps" and "MergeLibrary"), and some incumbent, minor
restructuring.
This patch introduces a "warning" message from SCons about framework.o having
two rules that generate it. It is harmless, for now, and will be removed in
future work.
Future work also includes eliminating use of the SCons "Glob" utility, and
restructuring the source code into sensible components.
2012-01-17 14:58:51 -08:00
Tad Marshall
e75d664e24
hand-merge pull request # 144 from ukd1
...
Just a fix for a minor typo
2012-01-16 15:42:07 -05:00
Nathaniel McCallum
9dc1b751c2
remove stray shortName typo
2012-01-15 17:14:59 -05:00
U-tellus\cwestin
27e8af5b4f
SERVER-3832
2012-01-06 15:54:50 -08:00
Eric Milkie
01587e687d
run clone tests on windows
2012-01-04 16:32:36 -05:00
Eric Milkie
37b331b756
adjust target names for Windows
2012-01-04 14:22:18 -05:00
Eric Milkie
b002202f5c
enable certain test targets to work on windows
2012-01-04 10:46:39 -05:00
dwight
c4ec255720
compile v8 windows
2012-01-03 13:53:04 -05:00
dwight
fa786827b0
Merge branch 'master' of github.com:mongodb/mongo
2011-12-30 21:23:42 -05:00
dwight
6b618de816
better name is memconcept change it
2011-12-30 21:23:08 -05:00
Mathias Stearn
7f94073f98
Fix --pch build for src/mongo change
2011-12-30 16:31:11 -05:00
Andy Schwerin
ff70c7c017
Support CPU profiling in mongod.
...
Add commands _cpuProfileStart and _cpuProfileStop to allow you to selectively
enable and disable profiling, around the regions of execution that interest you.
2011-12-28 13:29:31 -08:00
Eric Milkie
7b745865c0
a few warnings still exist; hold off on this.
2011-12-27 17:15:07 -05:00
Eric Milkie
b3c728d97b
turn on warnings-as-errors for Windows builds.
...
Also added more documentation on what compiler flags we're using. Note that we're still allowing linker warnings (there are a few in the current build).
2011-12-27 16:16:14 -05:00
dwight
d175b6fe88
stub new cpp file
2011-12-27 15:06:21 -05:00
Eliot Horowitz
6648144e57
remove old benchmark code for gae
2011-12-25 12:00:26 -05:00
Eliot Horowitz
baf050dd18
fix header install
2011-12-25 10:41:34 -05:00
Eliot Horowitz
607d9fc0a5
Revert "Revert "variant dir not working on linux yet""
...
This reverts commit ab391b3ce3
.
2011-12-25 01:24:30 -05:00
Eliot Horowitz
ab391b3ce3
Revert "variant dir not working on linux yet"
...
This reverts commit da402cf22d
.
2011-12-25 01:22:13 -05:00
Eliot Horowitz
f229dfb177
fix VariantDir
2011-12-25 01:21:33 -05:00
Eliot Horowitz
da402cf22d
variant dir not working on linux yet
2011-12-24 23:01:31 -05:00
Eliot Horowitz
17eafca839
variant dirs for building
2011-12-24 22:49:25 -05:00
Eliot Horowitz
ae1ecd9c78
bulk move of code to src/ SERVER-4551
2011-12-24 15:33:45 -05:00
Eric Milkie
eb293c09a4
tell Windows linker to create .PDB debug info files for release mode images
...
This way, you can connect WinDbg to a running release-mode process and it resolves
symbol names properly. We were already creating the debug info with the compiler;
all that was necessary was to tell the linker to collate all the info into pdb's.
2011-12-23 17:30:42 -05:00
dwight
1480c8756d
give curop its own cpp file
2011-12-22 20:41:05 -05:00
dwight
8d103a1f3b
compile
2011-12-19 15:47:11 -05:00