-
Notifications
You must be signed in to change notification settings - Fork 24
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
Cmake #654
Conversation
Cmake release
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, nitpicks on commented code. This looks like a good upgrade from the current Make based build system. One question, does this handle rebuilding targets when a header file dependency changes? It wasn't clear to me that it does unless cmake handles it automatically when you specify includes.
CMakeLists.txt
Outdated
endif() | ||
|
||
set(CMAKE_CXX_FLAGS "-std=c++11 -Wall -fPIC -Werror") | ||
#CXXFLAGS = -std=c++11 -Wall -fPIC -Werror -ferror-limit=5 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need this comment?
src/CMakeLists.txt
Outdated
) | ||
|
||
|
||
#TARGETS coreir coreirsim coreir-commonlib |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need this comment?
COMMENT "Copying to lib/" | ||
) | ||
|
||
endforeach() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
foreach is a nice feature
I think it's okay to merge this before tests have been migrated, since this seems like it will make it easier to work with the build system. |
@leonardt, it does seem to incrementally rebuild appropriately when I edit some .h files. |
This PR is Cmakeifying CoreIR.
Tests are not being done using cmake currently.
A large chunk of the files changed are due to fixing warnings when building the release version of cmake. These are fixed by changing assert -> ASSERT and by using a new coreir_unreachable() macro.