Successfully reported this slideshow.
Your SlideShare is downloading. ×

Ad

CPack

Ad

16/11/16 Igor Khokhriakov 2
CPack is a tool to build packages
CMakeLists.txt
cpack / make package

Ad

16/11/16 Igor Khokhriakov 3
Resulting package
Supported generators:
● DEB
● RPM
● OSX Bundle
● Cygwin
● Archive generators...

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Upcoming SlideShare
SlideShare 101
SlideShare 101
Loading in …3
×

Check these out next

1 of 15 Ad
1 of 15 Ad
Advertisement

More Related Content

Advertisement

V10 sr1

  1. 1. CPack
  2. 2. 16/11/16 Igor Khokhriakov 2 CPack is a tool to build packages CMakeLists.txt cpack / make package
  3. 3. 16/11/16 Igor Khokhriakov 3 Resulting package Supported generators: ● DEB ● RPM ● OSX Bundle ● Cygwin ● Archive generators (Zip, Tar etc)
  4. 4. 16/11/16 Igor Khokhriakov 4
  5. 5. DEMO
  6. 6. 16/11/16 Igor Khokhriakov 6 Issues&TODOs ● Bintray+debian=War OR Bintray+debian= <3 ● Useful use cases – Use for development? – Continuous Integration! ● add_custom_target(release)
  7. 7. cppTango code restructure
  8. 8. 16/11/16 Igor Khokhriakov 8 - configureconfigure: compiler feature check; dependencies setup etc - doxygendoxygen: combined doxygen for cppapi and log4tango http://tango-controls.github.io/cppTango-docs - generatedgenerated: idl generated files - includeinclude: reorganized headers - srcsrc: log4tango; client; server - testtest: cpp_test_suite; log4tango
  9. 9. V10 Status
  10. 10. 16/11/16 Igor Khokhriakov 10 Roadmap (end of October) ● Tango/backend/tango.h (idl/tango.h wo CORBA) ● Compiles but not links ● Google C++ code style https://google.github.io/styleguide/cppguide.html ● C++11 features
  11. 11. 16/11/16 Igor Khokhriakov 11 In Progress ● IDL entities wo CORBA(+*) ● Look through the code and replace old entities with new ones (+/-) ● Replace NULL with std::nullptr ● Duplicate char* with std::string ● Replace omni_thread (mutex, cond etc) with std ● Move rest of the CORBA related code into a dedicated module ● Wrap this dedicated module into API (this API + IDLwoCORBA = Plugin API)
  12. 12. 16/11/16 Igor Khokhriakov 12 ● CORBA::string_dup ● CORBA::string_free ● CORBA::Any ● CORBA::Request_ptr ● IDLEntity_var Escaped CORBA?
  13. 13. 16/11/16 Igor Khokhriakov 13 Some thoughts ● Virtual template functions (???) ● Injectable business object (may brake SC compatibility) ● Backend API + Frontend API ● Use std::vector to implement DevVarXXXArray ● What is safe to change? (apiexept.h...; server; client) ● ...
  14. 14. 16/11/16 Igor Khokhriakov 14 TODOs ● DeviceAttribute templatize ● Implement move semantic for IDLEntities ● Get rid of MACROs
  15. 15. FIN

Editor's Notes

  • May not be a replacement of Picca&amp;apos;s debian packages (consider them as official stable); bintray can be considered as development. CHECK if tango9 is in jessie
    Use for development: replace for make; make install?
    CI: test new DS against latest stable release which is not in debian repo
  • Google C++ style exceptions: file name extensions = cxx&amp;hxx
  • What escapes to client/server code has been replaced with corresponding Tango:: entities
  • Virtual template is not allowed in C++. But when compiling server the types are known (commands, attributes etc)
    DevVarXXXArray may be typedefed to preserve compatibility
    Apiexcept.h replace macro with inheritance from except.h?

×