lib: add missing include dependencies
authorAdrien Mazarguil <adrien.mazarguil@6wind.com>
Thu, 8 Sep 2016 12:25:07 +0000 (14:25 +0200)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Tue, 13 Sep 2016 13:35:28 +0000 (15:35 +0200)
Exported header files for use by applications should be self sufficient and
allow out of order inclusion. Moreover, they must include all the system
headers they need for types and macros.

This commit prevents the following errors:

 error: `RTE_MAX_LCORE' undeclared here (not in a function)
 error: `RTE_LPM_VALID_EXT_ENTRY_BITMASK' undeclared
  (first use in this function)
 error: #error "Unsupported cache line size"
 error: `asm' undeclared (first use in this function)
 error: implicit declaration of function `[...]'
 error: unknown type name `[...]'
 error: field `mac_addr' has incomplete type
 error: `CHAR_BIT' undeclared here (not in a function)
 error: `struct [...]' declared inside parameter list
 error: unknown type name `uint8_t'

Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
35 files changed:
lib/librte_cfgfile/rte_cfgfile.h
lib/librte_cmdline/cmdline.h
lib/librte_cmdline/cmdline_parse_portlist.h
lib/librte_cmdline/cmdline_socket.h
lib/librte_eal/common/include/arch/arm/rte_byteorder.h
lib/librte_eal/common/include/arch/arm/rte_prefetch_32.h
lib/librte_eal/common/include/arch/arm/rte_prefetch_64.h
lib/librte_eal/common/include/arch/arm/rte_vect.h
lib/librte_eal/common/include/arch/ppc_64/rte_atomic.h
lib/librte_eal/common/include/arch/ppc_64/rte_byteorder.h
lib/librte_eal/common/include/arch/ppc_64/rte_prefetch.h
lib/librte_eal/common/include/arch/x86/rte_atomic.h
lib/librte_eal/common/include/arch/x86/rte_atomic_32.h
lib/librte_eal/common/include/arch/x86/rte_atomic_64.h
lib/librte_eal/common/include/arch/x86/rte_byteorder.h
lib/librte_eal/common/include/arch/x86/rte_byteorder_32.h
lib/librte_eal/common/include/arch/x86/rte_byteorder_64.h
lib/librte_eal/common/include/arch/x86/rte_prefetch.h
lib/librte_eal/common/include/arch/x86/rte_rtm.h
lib/librte_eal/common/include/arch/x86/rte_vect.h
lib/librte_eal/common/include/generic/rte_atomic.h
lib/librte_eal/common/include/generic/rte_byteorder.h
lib/librte_eal/common/include/rte_eal.h
lib/librte_eal/common/include/rte_memory.h
lib/librte_eal/common/include/rte_time.h
lib/librte_eal/common/include/rte_version.h
lib/librte_ether/rte_dev_info.h
lib/librte_ether/rte_eth_ctrl.h
lib/librte_lpm/rte_lpm_neon.h
lib/librte_lpm/rte_lpm_sse.h
lib/librte_pdump/rte_pdump.h
lib/librte_reorder/rte_reorder.h
lib/librte_sched/rte_bitmap.h
lib/librte_sched/rte_reciprocal.h
lib/librte_sched/rte_sched_common.h

index f649836..e81a5a2 100644 (file)
@@ -34,6 +34,8 @@
 #ifndef __INCLUDE_RTE_CFGFILE_H__
 #define __INCLUDE_RTE_CFGFILE_H__
 
+#include <stddef.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif
index 2578ca8..65d73b0 100644 (file)
@@ -63,6 +63,7 @@
 
 #include <termios.h>
 #include <cmdline_rdline.h>
+#include <cmdline_parse.h>
 
 /**
  * @file
index 73d70e0..058df3e 100644 (file)
@@ -61,6 +61,7 @@
 #ifndef _PARSE_PORTLIST_H_
 #define _PARSE_PORTLIST_H_
 
+#include <stdint.h>
 #include <cmdline_parse.h>
 
 #ifdef __cplusplus
index 8cc2dfb..aa6068e 100644 (file)
@@ -61,6 +61,9 @@
 #ifndef _CMDLINE_SOCKET_H_
 #define _CMDLINE_SOCKET_H_
 
+#include <cmdline_parse.h>
+#include <cmdline.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif
index 3f2dd1f..1b312b3 100644 (file)
@@ -41,6 +41,8 @@
 extern "C" {
 #endif
 
+#include <stdint.h>
+#include <rte_common.h>
 #include "generic/rte_byteorder.h"
 
 /* fix missing __builtin_bswap16 for gcc older then 4.8 */
index 5aeed22..43cde17 100644 (file)
@@ -37,6 +37,7 @@
 extern "C" {
 #endif
 
+#include <rte_common.h>
 #include "generic/rte_prefetch.h"
 
 static inline void rte_prefetch0(const volatile void *p)
index 3ed46a4..0d077ea 100644 (file)
@@ -37,6 +37,7 @@
 extern "C" {
 #endif
 
+#include <rte_common.h>
 #include "generic/rte_prefetch.h"
 
 static inline void rte_prefetch0(const volatile void *p)
index a33c054..b86c2cf 100644 (file)
@@ -33,6 +33,7 @@
 #ifndef _RTE_VECT_ARM_H_
 #define _RTE_VECT_ARM_H_
 
+#include <stdint.h>
 #include "arm_neon.h"
 
 #ifdef __cplusplus
index 9a1995e..fd2e53b 100644 (file)
@@ -37,6 +37,7 @@
 extern "C" {
 #endif
 
+#include <rte_common.h>
 #include "generic/rte_prefetch.h"
 
 static inline void rte_prefetch0(const volatile void *p)
index b20056b..00b1cdf 100644 (file)
@@ -38,6 +38,8 @@
 extern "C" {
 #endif
 
+#include <stdint.h>
+#include <rte_common.h>
 #include <emmintrin.h>
 #include "generic/rte_atomic.h"
 
index 5ce01b3..2e04c75 100644 (file)
  * All rights reserved.
  */
 
+#ifndef _RTE_ATOMIC_X86_H_
+#error do not include this file directly, use <rte_atomic.h> instead
+#endif
+
 #ifndef _RTE_ATOMIC_I686_H_
 #define _RTE_ATOMIC_I686_H_
 
+#include <stdint.h>
 #include <rte_common.h>
+#include <rte_atomic.h>
 
 /*------------------------- 64 bit atomic operations -------------------------*/
 
index 4de6600..1a53a76 100644 (file)
  * All rights reserved.
  */
 
+#ifndef _RTE_ATOMIC_X86_H_
+#error do not include this file directly, use <rte_atomic.h> instead
+#endif
+
 #ifndef _RTE_ATOMIC_X86_64_H_
 #define _RTE_ATOMIC_X86_64_H_
 
+#include <stdint.h>
+#include <rte_common.h>
+#include <rte_atomic.h>
+
 /*------------------------- 64 bit atomic operations -------------------------*/
 
 #ifndef RTE_FORCE_INTRINSICS
index ffdb6ef..251f11b 100644 (file)
@@ -38,6 +38,8 @@
 extern "C" {
 #endif
 
+#include <stdint.h>
+#include <rte_common.h>
 #include "generic/rte_byteorder.h"
 
 #ifndef RTE_BYTE_ORDER
index 51c306f..14d6483 100644 (file)
  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+#ifndef _RTE_BYTEORDER_X86_H_
+#error do not include this file directly, use <rte_byteorder.h> instead
+#endif
+
 #ifndef _RTE_BYTEORDER_I686_H_
 #define _RTE_BYTEORDER_I686_H_
 
+#include <stdint.h>
+#include <rte_byteorder.h>
+
 /*
  * An architecture-optimized byte swap for a 64-bit value.
  *
index dda572b..516ac05 100644 (file)
  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+#ifndef _RTE_BYTEORDER_X86_H_
+#error do not include this file directly, use <rte_byteorder.h> instead
+#endif
+
 #ifndef _RTE_BYTEORDER_X86_64_H_
 #define _RTE_BYTEORDER_X86_64_H_
 
+#include <stdint.h>
+#include <rte_common.h>
+
 /*
  * An architecture-optimized byte swap for a 64-bit value.
  *
index 5dac47e..f464398 100644 (file)
@@ -38,6 +38,7 @@
 extern "C" {
 #endif
 
+#include <rte_common.h>
 #include "generic/rte_prefetch.h"
 
 static inline void rte_prefetch0(const volatile void *p)
index 0649f79..ab09995 100644 (file)
@@ -20,6 +20,7 @@
 /* Official RTM intrinsics interface matching gcc/icc, but works
    on older gcc compatible compilers and binutils. */
 
+#include <rte_common.h>
 
 #ifdef __cplusplus
 extern "C" {
index 2836f2c..77f2e25 100644 (file)
@@ -40,6 +40,8 @@
  * RTE SSE/AVX related header.
  */
 
+#include <stdint.h>
+
 #if (defined(__ICC) || (__GNUC__ == 4 &&  __GNUC_MINOR__ < 4))
 
 #ifdef __SSE__
index c46fdcf..e00bccb 100644 (file)
@@ -50,6 +50,8 @@
 #include <endian.h>
 #endif
 
+#include <rte_common.h>
+
 /*
  * Compile-time endianness detection
  */
index a71d6f5..98d20db 100644 (file)
@@ -44,6 +44,7 @@
 #include <sched.h>
 
 #include <rte_per_lcore.h>
+#include <rte_config.h>
 
 #ifdef __cplusplus
 extern "C" {
index 06b6596..2e69821 100644 (file)
@@ -44,6 +44,8 @@
 #include <stddef.h>
 #include <stdio.h>
 
+#include <rte_config.h>
+
 #ifdef RTE_EXEC_ENV_LINUXAPP
 #include <exec-env/rte_dom0_common.h>
 #endif
index 4b13b9c..28c6274 100644 (file)
  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+#ifndef _RTE_TIME_H_
+#define _RTE_TIME_H_
+
+#include <stdint.h>
+#include <time.h>
+
 #define NSEC_PER_SEC             1000000000L
 
 /**
@@ -120,3 +126,5 @@ rte_ns_to_timespec(uint64_t nsec)
 
        return ts;
 }
+
+#endif /* _RTE_TIME_H_ */
index 2c20cb3..844e40c 100644 (file)
@@ -45,6 +45,7 @@ extern "C" {
 
 #include <stdint.h>
 #include <string.h>
+#include <stdio.h>
 #include <rte_common.h>
 
 /**
index 574683d..aab6d1a 100644 (file)
@@ -34,6 +34,8 @@
 #ifndef _RTE_DEV_INFO_H_
 #define _RTE_DEV_INFO_H_
 
+#include <stdint.h>
+
 /*
  * Placeholder for accessing device registers
  */
index c3a2c9e..fe80eb0 100644 (file)
 #ifndef _RTE_ETH_CTRL_H_
 #define _RTE_ETH_CTRL_H_
 
+#include <stdint.h>
+#include <rte_common.h>
+#include "rte_ether.h"
+
 /**
  * @file
  *
index 7c64315..7efd9a0 100644 (file)
@@ -43,6 +43,7 @@
 #include <rte_byteorder.h>
 #include <rte_common.h>
 #include <rte_vect.h>
+#include <rte_lpm.h>
 
 #ifdef __cplusplus
 extern "C" {
index da83099..ef33c6a 100644 (file)
@@ -38,6 +38,7 @@
 #include <rte_byteorder.h>
 #include <rte_common.h>
 #include <rte_vect.h>
+#include <rte_lpm.h>
 
 #ifdef __cplusplus
 extern "C" {
index b5f4e2f..924b804 100644 (file)
  * packet dump library to provide packet capturing support on dpdk.
  */
 
+#include <stdint.h>
+#include <rte_mempool.h>
+#include <rte_ring.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif
index c7a2934..737e055 100644 (file)
@@ -44,6 +44,8 @@
  *
  */
 
+#include <rte_mbuf.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif
index 1b5df02..010d752 100644 (file)
@@ -64,6 +64,7 @@ extern "C" {
  *
  ***/
 
+#include <string.h>
 #include <rte_common.h>
 #include <rte_debug.h>
 #include <rte_memory.h>
index abd1525..5e21f09 100644 (file)
@@ -22,6 +22,8 @@
 #ifndef _RTE_RECIPROCAL_H_
 #define _RTE_RECIPROCAL_H_
 
+#include <stdint.h>
+
 struct rte_reciprocal {
        uint32_t m;
        uint8_t sh1, sh2;
index 8920ade..aed144b 100644 (file)
@@ -38,6 +38,7 @@
 extern "C" {
 #endif
 
+#include <stdint.h>
 #include <sys/types.h>
 
 #define __rte_aligned_16 __attribute__((__aligned__(16)))