From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f47.google.com (mail-wm0-f47.google.com [74.125.82.47]) by dpdk.org (Postfix) with ESMTP id 5AC7C2C08 for ; Tue, 5 Apr 2016 16:08:26 +0200 (CEST) Received: by mail-wm0-f47.google.com with SMTP id l6so25379619wml.1 for ; Tue, 05 Apr 2016 07:08:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=scjmEfU246qGSwCFYeStsYwx3jY5rx+MwY9uk4KCBGY=; b=mcbzk7s4q4LHnqdojAdSrLnf/6hiETnwzH8s8K3CvN76+nHP2FCNsu9T72W+8d9t92 ie8JmHxrBIHp88QITLi6eKJ+dKadtIHUQvuSpbeKbKUDa/sVwDMGMji470Ju4Cc6rsVX SRtp/210Ktp25VPO8bUj/2LplXcran4DfF0DsV78iHJ02ZX1VwD8lMD6Mp72GOrAf5oE 3UbZu4Q4gjD94Wfc3Vw/mj2fpqHCI4DS+bt7s+Z2wRdzkrYi9qr4uSt9INRk8/BDvV+f yQgwwOCyoHITm1/I388AnaQvAqmgKfVpgFzEk5meRhOd4XxU9WwXjd0CMEl8LO5jtsWF 8z8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=scjmEfU246qGSwCFYeStsYwx3jY5rx+MwY9uk4KCBGY=; b=fg8mLZEkCOSn7aIuMJW5hRhK/ylEKwifaLaZDF78i80wW7+IR9NeDOaMI6ymK30oao idRKWnpNkRp40RTPaMV8frlzTxEzpdyfuSEyV8+zHroOpPgbH7sMLbXvsAo7qNn5VLfR y/cSq5kaeWo23z/fa2y/7/rSuWbmiU9Y/p5gjwYDPw17UJf/BetYjnXCBv70ZPynMKuv Zs7M8BBH3bHh+Xmmr7LXN4uRo+5RbkJmw+YIPxlSTMWyoTtrrrxjVpXKBq/MUEaDTSB6 HIe0wEsieirj3g6NR7yi1gLlIGShtp1h8U4OgFofnyGUn2CVdslVumkbPU+QZz0r9QiX joSA== X-Gm-Message-State: AD7BkJIAErGlZ9hrbzM/xghEu9vSabeIBg0ZDMlhwNP94oEgZc7zpwPnoxCd4UFjJMCZqMgc X-Received: by 10.194.77.42 with SMTP id p10mr15518009wjw.111.1459865306207; Tue, 05 Apr 2016 07:08:26 -0700 (PDT) Received: from 6wind.com (guy78-3-82-239-227-177.fbx.proxad.net. [82.239.227.177]) by smtp.gmail.com with ESMTPSA id by7sm34809254wjc.18.2016.04.05.07.08.24 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 05 Apr 2016 07:08:25 -0700 (PDT) From: Adrien Mazarguil To: dev@dpdk.org Cc: Bruce Richardson , Thomas Monjalon Date: Tue, 5 Apr 2016 16:08:00 +0200 Message-Id: <1459865290-10248-1-git-send-email-adrien.mazarguil@6wind.com> X-Mailer: git-send-email 2.1.4 Subject: [dpdk-dev] [PATCH 00/10] Fix build errors related to exported headers X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Apr 2016 14:08:26 -0000 DPDK uses GNU C language extensions in most of its code base. This is fine for internal source files whose compilation flags are controlled by DPDK, however user applications that use exported "public" headers may experience compilation failures when enabling strict error/standard checks (-std and -pedantic for instance). Exported headers are installed system-wide and must be as clean as possible so applications do not have to use workarounds for compilation issues. This patchset affects exported headers only, compilation problems are addressed as follows: - adding the __extension__ keyword to nonstandard constructs (same method as existing libraries when there is no other choice) - adding the __extension__ keyword to C11 constructs to remain compatible with pure C99 - adding missing includes so exported files can be included out of order and on their own - fixing GNU printf-like variadic macros as there is no magic keyword for these Adrien Mazarguil (10): lib: add extension keyword to braced-groups within expressions lib: add extension keyword to large enum values lib: use C99 syntax for zero-size arrays lib: add extension keyword to nonstandard bit-fields lib: add extension keyword to structs with no members lib: add extension keyword to unnamed structs/unions lib: fix missing include dependencies lib: add extension keyword to forward reference to enum types lib: remove named variadic macros in exported headers lib: hide static functions that are never defined lib/librte_acl/rte_acl.h | 2 +- lib/librte_cfgfile/rte_cfgfile.h | 2 ++ lib/librte_cmdline/cmdline.h | 1 + lib/librte_cmdline/cmdline_parse_portlist.h | 1 + lib/librte_cmdline/cmdline_socket.h | 3 ++ lib/librte_cryptodev/rte_crypto.h | 3 ++ lib/librte_cryptodev/rte_crypto_sym.h | 4 +++ lib/librte_cryptodev/rte_cryptodev.h | 41 ++++++++++++++-------- lib/librte_cryptodev/rte_cryptodev_pmd.h | 6 ++-- .../common/include/arch/arm/rte_byteorder.h | 3 ++ .../common/include/arch/arm/rte_memcpy_32.h | 3 +- .../common/include/arch/arm/rte_prefetch_32.h | 2 ++ .../common/include/arch/arm/rte_prefetch_64.h | 2 ++ lib/librte_eal/common/include/arch/arm/rte_vect.h | 1 + .../common/include/arch/ppc_64/rte_atomic.h | 2 ++ .../common/include/arch/ppc_64/rte_byteorder.h | 2 ++ .../common/include/arch/ppc_64/rte_cycles.h | 3 ++ .../common/include/arch/ppc_64/rte_memcpy.h | 3 +- .../common/include/arch/ppc_64/rte_prefetch.h | 2 ++ .../common/include/arch/x86/rte_atomic.h | 3 ++ .../common/include/arch/x86/rte_atomic_32.h | 9 +++++ .../common/include/arch/x86/rte_atomic_64.h | 8 +++++ .../common/include/arch/x86/rte_byteorder.h | 3 ++ .../common/include/arch/x86/rte_byteorder_32.h | 7 ++++ .../common/include/arch/x86/rte_byteorder_64.h | 7 ++++ .../common/include/arch/x86/rte_cycles.h | 3 ++ .../common/include/arch/x86/rte_memcpy.h | 4 +-- .../common/include/arch/x86/rte_prefetch.h | 2 ++ lib/librte_eal/common/include/arch/x86/rte_rtm.h | 1 + lib/librte_eal/common/include/arch/x86/rte_vect.h | 8 +++-- lib/librte_eal/common/include/generic/rte_atomic.h | 1 + .../common/include/generic/rte_byteorder.h | 2 ++ .../common/include/generic/rte_cpuflags.h | 3 ++ lib/librte_eal/common/include/generic/rte_memcpy.h | 7 ++-- lib/librte_eal/common/include/rte_common.h | 22 ++++++++++-- lib/librte_eal/common/include/rte_devargs.h | 1 + lib/librte_eal/common/include/rte_eal.h | 1 + lib/librte_eal/common/include/rte_interrupts.h | 2 ++ lib/librte_eal/common/include/rte_memory.h | 4 +++ lib/librte_eal/common/include/rte_memzone.h | 2 ++ lib/librte_eal/common/include/rte_time.h | 8 +++++ lib/librte_eal/common/include/rte_version.h | 1 + .../linuxapp/eal/include/exec-env/rte_interrupts.h | 1 + .../linuxapp/eal/include/exec-env/rte_kni_common.h | 2 +- lib/librte_ether/rte_dev_info.h | 2 ++ lib/librte_ether/rte_eth_ctrl.h | 4 +++ lib/librte_ether/rte_ethdev.h | 4 +++ lib/librte_hash/rte_fbk_hash.h | 2 +- lib/librte_hash/rte_thash.h | 4 +++ lib/librte_ip_frag/rte_ip_frag.h | 2 +- lib/librte_lpm/rte_lpm.h | 7 +++- lib/librte_lpm/rte_lpm6.h | 2 ++ lib/librte_lpm/rte_lpm_neon.h | 1 + lib/librte_lpm/rte_lpm_sse.h | 1 + lib/librte_mbuf/rte_mbuf.h | 9 +++++ lib/librte_mempool/rte_mempool.h | 1 + lib/librte_pipeline/rte_pipeline.h | 5 ++- lib/librte_reorder/rte_reorder.h | 2 ++ lib/librte_ring/rte_ring.h | 2 +- lib/librte_sched/rte_bitmap.h | 3 +- lib/librte_sched/rte_reciprocal.h | 2 ++ lib/librte_sched/rte_sched_common.h | 2 ++ lib/librte_timer/rte_timer.h | 2 ++ lib/librte_vhost/rte_virtio_net.h | 2 +- 64 files changed, 221 insertions(+), 36 deletions(-) -- 2.1.4