Michael Haubenwallner
c331f126cd
Improve using MSVC from within Cygwin ( #480 )
...
* build: Support toolset=msvc even as Cygwin build.
Fixes: https://github.com/boostorg/build/issues/459
* msvc.jam: Avoid segmentation fault if ProgramFiles env is missing.
When we run in an 'env -i' session in Cygwin, which may not have the
"ProgramFiles(x86)" or "ProgramFiles" environment variables set, we
really should not end up in a segmentation fault.
* msvc.jam: On Cygwin, query cygpath on missing ProgramFiles env.
When we run in an 'env -i' session in Cygwin, which may not have the
"ProgramFiles(x86)" or "ProgramFiles" environment variables set, we can
try to query cygpath instead.
2019-09-29 09:09:01 -05:00
Neale Ferguson
844067eca1
Add z15 to the s390x platform ( #484 )
2019-09-20 11:48:26 -06:00
Edward Diener
927ba8e60e
Remove repeating option not created by condition. ( #479 )
2019-09-19 10:55:30 -06:00
Edward Diener
3e3fd1d70d
Added <cxxstd> for the IBM compiler. ( #478 )
2019-09-11 07:08:32 -05:00
Andrey Semashev
146ab9a227
Renamed strings.h to jam_strings.h to distinguish from POSIX strings.h. ( #476 )
...
Some system headers on POSIX systems indirectly include strings.h in extern "C"
region. This sometimes results in Boost.Build's strings.h being included into
such region, which marks all string_* functions as extern "C" and changes their
name mangling rules accordingly, which causes linking errors. To resolve this
header conflict, this commit renames strings.h to jam_strings.h. And strings.cpp
to jam_strings.cpp for consistency.
Fixes https://github.com/boostorg/build/issues/468 .
2019-09-10 22:25:12 -05:00
Juan Alday
25ce5386f3
Extracts version of IBM and Sun compilers ( #474 )
...
xlc and suncc do not support the --version flag. This PR fixes the bootstrapper to use the correct flags.
2019-08-28 07:08:16 -05:00
Aurelien Chartier
4e2be04c2c
Add QNX support for threading-flags ( #467 )
2019-08-23 12:23:16 -05:00
Edward Diener
265c567757
Make code safer when attempting to use shell fails and there are no items.
2019-08-15 02:47:12 -04:00
Edward Diener
1e4fe9e090
Eliminated space at the end of a comment line.
2019-07-27 13:38:04 -04:00
Edward Diener
7f6496f590
Corrected comment.
2019-07-27 13:35:15 -04:00
Edward Diener
58e0eedd3d
Corrected comment to avoid confusion.
2019-07-27 12:22:14 -04:00
Edward Diener
c15b3239d2
Updated documentation for the 'root' option for the intel toolset on Windows.
2019-07-27 12:10:45 -04:00
Edward Diener
923ce29a88
Corrected setting of root from the command.
2019-07-27 11:29:26 -04:00
Edward Diener
9e742cec13
The root should have a trailing / for the dirictory.
2019-07-27 10:53:30 -04:00
Edward Diener
03a14395d4
Merge branch 'develop' of https://github.com/boostorg/build into develop
2019-07-26 14:57:18 -04:00
Edward Diener
e1d19a69e1
Correct fix for grouping syntax.
2019-07-25 09:19:40 -04:00
Edward Diener
c23efb0210
Whoops, removed fix.
2019-07-25 09:15:26 -04:00
Edward Diener
5777341a39
I had assumed '!' has higher precedence than '&&' in the bjam language, but just in case that is not so I have made this fix.
2019-07-25 09:12:35 -04:00
Edward Diener
72d9e39555
Use root to find the archiver and ranlib if they are not specified.
2019-07-22 08:06:12 -04:00
Edward Diener
a866b6d216
Add support for a <root> option which points at runtime to the root directory of the gcc installation which clang uses at its backend. This is mainly for clang targeting gcc on Windows where multiple versions of mingw(-64)/gcc can be installed. On Linux clang will normally use the version of gcc in the PATH, so this option is normally not used in Linux. The idea is that the toolset command is a script, which sets the PATH for clang and gcc before invoking clang++, and then the <root> option points to the gcc installation at runtime so that any shared libraries will be found.
2019-07-19 22:27:20 -04:00
Edward Diener
f00ca383e0
Don't show direct compiler setup output.
2019-07-15 08:03:14 -04:00
Edward Diener
7c4f1b6643
Improve handling of <root> option. Add back VS2019 support for Intel 19.0 for Windows even though the /Q parameter warns about vc14.2 ( see https://software.intel.com/en-us/forums/intel-c-compiler/topic/814333 ). Add support for option <rewrite-setup-scripts>always to force regeneration of the single msvc-setup.bat file when using multiple Intel C++ for Windows toolsets and/or multiple vc++ compatibilities for a given toolset.
2019-07-15 00:16:50 -04:00
Rene Rivera
b6c05c9a92
Bump jam source version to 4.1 also.
2019-07-11 08:21:28 -05:00
Andrey Semashev
2b9645cd7e
Fix compiler warnings about -std=gnu11 on Cygwin. ( #458 )
...
-std=gnu11 is a flag for C source files, for C++ -std=gnu++11 should be used.
2019-07-11 06:34:28 -05:00
Rene Rivera
35c86a1bed
Start of 4.1.0 release.
2019-07-11 06:32:18 -05:00
Edward Diener
64e484ade5
Intel 19.0 only supports VS2017 (vc++14.1), and not VS2019 (vc++14.2) as I originally erroneously coded. Also added is the same support for an optional <root> option as the intel-linux compiler. In intel-win the optional <root> option must point to the user's directory where iclvars.bat exists for a particular intel-win installation. Like intel-linux the <root> option is mean for intel-win toolsets where the toolset 'command' is a script rather than either a full path to an invocation of the compiler as icl.exe or left blank.
2019-07-11 01:07:05 -04:00
Edward Diener
fb0a7eb9f8
Support for VS2019 for intel-win 19.0 ( #457 )
2019-07-09 06:36:03 -05:00
Edward Diener
2a88fdfbda
Support for VS2019 for intel-win 19.0
2019-07-09 03:32:12 -04:00
Rene Rivera
a83f94aad2
Fix bad number of args to cpu count macro.
2019-06-18 09:24:18 -05:00
Rene Rivera
79c248c57a
Restore POSIX & Linux core count.
...
Looks like the std core count function is no worse than the POSIX &
Linux specific methods. Re-enabling those platform methods.
2019-06-18 08:09:48 -05:00
Rene Rivera
9e4bb2e28b
Disable the POSIX & Linux core count until stable.
...
Some methods for quering the cpu counts are unreliable when run
in a container or other cpuset restrictions. Disable them to prefer
the std query.
2019-06-14 23:48:59 -05:00
Rene Rivera
495410e2c1
Avoid warnings about redef of _GNU_SOURCE.
2019-06-11 21:34:58 -05:00
Rene Rivera
c27d575fb3
Rework sysinfo cpu to avoid overcounts.
...
When running in Linux containers the POSIX sysconf can return "too many"
cores or cpus. Instead we prefer using Linux specific sched_getaffinity
there.
2019-06-11 21:26:25 -05:00
James E. King III
9f17722e80
Add -fno-omit-frame-pointer to sanitizer options for gcc/glang ( #450 )
2019-06-10 09:06:08 -05:00
Hans Dembinski
11bd2898fb
simplified coverage options and added docs ( #449 )
...
* simplified coverage options and added docs
* fix off must be first to be default
2019-06-09 09:03:10 -05:00
Rene Rivera
a8ab76ef97
Final fallback for cpu count to use std::thread.
2019-06-04 17:07:24 -05:00
Rene Rivera
52d0cb791c
Fix some 11 warnings.
2019-06-04 09:07:39 -05:00
Rene Rivera
451059949d
Implement minimal cpu sys info for POSIX.
...
This implements partial cpu count information on POSIX systems using
`sysconf` call. This should be the fallback for most Unix like systems
if they don't have a more accurate cpu count API.
2019-06-04 08:25:47 -05:00
Rene Rivera
150d69bd57
Default to available cpu threads for -j option.
...
This adds a `b2::system_info` class to obtain available information on
system we are running in. Currently provides CPU counts.
And currently only implemented for macOS.
2019-06-03 18:39:22 -05:00
tee3
a5cc06a9b4
features: Add freertos as an operating system. ( #446 )
2019-06-03 14:53:47 -05:00
Peter Dimov
1f6ac27ecd
Add /manifest to clang-win.link ( #442 )
2019-06-03 14:51:22 -05:00
Rene Rivera
37bcce2f35
Minor change for b2 to build with bcc32.
2019-05-08 22:46:08 -05:00
Damian Jarek
16f49cac33
Add support for leak sanitizer: ( #435 )
...
Can be enabled via the `leak-sanitizer` feature.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2019-05-06 09:40:49 -05:00
Rene Rivera
f553984b77
Fix cygwin engine build from missing syms.
...
[fixes 427]
2019-05-01 17:05:54 -05:00
Dmitry
ed5cf45ca9
support for importing pkg-config packages ( #422 )
2019-05-01 11:27:36 -05:00
Neale Ferguson
a62f2daeb0
Add S390x as a supported platform ( #432 )
...
Add support for s390x
2019-05-01 10:52:33 -05:00
Damian Jarek
f2aca24408
Set coverage flags for gcc and clang: ( #431 )
...
- `<coverage>all` sets up `--coverage` for compiler and linker
- `<coverage>profile` sets up `-fprofile-arcs` for compiler and linker
- `<coverage>test` sets up `-ftest-coverage` for compiler and
`-lgcov` for linker
Reference:
https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2019-04-30 11:13:23 -05:00
Steven Watanabe
2d306dbe9c
Fix errors reported by ubsan. (memcpy w/ nullptr).
2019-04-24 16:31:31 -06:00
Rene Rivera
ca0e9fdf0c
Merge pull request #409 from djarek/sanitizers
...
Support for common sanitizers
2019-04-21 17:30:25 -05:00
Rene Rivera
3fe7120a19
Merge branch 'develop' of https://github.com/boostorg/build into develop
2019-04-16 21:15:45 -05:00