Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merging Plexe platooning models into official SUMO release #5102

Merged
merged 25 commits into from Feb 9, 2019

Conversation

michele-segata
Copy link
Contributor

Dear all,

with this pull request, I would like to merge Plexe-provided platooning functionalities into the official SUMO release. I closed the previous PR because one commit was not signed-off.

Best,
Michele

Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
…f an edge

Signed-off-by: Michele Segata <segata@ccs-labs.org>
…hing to avoid recomputation

Signed-off-by: Michele Segata <segata@ccs-labs.org>
…onfig

Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
@behrisch
Copy link
Contributor

Looks already great, but unfortunately it does not build under windows, mainly because you still use windows_config.h which we abolished recently. Please fix that. We also think it is probably a good idea to put the engine model in a different directory but since this is a little bit involved you can also leave this to us (although we are happy if you want to try :-)).

@@ -62,7 +62,7 @@ endif ()
# special debug flags
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG")
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -stdlib=libstdc++ -fsanitize=undefined,address,integer,unsigned-integer-overflow -fno-omit-frame-pointer -fsanitize-blacklist=${CMAKE_SOURCE_DIR}/build/clang_sanitize_blacklist.txt")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fsanitize=undefined,address,integer,unsigned-integer-overflow -fno-omit-frame-pointer -fsanitize-blacklist=${CMAKE_SOURCE_DIR}/build/clang_sanitize_blacklist.txt")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the point in removing this? I think I remember that we had build problems with the clang libstdc especially on Mac.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes that is exactly the problem. On a Mac with clang, the -stdlib=libstdc++ causes the compilation to fail when including the cstdlib and the random libraries. This was the only way I've found to deal with this issue.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you bulding the "standard" brew way?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually I don't know what the standard brew way is :) I'm using cmake the following way:

mkdir build-release
cd build-release
CC=clang CXX=clang++ cmake -DCMAKE_BUILD_TYPE=Release ..
make

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just meant the way you installed the dependent libraries because I think the main point is that all need to use the same cstdlib.

@behrisch
Copy link
Contributor

Looks already great, but unfortunately it does not build under windows, mainly because you still use windows_config.h which we abolished recently. Please fix that. We also think it is probably a good idea to put the engine model in a different directory but since this is a little bit involved you can also leave this to us (although we are happy if you want to try :-)).

I already fixed the windows_config.

@michele-segata
Copy link
Contributor Author

Thanks for fixing the windows_config issue. I'm happy to move the engine models in a different folder. Suggestions for the name of the folder? I think it is better to have this settled to avoid future renaming.

@behrisch
Copy link
Contributor

Simply src/microsim/engine

Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
@behrisch
Copy link
Contributor

behrisch commented Feb 1, 2019

It seems the engine dir is still missing

Signed-off-by: Michele Segata <segata@ccs-labs.org>
@michele-segata
Copy link
Contributor Author

It seems the engine dir is still missing

I was missing some autotools configuration options. Let's see if it compiles now. On my machine it was working.

@behrisch
Copy link
Contributor

behrisch commented Feb 1, 2019

If you look here https://github.com/michele-segata/plexe-sumo/tree/master/src/microsim then there is no engine dir so I suppose you forgot to add the files.

Signed-off-by: Michele Segata <segata@ccs-labs.org>
@michele-segata
Copy link
Contributor Author

If you look here https://github.com/michele-segata/plexe-sumo/tree/master/src/microsim then there is no engine dir so I suppose you forgot to add the files.

what an idiot... fixed. Hopefully everything is fine now.

@behrisch
Copy link
Contributor

behrisch commented Feb 1, 2019

It happens to the best of us ;-) Thanks for reacting so fast.

@michele-segata
Copy link
Contributor Author

Now it seems to have a problem with cmake on linux and windows machines. I tested the build on my mac, so I couldn't see this problem. I'll try to have a look today into this.

Signed-off-by: Michele Segata <segata@ccs-labs.org>
@michele-segata
Copy link
Contributor Author

Now the problem seems to be solved (for linux). However the TravisCI task failed not because of the code but it just hanged while running the before_install task. Is there a way (for you) to re-start the apple-autotools-gcc test?

Signed-off-by: Michele Segata <segata@ccs-labs.org>
Signed-off-by: Michele Segata <segata@ccs-labs.org>
@michele-segata
Copy link
Contributor Author

I have now fixed the windows compilation problems as well. The Travis build however failed for some reasons I don't understand. I don't think they are related to my code changes.
Do you know what the problem is?

@behrisch behrisch merged commit 860d587 into eclipse-sumo:master Feb 9, 2019
@behrisch
Copy link
Contributor

behrisch commented Feb 9, 2019

We will work the rest out in the master. Thanks for fixing all the bits and pieces!

@michele-segata
Copy link
Contributor Author

We will work the rest out in the master. Thanks for fixing all the bits and pieces!

Nice! Thank you for merging the code in.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants