Commit Graph

347 Commits

Author SHA1 Message Date
Dane Springmeyer
4598599f52 # This is a combination of 4 commits.
# The first commit's message is:
Add support for building against mason-provided deps

# This is the 2nd commit message:

back to just one travis job: linux/release

# This is the 3rd commit message:

remove pkg-config debugging [skip ci]

# This is the 4th commit message:

use clang++ 3.8.1 for mason builds since 3.8 is what we have been using
2016-10-27 23:26:33 -07:00
Daniel Patterson
da77edfc83 Explicitly set minimum OSX version, and detect SDK path.
This fixes situations where XCode is installed with a newer SDK than the current OS. (#3198)
2016-10-27 16:29:27 -06:00
Dane Springmeyer
293856981f add -l to rt and gcov 2016-10-24 17:09:03 -07:00
Dane Springmeyer
502d9e10c2 cmake fixes:
- Builds up ENGINE_LIBRARY_LISTING correctly to pass to pkg-config
    - Previous behavior had major flaw and would result in paths in libosrm.pc like: "-L-L"
      when the data was "-L/path -lfoo" or just "-lpthread" with no -L/path. It only worked correctly for static libraries
  - Refactors to call find_package for boost in one place (helps prepare for upcoming mason PR)
2016-10-20 12:09:27 -07:00
Patrick Niklaus
983ad3513a Enabled address sanitizer 2016-10-19 18:30:06 +02:00
Daniel Patterson
b72dc8c0cf Enable use of other build types than Debug and Release, and properly default to Release. 2016-10-14 12:37:01 +02:00
Daniel J. Hofmann
dbd108df8c Reworks how we search for Lua in CMake and constrain to Lua 5.1 5.2
At the moment we have a FindLua52.cmake module that is happy with
Lua52 but also Lua51 and even Lua53. Let's instead pull in the official
one from CMake (since it's not yet in CMake 2.8 which we support).

https://github.com/Kitware/CMake/blob/master/Modules/FindLua.cmake

BSD licenced.

Requires Lua 5.1 or Lua 5.2, since seeing memory issues on 5.3:

https://github.com/Project-OSRM/osrm-backend/issues/2926
2016-10-05 13:23:48 +02:00
Daniel J. Hofmann
94ca782816 Bumps version to 5.4.0 2016-10-04 10:46:56 +02:00
Daniel J. Hofmann
b821a1dd98 Disables ld.gold on binutils < 2.26, resolves #2984 2016-10-03 15:41:40 +02:00
Daniel J. Hofmann
6290aeea93 Fixes Tile Unit Test Compilation 2016-09-30 16:58:50 +02:00
karenzshea
eafe3fa928 remove luajit support 2016-09-28 11:12:11 +02:00
Daniel J. Hofmann
d1f555dcef Removes unused JSON logger.
References:
- https://github.com/Project-OSRM/osrm-backend/pull/2769
2016-09-28 10:01:56 +02:00
Daniel Patterson
fa5714ab82 Unset FORTIFY_SOURCE before setting to avoid warnings for compilers where FORTIFY_SOURCE is predefined. (#2946) 2016-09-27 21:32:22 -07:00
Daniel J. Hofmann
8b144f22c9 Exposes osrm::exception for client usage, resolves #2813 2016-09-01 09:12:35 +02:00
Michael Krasnyk
41b54cf25d
Don't use gold gc-sections for binutils < 2.25
Issue 2785: check gold binutils version and don't use gc-sections for versions prior 2.25
due to https://sourceware.org/bugzilla/show_bug.cgi?id=17639

readelf --debug-dump=frames build/libosrm_extract.so
Contents of the .eh_frame section:
...
readelf: Warning: Invalid length 0xfff01dd8 in FDE at 0x000020
2016-08-25 23:51:25 +02:00
Patrick Niklaus
5ee15ee339
Use webkit code snippet to detect GNU gold 2016-08-25 22:45:49 +02:00
Patrick Niklaus
01b0bce2d5
Use gold linker by default if available 2016-08-25 22:45:49 +02:00
Sandra Thieme
9957254a5a Use c++1y instead of c++14 2016-08-23 13:01:07 +02:00
Daniel J. Hofmann
3a0eed2ee5
Make sanitizer used for Fuzz testing configurable via FUZZ_SANITIZER 2016-08-19 13:59:59 +02:00
Daniel J. Hofmann
2557bdcf39
Basic Fuzz Testing.
[100%] Fuzzing libosrm
    /tmp/osrm-backend/build/fuzz/driver -max_len=4096 corpus  > fuzz-0.log 2>&1
    /tmp/osrm-backend/build/fuzz/driver -max_len=4096 corpus  > fuzz-1.log 2>&1
    /tmp/osrm-backend/build/fuzz/driver -max_len=4096 corpus  > fuzz-2.log 2>&1
    /tmp/osrm-backend/build/fuzz/driver -max_len=4096 corpus  > fuzz-3.log 2>&1

References:
- http://llvm.org/docs/LibFuzzer.html
- http://llvm.org/releases/3.8.0/docs/LibFuzzer.html
- https://github.com/Project-OSRM/osrm-backend/issues/1678
2016-08-19 13:59:59 +02:00
Dane Springmeyer
71d64e8cd9
Default to c++14 / drop g++-4.8 from testing matrix 2016-07-25 19:30:43 +02:00
Patrick Niklaus
dc77d02e8a
Change OSRM version to 5.3.0 2016-06-28 10:35:45 +02:00
Daniel J. Hofmann
61ba985bc9
Prevent linker from discarding TBB symbols we need, fixes #2557
We build `osrm_contract` (the library) linking in libtbb. We then
build `osrm-contract` (the binary) linking in `osrm_contract` (the
library).

Because we're only using TBB's `parallel_invoke` in the code for the
binary, it seems like the linker discards some symbols in the library.

Therefore we have to link libtbb for the binary again. Even worse, the
order now matters: if we first link in `osrm_contract` and then libtbb,
we're still hitting the issue re. discarded symbols.

Therefore we first link in all dependencies (libtbb, libboost*), and
only then `osrm_contract`.

Strictly speaking, we probably have to do this for all of our binary
targets, or we will hit similar issues in the future.
2016-06-24 12:06:28 +02:00
Patrick Niklaus
a28125ee9a Merge pull request #2577 from noblige/noblige/compile-armv7
option to disable LTO
2016-06-24 12:04:02 +02:00
Aleksei Potov
05dc415aba option to disable LTO 2016-06-23 09:44:02 -07:00
Daniel Patterson
6dedd9cb72 Fix segfault when route includes very short segments. 2016-06-22 14:48:57 -07:00
Daniel J. Hofmann
256d39b572 Sync OSRM version in CMakeLists, fixes #2576 2016-06-22 17:03:31 +02:00
Michael Krasnyk
57c9525e5c
Added i686 Travis build 2016-06-20 22:45:40 +02:00
Dane Springmeyer
6ecc123d15
Fix various issues with pkg-config 2016-06-04 12:08:54 +02:00
Daniel J. Hofmann
87f00d2c4c Restrict CMake version to 2.8.11+ for target_include_directories 2016-06-02 16:07:29 +02:00
Dane Springmeyer
4de64a92cb fix zlib linking order 2016-05-25 09:32:27 -04:00
Patrick Niklaus
edf9e0c1ed
[skip ci] Update changelog and OSRM version 2016-05-20 18:52:00 +02:00
Dane Springmeyer
fe39d0fd10 disable BOOST_TEST_DYN_LINK if Boost_USE_STATIC_LIBS 2016-05-20 00:03:37 -04:00
Moritz Kobitzsch
ba074b0116
initial version of intersection classification 2016-05-19 16:43:46 +02:00
Daniel J. Hofmann
0f2bb5dde5
Disable builing components tool by default until GDAL 2 compatibility #1738 lands 2016-05-12 00:25:18 +02:00
Daniel J. Hofmann
98937b187f
We require Visual Studio 2015+
References:
- https://github.com/Project-OSRM/osrm-backend/issues/2341#issuecomment-216231618
2016-05-02 17:50:54 +02:00
Patrick Niklaus
578eda7d28
[skip ci] Add release docs 2016-04-29 14:00:10 +02:00
Patrick Niklaus
cc35d15b2d
More folds and reorder some build instructions 2016-04-25 00:19:48 +02:00
Patrick Niklaus
b6a793a1e2 Fix COVERAGE=ON and add SANITIZE=ON/OFF 2016-04-12 15:43:29 +02:00
Patrick Niklaus
6643e7f499 Integrate converage reporting 2016-04-08 20:37:51 +02:00
Patrick Niklaus
dea12779cf basename -> filename, fixes #2027 2016-04-08 01:50:25 +02:00
Daniel J. Hofmann
a516245c94 Modularize benchmarks subproject 2016-04-06 18:36:08 +02:00
Daniel J. Hofmann
b1ed268d0e Start modularizing the CMake buildsystem
The main reason for modularizing the unit tests was to split off
libboost_unit_test_framework from the osrm toolchain binaries.

Now only the unit test binaries link against it, unblocking
binary distribution without unit test library dependencies.

I started this on v4 a couple of weeks ago and hit a -llua5 issue on
Travis. By now v5 diverged quite a bit (especially in the code that I
have to stare at for debugging the issues).

https://github.com/Project-OSRM/osrm-backend/pull/2073

Let's bring this to v5+ only.

This is blocking:

- https://github.com/Project-OSRM/osrm-backend/issues/2065
- https://github.com/Project-OSRM/osrm-backend/issues/2197#issuecomment-204864938
2016-04-06 18:36:06 +02:00
Patrick Niklaus
c540c85cf8 Remove tests from default target until we get proper switchting in place 2016-04-05 22:59:14 +02:00
Patrick Niklaus
b17491ebe5 Bump osrm version 2016-04-05 22:59:14 +02:00
Patrick Niklaus
7174baa91e Move osrm-components to BUILD_COMPONENTS flag 2016-04-05 22:59:14 +02:00
Patrick Niklaus
a964bec0f8 Add route fixture test 2016-04-05 22:59:14 +02:00
Patrick Niklaus
d51eefa1c4 Make tests build by default 2016-04-05 22:59:14 +02:00
Daniel J. Hofmann
099a805260 Initial unit tests setup for typed libosrm services 2016-04-05 22:58:32 +02:00
Daniel J. Hofmann
9d893d6d4d Library tests build system integration 2016-04-05 22:58:32 +02:00