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

[PATCH API-NEXT v29] restructure headers for ABI-compat/platform-optimized modes #250

Closed
wants to merge 58 commits into from

Commits on Jan 16, 2018

  1. travis: also run make distcheck in non-ABI-compat mode

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    414e0a4 View commit details
    Browse the repository at this point in the history
  2. travis: add cross-compiling tests with ABI compatibility disabled

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    1caf241 View commit details
    Browse the repository at this point in the history
  3. linux-gen: atomic: simplify locked 64-bit support

    Rewrite atomic_types.h/atomic_inlines.h to clearly separate simple
    (common) and locked 64-bit cases. This allows us to ease switching of
    atomic.h header to api+abi setup.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    e61ee9b View commit details
    Browse the repository at this point in the history
  4. include: change spec guarding define from ODP_API to ODP_API_SPEC

    Change defines guarding inclusion of ODP API spec files from ODP_API_FOO
    to ODP_API_SPEC_FOO, as they are placed in odp/api/spec/foo.h path.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    0073786 View commit details
    Browse the repository at this point in the history
  5. configure: provide conditional for ABI-compat mode

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    0d3a85a View commit details
    Browse the repository at this point in the history
  6. build: move ODP include path to common Makefile.inc

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    04dd63d View commit details
    Browse the repository at this point in the history
  7. include: move default ABI headers

    Reduce amount of directory levels by moving default ABI headers to
    odp/api/abi-default.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    d74d6fe View commit details
    Browse the repository at this point in the history
  8. include: install ABI headers without additional ARCH_ABI level

    Install ABI headers directly to odp/api/abi, removing the need for extra
    symlink.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    4eef7a4 View commit details
    Browse the repository at this point in the history
  9. include: install and use ABI headers only in ABI-compat mode

    There is no need to install ABI headers (or to have them in include
    path) in non-ABI-compat mode, they should not be used at all. Still
    provide default ABI headers, because platform may depend on them.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    52d975a View commit details
    Browse the repository at this point in the history
  10. abi: queue: drop unused odp_queue_group_t

    odp_queue_group_t is a leftover, it was defined previously, but it is
    not used by current API, so drop it finally.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    fa0e950 View commit details
    Browse the repository at this point in the history
  11. abi: classification: drop two unused types

    odp_flowsig_t and odp_cos_flow_set_t are leftovers, they were defined
    previously, but they are not used by current API, so drop them finally.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    61a4d9c View commit details
    Browse the repository at this point in the history
  12. api: schedule: remove duplication between schedule and schedule_types

    Move the rest of ODP_SCHED_GROUP_* defines to schedule_types.h to remove
    duplication between headers.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    0fc4a17 View commit details
    Browse the repository at this point in the history
  13. build: add platform dir for non-ABI-compat headers

    If platform is built in non-ABI-compat mode, it provides its own set of
    type and enum definitions. Add directory that will hold platform
    optimized ABI files.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    c5ca1b8 View commit details
    Browse the repository at this point in the history
  14. build, linux-gen: provide optional dir for arch includes

    To enable multi-arch installs, provide a way to separate arch-specific
    files from arch-independent ones.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    d1f3d0f View commit details
    Browse the repository at this point in the history
  15. linux-gen, include: switch buffer.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    3731465 View commit details
    Browse the repository at this point in the history
  16. linux-gen, include: switch classification.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    e4bd22e View commit details
    Browse the repository at this point in the history
  17. linux-gen, include: switch crypto.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    a5aac9b View commit details
    Browse the repository at this point in the history
  18. linux-gen, include: switch event.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    57460f2 View commit details
    Browse the repository at this point in the history
  19. linux-gen, include: switch shared_memory.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    69b1ec9 View commit details
    Browse the repository at this point in the history
  20. linux-gen, include: switch queue.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    e9454bc View commit details
    Browse the repository at this point in the history
  21. linux-gen, include: switch barrier.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    e371c6d View commit details
    Browse the repository at this point in the history
  22. linux-gen, include: switch cpumask.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    e13f3b1 View commit details
    Browse the repository at this point in the history
  23. linux-gen, include: switch init.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    43413bb View commit details
    Browse the repository at this point in the history
  24. linux-gen, include: switch ipsec.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    1adcf9d View commit details
    Browse the repository at this point in the history
  25. linux-gen, include: switch packet_io.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    6003039 View commit details
    Browse the repository at this point in the history
  26. linux-gen, include: switch version.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    c51e147 View commit details
    Browse the repository at this point in the history
  27. linux-gen, include: switch rwlock.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    9250e91 View commit details
    Browse the repository at this point in the history
  28. linux-gen, include: switch rwlock_recursive.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    95b028e View commit details
    Browse the repository at this point in the history
  29. linux-gen, include: switch spinlock.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    c7a6ce8 View commit details
    Browse the repository at this point in the history
  30. linux-gen, include: switch spinlock_recursive.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    a522593 View commit details
    Browse the repository at this point in the history
  31. linux-gen, include: switch thread.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    f297b93 View commit details
    Browse the repository at this point in the history
  32. linux-gen, include: switch thrmask.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    a6797c0 View commit details
    Browse the repository at this point in the history
  33. linux-gen, include: switch time.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    344adfe View commit details
    Browse the repository at this point in the history
  34. linux-gen, include: switch timer.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    d78eff3 View commit details
    Browse the repository at this point in the history
  35. linux-gen, include: switch std_types.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    e7dcc90 View commit details
    Browse the repository at this point in the history
  36. linux-gen, include: switch traffic_mngr.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    4454fee View commit details
    Browse the repository at this point in the history
  37. linux-gen, include: switch schedule.h/schedule_types.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    bc2ce51 View commit details
    Browse the repository at this point in the history
  38. linux-gen, include: switch pool.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    988108d View commit details
    Browse the repository at this point in the history
  39. linux-gen, include: switch atomic.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    4432021 View commit details
    Browse the repository at this point in the history
  40. linux-gen, include: switch byteorder.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    36d3ba3 View commit details
    Browse the repository at this point in the history
  41. linux-gen, include: switch std_clib.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    de74a8b View commit details
    Browse the repository at this point in the history
  42. linux-gen, include: switch sync.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    275e4b7 View commit details
    Browse the repository at this point in the history
  43. linux-gen, include: switch ticketlock.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    e6ad988 View commit details
    Browse the repository at this point in the history
  44. linux-gen, include: switch debug.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    85b5e71 View commit details
    Browse the repository at this point in the history
  45. linux-gen, include: switch cpu.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    d53bf12 View commit details
    Browse the repository at this point in the history
  46. linux-gen, include: switch packet headers to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 16, 2018
    Configuration menu
    Copy the full SHA
    a8e82eb View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2018

  1. linux-gen, include: switch align.h to api+abi

    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    38040e6 View commit details
    Browse the repository at this point in the history
  2. linux-gen, include: drop interm _ODP_CACHE_LINE_SIZE define

    _ODP_CACHE_LINE_SIZE is only used to define ODP_CACHE_LINE_SIZE. Drop
    interim define and make cpu.h directly define ODP_CACHE_LINE_SIZE.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    f20e057 View commit details
    Browse the repository at this point in the history
  3. linux-gen: minor cleanup of API headers

    Minor cleanup of API headers:
     - remove empty Doxygen groups
     - rename guarding defines to follow ODP_API_FOO_H_ pattern
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    0ec05c7 View commit details
    Browse the repository at this point in the history
  4. include, linux-gen: move API files into generic location

    Now that api header files consist only of generic includes, move them to
    generic locations, so that they can be reused by implementations.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    c1eb024 View commit details
    Browse the repository at this point in the history
  5. linux-gen: move several files under ODP_ABI_COMPAT condition

    Several files consist only (or mostly) of functions compiled only if
    ODP is compiled in ABI compatibility mode. Instead of having an ifdef
    inside, guard them with if ODP_ABI_COMPAT condition in Makefile.am
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    6ccbd72 View commit details
    Browse the repository at this point in the history
  6. linux-gen: split odp_packet/odp_packet_flags

    Split away inclusion of API implementation to the files selected by
    Automake.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    ed36ca4 View commit details
    Browse the repository at this point in the history
  7. linux-gen: remove static_inline.h header

    Replace static_inline.h header with unconditional defines of _ODP_INLINE
    macro (either to 'static inline' or to empty value) depending on the
    compilation place.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    54c0efe View commit details
    Browse the repository at this point in the history
  8. linux-gen: don't install inline headers in ABI-compat mode

    There is no point in installing inline headers in ABI-compat mode
    anymore. They are not included by any other header.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    8b1235b View commit details
    Browse the repository at this point in the history
  9. configure: stop AC_SUBST'ing ODP_ABI_COMPAT

    With static_inline.h gone, there is no need to
    AC_SUBST([ODP_ABI_COMPAT]). Drop it from configure.ac.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    873bee2 View commit details
    Browse the repository at this point in the history
  10. include: inline compiler.h spec

    compiler.h header contains one internal definition used only in
    platform-optimized headers. This definition, being internal, is not a
    part of the specification, so let's merge it into linux-gen plat file
    and drop compiler.h headers.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    e702153 View commit details
    Browse the repository at this point in the history
  11. include: provide formal description of ODP specification

    Provide formal description of files being part of ODP specification,
    platform-specific headers, substituting parts of ODP specification and
    additional headers supplementing ODP specification.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    ff4790b View commit details
    Browse the repository at this point in the history
  12. include: move visibility headers to generic place

    There was an idea that platform might override visibility headers in
    platform-specific way. For the sake of providing full set of headers for
    ABI-compatibile case, move those headers to include/ dir. Platform can
    still override those headers when compiling in non-ABI-compatibile mode.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
    Dmitry Eremin-Solenikov committed Jan 17, 2018
    Configuration menu
    Copy the full SHA
    3b5dee0 View commit details
    Browse the repository at this point in the history