mbox series

[v2,0/8] eal: reorganize directories layout

Message ID 20200327011540.954014-1-thomas@monjalon.net (mailing list archive)
Headers
Series eal: reorganize directories layout |

Message

Thomas Monjalon March 27, 2020, 1:15 a.m. UTC
  Some clean-up is done in EAL sub-directories.
The goal is to make organization easier to understand,
and to prepare moving some files from common to Unix-only place.

Since the kernel modules are moved to kernel/ directory,
there is no need anymore for the sub-directory eal/ in
linux/, freebsd/ and windows/.

The EAL API (with doxygen documentation) is moved from
common/include/ to include/, which makes more clear that
it is the global API for all environments and architectures.
Note that the arch-specific and OS-specific include files are not
in this global include directory, but include/generic/ should
cover the doxygen documentation for them.

The arch-specific directories arm, ppc_64 and x86 in common/arch/
and in common/include/arch are moved at the same level as the
OS-specific directories, adding an include/ sub-directory.
It makes more clear that EAL is covering a matrix combining OS and arch.
Note that ppc_64 is renamed to ppc.

These moves offer the opportunity to simplify the make and meson files.


This change was proposed to the Technical Board in advance:
http://mails.dpdk.org/archives/dev/2020-January/156732.html


v2:
  - add missing meson and make files in the include/ directory
  - fix ppc build
  - cosmetic improvements in meson files
  - split single patch into 8 pieces


Thomas Monjalon (8):
  eal: remove useless makefiles
  build: rename ppc sub-directories
  eal: move arch-specific C files
  eal: move arch-specific header files
  eal: simplify meson build of common directory
  eal: move common header files
  eal: move OS-specific sub-directories
  eal: clean make and meson files

 MAINTAINERS                                   |  53 ++++-----
 buildtools/pmdinfogen/meson.build             |   2 +-
 config/arm/meson.build                        |   2 +-
 config/common_armv8a_linux                    |   2 +-
 config/meson.build                            |   2 +-
 config/{ppc_64 => ppc}/meson.build            |   0
 devtools/build-tags.sh                        |  14 +--
 doc/api/doxy-api.conf.in                      |   4 +-
 doc/guides/rel_notes/known_issues.rst         |   2 +-
 drivers/bus/dpaa/Makefile                     |   2 +-
 drivers/common/mlx5/meson.build               |   2 +-
 drivers/crypto/caam_jr/Makefile               |   2 +-
 drivers/crypto/dpaa_sec/Makefile              |   2 +-
 drivers/event/dpaa/Makefile                   |   2 +-
 drivers/net/dpaa/Makefile                     |   2 +-
 drivers/net/virtio/meson.build                |   2 +-
 kernel/linux/igb_uio/meson.build              |   2 +-
 kernel/linux/kni/meson.build                  |   4 +-
 lib/librte_cfgfile/Makefile                   |   2 +-
 lib/librte_eal/Makefile                       |   6 +-
 .../arch/arm => arm/include}/meson.build      |   7 +-
 .../arch/arm => arm/include}/rte_atomic.h     |   0
 .../arch/arm => arm/include}/rte_atomic_32.h  |   0
 .../arch/arm => arm/include}/rte_atomic_64.h  |   0
 .../arch/arm => arm/include}/rte_byteorder.h  |   0
 .../arch/arm => arm/include}/rte_cpuflags.h   |   0
 .../arm => arm/include}/rte_cpuflags_32.h     |   0
 .../arm => arm/include}/rte_cpuflags_64.h     |   0
 .../arch/arm => arm/include}/rte_cycles.h     |   0
 .../arch/arm => arm/include}/rte_cycles_32.h  |   0
 .../arch/arm => arm/include}/rte_cycles_64.h  |   0
 .../include/arch/arm => arm/include}/rte_io.h |   0
 .../arch/arm => arm/include}/rte_io_64.h      |   0
 .../arch/arm => arm/include}/rte_mcslock.h    |   0
 .../arch/arm => arm/include}/rte_memcpy.h     |   0
 .../arch/arm => arm/include}/rte_memcpy_32.h  |   0
 .../arch/arm => arm/include}/rte_memcpy_64.h  |   0
 .../arch/arm => arm/include}/rte_pause.h      |   0
 .../arch/arm => arm/include}/rte_pause_32.h   |   0
 .../arch/arm => arm/include}/rte_pause_64.h   |   0
 .../arch/arm => arm/include}/rte_prefetch.h   |   0
 .../arm => arm/include}/rte_prefetch_32.h     |   0
 .../arm => arm/include}/rte_prefetch_64.h     |   0
 .../arch/arm => arm/include}/rte_rwlock.h     |   0
 .../arch/arm => arm/include}/rte_spinlock.h   |   0
 .../arch/arm => arm/include}/rte_ticketlock.h |   0
 .../arch/arm => arm/include}/rte_vect.h       |   0
 lib/librte_eal/arm/meson.build                |  10 ++
 .../{common/arch => }/arm/rte_cpuflags.c      |   0
 .../{common/arch => }/arm/rte_cycles.c        |   0
 .../{common/arch => }/arm/rte_hypervisor.c    |   0
 lib/librte_eal/common/Makefile                |  38 -------
 lib/librte_eal/common/arch/arm/meson.build    |   5 -
 lib/librte_eal/common/arch/ppc_64/meson.build |   5 -
 lib/librte_eal/common/arch/x86/meson.build    |   5 -
 lib/librte_eal/common/meson.build             |  92 ++++------------
 lib/librte_eal/common/rte_service.c           |   2 +-
 lib/librte_eal/freebsd/BSDmakefile.meson      |  14 ---
 lib/librte_eal/freebsd/Makefile               |  91 +++++++++++++++-
 lib/librte_eal/freebsd/{eal => }/eal.c        |   0
 lib/librte_eal/freebsd/eal/Makefile           |  93 ----------------
 lib/librte_eal/freebsd/eal/meson.build        |  22 ----
 lib/librte_eal/freebsd/{eal => }/eal_alarm.c  |   0
 .../freebsd/{eal => }/eal_alarm_private.h     |   0
 .../freebsd/{eal => }/eal_cpuflags.c          |   0
 lib/librte_eal/freebsd/{eal => }/eal_debug.c  |   0
 lib/librte_eal/freebsd/{eal => }/eal_dev.c    |   0
 .../freebsd/{eal => }/eal_hugepage_info.c     |   0
 .../freebsd/{eal => }/eal_interrupts.c        |   0
 lib/librte_eal/freebsd/{eal => }/eal_lcore.c  |   0
 .../freebsd/{eal => }/eal_memalloc.c          |   0
 lib/librte_eal/freebsd/{eal => }/eal_memory.c |   0
 lib/librte_eal/freebsd/{eal => }/eal_thread.c |   0
 lib/librte_eal/freebsd/{eal => }/eal_timer.c  |   0
 lib/librte_eal/freebsd/include/meson.build    |   8 ++
 .../freebsd/{eal => }/include/rte_os.h        |   0
 lib/librte_eal/freebsd/meson.build            |  21 ++++
 lib/librte_eal/include/Makefile               |  19 ++++
 .../{common => }/include/generic/rte_atomic.h |   0
 .../include/generic/rte_byteorder.h           |   0
 .../include/generic/rte_cpuflags.h            |   0
 .../{common => }/include/generic/rte_cycles.h |   0
 .../{common => }/include/generic/rte_io.h     |   0
 .../include/generic/rte_mcslock.h             |   0
 .../{common => }/include/generic/rte_memcpy.h |   0
 .../{common => }/include/generic/rte_pause.h  |   0
 .../include/generic/rte_prefetch.h            |   0
 .../{common => }/include/generic/rte_rwlock.h |   0
 .../include/generic/rte_spinlock.h            |   0
 .../include/generic/rte_ticketlock.h          |   0
 .../{common => }/include/generic/rte_vect.h   |   0
 lib/librte_eal/include/meson.build            |  64 +++++++++++
 .../{common => }/include/rte_alarm.h          |   0
 .../{common => }/include/rte_bitmap.h         |   0
 .../include/rte_branch_prediction.h           |   0
 lib/librte_eal/{common => }/include/rte_bus.h |   0
 .../{common => }/include/rte_class.h          |   0
 .../{common => }/include/rte_common.h         |   0
 .../{common => }/include/rte_compat.h         |   0
 .../{common => }/include/rte_debug.h          |   0
 lib/librte_eal/{common => }/include/rte_dev.h |   0
 .../{common => }/include/rte_devargs.h        |   0
 lib/librte_eal/{common => }/include/rte_eal.h |   0
 .../{common => }/include/rte_eal_interrupts.h |   0
 .../{common => }/include/rte_eal_memconfig.h  |   0
 .../{common => }/include/rte_errno.h          |   0
 .../{common => }/include/rte_fbarray.h        |   0
 .../include/rte_function_versioning.h         |   0
 .../{common => }/include/rte_hexdump.h        |   0
 .../{common => }/include/rte_hypervisor.h     |   0
 .../{common => }/include/rte_interrupts.h     |   0
 .../{common => }/include/rte_keepalive.h      |   0
 .../{common => }/include/rte_launch.h         |   0
 .../{common => }/include/rte_lcore.h          |   0
 lib/librte_eal/{common => }/include/rte_log.h |   0
 .../{common => }/include/rte_malloc.h         |   0
 .../{common => }/include/rte_memory.h         |   0
 .../{common => }/include/rte_memzone.h        |   0
 .../{common => }/include/rte_option.h         |   0
 .../include/rte_pci_dev_feature_defs.h        |   0
 .../include/rte_pci_dev_features.h            |   0
 .../{common => }/include/rte_per_lcore.h      |   0
 .../{common => }/include/rte_random.h         |   0
 .../{common => }/include/rte_reciprocal.h     |   0
 .../{common => }/include/rte_service.h        |   0
 .../include/rte_service_component.h           |   0
 .../{common => }/include/rte_string_fns.h     |   0
 .../{common => }/include/rte_tailq.h          |   0
 .../{common => }/include/rte_test.h           |   0
 .../{common => }/include/rte_time.h           |   0
 .../{common => }/include/rte_uuid.h           |   0
 .../{common => }/include/rte_version.h        |   0
 .../{common => }/include/rte_vfio.h           |   0
 lib/librte_eal/linux/Makefile                 |  97 ++++++++++++++++-
 lib/librte_eal/linux/{eal => }/eal.c          |   0
 lib/librte_eal/linux/eal/Makefile             | 101 ------------------
 lib/librte_eal/linux/eal/meson.build          |  31 ------
 lib/librte_eal/linux/{eal => }/eal_alarm.c    |   0
 lib/librte_eal/linux/{eal => }/eal_cpuflags.c |   0
 lib/librte_eal/linux/{eal => }/eal_debug.c    |   0
 lib/librte_eal/linux/{eal => }/eal_dev.c      |   0
 .../linux/{eal => }/eal_hugepage_info.c       |   0
 .../linux/{eal => }/eal_interrupts.c          |   0
 lib/librte_eal/linux/{eal => }/eal_lcore.c    |   0
 lib/librte_eal/linux/{eal => }/eal_log.c      |   0
 lib/librte_eal/linux/{eal => }/eal_memalloc.c |   0
 lib/librte_eal/linux/{eal => }/eal_memory.c   |   0
 lib/librte_eal/linux/{eal => }/eal_thread.c   |   0
 lib/librte_eal/linux/{eal => }/eal_timer.c    |   0
 lib/librte_eal/linux/{eal => }/eal_vfio.c     |   0
 lib/librte_eal/linux/{eal => }/eal_vfio.h     |   0
 .../linux/{eal => }/eal_vfio_mp_sync.c        |   0
 lib/librte_eal/linux/include/meson.build      |   9 ++
 .../linux/{eal => }/include/rte_kni_common.h  |   0
 .../linux/{eal => }/include/rte_os.h          |   0
 lib/librte_eal/linux/meson.build              |  27 +++++
 lib/librte_eal/meson.build                    |  19 ++--
 .../arch/ppc_64 => ppc/include}/meson.build   |   7 +-
 .../arch/ppc_64 => ppc/include}/rte_atomic.h  |   0
 .../ppc_64 => ppc/include}/rte_byteorder.h    |   0
 .../ppc_64 => ppc/include}/rte_cpuflags.h     |   0
 .../arch/ppc_64 => ppc/include}/rte_cycles.h  |   0
 .../arch/ppc_64 => ppc/include}/rte_io.h      |   0
 .../arch/ppc_64 => ppc/include}/rte_mcslock.h |   0
 .../arch/ppc_64 => ppc/include}/rte_memcpy.h  |   0
 .../arch/ppc_64 => ppc/include}/rte_pause.h   |   0
 .../ppc_64 => ppc/include}/rte_prefetch.h     |   0
 .../arch/ppc_64 => ppc/include}/rte_rwlock.h  |   0
 .../ppc_64 => ppc/include}/rte_spinlock.h     |   0
 .../ppc_64 => ppc/include}/rte_ticketlock.h   |   0
 .../arch/ppc_64 => ppc/include}/rte_vect.h    |   0
 lib/librte_eal/ppc/meson.build                |  10 ++
 .../arch/ppc_64 => ppc}/rte_cpuflags.c        |   0
 .../{common/arch/ppc_64 => ppc}/rte_cycles.c  |   0
 .../arch/ppc_64 => ppc}/rte_hypervisor.c      |   0
 lib/librte_eal/windows/{eal => }/eal.c        |   0
 lib/librte_eal/windows/eal/meson.build        |  27 -----
 lib/librte_eal/windows/{eal => }/eal_debug.c  |   0
 lib/librte_eal/windows/{eal => }/eal_lcore.c  |   0
 lib/librte_eal/windows/{eal => }/eal_thread.c |   0
 lib/librte_eal/windows/{eal => }/getopt.c     |   0
 .../windows/{eal => }/include/dirent.h        |   0
 .../windows/{eal => }/include/fnmatch.h       |   0
 .../windows/{eal => }/include/getopt.h        |   0
 lib/librte_eal/windows/include/meson.build    |   8 ++
 .../windows/{eal => }/include/pthread.h       |   0
 .../windows/{eal => }/include/regex.h         |   0
 .../windows/{eal => }/include/rte_os.h        |   0
 .../windows/{eal => }/include/sched.h         |   0
 .../windows/{eal => }/include/sys/queue.h     |   0
 .../windows/{eal => }/include/unistd.h        |   0
 lib/librte_eal/windows/meson.build            |  12 +++
 .../arch/x86 => x86/include}/meson.build      |   7 +-
 .../arch/x86 => x86/include}/rte_atomic.h     |   0
 .../arch/x86 => x86/include}/rte_atomic_32.h  |   0
 .../arch/x86 => x86/include}/rte_atomic_64.h  |   0
 .../arch/x86 => x86/include}/rte_byteorder.h  |   0
 .../x86 => x86/include}/rte_byteorder_32.h    |   0
 .../x86 => x86/include}/rte_byteorder_64.h    |   0
 .../arch/x86 => x86/include}/rte_cpuflags.h   |   0
 .../arch/x86 => x86/include}/rte_cycles.h     |   0
 .../include/arch/x86 => x86/include}/rte_io.h |   0
 .../arch/x86 => x86/include}/rte_mcslock.h    |   0
 .../arch/x86 => x86/include}/rte_memcpy.h     |   0
 .../arch/x86 => x86/include}/rte_pause.h      |   0
 .../arch/x86 => x86/include}/rte_prefetch.h   |   0
 .../arch/x86 => x86/include}/rte_rtm.h        |   0
 .../arch/x86 => x86/include}/rte_rwlock.h     |   0
 .../arch/x86 => x86/include}/rte_spinlock.h   |   0
 .../arch/x86 => x86/include}/rte_ticketlock.h |   0
 .../arch/x86 => x86/include}/rte_vect.h       |   0
 lib/librte_eal/x86/meson.build                |  11 ++
 .../{common/arch => }/x86/rte_cpuflags.c      |   0
 .../{common/arch => }/x86/rte_cpuid.h         |   0
 .../{common/arch => }/x86/rte_cycles.c        |   0
 .../{common/arch => }/x86/rte_hypervisor.c    |   0
 .../{common/arch => }/x86/rte_spinlock.c      |   0
 lib/librte_kvargs/Makefile                    |   2 +-
 license/exceptions.txt                        |   6 +-
 meson.build                                   |   4 +-
 mk/arch/ppc_64/rte.vars.mk                    |   1 +
 mk/exec-env/freebsd/rte.vars.mk               |   2 +-
 mk/exec-env/linux/rte.vars.mk                 |   2 +-
 223 files changed, 480 insertions(+), 508 deletions(-)
 rename config/{ppc_64 => ppc}/meson.build (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/meson.build (79%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_atomic.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_atomic_32.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_atomic_64.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_byteorder.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cpuflags.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cpuflags_32.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cpuflags_64.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cycles.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cycles_32.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cycles_64.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_io.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_io_64.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_mcslock.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_memcpy.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_memcpy_32.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_memcpy_64.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_pause.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_pause_32.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_pause_64.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_prefetch.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_prefetch_32.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_prefetch_64.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_rwlock.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_spinlock.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_ticketlock.h (100%)
 rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_vect.h (100%)
 create mode 100644 lib/librte_eal/arm/meson.build
 rename lib/librte_eal/{common/arch => }/arm/rte_cpuflags.c (100%)
 rename lib/librte_eal/{common/arch => }/arm/rte_cycles.c (100%)
 rename lib/librte_eal/{common/arch => }/arm/rte_hypervisor.c (100%)
 delete mode 100644 lib/librte_eal/common/Makefile
 delete mode 100644 lib/librte_eal/common/arch/arm/meson.build
 delete mode 100644 lib/librte_eal/common/arch/ppc_64/meson.build
 delete mode 100644 lib/librte_eal/common/arch/x86/meson.build
 delete mode 100644 lib/librte_eal/freebsd/BSDmakefile.meson
 rename lib/librte_eal/freebsd/{eal => }/eal.c (100%)
 delete mode 100644 lib/librte_eal/freebsd/eal/Makefile
 delete mode 100644 lib/librte_eal/freebsd/eal/meson.build
 rename lib/librte_eal/freebsd/{eal => }/eal_alarm.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_alarm_private.h (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_cpuflags.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_debug.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_dev.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_hugepage_info.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_interrupts.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_lcore.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_memalloc.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_memory.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_thread.c (100%)
 rename lib/librte_eal/freebsd/{eal => }/eal_timer.c (100%)
 create mode 100644 lib/librte_eal/freebsd/include/meson.build
 rename lib/librte_eal/freebsd/{eal => }/include/rte_os.h (100%)
 create mode 100644 lib/librte_eal/freebsd/meson.build
 create mode 100644 lib/librte_eal/include/Makefile
 rename lib/librte_eal/{common => }/include/generic/rte_atomic.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_byteorder.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_cpuflags.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_cycles.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_io.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_mcslock.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_memcpy.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_pause.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_prefetch.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_rwlock.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_spinlock.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_ticketlock.h (100%)
 rename lib/librte_eal/{common => }/include/generic/rte_vect.h (100%)
 create mode 100644 lib/librte_eal/include/meson.build
 rename lib/librte_eal/{common => }/include/rte_alarm.h (100%)
 rename lib/librte_eal/{common => }/include/rte_bitmap.h (100%)
 rename lib/librte_eal/{common => }/include/rte_branch_prediction.h (100%)
 rename lib/librte_eal/{common => }/include/rte_bus.h (100%)
 rename lib/librte_eal/{common => }/include/rte_class.h (100%)
 rename lib/librte_eal/{common => }/include/rte_common.h (100%)
 rename lib/librte_eal/{common => }/include/rte_compat.h (100%)
 rename lib/librte_eal/{common => }/include/rte_debug.h (100%)
 rename lib/librte_eal/{common => }/include/rte_dev.h (100%)
 rename lib/librte_eal/{common => }/include/rte_devargs.h (100%)
 rename lib/librte_eal/{common => }/include/rte_eal.h (100%)
 rename lib/librte_eal/{common => }/include/rte_eal_interrupts.h (100%)
 rename lib/librte_eal/{common => }/include/rte_eal_memconfig.h (100%)
 rename lib/librte_eal/{common => }/include/rte_errno.h (100%)
 rename lib/librte_eal/{common => }/include/rte_fbarray.h (100%)
 rename lib/librte_eal/{common => }/include/rte_function_versioning.h (100%)
 rename lib/librte_eal/{common => }/include/rte_hexdump.h (100%)
 rename lib/librte_eal/{common => }/include/rte_hypervisor.h (100%)
 rename lib/librte_eal/{common => }/include/rte_interrupts.h (100%)
 rename lib/librte_eal/{common => }/include/rte_keepalive.h (100%)
 rename lib/librte_eal/{common => }/include/rte_launch.h (100%)
 rename lib/librte_eal/{common => }/include/rte_lcore.h (100%)
 rename lib/librte_eal/{common => }/include/rte_log.h (100%)
 rename lib/librte_eal/{common => }/include/rte_malloc.h (100%)
 rename lib/librte_eal/{common => }/include/rte_memory.h (100%)
 rename lib/librte_eal/{common => }/include/rte_memzone.h (100%)
 rename lib/librte_eal/{common => }/include/rte_option.h (100%)
 rename lib/librte_eal/{common => }/include/rte_pci_dev_feature_defs.h (100%)
 rename lib/librte_eal/{common => }/include/rte_pci_dev_features.h (100%)
 rename lib/librte_eal/{common => }/include/rte_per_lcore.h (100%)
 rename lib/librte_eal/{common => }/include/rte_random.h (100%)
 rename lib/librte_eal/{common => }/include/rte_reciprocal.h (100%)
 rename lib/librte_eal/{common => }/include/rte_service.h (100%)
 rename lib/librte_eal/{common => }/include/rte_service_component.h (100%)
 rename lib/librte_eal/{common => }/include/rte_string_fns.h (100%)
 rename lib/librte_eal/{common => }/include/rte_tailq.h (100%)
 rename lib/librte_eal/{common => }/include/rte_test.h (100%)
 rename lib/librte_eal/{common => }/include/rte_time.h (100%)
 rename lib/librte_eal/{common => }/include/rte_uuid.h (100%)
 rename lib/librte_eal/{common => }/include/rte_version.h (100%)
 rename lib/librte_eal/{common => }/include/rte_vfio.h (100%)
 rename lib/librte_eal/linux/{eal => }/eal.c (100%)
 delete mode 100644 lib/librte_eal/linux/eal/Makefile
 delete mode 100644 lib/librte_eal/linux/eal/meson.build
 rename lib/librte_eal/linux/{eal => }/eal_alarm.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_cpuflags.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_debug.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_dev.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_hugepage_info.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_interrupts.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_lcore.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_log.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_memalloc.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_memory.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_thread.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_timer.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_vfio.c (100%)
 rename lib/librte_eal/linux/{eal => }/eal_vfio.h (100%)
 rename lib/librte_eal/linux/{eal => }/eal_vfio_mp_sync.c (100%)
 create mode 100644 lib/librte_eal/linux/include/meson.build
 rename lib/librte_eal/linux/{eal => }/include/rte_kni_common.h (100%)
 rename lib/librte_eal/linux/{eal => }/include/rte_os.h (100%)
 create mode 100644 lib/librte_eal/linux/meson.build
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/meson.build (67%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_atomic.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_byteorder.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_cpuflags.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_cycles.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_io.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_mcslock.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_memcpy.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_pause.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_prefetch.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_rwlock.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_spinlock.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_ticketlock.h (100%)
 rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_vect.h (100%)
 create mode 100644 lib/librte_eal/ppc/meson.build
 rename lib/librte_eal/{common/arch/ppc_64 => ppc}/rte_cpuflags.c (100%)
 rename lib/librte_eal/{common/arch/ppc_64 => ppc}/rte_cycles.c (100%)
 rename lib/librte_eal/{common/arch/ppc_64 => ppc}/rte_hypervisor.c (100%)
 rename lib/librte_eal/windows/{eal => }/eal.c (100%)
 delete mode 100644 lib/librte_eal/windows/eal/meson.build
 rename lib/librte_eal/windows/{eal => }/eal_debug.c (100%)
 rename lib/librte_eal/windows/{eal => }/eal_lcore.c (100%)
 rename lib/librte_eal/windows/{eal => }/eal_thread.c (100%)
 rename lib/librte_eal/windows/{eal => }/getopt.c (100%)
 rename lib/librte_eal/windows/{eal => }/include/dirent.h (100%)
 rename lib/librte_eal/windows/{eal => }/include/fnmatch.h (100%)
 rename lib/librte_eal/windows/{eal => }/include/getopt.h (100%)
 create mode 100644 lib/librte_eal/windows/include/meson.build
 rename lib/librte_eal/windows/{eal => }/include/pthread.h (100%)
 rename lib/librte_eal/windows/{eal => }/include/regex.h (100%)
 rename lib/librte_eal/windows/{eal => }/include/rte_os.h (100%)
 rename lib/librte_eal/windows/{eal => }/include/sched.h (100%)
 rename lib/librte_eal/windows/{eal => }/include/sys/queue.h (100%)
 rename lib/librte_eal/windows/{eal => }/include/unistd.h (100%)
 create mode 100644 lib/librte_eal/windows/meson.build
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/meson.build (73%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_atomic.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_atomic_32.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_atomic_64.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_byteorder.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_byteorder_32.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_byteorder_64.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_cpuflags.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_cycles.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_io.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_mcslock.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_memcpy.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_pause.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_prefetch.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_rtm.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_rwlock.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_spinlock.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_ticketlock.h (100%)
 rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_vect.h (100%)
 create mode 100644 lib/librte_eal/x86/meson.build
 rename lib/librte_eal/{common/arch => }/x86/rte_cpuflags.c (100%)
 rename lib/librte_eal/{common/arch => }/x86/rte_cpuid.h (100%)
 rename lib/librte_eal/{common/arch => }/x86/rte_cycles.c (100%)
 rename lib/librte_eal/{common/arch => }/x86/rte_hypervisor.c (100%)
 rename lib/librte_eal/{common/arch => }/x86/rte_spinlock.c (100%)
  

Comments

Stephen Hemminger March 27, 2020, 2:47 p.m. UTC | #1
On Fri, 27 Mar 2020 02:15:32 +0100
Thomas Monjalon <thomas@monjalon.net> wrote:

> Some clean-up is done in EAL sub-directories.
> The goal is to make organization easier to understand,
> and to prepare moving some files from common to Unix-only place.
> 
> Since the kernel modules are moved to kernel/ directory,
> there is no need anymore for the sub-directory eal/ in
> linux/, freebsd/ and windows/.
> 
> The EAL API (with doxygen documentation) is moved from
> common/include/ to include/, which makes more clear that
> it is the global API for all environments and architectures.
> Note that the arch-specific and OS-specific include files are not
> in this global include directory, but include/generic/ should
> cover the doxygen documentation for them.
> 
> The arch-specific directories arm, ppc_64 and x86 in common/arch/
> and in common/include/arch are moved at the same level as the
> OS-specific directories, adding an include/ sub-directory.
> It makes more clear that EAL is covering a matrix combining OS and arch.
> Note that ppc_64 is renamed to ppc.
> 
> These moves offer the opportunity to simplify the make and meson files.
> 
> 
> This change was proposed to the Technical Board in advance:
> http://mails.dpdk.org/archives/dev/2020-January/156732.html
> 
> 
> v2:
>   - add missing meson and make files in the include/ directory
>   - fix ppc build
>   - cosmetic improvements in meson files
>   - split single patch into 8 pieces
> 
> 
> Thomas Monjalon (8):
>   eal: remove useless makefiles
>   build: rename ppc sub-directories
>   eal: move arch-specific C files
>   eal: move arch-specific header files
>   eal: simplify meson build of common directory
>   eal: move common header files
>   eal: move OS-specific sub-directories
>   eal: clean make and meson files
> 
>  MAINTAINERS                                   |  53 ++++-----
>  buildtools/pmdinfogen/meson.build             |   2 +-
>  config/arm/meson.build                        |   2 +-
>  config/common_armv8a_linux                    |   2 +-
>  config/meson.build                            |   2 +-
>  config/{ppc_64 => ppc}/meson.build            |   0
>  devtools/build-tags.sh                        |  14 +--
>  doc/api/doxy-api.conf.in                      |   4 +-
>  doc/guides/rel_notes/known_issues.rst         |   2 +-
>  drivers/bus/dpaa/Makefile                     |   2 +-
>  drivers/common/mlx5/meson.build               |   2 +-
>  drivers/crypto/caam_jr/Makefile               |   2 +-
>  drivers/crypto/dpaa_sec/Makefile              |   2 +-
>  drivers/event/dpaa/Makefile                   |   2 +-
>  drivers/net/dpaa/Makefile                     |   2 +-
>  drivers/net/virtio/meson.build                |   2 +-
>  kernel/linux/igb_uio/meson.build              |   2 +-
>  kernel/linux/kni/meson.build                  |   4 +-
>  lib/librte_cfgfile/Makefile                   |   2 +-
>  lib/librte_eal/Makefile                       |   6 +-
>  .../arch/arm => arm/include}/meson.build      |   7 +-
>  .../arch/arm => arm/include}/rte_atomic.h     |   0
>  .../arch/arm => arm/include}/rte_atomic_32.h  |   0
>  .../arch/arm => arm/include}/rte_atomic_64.h  |   0
>  .../arch/arm => arm/include}/rte_byteorder.h  |   0
>  .../arch/arm => arm/include}/rte_cpuflags.h   |   0
>  .../arm => arm/include}/rte_cpuflags_32.h     |   0
>  .../arm => arm/include}/rte_cpuflags_64.h     |   0
>  .../arch/arm => arm/include}/rte_cycles.h     |   0
>  .../arch/arm => arm/include}/rte_cycles_32.h  |   0
>  .../arch/arm => arm/include}/rte_cycles_64.h  |   0
>  .../include/arch/arm => arm/include}/rte_io.h |   0
>  .../arch/arm => arm/include}/rte_io_64.h      |   0
>  .../arch/arm => arm/include}/rte_mcslock.h    |   0
>  .../arch/arm => arm/include}/rte_memcpy.h     |   0
>  .../arch/arm => arm/include}/rte_memcpy_32.h  |   0
>  .../arch/arm => arm/include}/rte_memcpy_64.h  |   0
>  .../arch/arm => arm/include}/rte_pause.h      |   0
>  .../arch/arm => arm/include}/rte_pause_32.h   |   0
>  .../arch/arm => arm/include}/rte_pause_64.h   |   0
>  .../arch/arm => arm/include}/rte_prefetch.h   |   0
>  .../arm => arm/include}/rte_prefetch_32.h     |   0
>  .../arm => arm/include}/rte_prefetch_64.h     |   0
>  .../arch/arm => arm/include}/rte_rwlock.h     |   0
>  .../arch/arm => arm/include}/rte_spinlock.h   |   0
>  .../arch/arm => arm/include}/rte_ticketlock.h |   0
>  .../arch/arm => arm/include}/rte_vect.h       |   0
>  lib/librte_eal/arm/meson.build                |  10 ++
>  .../{common/arch => }/arm/rte_cpuflags.c      |   0
>  .../{common/arch => }/arm/rte_cycles.c        |   0
>  .../{common/arch => }/arm/rte_hypervisor.c    |   0
>  lib/librte_eal/common/Makefile                |  38 -------
>  lib/librte_eal/common/arch/arm/meson.build    |   5 -
>  lib/librte_eal/common/arch/ppc_64/meson.build |   5 -
>  lib/librte_eal/common/arch/x86/meson.build    |   5 -
>  lib/librte_eal/common/meson.build             |  92 ++++------------
>  lib/librte_eal/common/rte_service.c           |   2 +-
>  lib/librte_eal/freebsd/BSDmakefile.meson      |  14 ---
>  lib/librte_eal/freebsd/Makefile               |  91 +++++++++++++++-
>  lib/librte_eal/freebsd/{eal => }/eal.c        |   0
>  lib/librte_eal/freebsd/eal/Makefile           |  93 ----------------
>  lib/librte_eal/freebsd/eal/meson.build        |  22 ----
>  lib/librte_eal/freebsd/{eal => }/eal_alarm.c  |   0
>  .../freebsd/{eal => }/eal_alarm_private.h     |   0
>  .../freebsd/{eal => }/eal_cpuflags.c          |   0
>  lib/librte_eal/freebsd/{eal => }/eal_debug.c  |   0
>  lib/librte_eal/freebsd/{eal => }/eal_dev.c    |   0
>  .../freebsd/{eal => }/eal_hugepage_info.c     |   0
>  .../freebsd/{eal => }/eal_interrupts.c        |   0
>  lib/librte_eal/freebsd/{eal => }/eal_lcore.c  |   0
>  .../freebsd/{eal => }/eal_memalloc.c          |   0
>  lib/librte_eal/freebsd/{eal => }/eal_memory.c |   0
>  lib/librte_eal/freebsd/{eal => }/eal_thread.c |   0
>  lib/librte_eal/freebsd/{eal => }/eal_timer.c  |   0
>  lib/librte_eal/freebsd/include/meson.build    |   8 ++
>  .../freebsd/{eal => }/include/rte_os.h        |   0
>  lib/librte_eal/freebsd/meson.build            |  21 ++++
>  lib/librte_eal/include/Makefile               |  19 ++++
>  .../{common => }/include/generic/rte_atomic.h |   0
>  .../include/generic/rte_byteorder.h           |   0
>  .../include/generic/rte_cpuflags.h            |   0
>  .../{common => }/include/generic/rte_cycles.h |   0
>  .../{common => }/include/generic/rte_io.h     |   0
>  .../include/generic/rte_mcslock.h             |   0
>  .../{common => }/include/generic/rte_memcpy.h |   0
>  .../{common => }/include/generic/rte_pause.h  |   0
>  .../include/generic/rte_prefetch.h            |   0
>  .../{common => }/include/generic/rte_rwlock.h |   0
>  .../include/generic/rte_spinlock.h            |   0
>  .../include/generic/rte_ticketlock.h          |   0
>  .../{common => }/include/generic/rte_vect.h   |   0
>  lib/librte_eal/include/meson.build            |  64 +++++++++++
>  .../{common => }/include/rte_alarm.h          |   0
>  .../{common => }/include/rte_bitmap.h         |   0
>  .../include/rte_branch_prediction.h           |   0
>  lib/librte_eal/{common => }/include/rte_bus.h |   0
>  .../{common => }/include/rte_class.h          |   0
>  .../{common => }/include/rte_common.h         |   0
>  .../{common => }/include/rte_compat.h         |   0
>  .../{common => }/include/rte_debug.h          |   0
>  lib/librte_eal/{common => }/include/rte_dev.h |   0
>  .../{common => }/include/rte_devargs.h        |   0
>  lib/librte_eal/{common => }/include/rte_eal.h |   0
>  .../{common => }/include/rte_eal_interrupts.h |   0
>  .../{common => }/include/rte_eal_memconfig.h  |   0
>  .../{common => }/include/rte_errno.h          |   0
>  .../{common => }/include/rte_fbarray.h        |   0
>  .../include/rte_function_versioning.h         |   0
>  .../{common => }/include/rte_hexdump.h        |   0
>  .../{common => }/include/rte_hypervisor.h     |   0
>  .../{common => }/include/rte_interrupts.h     |   0
>  .../{common => }/include/rte_keepalive.h      |   0
>  .../{common => }/include/rte_launch.h         |   0
>  .../{common => }/include/rte_lcore.h          |   0
>  lib/librte_eal/{common => }/include/rte_log.h |   0
>  .../{common => }/include/rte_malloc.h         |   0
>  .../{common => }/include/rte_memory.h         |   0
>  .../{common => }/include/rte_memzone.h        |   0
>  .../{common => }/include/rte_option.h         |   0
>  .../include/rte_pci_dev_feature_defs.h        |   0
>  .../include/rte_pci_dev_features.h            |   0
>  .../{common => }/include/rte_per_lcore.h      |   0
>  .../{common => }/include/rte_random.h         |   0
>  .../{common => }/include/rte_reciprocal.h     |   0
>  .../{common => }/include/rte_service.h        |   0
>  .../include/rte_service_component.h           |   0
>  .../{common => }/include/rte_string_fns.h     |   0
>  .../{common => }/include/rte_tailq.h          |   0
>  .../{common => }/include/rte_test.h           |   0
>  .../{common => }/include/rte_time.h           |   0
>  .../{common => }/include/rte_uuid.h           |   0
>  .../{common => }/include/rte_version.h        |   0
>  .../{common => }/include/rte_vfio.h           |   0
>  lib/librte_eal/linux/Makefile                 |  97 ++++++++++++++++-
>  lib/librte_eal/linux/{eal => }/eal.c          |   0
>  lib/librte_eal/linux/eal/Makefile             | 101 ------------------
>  lib/librte_eal/linux/eal/meson.build          |  31 ------
>  lib/librte_eal/linux/{eal => }/eal_alarm.c    |   0
>  lib/librte_eal/linux/{eal => }/eal_cpuflags.c |   0
>  lib/librte_eal/linux/{eal => }/eal_debug.c    |   0
>  lib/librte_eal/linux/{eal => }/eal_dev.c      |   0
>  .../linux/{eal => }/eal_hugepage_info.c       |   0
>  .../linux/{eal => }/eal_interrupts.c          |   0
>  lib/librte_eal/linux/{eal => }/eal_lcore.c    |   0
>  lib/librte_eal/linux/{eal => }/eal_log.c      |   0
>  lib/librte_eal/linux/{eal => }/eal_memalloc.c |   0
>  lib/librte_eal/linux/{eal => }/eal_memory.c   |   0
>  lib/librte_eal/linux/{eal => }/eal_thread.c   |   0
>  lib/librte_eal/linux/{eal => }/eal_timer.c    |   0
>  lib/librte_eal/linux/{eal => }/eal_vfio.c     |   0
>  lib/librte_eal/linux/{eal => }/eal_vfio.h     |   0
>  .../linux/{eal => }/eal_vfio_mp_sync.c        |   0
>  lib/librte_eal/linux/include/meson.build      |   9 ++
>  .../linux/{eal => }/include/rte_kni_common.h  |   0
>  .../linux/{eal => }/include/rte_os.h          |   0
>  lib/librte_eal/linux/meson.build              |  27 +++++
>  lib/librte_eal/meson.build                    |  19 ++--
>  .../arch/ppc_64 => ppc/include}/meson.build   |   7 +-
>  .../arch/ppc_64 => ppc/include}/rte_atomic.h  |   0
>  .../ppc_64 => ppc/include}/rte_byteorder.h    |   0
>  .../ppc_64 => ppc/include}/rte_cpuflags.h     |   0
>  .../arch/ppc_64 => ppc/include}/rte_cycles.h  |   0
>  .../arch/ppc_64 => ppc/include}/rte_io.h      |   0
>  .../arch/ppc_64 => ppc/include}/rte_mcslock.h |   0
>  .../arch/ppc_64 => ppc/include}/rte_memcpy.h  |   0
>  .../arch/ppc_64 => ppc/include}/rte_pause.h   |   0
>  .../ppc_64 => ppc/include}/rte_prefetch.h     |   0
>  .../arch/ppc_64 => ppc/include}/rte_rwlock.h  |   0
>  .../ppc_64 => ppc/include}/rte_spinlock.h     |   0
>  .../ppc_64 => ppc/include}/rte_ticketlock.h   |   0
>  .../arch/ppc_64 => ppc/include}/rte_vect.h    |   0
>  lib/librte_eal/ppc/meson.build                |  10 ++
>  .../arch/ppc_64 => ppc}/rte_cpuflags.c        |   0
>  .../{common/arch/ppc_64 => ppc}/rte_cycles.c  |   0
>  .../arch/ppc_64 => ppc}/rte_hypervisor.c      |   0
>  lib/librte_eal/windows/{eal => }/eal.c        |   0
>  lib/librte_eal/windows/eal/meson.build        |  27 -----
>  lib/librte_eal/windows/{eal => }/eal_debug.c  |   0
>  lib/librte_eal/windows/{eal => }/eal_lcore.c  |   0
>  lib/librte_eal/windows/{eal => }/eal_thread.c |   0
>  lib/librte_eal/windows/{eal => }/getopt.c     |   0
>  .../windows/{eal => }/include/dirent.h        |   0
>  .../windows/{eal => }/include/fnmatch.h       |   0
>  .../windows/{eal => }/include/getopt.h        |   0
>  lib/librte_eal/windows/include/meson.build    |   8 ++
>  .../windows/{eal => }/include/pthread.h       |   0
>  .../windows/{eal => }/include/regex.h         |   0
>  .../windows/{eal => }/include/rte_os.h        |   0
>  .../windows/{eal => }/include/sched.h         |   0
>  .../windows/{eal => }/include/sys/queue.h     |   0
>  .../windows/{eal => }/include/unistd.h        |   0
>  lib/librte_eal/windows/meson.build            |  12 +++
>  .../arch/x86 => x86/include}/meson.build      |   7 +-
>  .../arch/x86 => x86/include}/rte_atomic.h     |   0
>  .../arch/x86 => x86/include}/rte_atomic_32.h  |   0
>  .../arch/x86 => x86/include}/rte_atomic_64.h  |   0
>  .../arch/x86 => x86/include}/rte_byteorder.h  |   0
>  .../x86 => x86/include}/rte_byteorder_32.h    |   0
>  .../x86 => x86/include}/rte_byteorder_64.h    |   0
>  .../arch/x86 => x86/include}/rte_cpuflags.h   |   0
>  .../arch/x86 => x86/include}/rte_cycles.h     |   0
>  .../include/arch/x86 => x86/include}/rte_io.h |   0
>  .../arch/x86 => x86/include}/rte_mcslock.h    |   0
>  .../arch/x86 => x86/include}/rte_memcpy.h     |   0
>  .../arch/x86 => x86/include}/rte_pause.h      |   0
>  .../arch/x86 => x86/include}/rte_prefetch.h   |   0
>  .../arch/x86 => x86/include}/rte_rtm.h        |   0
>  .../arch/x86 => x86/include}/rte_rwlock.h     |   0
>  .../arch/x86 => x86/include}/rte_spinlock.h   |   0
>  .../arch/x86 => x86/include}/rte_ticketlock.h |   0
>  .../arch/x86 => x86/include}/rte_vect.h       |   0
>  lib/librte_eal/x86/meson.build                |  11 ++
>  .../{common/arch => }/x86/rte_cpuflags.c      |   0
>  .../{common/arch => }/x86/rte_cpuid.h         |   0
>  .../{common/arch => }/x86/rte_cycles.c        |   0
>  .../{common/arch => }/x86/rte_hypervisor.c    |   0
>  .../{common/arch => }/x86/rte_spinlock.c      |   0
>  lib/librte_kvargs/Makefile                    |   2 +-
>  license/exceptions.txt                        |   6 +-
>  meson.build                                   |   4 +-
>  mk/arch/ppc_64/rte.vars.mk                    |   1 +
>  mk/exec-env/freebsd/rte.vars.mk               |   2 +-
>  mk/exec-env/linux/rte.vars.mk                 |   2 +-
>  223 files changed, 480 insertions(+), 508 deletions(-)
>  rename config/{ppc_64 => ppc}/meson.build (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/meson.build (79%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_atomic.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_atomic_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_atomic_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_byteorder.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cpuflags.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cpuflags_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cpuflags_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cycles.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cycles_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_cycles_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_io.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_io_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_mcslock.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_memcpy.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_memcpy_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_memcpy_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_pause.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_pause_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_pause_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_prefetch.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_prefetch_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_prefetch_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_rwlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_spinlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_ticketlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/arm => arm/include}/rte_vect.h (100%)
>  create mode 100644 lib/librte_eal/arm/meson.build
>  rename lib/librte_eal/{common/arch => }/arm/rte_cpuflags.c (100%)
>  rename lib/librte_eal/{common/arch => }/arm/rte_cycles.c (100%)
>  rename lib/librte_eal/{common/arch => }/arm/rte_hypervisor.c (100%)
>  delete mode 100644 lib/librte_eal/common/Makefile
>  delete mode 100644 lib/librte_eal/common/arch/arm/meson.build
>  delete mode 100644 lib/librte_eal/common/arch/ppc_64/meson.build
>  delete mode 100644 lib/librte_eal/common/arch/x86/meson.build
>  delete mode 100644 lib/librte_eal/freebsd/BSDmakefile.meson
>  rename lib/librte_eal/freebsd/{eal => }/eal.c (100%)
>  delete mode 100644 lib/librte_eal/freebsd/eal/Makefile
>  delete mode 100644 lib/librte_eal/freebsd/eal/meson.build
>  rename lib/librte_eal/freebsd/{eal => }/eal_alarm.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_alarm_private.h (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_cpuflags.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_debug.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_dev.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_hugepage_info.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_interrupts.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_lcore.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_memalloc.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_memory.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_thread.c (100%)
>  rename lib/librte_eal/freebsd/{eal => }/eal_timer.c (100%)
>  create mode 100644 lib/librte_eal/freebsd/include/meson.build
>  rename lib/librte_eal/freebsd/{eal => }/include/rte_os.h (100%)
>  create mode 100644 lib/librte_eal/freebsd/meson.build
>  create mode 100644 lib/librte_eal/include/Makefile
>  rename lib/librte_eal/{common => }/include/generic/rte_atomic.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_byteorder.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_cpuflags.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_cycles.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_io.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_mcslock.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_memcpy.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_pause.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_prefetch.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_rwlock.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_spinlock.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_ticketlock.h (100%)
>  rename lib/librte_eal/{common => }/include/generic/rte_vect.h (100%)
>  create mode 100644 lib/librte_eal/include/meson.build
>  rename lib/librte_eal/{common => }/include/rte_alarm.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_bitmap.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_branch_prediction.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_bus.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_class.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_common.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_compat.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_debug.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_dev.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_devargs.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_eal.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_eal_interrupts.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_eal_memconfig.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_errno.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_fbarray.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_function_versioning.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_hexdump.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_hypervisor.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_interrupts.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_keepalive.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_launch.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_lcore.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_log.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_malloc.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_memory.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_memzone.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_option.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_pci_dev_feature_defs.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_pci_dev_features.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_per_lcore.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_random.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_reciprocal.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_service.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_service_component.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_string_fns.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_tailq.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_test.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_time.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_uuid.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_version.h (100%)
>  rename lib/librte_eal/{common => }/include/rte_vfio.h (100%)
>  rename lib/librte_eal/linux/{eal => }/eal.c (100%)
>  delete mode 100644 lib/librte_eal/linux/eal/Makefile
>  delete mode 100644 lib/librte_eal/linux/eal/meson.build
>  rename lib/librte_eal/linux/{eal => }/eal_alarm.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_cpuflags.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_debug.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_dev.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_hugepage_info.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_interrupts.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_lcore.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_log.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_memalloc.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_memory.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_thread.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_timer.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_vfio.c (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_vfio.h (100%)
>  rename lib/librte_eal/linux/{eal => }/eal_vfio_mp_sync.c (100%)
>  create mode 100644 lib/librte_eal/linux/include/meson.build
>  rename lib/librte_eal/linux/{eal => }/include/rte_kni_common.h (100%)
>  rename lib/librte_eal/linux/{eal => }/include/rte_os.h (100%)
>  create mode 100644 lib/librte_eal/linux/meson.build
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/meson.build (67%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_atomic.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_byteorder.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_cpuflags.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_cycles.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_io.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_mcslock.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_memcpy.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_pause.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_prefetch.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_rwlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_spinlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_ticketlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/ppc_64 => ppc/include}/rte_vect.h (100%)
>  create mode 100644 lib/librte_eal/ppc/meson.build
>  rename lib/librte_eal/{common/arch/ppc_64 => ppc}/rte_cpuflags.c (100%)
>  rename lib/librte_eal/{common/arch/ppc_64 => ppc}/rte_cycles.c (100%)
>  rename lib/librte_eal/{common/arch/ppc_64 => ppc}/rte_hypervisor.c (100%)
>  rename lib/librte_eal/windows/{eal => }/eal.c (100%)
>  delete mode 100644 lib/librte_eal/windows/eal/meson.build
>  rename lib/librte_eal/windows/{eal => }/eal_debug.c (100%)
>  rename lib/librte_eal/windows/{eal => }/eal_lcore.c (100%)
>  rename lib/librte_eal/windows/{eal => }/eal_thread.c (100%)
>  rename lib/librte_eal/windows/{eal => }/getopt.c (100%)
>  rename lib/librte_eal/windows/{eal => }/include/dirent.h (100%)
>  rename lib/librte_eal/windows/{eal => }/include/fnmatch.h (100%)
>  rename lib/librte_eal/windows/{eal => }/include/getopt.h (100%)
>  create mode 100644 lib/librte_eal/windows/include/meson.build
>  rename lib/librte_eal/windows/{eal => }/include/pthread.h (100%)
>  rename lib/librte_eal/windows/{eal => }/include/regex.h (100%)
>  rename lib/librte_eal/windows/{eal => }/include/rte_os.h (100%)
>  rename lib/librte_eal/windows/{eal => }/include/sched.h (100%)
>  rename lib/librte_eal/windows/{eal => }/include/sys/queue.h (100%)
>  rename lib/librte_eal/windows/{eal => }/include/unistd.h (100%)
>  create mode 100644 lib/librte_eal/windows/meson.build
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/meson.build (73%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_atomic.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_atomic_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_atomic_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_byteorder.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_byteorder_32.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_byteorder_64.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_cpuflags.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_cycles.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_io.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_mcslock.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_memcpy.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_pause.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_prefetch.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_rtm.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_rwlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_spinlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_ticketlock.h (100%)
>  rename lib/librte_eal/{common/include/arch/x86 => x86/include}/rte_vect.h (100%)
>  create mode 100644 lib/librte_eal/x86/meson.build
>  rename lib/librte_eal/{common/arch => }/x86/rte_cpuflags.c (100%)
>  rename lib/librte_eal/{common/arch => }/x86/rte_cpuid.h (100%)
>  rename lib/librte_eal/{common/arch => }/x86/rte_cycles.c (100%)
>  rename lib/librte_eal/{common/arch => }/x86/rte_hypervisor.c (100%)
>  rename lib/librte_eal/{common/arch => }/x86/rte_spinlock.c (100%)
> 

When applied this should still bisectable right? i.e all these intermediate
steps won't cause a build break when running git bisect.
  
Thomas Monjalon March 27, 2020, 3:12 p.m. UTC | #2
27/03/2020 15:47, Stephen Hemminger:
> On Fri, 27 Mar 2020 02:15:32 +0100
> Thomas Monjalon <thomas@monjalon.net> wrote:
> > v2:
> >   - add missing meson and make files in the include/ directory
> >   - fix ppc build
> >   - cosmetic improvements in meson files
> >   - split single patch into 8 pieces
> > 
> > 
> > Thomas Monjalon (8):
> >   eal: remove useless makefiles
> >   build: rename ppc sub-directories
> >   eal: move arch-specific C files
> >   eal: move arch-specific header files
> >   eal: simplify meson build of common directory
> >   eal: move common header files
> >   eal: move OS-specific sub-directories
> >   eal: clean make and meson files
> 
> When applied this should still bisectable right? i.e all these intermediate
> steps won't cause a build break when running git bisect.

Correct. I spent hours to have proper intermediate steps.
If you find a specific arch or OS is broken in an intermediate step, please shout :)
  
David Marchand March 30, 2020, 2:22 p.m. UTC | #3
On Fri, Mar 27, 2020 at 2:16 AM Thomas Monjalon <thomas@monjalon.net> wrote:
>
> Some clean-up is done in EAL sub-directories.
> The goal is to make organization easier to understand,
> and to prepare moving some files from common to Unix-only place.
>
> Since the kernel modules are moved to kernel/ directory,
> there is no need anymore for the sub-directory eal/ in
> linux/, freebsd/ and windows/.
>
> The EAL API (with doxygen documentation) is moved from
> common/include/ to include/, which makes more clear that
> it is the global API for all environments and architectures.
> Note that the arch-specific and OS-specific include files are not
> in this global include directory, but include/generic/ should
> cover the doxygen documentation for them.
>
> The arch-specific directories arm, ppc_64 and x86 in common/arch/
> and in common/include/arch are moved at the same level as the
> OS-specific directories, adding an include/ sub-directory.
> It makes more clear that EAL is covering a matrix combining OS and arch.
> Note that ppc_64 is renamed to ppc.
>
> These moves offer the opportunity to simplify the make and meson files.
>
>
> This change was proposed to the Technical Board in advance:
> http://mails.dpdk.org/archives/dev/2020-January/156732.html

I caught an issue on patch 6 that breaks headers installation with
meson (caught this by compiling examples against an installed dpdk).
This issue is fixed by patch 7.
So it is only a matter of fixing compilation when bisecting.
I proposed a fix in reply to patch 6, which I intend to squash in when applying.


I did not validate all patches individually with make, as I get build
errors on missing headers with parallel compilation quite easily.
But those errors are transient afaiu: with a clean build directory no problem.


For the series:
Acked-by: David Marchand <david.marchand@redhat.com>
  
David Marchand March 31, 2020, 11:13 a.m. UTC | #4
On Mon, Mar 30, 2020 at 4:22 PM David Marchand
<david.marchand@redhat.com> wrote:
> On Fri, Mar 27, 2020 at 2:16 AM Thomas Monjalon <thomas@monjalon.net> wrote:
> >
> > Some clean-up is done in EAL sub-directories.
> > The goal is to make organization easier to understand,
> > and to prepare moving some files from common to Unix-only place.
> >
> > Since the kernel modules are moved to kernel/ directory,
> > there is no need anymore for the sub-directory eal/ in
> > linux/, freebsd/ and windows/.
> >
> > The EAL API (with doxygen documentation) is moved from
> > common/include/ to include/, which makes more clear that
> > it is the global API for all environments and architectures.
> > Note that the arch-specific and OS-specific include files are not
> > in this global include directory, but include/generic/ should
> > cover the doxygen documentation for them.
> >
> > The arch-specific directories arm, ppc_64 and x86 in common/arch/
> > and in common/include/arch are moved at the same level as the
> > OS-specific directories, adding an include/ sub-directory.
> > It makes more clear that EAL is covering a matrix combining OS and arch.
> > Note that ppc_64 is renamed to ppc.
> >
> > These moves offer the opportunity to simplify the make and meson files.
> >
> >
> > This change was proposed to the Technical Board in advance:
> > http://mails.dpdk.org/archives/dev/2020-January/156732.html
>
> I caught an issue on patch 6 that breaks headers installation with
> meson (caught this by compiling examples against an installed dpdk).
> This issue is fixed by patch 7.
> So it is only a matter of fixing compilation when bisecting.
> I proposed a fix in reply to patch 6, which I intend to squash in when applying.
>
>
> I did not validate all patches individually with make, as I get build
> errors on missing headers with parallel compilation quite easily.
> But those errors are transient afaiu: with a clean build directory no problem.
>
>
> For the series:
> Acked-by: David Marchand <david.marchand@redhat.com>

Series applied with change in patch 6.