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

Add proper integration test w/ build + launch; refactor CMakeLists.txt to accommodate #283

Merged
merged 3 commits into from
Jan 28, 2017

Conversation

headupinclouds
Copy link
Collaborator

Note: Most significantly, refactored cmake source to provide basic configurations suitable for integration tests and library builds in the top CMakeLists.txt and moved most library specific cmake source and hunter-package configurations to src/CMakeLists.txt

  • update build-ios.sh toolchain to use libcxx
  • refactor top CMakeLists.txt
  • make cmakelists.txt suitable for both library/project builds and integration/bootstrap tests (for post installation binary tests)
  • move packages from CMakeLists.txt -> src/CMakeLists.txt; better grouping of cmake configs
  • add DRISHTI_BUILD_INTEGRATION_TESTS option
  • populate 3rdparty src + hunter packages side-by-side with hunter_add_package() + find_package() calls (more modular)
  • convert drishti-example-eye.cpp from a standard app to a drishti_test_main() application to leverage automated device testing (the integration tests were started as an entirely independently CMakeLitst.txt project, but I ended up having to duplicate much of the core drishti/CMakeLists.txt cmake code to run the automated tests, so it made more sense to make the top level drishti/CMakeLists.txt file manage both the core library builds and the integration test)
  • update the bin/build-integration-test.sh file to use top level CMakeLists.txt for building + running the integratino test: add —test, add new polly —output option to avoid conflicts with the library build tree
  • various cmakelists.txt cleanups and formatting
  • TODO: move include_directories() calls to target equivalents where possible.
  • enable the per texture annotation callback in facefinder drawing
  • dont’ display pupil by default in eye annotations (facefinder drawing)
  • make pupil drawing optional facefinder drawing
  • add bash script to provide summary of build release
  • bump verison to v0.8.0
  • Public SDK Eye::eyelids type was updated to use static Array<> type
  • include + use drishti_split_symbols on public sdk
  • reduce drishti::sdk::Eye Array<T,128> default size to 128
  • add smake function to split debug symbols on install
  • add cmake function to check linker flags
  • update polly submodule pointer for (--output build tree option)

Note: Most significantly, refactored cmake source to provide *basic* configurations suitable for integration tests and library builds in the top CMakeLists.txt and moved most library specific cmake source and hunter-package configurations to src/CMakeLists.txt

*  update build-ios.sh toolchain to use libcxx
* refactor top CMakeLists.txt
*  make cmakelists.txt suitable for both library/project builds and integration/bootstrap tests (for post installation binary tests)
* move packages from CMakeLists.txt -> src/CMakeLists.txt; better grouping of cmake configs
* add DRISHTI_BUILD_INTEGRATION_TESTS option
* populate 3rdparty src + hunter packages side-by-side with hunter_add_package() + find_package() calls (more modular)
* convert drishti-example-eye.cpp from a standard app to a drishti_test_main() application to leverage automated device testing  (the integration tests were started as an entirely independently CMakeLitst.txt project, but I ended up having to duplicate much of the core drishti/CMakeLists.txt cmake code to run the automated tests, so it made more sense to make the top level drishti/CMakeLists.txt file manage both the core library builds and the integration test)
* update the bin/build-integration-test.sh file to use top level CMakeLists.txt for building + running the integratino test: add —test, add new polly `—output` option to avoid conflicts with the library build tree
* various cmakelists.txt cleanups and formatting
* TODO: move include_directories() calls to `target` equivalents where possible.
*  enable the per texture annotation callback in facefinder drawing
* dont’ display pupil by default in eye annotations (facefinder drawing)
* make pupil drawing optional facefinder drawing
* add bash script to provide summary of build release
*  bump verison to v0.8.0
* Public SDK Eye::eyelids type was updated to use static Array<> type
* include + use drishti_split_symbols on public sdk
* reduce drishti::sdk::Eye Array<T,128> default size to 128
* add smake function to split debug symbols on install
* add cmake function to check linker flags
@headupinclouds headupinclouds merged commit a194ec4 into master Jan 28, 2017
@headupinclouds headupinclouds deleted the pr.support.build.and.run.integration.test branch January 28, 2017 22:16
message("+++ ${CMAKE_CONFIGURATION_TYPES} +++" )
message("--- ${CMAKE_BUILD_TYPE} ---")
set(CMAKE_XCODE_ATTRIBUTE_GCC_INLINES_ARE_PRIVATE_EXTERN "YES")
set(CMAKE_XCODE_ATTRIBUTE_GCC_SYMBOLS_PRIVATE_EXTERN "YES")
Copy link
Collaborator

Choose a reason for hiding this comment

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

What flags are we adding by this? Probably it's a candidate for adding to toolchain.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think you are right.

Added: #290

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.

2 participants